Namespace for all functionality of the ADTF Streaming SDK provided since v3.5. More...
Namespaces | |
namespace | detail |
Namespace for internal functionality. | |
Classes | |
class | cConfigurableInPin |
class | cConfigurableOutPin |
class | cExternalQueueSampleReader |
class | cExternalQueuesWrapper |
class | cFilterGraphDataInPort |
class | cFilterGraphDataOutPort |
class | cFilterGraphRunnerPort |
class | cInPin |
class | cLastSamplesCollector |
class | cNamedGraphObject |
class | cOutPin |
class | cRunner |
Default and simple Runner implementation. More... | |
class | cSampleReader |
The default Sample Reader will read the incomung Stream of a IInPin. More... | |
class | cSampleSetCollector |
class | cSampleStream |
class | cSampleStreamInPort |
class | cSampleStreamOutPort |
class | cSampleWriter |
This base implementation of a sample writer is samples and types to the given pin set at SetStreamerPin. More... | |
class | cTimeBasedSampleSetCollector |
class | IExternalReaderQueues |
class | is_stream_meta_type |
type traits concept test template to check wether a type T is a type can be used for Stream Meta Type or not. More... | |
class | ISample |
The ISample interface sets and retrieves properties on samples . More... | |
class | ISampleReader |
Interface for sample reads that read from sample streams via input pins. More... | |
class | ISampleStreamer |
Base interface for sample readers and writers. More... | |
class | ISampleWriter |
Interface for sample writers that write to sample streams via output pins. More... | |
class | IStreamerPin |
class | output_sample_data |
Wrapper class that facilitates the handling of output samples. More... | |
class | sample_data |
Easy data access for input samples. More... | |
class | sample_reader |
Reads and stores Samples within the given queue implementation INTERNAL_QUEUE . More... | |
class | sample_writer |
Specialized Sample Writer to write data of a given type DATA_TYPE (see Supported types for adtf_memory<T> for writing and reading Samples). More... | |
class | stream_type |
Generator template to implement a IStreamType based on a Stream Meta Type - see Stream Type and Stream Meta Type. More... | |
Typedefs | |
using | cDynamicSampleReader = sample_reader<ant::cDynamicSampleReaderQueue> |
The cDynamicSampleReader will create a sample reader which will create a internal sample queue with unlimited size. | |
template<tTimeStamp TIME_RANGE, bool STORELASTSAMPLE = true> | |
using | time_limited_sample_reader = sample_reader<ant::time_limited_sample_reader_queue<TIME_RANGE>, STORELASTSAMPLE> |
The time_limited_sample_reader will create a sample reader which will create a internal sample queue that is time limited by the given TimeRange . | |
template<size_t MAX_SIZE, bool STORELASTSAMPLE = true> | |
using | size_limited_sample_reader = sample_reader<ant::size_limited_sample_reader_queue<MAX_SIZE>, STORELASTSAMPLE> |
The size_limited_sample_reader will create a sample reader which will create a internal sample queue that is sample count item limited by the given TimeRange . | |
using | cSingleSampleReader = size_limited_sample_reader<1> |
The cSingleSampleReader will create a sample reader which will create a internal sample queue with only one sample which holds the last received sample always. | |
Functions | |
template<typename DATABINDING_BEHAVIOUR_CLASS, typename RUN_FUNC> | |
tResult | create_inner_pipe (DATABINDING_BEHAVIOUR_CLASS &oComponent, const adtf_util::cString &strNameOfRunner, const adtf_util::cString &strSource, RUN_FUNC oRunFunc) |
template<typename Interface, typename InterfaceBinding> | |
tResult | create_server (InterfaceBinding &oInterfaceBinding, const char *strServerName, const adtf::ucom::iobject_ptr< Interface > &pServerInterface) |
Creates a binding server object for the given INTERFACE type and register it on the cFilterBase instance. | |
template<typename Interface, typename InterfaceBinding> | |
tResult | create_client (InterfaceBinding &oInterfaceBinding, const char *strClientName) |
Creates a binding client object for the given INTERFACE type and register it on the cFilterBase instance. | |
template<typename DATA_BINDING_IMPL_TYPE, typename READER_OR_WRITER, typename PIN_INTERFACE> | |
tResult | create_pin (DATA_BINDING_IMPL_TYPE &oDataBindingImpl, READER_OR_WRITER &oStreamer, ucom::ant::iobject_ptr< PIN_INTERFACE > &pCreatedPin) |
template<typename DATA_BINDING_IMPL_TYPE, typename READER_OR_WRITER> | |
tResult | create_pin (DATA_BINDING_IMPL_TYPE &oDataBindingImpl, READER_OR_WRITER &oStreamer) |
template<typename DATA_BINDING_IMPL_TYPE, typename READER_OR_WRITER, typename PIN_INTERFACE> | |
tResult | create_pin (DATA_BINDING_IMPL_TYPE &oDataBindingImpl, READER_OR_WRITER &oStreamer, const char *strNameOfReaderAndPin, const ucom::iobject_ptr< const ant::IStreamType > &pStreamType, ucom::ant::iobject_ptr< PIN_INTERFACE > &pCreatedPin) |
template<typename DATA_BINDING_IMPL_TYPE, typename READER_OR_WRITER> | |
tResult | create_pin (DATA_BINDING_IMPL_TYPE &oDataBindingImpl, READER_OR_WRITER &oStreamer, const char *strNameOfReaderAndPin, const ucom::ant::iobject_ptr< const ant::IStreamType > &pStreamType) |
tResult | alloc_sample (ucom::ant::iobject_ptr< ucom::ant::IObject > &pSample) |
Helper Function to get a ISample Instance through the IRuntime. | |
tResult | alloc_sample (ucom::ant::iobject_ptr< ucom::ant::IObject > &pSample, base::flash::tNanoSeconds nTimeStamp) |
Helper Function to get a ISample Instance through the IRuntime. | |
tResult | alloc_sample (ucom::ant::iobject_ptr< ucom::ant::IObject > &pSample, tTimeStamp nTimeStamp) |
Helper Function to get a ISample Instance through the IRuntime. | |
tResult | alloc_sample (ucom::ant::iobject_ptr< ucom::ant::IObject > &pSample, const char *strSampleCID) |
Helper Function to get a Sample Instance through the IRuntime. | |
tResult | alloc_sample (ucom::ant::iobject_ptr< ucom::ant::IObject > &pSample, const char *strSampleCID, base::flash::tNanoSeconds nTimeStamp) |
Helper Function to get a Sample Instance through the IRuntime. | |
tResult | alloc_sample (ucom::ant::iobject_ptr< ucom::ant::IObject > &pSample, const char *strSampleCID, tTimeStamp nTimeStamp) |
Helper Function to get a Sample Instance through the IRuntime. | |
base::flash::tNanoSeconds | get_sample_time (const ucom::ant::iobject_ptr< const ant::ISample > &pSample) |
Returns the sample time stamp with nanosecond precision. | |
tResult | make_sample_reader (ISampleReader &oReader, const char *strNameOfReader, const ucom::iobject_ptr< const IStreamType > &pStreamType) |
ISampleReader & | operator>> (ISampleReader &oSampleReader, ucom::ant::iobject_ptr< const ant::ISample > &pSample) |
template<typename DATATYPE> | |
ISampleReader & | operator>> (ISampleReader &oSampleReader, sample_data< DATATYPE > &oSampleData) |
ISampleReader & | operator>> (ISampleReader &oSampleReader, ucom::ant::iobject_ptr< const ant::IStreamType > &pType) |
ISampleReader & | operator>> (ISampleReader &oSampleReader, ISampleReader &(*pStreamfunc)(ISampleReader &)) |
tResult | make_sample_writer (ISampleWriter &oWriter, const char *strNameOfWriter, const ucom::ant::iobject_ptr< const IStreamType > &pStreamType) |
ISampleWriter & | operator<< (ISampleWriter &oSampleWriter, const ucom::ant::iobject_ptr< const ant::ISample > &pSample) |
streaming operator to write a sample to the sample writer | |
ISampleWriter & | operator<< (ISampleWriter &oSampleWriter, const ucom::ant::iobject_ptr< const ant::IStreamType > &pType) |
streaming operator to write a stream type change to the sample writer | |
ISampleWriter & | operator<< (ISampleWriter &oSampleWriter, ISampleWriter &(*pStreamfunc)(ISampleWriter &)) |
streaming operator to write a command to the sample writer | |
ISampleWriter & | operator<< (ISampleWriter &oSampleWriter, const tResult &oError) |
streaming operator to set the sample writers stream error | |
template<typename DATA_TYPE> | |
ISampleWriter & | operator<< (ISampleWriter &oSampleWriter, output_sample_data< DATA_TYPE > &&oOutputSampleData) |
streaming operator to write the sample of the output_sample_data to the sample writer. | |
ISampleReader & | operator>> (ISampleReader &oSampleReader, ISampleWriter &oSampleWriter) |
template<typename DATA_TYPE> | |
ADTF3_DEPRECATED ("Writing data with no concrete sample time is deprecated. Use " "sample_writer<DATA_TYPE>::Write(tmTime, oSampleData) instead.") sample_writer< DATA_TYPE > &operator<<(sample_writer< DATA_TYPE > &oSampleWriter | |
tResult | is_compatible (const ant::IStreamType &oCheckedType, const ant::IStreamType &oExpectedType) |
Checks whether oCheckedType is compatible with oExpectedType . | |
tResult | is_compatible (const ucom::ant::iobject_ptr< const ant::IStreamType > &pCheckedType, const ucom::ant::iobject_ptr< const ant::IStreamType > &pExpectedType) |
Checks whether oCheckedType is compatible with oExpectedType . | |
tResult | is_compatible (const ant::IStreamType &oCheckedType, const ucom::ant::iobject_ptr< const ant::IStreamType > &pExpectedType) |
Checks whether oCheckedType is compatible with oExpectedType . | |
tResult | is_compatible (const ucom::ant::iobject_ptr< const ant::IStreamType > &pCheckedType, const ant::IStreamType &oExpectedType) |
Checks whether pCheckedType is compatible with oExpectedType . | |
template<typename DATABINDING_BEHAVIOUR_CLASS> | |
tResult | create_inner_pipe (DATABINDING_BEHAVIOUR_CLASS &oComponent, adtf_util::cStringList lstItems) |
Creates a Trigger Pipe and registers it at the given oFilter instance. | |
Variables | |
const DATA_TYPE & | oSampleData |
return | oSampleWriter |
Namespace for all functionality of the ADTF Streaming SDK provided since v3.5.
The cDynamicSampleReader will create a sample reader which will create a internal sample queue with unlimited size.
This implementation uses the cDynamicSampleReaderQueue as dynamic sample queue implementation.
Definition at line 1094 of file samplereader.h.
using cSingleSampleReader = size_limited_sample_reader<1> |
The cSingleSampleReader will create a sample reader which will create a internal sample queue with only one sample which holds the last received sample always.
Definition at line 1115 of file samplereader.h.
using size_limited_sample_reader = sample_reader<ant::size_limited_sample_reader_queue<MAX_SIZE>, STORELASTSAMPLE> |
The size_limited_sample_reader will create a sample reader which will create a internal sample queue that is sample count item limited by the given TimeRange
.
MAX_SIZE | The count in amount of samples (has to be set while compile time!). |
STORELASTSAMPLE | Option if the last sample received will be hold.
|
Definition at line 1109 of file samplereader.h.
using time_limited_sample_reader = sample_reader<ant::time_limited_sample_reader_queue<TIME_RANGE>, STORELASTSAMPLE> |
The time_limited_sample_reader will create a sample reader which will create a internal sample queue that is time limited by the given TimeRange
.
TIME_RANGE | The timerange in micro seconds (has to be set while compile time!). |
STORELASTSAMPLE | Option if the last sample received will be hold.
|
Definition at line 1102 of file samplereader.h.
tResult alloc_sample | ( | ucom::ant::iobject_ptr< ucom::ant::IObject > & | pSample | ) |
Helper Function to get a ISample Instance through the IRuntime.
pSample | [in, out] object_ptr to a ISample if succeeded. The default CID will be the get_class_id<cSample>(). |
References alloc_sample().
Referenced by output_sample_data< T >::output_sample_data(), output_sample_data< T >::output_sample_data(), output_sample_data< T >::output_sample_data(), alloc_sample(), alloc_sample(), alloc_sample(), alloc_sample(), alloc_sample(), and alloc_sample().
tResult alloc_sample | ( | ucom::ant::iobject_ptr< ucom::ant::IObject > & | pSample, |
base::flash::tNanoSeconds | nTimeStamp ) |
Helper Function to get a ISample Instance through the IRuntime.
pSample | [in, out] object_ptr to a ISample if succeeded. The default CID will be the get_class_id<cSample>(). |
nTimeStamp | [in] The timestamp of the sample. |
References alloc_sample().
tResult alloc_sample | ( | ucom::ant::iobject_ptr< ucom::ant::IObject > & | pSample, |
const char * | strSampleCID ) |
Helper Function to get a Sample Instance through the IRuntime.
pSample | [in, out] object_ptr to of Sample if succeeded. Due to the unknown interface you want receive it is provided as object_ptr<IObject>. |
strSampleCID | [in] Sample object identifier (class id) of the sample class. If strSampleOID is empty then the get_class_id<cSample>() will be used. |
References alloc_sample().
tResult alloc_sample | ( | ucom::ant::iobject_ptr< ucom::ant::IObject > & | pSample, |
const char * | strSampleCID, | ||
base::flash::tNanoSeconds | nTimeStamp ) |
Helper Function to get a Sample Instance through the IRuntime.
pSample | [in, out] object_ptr to of Sample if succeeded. Due to the unknown interface you want receive it is provided as object_ptr<IObject>. |
strSampleCID | [in] Sample object identifier (class id) of the sample class. If strSampleOID is empty then the get_class_id<cSample>() will be used. |
nTimeStamp | [in] The timestamp of the sample. |
References alloc_sample().
tResult alloc_sample | ( | ucom::ant::iobject_ptr< ucom::ant::IObject > & | pSample, |
const char * | strSampleCID, | ||
tTimeStamp | nTimeStamp ) |
Helper Function to get a Sample Instance through the IRuntime.
pSample | [in, out] object_ptr to of Sample if succeeded. Due to the unknown interface you want receive it is provided as object_ptr<IObject>. |
strSampleCID | [in] Sample object identifier (class id) of the sample class. If strSampleOID is empty then the get_class_id<cSample>() will be used. |
nTimeStamp | [in] The timestamp of the sample. |
References alloc_sample().
tResult alloc_sample | ( | ucom::ant::iobject_ptr< ucom::ant::IObject > & | pSample, |
tTimeStamp | nTimeStamp ) |
Helper Function to get a ISample Instance through the IRuntime.
pSample | [in, out] object_ptr to a ISample if succeeded. The default CID will be the get_class_id<cSample>(). |
nTimeStamp | [in] The timestamp of the sample. |
References alloc_sample().
tResult create_client | ( | InterfaceBinding & | oInterfaceBinding, |
const char * | strClientName ) |
Creates a binding client object for the given INTERFACE type and register it on the cFilterBase instance.
Interface | The IObject interface you want to register the binding client object for |
InterfaceBinding | The class of the interface binding object |
[in] | oInterfaceBinding | Interfacebinding instance to register the client object to |
[in] | strClientName | name of the object to register |
Definition at line 323 of file filterbase.h.
References adtf::ucom::make_object_ptr(), RETURN_IF_FAILED, and RETURN_NOERROR.
|
inline |
Creates a Trigger Pipe and registers it at the given oFilter
instance.
You can use an initializer list for the lstItems
as follow:
This function will create a pipe where the "my_fancy_runner" will be called from "in_pin_1" if some a synchronous DataTrigger is received. "my_fanc_runner" will read data from "in_pin_1" by its Readers (or do something else) and writes data to the "out_pin_1". If the "my_fancy_runner" returns it will forward a synchronous DataTrigger to "out_pin_1".
[in] | oComponent | databinding and runtime behavior instance where to register the Trigger Pipe. |
[in] | lstItems | list of items of the Trigger Pipe. These items can be a registered Pin of the oFilter or a Runner of oFilter . |
ERR_NOT_FOUND | A given name is not a Pin (InPin or OutPin) or a Runner registered on oFilter . |
Definition at line 133 of file filterbase.h.
tResult create_inner_pipe | ( | DATABINDING_BEHAVIOUR_CLASS & | oComponent, |
const adtf_util::cString & | strNameOfRunner, | ||
const adtf_util::cString & | strSource, | ||
RUN_FUNC | oRunFunc ) |
Definition at line 265 of file filterbase.h.
tResult create_pin | ( | DATA_BINDING_IMPL_TYPE & | oDataBindingImpl, |
READER_OR_WRITER & | oStreamer ) |
Definition at line 191 of file pin_creation.h.
tResult create_pin | ( | DATA_BINDING_IMPL_TYPE & | oDataBindingImpl, |
READER_OR_WRITER & | oStreamer, | ||
const char * | strNameOfReaderAndPin, | ||
const ucom::ant::iobject_ptr< const ant::IStreamType > & | pStreamType ) |
Definition at line 218 of file pin_creation.h.
tResult create_pin | ( | DATA_BINDING_IMPL_TYPE & | oDataBindingImpl, |
READER_OR_WRITER & | oStreamer, | ||
const char * | strNameOfReaderAndPin, | ||
const ucom::iobject_ptr< const ant::IStreamType > & | pStreamType, | ||
ucom::ant::iobject_ptr< PIN_INTERFACE > & | pCreatedPin ) |
Definition at line 205 of file pin_creation.h.
tResult create_pin | ( | DATA_BINDING_IMPL_TYPE & | oDataBindingImpl, |
READER_OR_WRITER & | oStreamer, | ||
ucom::ant::iobject_ptr< PIN_INTERFACE > & | pCreatedPin ) |
Definition at line 175 of file pin_creation.h.
tResult create_server | ( | InterfaceBinding & | oInterfaceBinding, |
const char * | strServerName, | ||
const adtf::ucom::iobject_ptr< Interface > & | pServerInterface ) |
Creates a binding server object for the given INTERFACE type and register it on the cFilterBase instance.
Interface | The IObject interface you want to register the binding client object for |
InterfaceBinding | The class of the interface binding object |
[in] | oInterfaceBinding | interfacebinding instance to register the server object to |
[in] | strServerName | name of the object to register |
[in] | pServerInterface | INTERFACE implementation instance. This will be the Server Object retrieved by IBindingClient::GetServerObject and IBindingProxy::GetServerObject |
Definition at line 302 of file filterbase.h.
References adtf::ucom::make_object_ptr(), RETURN_IF_FAILED, RETURN_NOERROR, and adtf::ucom::ucom_object_ptr_cast().
base::flash::tNanoSeconds get_sample_time | ( | const ucom::ant::iobject_ptr< const ant::ISample > & | pSample | ) |
Returns the sample time stamp with nanosecond precision.
This will check if the sample supports nanosecond precision (via adtf::streaming::flash::ISample) and convert the microseconds timestamp if not.
[in] | pSample | The sample. |
References get_sample_time().
Referenced by get_sample_time(), and sample_data< T >::GetTimeNs().
tResult is_compatible | ( | const ant::IStreamType & | oCheckedType, |
const ant::IStreamType & | oExpectedType ) |
Checks whether oCheckedType
is compatible with oExpectedType
.
[in] | oCheckedType | The type that should be checked for compatibility. |
[in] | oExpectedType | The type that is expected. |
References is_compatible().
Referenced by is_compatible(), is_compatible(), is_compatible(), and is_compatible().
tResult is_compatible | ( | const ant::IStreamType & | oCheckedType, |
const ucom::ant::iobject_ptr< const ant::IStreamType > & | pExpectedType ) |
Checks whether oCheckedType
is compatible with oExpectedType
.
[in] | oCheckedType | The type that should be checked for compatibility. |
[in] | pExpectedType | The type that is expected. |
References is_compatible().
tResult is_compatible | ( | const ucom::ant::iobject_ptr< const ant::IStreamType > & | pCheckedType, |
const ant::IStreamType & | oExpectedType ) |
Checks whether pCheckedType
is compatible with oExpectedType
.
[in] | pCheckedType | The type that should be checked for compatibility. |
[in] | oExpectedType | The type that is expected. |
References is_compatible().
tResult is_compatible | ( | const ucom::ant::iobject_ptr< const ant::IStreamType > & | pCheckedType, |
const ucom::ant::iobject_ptr< const ant::IStreamType > & | pExpectedType ) |
Checks whether oCheckedType
is compatible with oExpectedType
.
[in] | pCheckedType | The type that should be checked for compatibility. |
[in] | pExpectedType | The type that is expected. |
References is_compatible().
|
inline |
Definition at line 1117 of file samplereader.h.
|
inline |
Definition at line 390 of file samplewriter.h.
|
inline |
streaming operator to set the sample writers stream error
oSampleWriter | the sample writer to set the stream error state to |
oError | the stream error state value |
Definition at line 447 of file samplewriter.h.
References THROW_IF_FAILED.
|
inline |
streaming operator to write a sample to the sample writer
oSampleWriter | the sample writer to write a sample to |
pSample | the sample to write |
Definition at line 406 of file samplewriter.h.
References THROW_IF_FAILED.
|
inline |
streaming operator to write a stream type change to the sample writer
oSampleWriter | the sample writer to change the type |
pType | the stream type to change to |
Definition at line 420 of file samplewriter.h.
References THROW_IF_FAILED.
|
inline |
streaming operator to write a command to the sample writer
oSampleWriter | the sample writer to write the command to |
pStreamfunc | the command (flush(), trigger()) |
Definition at line 434 of file samplewriter.h.
|
inline |
streaming operator to write the sample of the output_sample_data to the sample writer.
It automatically releases the given rvalue of oOutputSampleData
oSampleWriter | the sample writer to write the output sample data to |
oOutputSampleData | the output sample data rvalue to write and release |
Definition at line 463 of file samplewriter.h.
References THROW_IF_FAILED.
|
inline |
Definition at line 1154 of file samplereader.h.
|
inline |
Definition at line 469 of file samplewriter.h.
ISampleReader & operator>> | ( | ISampleReader & | oSampleReader, |
sample_data< DATATYPE > & | oSampleData ) |
Definition at line 1134 of file samplereader.h.
|
inline |
Definition at line 1125 of file samplereader.h.
|
inline |
Definition at line 1148 of file samplereader.h.
const DATA_TYPE& oSampleData |
Definition at line 569 of file samplewriter.h.
return oSampleWriter |
Definition at line 572 of file samplewriter.h.