This reader uses the media description to decode sample data. More...
#include <codec_sample_streamer_legacy.h>
Public Member Functions | |
decoding_sample_reader () | |
Default Constructor. | |
tResult | SetType (const ucom::ant::iobject_ptr< const streaming::ant::IStreamType > &pStreamType) override |
Sets the initial stream type of a streamer. | |
void | SetAcceptTypeCallback (const std::function< tResult(const ucom::ant::iobject_ptr< const streaming::ant::IStreamType > &pStreamType)> &fnAcceptTypeCallback) |
Sets a callback that will be called for each new Stream Type. | |
bool | GetNextDecoder (ant::cSampleDecoder &oDecoder) |
Returns a decoder for the next available Sample. | |
bool | GetNextDecoder (ant::cSampleDecoder &oDecoder, base::flash::tNanoSeconds &tmSampleTime) |
Returns a decoder for the next available Sample. | |
bool | GetLastDecoder (ant::cSampleDecoder &oDecoder) |
Returns a decoder for the last Sample currently available. | |
bool | GetLastDecoder (ant::cSampleDecoder &oDecoder, base::flash::tNanoSeconds &tmSampleTime) |
Returns a decoder for the last Sample currently available. | |
![]() | |
cSampleReader (ant::ISampleReaderQueue &oQueue, ant::ISampleStreamAccess::tMode eAccessMode, bool bStoreLastSample) | |
void | SetName (const char *strName) override |
Sets the name of the streamer. | |
tResult | GetName (base::ant::IString &&strName) override |
Retrieves the name of the streamer. | |
tResult | GetType (ucom::ant::iobject_ptr< const ant::IStreamType > &pStreamType) const override |
Returns the initial stream type of the streamer. | |
tResult | BeginStreaming (ISampleStream &oSampleStream) override |
Begin streaming on the given sample stream. | |
tResult | EndStreaming () override |
End streaming. | |
tResult | SetStreamerPin (const ucom::ant::iobject_ptr< IStreamerPin > &pStreamerPin) override |
Sets the pin that the streamer is associated with. | |
void | SetAcceptTypeCallback (const std::function< tResult(const ucom::ant::iobject_ptr< const ant::IStreamType > &pStreamType)> &fnAcceptTypeCallback) |
Sets a callback function which is called while a Stream Type is received - see also AcceptType and IsCompatible implementations. | |
void | SetStreamErrorCallback (const std::function< tResult(tResult oStreamError)> &fnStreamErrorCallback) |
A callback function to react on stream errors. | |
tResult | SetStreamError (tResult oError) override |
Sets an error on the associated sample stream. | |
tResult | GetLastType (ucom::ant::iobject_ptr< const ant::IStreamType > &pType) override |
Returns the last stream type that was read from the sample stream. | |
tResult | GetNextSample (ucom::ant::iobject_ptr< const ant::ISample > &pSample) override |
Reads the next available sample from the associated sample stream. | |
tResult | GetLastSample (ucom::ant::iobject_ptr< const ant::ISample > &pSample) override |
Reads the latest available sample from the associated sample stream. | |
void | Reset () |
tResult | ReadAllAvailableItems () override |
Reads all available items from the sample stream into internal queues. | |
tResult | RequestSamples (ucom::ant::iobject_ptr< hollow::IStreamingRequest > &pRequest, uint32_t nSubStreamId, const base::ant::IProperties *pRequestProperties=nullptr) |
RequestSamples of the given Substream to be generated and/or transmitted. | |
void | SetSynchronousTypeUpdateCallback (const std::function< tResult(const ucom::ant::iobject_ptr< const ant::IStreamType > &pStreamType)> &fnRequestTypeUpdateCallback) |
![]() | |
cSampleCodecFactory (const cStructureType &oTypeDefinition) | |
cSampleCodecFactory (const streaming::ant::IStreamType &oStreamType) | |
cSampleCodecFactory (const ucom::ant::iobject_ptr< const streaming::ant::IStreamType > &pStreamType) | |
size_t | FindIndex (const char *strElementName) const |
size_t | FindArrayIndex (const char *strArrayName) const |
size_t | FindStructIndex (const char *strStructName) const |
const adtf_ddl::tStructElement & | GetStaticElement (size_t nElementIndex) const |
cSampleCodecFactory (const char *strStructName, const char *strMediaDescription, adtf_ddl::tDataRepresentation eDefaultDataRepresentation=adtf_ddl::tDataRepresentation::Deserialized) | |
Constructor that take a DDL string for initialization. | |
cSampleCodecFactory (const adtf_ddl::cDDLComplex *pStruct, adtf_ddl::tDataRepresentation eDefaultDataRepresentation=adtf_ddl::tDataRepresentation::Deserialized) | |
Constructor that uses an OO-DDL struct for initialization. | |
cSampleCodecFactory (cSampleCodecFactory &)=default | |
Copy constructor. | |
cSampleCodecFactory (const cSampleCodecFactory &)=default | |
Copy constructor. | |
cSampleCodecFactory (cSampleCodecFactory &&)=default | |
Move constructor. | |
tResult | GetStaticElement (size_t nIndex, const adtf_ddl::tStructElement *&pElement) const |
Access information about an element. | |
![]() | |
cSampleCodecFactory ()=default | |
Empty constructor. | |
cSampleCodecFactory (const char *strStructName, const char *strMediaDescription, adtf_ddl::tDataRepresentation eDefaultDataRepresentation=adtf_ddl::tDataRepresentation::Deserialized) | |
Constructor that take a DDL string for initialization. | |
cSampleCodecFactory (const adtf_ddl::cDDLComplex *pStruct, adtf_ddl::tDataRepresentation eDefaultDataRepresentation=adtf_ddl::tDataRepresentation::Deserialized) | |
Constructor that uses an OO-DDL struct for initialization. | |
cSampleCodecFactory (cSampleCodecFactory &)=default | |
Copy constructor. | |
cSampleCodecFactory (const cSampleCodecFactory &)=default | |
Copy constructor. | |
cSampleCodecFactory (cSampleCodecFactory &&)=default | |
Move constructor. | |
cSampleCodecFactory & | operator= (cSampleCodecFactory &)=default |
assignment operator | |
cSampleCodecFactory & | operator= (cSampleCodecFactory &&)=default |
Move assignment operator. | |
tResult | IsValid () const |
Check if the factory is in a valid state. | |
cStaticSampleDecoder | MakeStaticDecoderFor (const adtf::streaming::ISample &oSample, adtf_ddl::tDataRepresentation eDataRepresentation) const |
Creates a static decoder for the given sample. | |
cStaticSampleCodec | MakeStaticCodecFor (adtf::streaming::ISample &oSample, adtf_ddl::tDataRepresentation eDataRepresentation) const |
Creates a static codec for the given sample. | |
cSampleDecoder | MakeDecoderFor (const adtf::streaming::ISample &oSample, adtf_ddl::tDataRepresentation eDataRepresentation) const |
Creates a decoder for the given sample. | |
cSampleCodec | MakeCodecFor (adtf::streaming::ISample &oSample, adtf_ddl::tDataRepresentation eDataRepresentation) const |
Creates a codec for the given sample. | |
size_t | GetStaticElementCount () const |
tResult | GetStaticElement (size_t nIndex, const adtf_ddl::tStructElement *&pElement) const |
Access information about an element. | |
size_t | GetStaticBufferSize (adtf_ddl::tDataRepresentation eRep=adtf_ddl::tDataRepresentation::Deserialized) const |
adtf_ddl::tDataRepresentation | GetDefaultDataRepresentation () const |
cStaticSampleDecoder | MakeStaticDecoderFor (const adtf::ucom::iobject_ptr< const adtf::streaming::ISample > &pSample, adtf_ddl::tDataRepresentation eDataRepresentation) const |
Creates a static decoder for the given sample. | |
cSampleDecoder | MakeDecoderFor (const adtf::ucom::iobject_ptr< const adtf::streaming::ISample > &pSample, adtf_ddl::tDataRepresentation eDataRepresentation) const |
Creates a decoder for the given sample. | |
cStaticSampleCodec | MakeStaticCodecFor (const adtf::ucom::iobject_ptr< adtf::streaming::ISample > &pSample, adtf_ddl::tDataRepresentation eDataRepresentation) const |
Creates a static codec for the given sample. | |
cSampleCodec | MakeCodecFor (const adtf::ucom::iobject_ptr< adtf::streaming::ISample > &pSample, adtf_ddl::tDataRepresentation eDataRepresentation) const |
Creates a codec for the given sample. | |
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. | |
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. | |
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. | |
cSampleCodec | MakeCodecFor (const adtf::ucom::iobject_ptr< adtf::streaming::ISample > &pSample) const |
Creates a codec for the given sample using the default data representation. | |
cStaticSampleDecoder | MakeStaticDecoderFor (const adtf::streaming::ISample &oSample) const |
Creates a static decoder for the given sample using the default data representation. | |
cSampleDecoder | MakeDecoderFor (const adtf::streaming::ISample &oSample) const |
Creates a decoder for the given sample using the default data representation. | |
cStaticSampleCodec | MakeStaticCodecFor (adtf::streaming::ISample &oSample) const |
Creates a static codec for the given sample using the default data representation. | |
cSampleCodec | MakeCodecFor (adtf::streaming::ISample &oSample) const |
Creates a codec for the given sample using the default data representation. | |
Private Attributes | |
std::function< tResult(const ucom::ant::iobject_ptr< const streaming::ant::IStreamType > &pStreamType)> | m_fnAcceptCallback |
Additional Inherited Members | |
![]() | |
typedef adtf_ddl::tStructElement | DefinedStructElementType |
![]() | |
static const char * | GetStaticStructElementName (const adtf_ddl::tStructElement *pElement) |
add for legacy reason | |
![]() | |
ant::cDynamicSampleReaderQueue | m_oQueue |
ant::cDynamicSampleReaderQueue | m_oQueue |
ant::cDynamicSampleReaderQueue | m_oQueue |
ant::cDynamicSampleReaderQueue | m_oQueue |
![]() | |
std::unique_ptr< cImplementation > | m_pImplementation |
This reader uses the media description to decode sample data.
Just use it instead of the usual adtf::streaming::flash::cDynamicSampleReader implementation.
Definition at line 28 of file codec_sample_streamer_legacy.h.
|
inline |
Default Constructor.
Definition at line 36 of file codec_sample_streamer_legacy.h.
References adtf::mediadescription::get_codec_factory_from_stream_type(), RETURN_IF_FAILED, and RETURN_NOERROR.
|
inline |
Returns a decoder for the last Sample currently available.
[out] | oDecoder | This will be updated to decode the last sample. |
true | A sample was available and the oDecoder instance has been updated. |
false | No sample was available. |
Definition at line 117 of file codec_sample_streamer_legacy.h.
References GetLastDecoder().
Referenced by GetLastDecoder().
|
inline |
Returns a decoder for the last Sample currently available.
[out] | oDecoder | This will be updated to decode the last sample. |
[out] | tmSampleTime | Theis will be updated to the Sample timestamp |
true | A sample was available and the oDecoder instance has been updated. |
false | No sample was available. |
Definition at line 130 of file codec_sample_streamer_legacy.h.
References adtf::streaming::get_sample_time(), IS_FAILED, cDecoder::IsValid(), cSampleCodecFactory::MakeDecoderFor(), and THROW_IF_FAILED.
|
inline |
Returns a decoder for the next available Sample.
[out] | oDecoder | This will be updated to decode the next sample. |
true | A sample was available and the oDecoder instance has been updated. |
false | No sample was available. |
Definition at line 79 of file codec_sample_streamer_legacy.h.
References GetNextDecoder().
Referenced by GetNextDecoder().
|
inline |
Returns a decoder for the next available Sample.
[out] | oDecoder | This will be updated to decode the next Sample. |
[out] | tmSampleTime | Theis will be updated to the Sample timestamp |
true | A sample was available and the oDecoder instance has been updated. |
false | No sample was available. |
Definition at line 92 of file codec_sample_streamer_legacy.h.
References adtf::streaming::get_sample_time(), IS_FAILED, cDecoder::IsValid(), cSampleCodecFactory::MakeDecoderFor(), and THROW_IF_FAILED.
|
inline |
Sets a callback that will be called for each new Stream Type.
[in] | fnAcceptTypeCallback | The callback. If you do not accept the new Stream Type return an error from this. The reader will discard samples until you accept a Stream Type. |
Definition at line 68 of file codec_sample_streamer_legacy.h.
|
inlineoverridevirtual |
Sets the initial stream type of a streamer.
[in] | pStreamType | The stream type |
Reimplemented from cSampleReader.
Definition at line 51 of file codec_sample_streamer_legacy.h.
References adtf::mediadescription::get_codec_factory_from_stream_type(), RETURN_IF_FAILED, and RETURN_NOERROR.
|
private |
Definition at line 150 of file codec_sample_streamer_legacy.h.