ADTF
Loading...
Searching...
No Matches
adtf::services::osborn::IReferenceClock Class Referenceabstract

The IReferenceClock interface provides the reference time source for the filter graph. More...

#include <reference_clock_intf.h>

Inherits adtf::services::giant::IReferenceClock.

Inherited by adtf::services::penguin::IReferenceClock.

Classes

class  ISystemClock
 

Public Member Functions

 ADTF_IID (IReferenceClock, "reference_clock.osborn.streaming.adtf.iid")
 
virtual tResult ConvertStreamTime (adtf::base::flash::tNanoSeconds tmStreamTime, adtf::base::ant::IString &&strStringRepresentation) const =0
 
virtual tResult ConvertStreamTime (const char *strStringRepresentation, adtf::base::flash::tNanoSeconds &tmStreamTime) const =0
 
virtual tResult ConvertTimeOffset (adtf::base::flash::tNanoSeconds tmOffset, adtf::base::ant::IString &&strStringRepresentation) const =0
 
virtual tResult ConvertTimeOffset (const char *strStringRepresentation, adtf::base::flash::tNanoSeconds &tmOffset) const =0
 
virtual tResult GetSync2RefChannel (bool bSystemClockTimestamps, adtf::ucom::ant::iobject_ptr< giant::IReferenceClock::ISync2RefChannel > &pSync2RefChannel, const char *strName=nullptr) const =0
 
virtual tResult GetSync2RefChannel (adtf::ucom::ant::iobject_ptr< ISync2RefChannel > &pSync2RefChannel, const char *strName=nullptr, const char *strMethod=nullptr) const=0
 
virtual tResult GetSync2RefChannel (adtf::ucom::ant::iobject_ptr< ISync2RefChannel > &pSync2RefChannel, const char *strName=nullptr, const char *strMethod=nullptr) const=0
 
virtual tResult GetSync2RefChannel (adtf::ucom::ant::iobject_ptr< ISync2RefChannel > &pSync2RefChannel, const char *strName=nullptr, const char *strMethod=nullptr) const=0
 
- Public Member Functions inherited from adtf::services::giant::IReferenceClock
 ADTF_IID (IReferenceClock, "reference_clock.giant.streaming.adtf.iid")
 
- Public Member Functions inherited from adtf::services::flash::IReferenceClock
 ADTF_IID (IReferenceClock, "reference_clock.flash.streaming.adtf.iid")
 
virtual base::flash::tNanoSeconds GetTimeNs () const =0
 
virtual base::flash::tNanoSeconds GetStreamTimeNs () const =0
 
- Public Member Functions inherited from adtf::services::ant::IReferenceClock
 ADTF_IID (IReferenceClock, "reference_clock.ant.streaming.adtf.iid")
 
virtual tTimeStamp GetTime () const =0
 
virtual tTimeStamp GetStreamTime () const =0
 
virtual tResult RegisterClock (const adtf::ucom::ant::iobject_ptr< IClock > &pClock)=0
 
virtual tResult UnregisterClock (const adtf::ucom::ant::iobject_ptr< IClock > &pClock)=0
 
virtual tResult GetClocks (IClockListCallback &oCallback) const =0
 
virtual tResult GetClock (const char *strName, adtf::ucom::ant::iobject_ptr< IClock > &pClock) const =0
 
virtual tResult SetMainClock (const char *strName)=0
 
virtual tResult GetMainClock (adtf::base::ant::IString &&strName) const =0
 
virtual tResult SetStreamClock (const char *strName)=0
 
virtual tResult GetStreamClock (adtf::base::ant::IString &&strName) const =0
 
virtual tResult RegisterSync2RefFactory (const adtf::ucom::ant::iobject_ptr< ISync2RefChannelFactory > &oSync2RefFactory)=0
 
virtual tResult UnregisterSync2RefFactory (const adtf::ucom::ant::iobject_ptr< ISync2RefChannelFactory > &oSync2RefFactory)=0
 
virtual tResult ListSync2RefMethods (ISync2RefListCallback &oCallback)=0
 
- Public Member Functions inherited from adtf::ucom::ant::IObject
 ADTF_IID (IObject, "object.ant.ucom.adtf.iid")
 

Protected Member Functions

 ~IReferenceClock ()=default
 not destructable
 
- Protected Member Functions inherited from adtf::services::giant::IReferenceClock
 ~IReferenceClock ()=default
 not destructable
 
- Protected Member Functions inherited from adtf::services::flash::IReferenceClock
 ~IReferenceClock ()=default
 not destructable
 
- Protected Member Functions inherited from adtf::services::ant::IReferenceClock
 ~IReferenceClock ()=default
 not destructable
 
- Protected Member Functions inherited from adtf::ucom::ant::IObject
 ~IObject ()=default
 Protected destructor --> Only the final implementation can be destroyed!
 

Additional Inherited Members

- Public Types inherited from adtf::services::ant::IReferenceClock
enum  tReferenceClockEventId { EVENT_TimeResetBegin = 0x0000 , EVENT_TimeResetEnd = 0x0001 , EVENT_TimeUpdate = 0x0004 }
 
- Static Public Attributes inherited from adtf::services::ant::IReferenceClock
static const int ADTF_MAX_CLOCK_NAME_LENGTH = 256
 

Detailed Description

The IReferenceClock interface provides the reference time source for the filter graph.

See also Clock Handling for further information on timings within ADTF. Default implementation of provide service is reached by CID_ADTF_REFERENCE_CLOCK.

Member Function Documentation

◆ ADTF_IID()

adtf::services::osborn::IReferenceClock::ADTF_IID ( IReferenceClock ,
"reference_clock.osborn.streaming.adtf.iid"  )

◆ ConvertStreamTime() [1/2]

virtual tResult adtf::services::osborn::IReferenceClock::ConvertStreamTime ( adtf::base::flash::tNanoSeconds tmStreamTime,
adtf::base::ant::IString && strStringRepresentation ) const
pure virtual

Converts an absolute timestamp into a textual representation based on the settings of the clock service.

Parameters
[in]tmStreamTimeThe timestamp to convert.
{out]strStringRepresentation The textual representation will be stored here.
Returns
Standard result.

◆ ConvertStreamTime() [2/2]

virtual tResult adtf::services::osborn::IReferenceClock::ConvertStreamTime ( const char * strStringRepresentation,
adtf::base::flash::tNanoSeconds & tmStreamTime ) const
pure virtual

Converts a textual timestamp into an absolute numeric timestamp based on the settings of the clock service.

Parameters
[in]strStringRepresentationThe textual representation to convert from.
[out]tmStreamTimeThe numeric timestamp will be stored here.
Returns
Standard result.

◆ ConvertTimeOffset() [1/2]

virtual tResult adtf::services::osborn::IReferenceClock::ConvertTimeOffset ( adtf::base::flash::tNanoSeconds tmOffset,
adtf::base::ant::IString && strStringRepresentation ) const
pure virtual

Converts a relative timestamp into a textual representation based on the settings of the clock service.

Parameters
tmOffsetThe timestamp to convert.
{out]strStringRepresentation The textual representation will be stored here.
Returns
Standard result.

◆ ConvertTimeOffset() [2/2]

virtual tResult adtf::services::osborn::IReferenceClock::ConvertTimeOffset ( const char * strStringRepresentation,
adtf::base::flash::tNanoSeconds & tmOffset ) const
pure virtual

Converts a textual timestamp into a relative numeric timestamp based on the settings of the clock service.

Parameters
strStringRepresentationThe textual representation to convert from.
tmOffsetThe numeric timestamp will be stored here.
Returns
Standard result.

◆ GetSync2RefChannel() [1/4]

virtual tResult adtf::services::ant::IReferenceClock::GetSync2RefChannel ( adtf::ucom::ant::iobject_ptr< ISync2RefChannel > & pSync2RefChannel,
const char * strName = nullptr,
const char * strMethod = nullptr ) const
virtual

Returns a new instance of a Sync2Ref Channel implementation.

Parameters
[out]pSync2RefChannelThe pointer to the new instance.
[in]strNameAn optional name of the channel (for logging purposes, need not be unique)
[in]strMethodIf given this method will be used, otherwise the set default.
Return values
ERR_NOT_FOUNDThere is no such Sync2Ref method available
Deprecated
Use GetSync2RefChannel(adtf::ucom::ant::iobject_ptr<ISync2RefChannel>& pSync2RefChannel, const char* strName = nullptr, const char* strMethod = nullptr) instead.

Reimplemented from adtf::services::giant::IReferenceClock.

Reimplemented in adtf::services::riddler::IReferenceClock, and adtf::services::vision::IReferenceClock.

◆ GetSync2RefChannel() [2/4]

virtual tResult adtf::services::flash::IReferenceClock::GetSync2RefChannel ( adtf::ucom::ant::iobject_ptr< ISync2RefChannel > & pSync2RefChannel,
const char * strName = nullptr,
const char * strMethod = nullptr ) const
virtual

Returns a new instance of a Sync2Ref Channel implementation.

Parameters
[out]pSync2RefChannelThe pointer to the new instance.
[in]strNameAn optional name of the channel (for logging purposes, need not be unique)
[in]strMethodIf given this method will be used, otherwise the set default.
Return values
ERR_NOT_FOUNDThere is no such Sync2Ref method available
Deprecated
Use GetSync2RefChannel(adtf::ucom::ant::iobject_ptr<ISync2RefChannel>& pSync2RefChannel, const char* strName = nullptr, const char* strMethod = nullptr) instead.

Reimplemented from adtf::services::giant::IReferenceClock.

Reimplemented in adtf::services::riddler::IReferenceClock, and adtf::services::vision::IReferenceClock.

◆ GetSync2RefChannel() [3/4]

virtual tResult adtf::services::giant::IReferenceClock::GetSync2RefChannel ( adtf::ucom::ant::iobject_ptr< ISync2RefChannel > & pSync2RefChannel,
const char * strName = nullptr,
const char * strMethod = nullptr ) const
virtual

Returns a new instance of a Sync2Ref Channel implementation.

Parameters
[out]pSync2RefChannelThe pointer to the new instance.
[in]strNameAn optional name of the channel (for logging purposes, need not be unique)
[in]strMethodIf given this method will be used, otherwise the set default.
Return values
ERR_NOT_FOUNDThere is no such Sync2Ref method available
Deprecated
Use GetSync2RefChannel(adtf::ucom::ant::iobject_ptr<ISync2RefChannel>& pSync2RefChannel, const char* strName = nullptr, const char* strMethod = nullptr) instead.

Implements adtf::services::giant::IReferenceClock.

Reimplemented in adtf::services::riddler::IReferenceClock, and adtf::services::vision::IReferenceClock.

◆ GetSync2RefChannel() [4/4]

virtual tResult adtf::services::osborn::IReferenceClock::GetSync2RefChannel ( bool bSystemClockTimestamps,
adtf::ucom::ant::iobject_ptr< giant::IReferenceClock::ISync2RefChannel > & pSync2RefChannel,
const char * strName = nullptr ) const
pure virtual

Returns a new instance of a Sync2Ref Channel implementation.

In case that the reference clock uses the system clock and your timestamps already are derived from the system clock, the returned channel will simply return the timestamps unmodified.

Parameters
[in]bSystemClockTimestampsTrue if the timestamps you want to synchronize are in sync with the local system clock, false if they are from independent unsynchronized clocks.
[out]pSync2RefChannelThe pointer to the new instance.
[in]strNameAn optional name of the channel (for logging purposes, need not be unique)
Returns
Standard result.
Deprecated
Use adtf::services::vision::IReferenceClock::GetSync2RefChannel(bool bSystemClockTimestamps, adtf::ucom::ant::iobject_ptr<IReferenceClock::ISync2RefChannel>& pSync2RefChannel, const char* strName = nullptr) instead.

Implemented in adtf::services::IReferenceClock, adtf::services::riddler::IReferenceClock, and adtf::services::vision::IReferenceClock.


The documentation for this class was generated from the following file: