ADTF
encoding_sample_writer< WriterImplementation >

Sample Writer that provides samples that can be updated via a Codec. More...

Inheritance diagram for encoding_sample_writer< WriterImplementation >:
[legend]

Public Member Functions

cSampleWithCodec MakeSample (base::flash::tNanoSeconds tmTimeStamp)
 Creates a new Sample with an attached Sample Codec. More...
 
tResult SetType (const ucom::ant::iobject_ptr< const streaming::ant::IStreamType > &pStreamType) override
 Sets the initial stream type of a streamer. More...
 
tResult ChangeType (const ucom::ant::iobject_ptr< const streaming::ant::IStreamType > &pStreamType) override
 Communicates a type change for all following samples. More...
 
tResult Write (cSampleWithCodec &oSampleWithCodec)
 Write a sample to the attached Sample Stream. More...
 
- Public Member Functions inherited from cSampleWriter
void SetName (const char *strName) override
 Sets the name of the streamer. More...
 
tResult GetName (base::ant::IString &&strName) override
 Retrieves the name of the streamer. More...
 
tResult GetType (ucom::ant::iobject_ptr< const ant::IStreamType > &pStreamType) const override
 Returns the initial stream type of the streamer. More...
 
tResult BeginStreaming (ISampleStream &oSampleStream) override
 Begin streaming on the given sample stream. More...
 
tResult EndStreaming () override
 End streaming. More...
 
tResult SetStreamerPin (const ucom::ant::iobject_ptr< IStreamerPin > &pStreamerPin) override
 Sets the pin that the streamer is associated with. More...
 
tResult Write (const ucom::ant::iobject_ptr< const ant::ISample > &pSample) override
 Writes a sample to the connected sample stream. More...
 
virtual tResult Transmit (const ucom::ant::iobject_ptr< const ant::ISample > &pSample)
 For compatibility purposes, call Write() instead. More...
 
tResult Flush () override
 Flushes the writer. More...
 
tResult SetStreamError (tResult oError) override
 Reports and handles an error via the sample stream. More...
 
tResult ManualTrigger (base::flash::tNanoSeconds tmActivationTime=base::flash::tNanoSeconds {-1}) override
 Calls all connected runners synchronously in this call. More...
 
- Public Member Functions inherited from cSampleCodecFactory
 cSampleCodecFactory ()
 Empty constructor. More...
 
 cSampleCodecFactory (const char *strStructName, const char *strMediaDescription, ddl::tDataRepresentation eDefaultDataRepresentation=ddl::tDataRepresentation::Deserialized)
 Constructor that take a DDL string for initialization. More...
 
 cSampleCodecFactory (const ddl::dd::StructType &oStruct, const ddl::dd::DataDefinition &oParentDD, ddl::tDataRepresentation eDefaultDataRepresentation=ddl::tDataRepresentation::Deserialized)
 Constructor that uses an OO-DDL struct for initialization. More...
 
 cSampleCodecFactory (const std::pair< std::string, std::string > &oMDDescription, ddl::tDataRepresentation eDefaultDataRepresentation=ddl::tDataRepresentation::Deserialized)
 Construct a new c Sample Codec Factory. More...
 
 cSampleCodecFactory (const ddl::DDStructure &oTypeDefinition, ddl::tDataRepresentation eDefaultDataRepresentation=ddl::tDataRepresentation::Deserialized)
 Construct a new c Sample Codec Factory. More...
 
 cSampleCodecFactory (const streaming::ant::IStreamType &oStreamType)
 Construct a new c Sample Codec Factory. More...
 
 cSampleCodecFactory (const ucom::ant::iobject_ptr< const streaming::ant::IStreamType > &pStreamType)
 Construct a new c Sample Codec Factory. More...
 
 cSampleCodecFactory (const cSampleCodecFactory &)
 Copy constructor.
 
 cSampleCodecFactory (cSampleCodecFactory &&)
 Move constructor.
 
cSampleCodecFactoryoperator= (const cSampleCodecFactory &)
 assignment operator
 
cSampleCodecFactoryoperator= (cSampleCodecFactory &&)
 Move assignment operator.
 
tResult IsValid () const
 Check if the factory is in a valid state. More...
 
cStaticSampleDecoder MakeStaticDecoderFor (const adtf::streaming::ISample &oSample, ddl::tDataRepresentation eDataRepresentation) const
 Creates a static decoder for the given sample. More...
 
cStaticSampleCodec MakeStaticCodecFor (adtf::streaming::ISample &oSample, ddl::tDataRepresentation eDataRepresentation) const
 Creates a static codec for the given sample. More...
 
cSampleDecoder MakeDecoderFor (const adtf::streaming::ISample &oSample, ddl::tDataRepresentation eDataRepresentation) const
 Creates a decoder for the given sample. More...
 
cSampleCodec MakeCodecFor (adtf::streaming::ISample &oSample, ddl::tDataRepresentation eDataRepresentation) const
 Creates a codec for the given sample. More...
 
tElement GetElement (const tCodecIndex &oCodecIndex) const
 Retrieves an element for the codec index. More...
 
tElement GetElement (const std::string &strElementFullName) const
 Retrieves an element for the given name. More...
 
const tElementsGetElements () const
 Retrieves the elements of the factory to get element information. More...
 
size_t GetElementChildCount (const tCodecIndex &oCodecIndex) const
 Retrieves the amount of child elements for the given codec index. More...
 
std::string GetElementFullName (const tCodecIndex &oCodecIndex) const
 Retrieves the full name of the element within its main structure. More...
 
std::string GetElementName (const tCodecIndex &oCodecIndex) const
 Retrieves the name of the element within its structured element. More...
 
const std::string & GetElementBaseName (const tCodecIndex &oCodecIndex) const
 Retrieves the base name of the element within its structured element. More...
 
size_t GetStaticBufferSize (ddl::tDataRepresentation eRep=ddl::tDataRepresentation::Deserialized) const
 Gets the static buffer size in bytes for the structure. More...
 
ddl::tDataRepresentation GetDefaultDataRepresentation () const
 Returns the current default data representation whuke creating codec or decoder. More...
 
cStaticSampleDecoder MakeStaticDecoderFor (const adtf::ucom::iobject_ptr< const adtf::streaming::ISample > &pSample, ddl::tDataRepresentation eDataRepresentation) const
 Creates a static decoder for the given sample. More...
 
cSampleDecoder MakeDecoderFor (const adtf::ucom::iobject_ptr< const adtf::streaming::ISample > &pSample, ddl::tDataRepresentation eDataRepresentation) const
 Creates a decoder for the given sample. More...
 
cStaticSampleCodec MakeStaticCodecFor (const adtf::ucom::iobject_ptr< adtf::streaming::ISample > &pSample, ddl::tDataRepresentation eDataRepresentation) const
 Creates a static codec for the given sample. More...
 
cSampleCodec MakeCodecFor (const adtf::ucom::iobject_ptr< adtf::streaming::ISample > &pSample, ddl::tDataRepresentation eDataRepresentation) const
 Creates a codec for the given sample. More...
 
cStaticSampleDecoder MakeStaticDecoderFor (const adtf::ucom::iobject_ptr< const adtf::streaming::ISample > &pSample) const
 Creates a static decoder for the given sample using the default data representation. More...
 
cSampleDecoder MakeDecoderFor (const adtf::ucom::iobject_ptr< const adtf::streaming::ISample > &pSample) const
 Creates a decoder for the given sample using the default data representation. More...
 
cStaticSampleCodec MakeStaticCodecFor (const adtf::ucom::iobject_ptr< adtf::streaming::ISample > &pSample) const
 Creates a static codec for the given sample using the default data representation. More...
 
cSampleCodec MakeCodecFor (const adtf::ucom::iobject_ptr< adtf::streaming::ISample > &pSample) const
 Creates a codec for the given sample using the default data representation. More...
 
cStaticSampleDecoder MakeStaticDecoderFor (const adtf::streaming::ISample &oSample) const
 Creates a static decoder for the given sample using the default data representation. More...
 
cSampleDecoder MakeDecoderFor (const adtf::streaming::ISample &oSample) const
 Creates a decoder for the given sample using the default data representation. More...
 
cStaticSampleCodec MakeStaticCodecFor (adtf::streaming::ISample &oSample) const
 Creates a static codec for the given sample using the default data representation. More...
 
cSampleCodec MakeCodecFor (adtf::streaming::ISample &oSample) const
 Creates a codec for the given sample using the default data representation. More...
 
void Resolve (tCodecIndex &oCodecIndex) const
 retrieves the lyoutinformation for the given codec index. More...
 
- Public Member Functions inherited from cCodecFactoryLegacy
tCodecIndex Resolve (tCodecLeafIndex nElementIndex) const
 Legacy: Retrieves a codec index with element information for the given leaf index. More...
 
size_t GetStaticElementCount () const
 Legacy: Gets the leaf count. More...
 
tResult GetStaticElement (tCodecLeafIndex nElementLeafIndex, const ddl::StructElement *&pElement) const
 Legacy: Access information about an element. More...
 
tCodecLeafIndex FindIndex (const char *strElementName) const
 Legacy: Retrieves the leaf index of the first element in the given element path. More...
 
tCodecLeafIndex FindArrayIndex (const char *strArrayName) const
 Legacy: Retrieves the leaf index of the first element in the given element path. More...
 
tCodecLeafIndex FindStructIndex (const char *strStructName) const
 Legacy: Retrieves the leaf index of the first element in the given element path. More...
 

Additional Inherited Members

- Public Types inherited from cSampleCodecFactory
typedef ddl::codec::FactoryElement< sample_codec_factory_access< const cSampleCodecFactory > > tElement
 Iterator value element type for the factory to get element information. More...
 
typedef ddl::codec::ChildElements< sample_codec_factory_access< const cSampleCodecFactory > > tElements
 Iterator container to iterate all elements of the factory. More...
 
- Public Types inherited from cCodecFactoryLegacy
typedef ddl::StructElement DefinedStructElementType
 type definition for the old access_element API.
 
- Static Public Member Functions inherited from cCodecFactoryLegacy
static const char * GetStaticStructElementName (const ddl::StructElement *pElement)
 Legacy helper funtion to support old adtf_ddl::element_access::find_* functions. More...
 
- Protected Attributes inherited from cSampleWriter
std::unique_ptr< cImplementation > m_pImplementation
 

Detailed Description

template<typename WriterImplementation = streaming::flash::cSampleWriter>
class adtf::mediadescription::osborn::encoding_sample_writer< WriterImplementation >

Sample Writer that provides samples that can be updated via a Codec.

See Media Description Data Generator Filter Plugin for an example usage.

Definition at line 202 of file codec_sample_streamer.h.

Member Function Documentation

◆ ChangeType()

tResult ChangeType ( const ucom::ant::iobject_ptr< const streaming::ant::IStreamType > &  pType)
inlineoverridevirtual

Communicates a type change for all following samples.

Parameters
[in]pTypeThe new stream type
Returns
Standard result. Errors will be reported via the associated sample stream.

Reimplemented from cSampleWriter.

Definition at line 236 of file codec_sample_streamer.h.

◆ MakeSample()

cSampleWithCodec MakeSample ( base::flash::tNanoSeconds  tmTimeStamp)
inline

Creates a new Sample with an attached Sample Codec.

Parameters
[in]tmTimeStampThe sample timestamp.
Returns
The new sample with an attached Sample Codec.

Definition at line 212 of file codec_sample_streamer.h.

References adtf::streaming::ant::alloc_sample(), cSampleCodecFactory::MakeCodecFor(), and THROW_IF_FAILED.

◆ SetType()

tResult SetType ( const ucom::ant::iobject_ptr< const streaming::ant::IStreamType > &  pStreamType)
inlineoverridevirtual

Sets the initial stream type of a streamer.

Parameters
[in]pStreamTypeThe stream type
Returns
Standard result.

Reimplemented from cSampleWriter.

Definition at line 221 of file codec_sample_streamer.h.

◆ Write()

tResult Write ( cSampleWithCodec oSampleWithCodec)
inline

Write a sample to the attached Sample Stream.

Parameters
[in]oSampleWithCodecThe sample that you created with MakeSample(). This calls cSampleWithCodec::Release(), so do not call any further methods of the sample afterwards.
Returns
Standard result.

Definition at line 252 of file codec_sample_streamer.h.

References cSampleWithCodec::Release().