ADTF
IReferenceClock::ITimeGuardabstract

Interface for time manipulation and monitoring. More...

Inheritance diagram for IReferenceClock::ITimeGuard:
[legend]

Public Member Functions

 ADTF_IID (ITimeGuard, "time_guard.reference_clock.penguin.streaming.adtf.iid")
 
virtual tResult CreateBarrier (base::flash::tNanoSeconds tmBegin, base::flash::tNanoSeconds tmEnd, ucom::ant::iobject_ptr< ITimeBarrier > &pBarrier)=0
 Creates a new time barrier at tmTimePoint. More...
 
virtual void Cancel ()=0
 Cancels all ongoing and future ITimeBarrier::WaitUntilBegin() calls.
 
- Public Member Functions inherited from IObject
 ADTF_IID (IObject, "object.ant.ucom.adtf.iid")
 Marks the IObject to be castable with the ucom_cast() More...
 

Additional Inherited Members

- Protected Member Functions inherited from IObject
 ~IObject ()=default
 Protected destructor --> Use implemented Destroy() instead of delete!
 

Detailed Description

Interface for time manipulation and monitoring.

See also
Time Barrier Architecture

Definition at line 648 of file reference_clock_intf.h.

Member Function Documentation

◆ CreateBarrier()

virtual tResult CreateBarrier ( base::flash::tNanoSeconds  tmBegin,
base::flash::tNanoSeconds  tmEnd,
ucom::ant::iobject_ptr< ITimeBarrier > &  pBarrier 
)
pure virtual

Creates a new time barrier at tmTimePoint.

Parameters
[in]tmBeginThe begin time point of the time barrier. If negative, no begin time point will be created and you cannot use ITimeBarrier::WaitUntilBegin().
[in]tmEndThe end time point of the time barrier. If negative, no end time point will be created.
[out]pBarrierCall ITimeBarrier::WaitUntilBegin() to sleep until tmBegin is reached, and keep this object until all your computations that need to be completed before tmEnd are done.
Returns
Standard result.