152 template <
typename INTERFACE = ISampleStream>
153 class sample_stream:
public ucom::catwo::object<detail::cSampleStreamBase, ISampleStream, named_graph_object<trigger_pipe_item<INTERFACE>>>
158 sample_stream(sample_stream&&) =
delete;
159 sample_stream(
const sample_stream&) =
delete;
160 sample_stream& operator=(sample_stream&&) =
delete;
161 sample_stream& operator=(
const sample_stream&) =
delete;
168 sample_stream(
const char* strName) : sample_stream()
172 ~sample_stream() =
default;
174 tResult SetName(
const char* strName)
override
186 tResult Open(
const char* strName,
191 size_t szQueueSize)
override
195 pInitialAcceptedStreamType,
202 tResult Open(
const char* strName,
205 size_t szQueueSize)
override
153 class sample_stream:
public ucom::catwo::object<detail::cSampleStreamBase, ISampleStream, named_graph_object<trigger_pipe_item<INTERFACE>>> {
…};
251 public sample_stream<ISampleStream>
281 sample_stream::SetName(strName);
295 ant::ITriggerPipeSource,
296 ant::ITriggerPipeItem,
297 ant::INamedGraphObject,
299 hollow::IInternalBindingProxy,
300 base::flash::IRunnable>
303 ADTF_CLASS_ID_NAME(cSampleStream,
"sample_stream.streaming.adtf.cid",
"Sample Stream");
307 cSampleStream(
const char* strName);
316 tResult Open(
const char* strName,
321 size_t szQueueSize)
override;
322 tResult Open(
const char* strName,
325 size_t szQueueSize)
override;
327 ADTF_FLASH_TRIGGER_PIPE_ITEM_METHOD_DECLARATIONS
330 void SetSubStreamFilter(
const char* strSubStream);
331 void SetForwardAllTriggers(
bool bForwardAll);
334 ~cSampleStream()
override;
337 class cImplementation;
338 std::unique_ptr<cImplementation> m_pImplementation;
347 ITriggerPipeHierachy>
350 ADTF_CLASS_ID_NAME(cSampleStream,
"sample_stream.streaming.adtf.cid",
"Sample Stream");
354 cSampleStream(
const char* strName);
356 ADTF_QUIET_TRIGGER_PIPE_ITEM_METHOD_DECLARATIONS
358 ~cSampleStream()
override;
364using quiet::cSampleStream;
366using ant::sample_stream;
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.
tInt64 tTimeStamp
type definition for a time value.
A_UTILS_NS::cResult tResult
For backwards compatibility and to bring latest version into scope.
#define RETURN_IF_FAILED(s)
Return if expression is failed, which requires the calling function's return type to be tResult.
#define ADTF_CLASS_ID_NAME(_class, _strcid, _strclabel)
Common macro to enable correct treatment of class identifier AND Class Name by IClassInfo.
Runnable helper implementaton template.
tMode
Open mode of ISampleStream::Open.
adtf::ucom::ant::iobject_ptr< T > iobject_ptr
used type for iobject_ptr
A_UTILS_D(cSampleStream)
private d-pointer
cSampleStream(const cSampleStream &)=delete
deleted copy CTOR
cSampleStream & operator=(const cSampleStream &)=delete
deleted copy operator
cSampleStream()=default
CTOR.
ADTF_CLASS_ID_NAME(cSampleStream, "sample_stream.streaming.adtf.cid", "Sample Stream")
Implements adtf::ucom::IClassInfo.
cSampleStream(cSampleStream &&)=delete
deleted move CTOR
cSampleStream(const char *strName)
CTOR initializes the name of the stream.
cSampleStream & operator=(cSampleStream &&)=delete
deleted move operator
virtual ~cSampleStream()=default
DTOR.
The implementation of the ISampleStream base implemenation.
cSampleStreamBase & operator=(const cSampleStreamBase &)=delete
deleted copy operator
tResult GetType(adtf::ucom::ant::iobject_ptr< const IStreamType > &pStreamType) const
Retrieves the current type of the stream.
tResult RunTrigger(tTimeStamp tmActivationTime)
Internal Run implementation.
tResult AttachRouting(const adtf::ucom::ant::iobject_ptr< ISampleStream > &pSampleStreamTo)
Attaches a SampleStream where to route the Write / Flush and Run calls to.
cSampleStreamBase & operator=(cSampleStreamBase &&)=delete
deleted move operator
tResult SetStreamError(const tResult &oError)
Sets and forwards a StreamError to the readers.
void SetSubStreamFilter(const char *strSubStream)
If set, only Stream Types and Samples of the given Substream mwill be forwarded.
tResult Open(const char *strName, adtf::ucom::ant::iobject_ptr< ISampleOutStream > &pOutStream, ISampleStreamAccess::tMode ui32Mode, size_t szQueueSize, adtf::ucom::ant::IObject *pParent)
Opens The SampleStream for writing access.
tTimeStamp GetTime() const
Returns the last flush time and so the current position of the stream.
tResult Open(const char *strName, adtf::ucom::ant::iobject_ptr< ISampleInStream > &pInStream, const adtf::ucom::ant::iobject_ptr< const IStreamType > &pInitialAcceptedStreamType, ISampleStream::IPushReadEventSink *&pPushEventSink, ISampleStreamAccess::tMode ui32Mode, size_t szQueueSize, adtf::ucom::ant::IObject *pParent)
Opens The SampleStream for reading access.
cSampleStreamBase(const cSampleStreamBase &)=delete
deleted copy CTOR
tResult GetStreamError()
Getter for the last forwarded stream error.
tResult DetachRouting(const adtf::ucom::ant::iobject_ptr< ISampleStream > &pSampleStreamTo)
Detaches a SampleStream where the routing was set by AttachRouting.
tResult GetInternalBindingProxy(ucom::ant::iobject_ptr< ant::IBindingProxy > &pBindingProxy)
Get the internal Binding Proxy.
cSampleStreamBase(cSampleStreamBase &&)=delete
deleted move CTOR
A_UTILS_D(cSampleStreamBase)
private d-pointer
tResult SetFullName(const char *strName)
Set the name which is used for error handling etc.
virtual ~cSampleStreamBase() override
DTOR.
Default convenient implementation for INamedGraphObject.
tResult SetName(const char *strName) override
tResult SetParent(const ucom::ant::IObject *poParentObject) override
tResult AttachRouting(const adtf::ucom::ant::iobject_ptr< ISampleStream > &pSampleStreamTo) override
Attaches a SampleStream where to route the Write / Flush and Run calls to.
tResult SetStreamError(const tResult &oError) override
Sets and forwards a StreamError to the readers.
tResult DetachRouting(const adtf::ucom::ant::iobject_ptr< ISampleStream > &pSampleStreamTo) override
Detaches a SampleStream where the routing was set by AttachRouting.
tTimeStamp GetTime() const override
Returns the last flush time and so the current position of the stream.
Base class for every interface type within the uCOM.
Base object pointer to realize binary compatible reference counting in interface methods.
Use this template if you want to implement an ucom::ant::IObject based Interface and/or subclass an e...
Namespace for internal functionality.
Namespace for all functionality of the ADTF Streaming SDK provided since v3.0.
adtf_util::cString get_named_graph_object_full_name(const INamedGraphObject &oGraphObject)
Helper function to retrieve a full qualified unique name of an object registered in IFilterGraph.
Namespace for all functionality of the ADTF Streaming SDK provided since v3.5.
Namespace for all functionality of the ADTF Streaming SDK provided since v3.16.
Namespace for the ADTF Streaming SDK.
InterfacePointerType ucom_cast(ObjectPointerType i_pObject)
Used to cast arbitrary interface types within the UCOM.
Namespace for entire ADTF SDK.
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.