The IReferenceClock interface provides the reference time source for the filter graph. More...
#include <reference_clock_intf.h>
Classes | |
class | IClock |
Interface for clocks. More... | |
class | ISync2RefChannel |
Interface for synchronizing external timestamps to stream time. More... | |
struct | tReferenceClockEvent |
This structure describes the functionality for the IEventSource Communication Expansion. More... | |
Public Member Functions | |
ADTF_IID (IReferenceClock, "reference_clock.flash.streaming.adtf.iid") | |
Marks the IReferenceClock to be castable with the ucom_cast. | |
virtual base::flash::tNanoSeconds | GetTimeNs () const =0 |
virtual base::flash::tNanoSeconds | GetStreamTimeNs () const =0 |
virtual tResult | GetSync2RefChannel (adtf::ucom::ant::iobject_ptr< ISync2RefChannel > &pSync2RefChannel, const char *strName=nullptr, const char *strMethod=nullptr) const =0 |
Returns a new instance of a Sync2Ref Channel implementation. | |
virtual tResult | GetSync2RefChannel (adtf::ucom::ant::iobject_ptr< ISync2RefChannel > &pSync2RefChannel, const char *strName=nullptr, const char *strMethod=nullptr) const=0 |
Returns a new instance of a Sync2Ref Channel implementation. | |
![]() | |
ADTF_IID (IReferenceClock, "reference_clock.ant.streaming.adtf.iid") | |
Marks the IReferenceClock to be castable with the ucom_cast. | |
virtual tTimeStamp | GetTime () const =0 |
Retrieves the current reference time. | |
virtual tTimeStamp | GetStreamTime () const =0 |
Retrieves the stream time which is reset at the start of the stream. | |
virtual tResult | RegisterClock (const adtf::ucom::ant::iobject_ptr< IClock > &pClock)=0 |
Registers a new clock. | |
virtual tResult | UnregisterClock (const adtf::ucom::ant::iobject_ptr< IClock > &pClock)=0 |
Unregisters a clock. | |
virtual tResult | GetClocks (IClockListCallback &oCallback) const =0 |
Lists all available clocks. | |
virtual tResult | GetClock (const char *strName, adtf::ucom::ant::iobject_ptr< IClock > &pClock) const =0 |
Find a clock. | |
virtual tResult | SetMainClock (const char *strName)=0 |
This will change the main clock to the given clock. | |
virtual tResult | GetMainClock (adtf::base::ant::IString &&strName) const =0 |
Retrieves the name of the current main clock. | |
virtual tResult | SetStreamClock (const char *strName)=0 |
Sets the clock of which the time is returned by GetStreamTime. | |
virtual tResult | GetStreamClock (adtf::base::ant::IString &&strName) const =0 |
Retrieves the name of the current stream clock. | |
virtual tResult | RegisterSync2RefFactory (const adtf::ucom::ant::iobject_ptr< ISync2RefChannelFactory > &oSync2RefFactory)=0 |
Registers a new Sync2Ref channel factory. | |
virtual tResult | UnregisterSync2RefFactory (const adtf::ucom::ant::iobject_ptr< ISync2RefChannelFactory > &oSync2RefFactory)=0 |
Unregisters a Sync2Ref channel factory. | |
virtual tResult | ListSync2RefMethods (ISync2RefListCallback &oCallback)=0 |
Lists all available Sync2Ref methods. | |
![]() | |
ADTF_IID (IObject, "object.ant.ucom.adtf.iid") | |
Marks the IObject to be castable with the ucom_cast() | |
Protected Member Functions | |
~IReferenceClock ()=default | |
not destructable | |
![]() | |
~IReferenceClock ()=default | |
not destructable | |
![]() | |
~IObject ()=default | |
Protected destructor --> Only the final implementation can be destroyed! | |
Additional Inherited Members | |
![]() | |
enum | tReferenceClockEventId { EVENT_TimeResetBegin = 0x0000 , EVENT_TimeResetEnd = 0x0001 , EVENT_TimeUpdate = 0x0004 } |
Event Id enumeration for the nEventId. More... | |
![]() | |
static const int | ADTF_MAX_CLOCK_NAME_LENGTH = 256 |
The maximum length of clock names, due to length restrictions when storing names in the clock extension of DAT files. | |
The IReferenceClock interface provides the reference time source for the filter graph.
See also Clock Concept for further information on timings within ADTF. Default implementation of provide service is reached by CID_ADTF_REFERENCE_CLOCK.
Definition at line 363 of file reference_clock_intf.h.
ADTF_IID | ( | IReferenceClock | , |
"reference_clock.flash.streaming.adtf.iid" | ) |
Marks the IReferenceClock
to be castable with the ucom_cast.
|
pure virtual |
Returns a new instance of a Sync2Ref Channel implementation.
[out] | pSync2RefChannel | The pointer to the new instance. |
[in] | strName | An optional name of the channel (for logging purposes, need not be unique) |
[in] | strMethod | If given this method will be used, otherwise the set default. |
ERR_NOT_FOUND | There is no such Sync2Ref method available |
Implemented in IReferenceClock, IReferenceClock, IReferenceClock, IReferenceClock, and IReferenceClock.
References GetSync2RefChannel().
Referenced by ADTF_IID(), ConvertTimeOffset(), and GetSync2RefChannel().
|
virtual |
Returns a new instance of a Sync2Ref Channel implementation.
[out] | pSync2RefChannel | The pointer to the new instance. |
[in] | strName | An optional name of the channel (for logging purposes, need not be unique) |
[in] | strMethod | If given this method will be used, otherwise the set default. |
ERR_NOT_FOUND | There is no such Sync2Ref method available |
Implements IReferenceClock.
Reimplemented in IReferenceClock, IReferenceClock, IReferenceClock, IReferenceClock, and IReferenceClock.