summaryrefslogtreecommitdiff
path: root/third_party/BaseClasses/sysclock.h
diff options
context:
space:
mode:
authorLiong Sauw Ming <ming@teluu.com>2012-04-18 02:38:42 +0000
committerLiong Sauw Ming <ming@teluu.com>2012-04-18 02:38:42 +0000
commitbe78f596a56580ae6984895355168376d49d9099 (patch)
tree7ebce483258005e403f973dac299c435675b53bf /third_party/BaseClasses/sysclock.h
parent64f7c5f55ec54621141ba3676298510dcf0bdb70 (diff)
Fixed #1276: Add baseclasses sample in third_party directory required by dshow_dev
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@4061 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'third_party/BaseClasses/sysclock.h')
-rw-r--r--third_party/BaseClasses/sysclock.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/third_party/BaseClasses/sysclock.h b/third_party/BaseClasses/sysclock.h
new file mode 100644
index 00000000..3976d346
--- /dev/null
+++ b/third_party/BaseClasses/sysclock.h
@@ -0,0 +1,39 @@
+//------------------------------------------------------------------------------
+// File: SysClock.h
+//
+// Desc: DirectShow base classes - defines a system clock implementation of
+// IReferenceClock.
+//
+// Copyright (c) 1992-2001 Microsoft Corporation. All rights reserved.
+//------------------------------------------------------------------------------
+
+
+#ifndef __SYSTEMCLOCK__
+#define __SYSTEMCLOCK__
+
+//
+// Base clock. Uses timeGetTime ONLY
+// Uses most of the code in the base reference clock.
+// Provides GetTime
+//
+
+class CSystemClock : public CBaseReferenceClock, public IAMClockAdjust, public IPersist
+{
+public:
+ // We must be able to create an instance of ourselves
+ static CUnknown * WINAPI CreateInstance(__inout_opt LPUNKNOWN pUnk, __inout HRESULT *phr);
+ CSystemClock(__in_opt LPCTSTR pName, __inout_opt LPUNKNOWN pUnk, __inout HRESULT *phr);
+
+ DECLARE_IUNKNOWN
+
+ STDMETHODIMP NonDelegatingQueryInterface(REFIID riid, __deref_out void ** ppv);
+
+ // Yield up our class id so that we can be persisted
+ // Implement required Ipersist method
+ STDMETHODIMP GetClassID(__out CLSID *pClsID);
+
+ // IAMClockAdjust methods
+ STDMETHODIMP SetClockDelta(REFERENCE_TIME rtDelta);
+}; //CSystemClock
+
+#endif /* __SYSTEMCLOCK__ */