ADTF  3.18.2
cReferenceSample

Sample that uses samples buffers that do not copy the data, but only keep a reference to it. More...

Inheritance diagram for cReferenceSample:
[legend]

Public Member Functions

 cReferenceSample ()
 CTOR. More...
 
- Public Member Functions inherited from cSample
 ADTF_CLASS_ID_NAME (cSample, "sample.streaming.adtf.cid", "ADTF Default Sample")
 private d pointer More...
 
 cSample ()
 resolver for multiple inheritance on IObject More...
 
 cSample (const ucom::ant::iobject_ptr< ISampleBufferFactory > &oSampleFactory)
 Construct an instance of a memory managed sample MemoryManaged BufferFactory ... More...
 
virtual ~cSample ()
 DTOR.
 
tResult Lock (ucom::ant::iobject_ptr_shared_locked< const adtf::streaming::ant::ISampleBuffer > &oSampleBuffer) const override
 
tResult WriteLock (ucom::ant::iobject_ptr_locked< ISampleBuffer > &oSampleBuffer, size_t szPreAllocateSize) override
 
tResult Set (const ant::ISample &oSample) override
 
tResult Get (ant::ISample &oSample) const override
 
tResult Reset () override
 
tTimeStamp GetTime () const
 
tResult SetTime (tTimeStamp tmTimeStamp)
 
uint32_t GetFlags () const override
 
tResult SetFlags (uint32_t ui32Flags) override
 
tResult Set (tTimeStamp tmTime, const void *pData, size_t nSize, uint32_t ui32Flags=0) override
 
tResult GetSampleBufferFactory (ucom::ant::iobject_ptr< ISampleBufferFactory > &oFactory) const override
 
tResult GetSampleInfo (ucom::ant::iobject_ptr< const ISampleInfo > &oSampleInfo) const override
 
tResult GetSampleInfo (ucom::ant::iobject_ptr< ISampleInfo > &oSampleInfo) override
 
tResult GetSampleLog (ucom::ant::iobject_ptr< ISampleLog > &oSampleLog) const override
 
base::flash::tNanoSeconds GetTimeNs () const override
 
tResult SetTime (base::flash::tNanoSeconds tmTimeStamp) override
 
tResult Set (base::flash::tNanoSeconds tmTimeStamp, const void *pData, size_t szSize, uint32_t ui32Flags=0) override
 
uint32_t GetSubStreamId () const override
 
void SetSubStreamId (uint32_t nSubStreamId) override
 
tResult SetSampleBufferFactory (const ucom::ant::iobject_ptr< ISampleBufferFactory > &pFactory)
 Sets the reference to the buffer factory, which will be used to create the user data content in ISampleBuffer. More...
 
tResult SetSampleInfo (const ucom::ant::iobject_ptr< ISampleInfo > &oInfo)
 
tResult SetSampleLog (const ucom::ant::iobject_ptr< ISampleLog > &oLog)
 
- Public Member Functions inherited from object< ant::ISample, flash::ISample, hollow::ISample, ucom::ant::IClassInfo >
tResult GetInterface (const char *i_strIID, void *&o_pInterface) override
 Query interfaces on an object. More...
 
tResult GetInterface (const char *i_strIID, const void *&o_pInterface) const override
 Provides const correct interface querying. More...
 
void Destroy () const override
 Destruct and deallocate instantiations of type IObject. More...
 
- 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

Sample that uses samples buffers that do not copy the data, but only keep a reference to it.

Use this with EXTREME care!! Keep these samples in a adtf::ucom::ant::weak_object_ptr in order to be able to check if they no longer exist before you manipulate the data again.

Definition at line 148 of file sample.h.

Constructor & Destructor Documentation

◆ cReferenceSample()

CTOR.

Uses the sample buffer factory from get_reference_buffer_factory.