ADTF
Loading...
Searching...
No Matches
samplequeue_intf.h
Go to the documentation of this file.
1
7#pragma once
8#include "sample_intf.h"
9
10namespace adtf
11{
12namespace streaming
13{
14namespace ant
15{
16
17
18class ISampleQueue;
19
25{
26 protected:
27 ~ISampleQueueEventSink() = default;
28
29 public:
31 typedef enum : uint8_t
32 {
41
43 public:
52 virtual tResult OnSampleQueueEvent(uint32_t ui32Event,
53 int nParam1,
54 int nParam2,
55 tTimeStamp tmTimeRange) = 0;
56};
57
62{
63 protected:
65 ~ISampleQueue() = default;
66 public:
68 ADTF_IID(ISampleQueue, "samplequeue.ant.streaming.adtf.iid");
69
70 public:
72 template <typename T>
73 using iobject_ptr = adtf::ucom::ant::iobject_ptr < T >;
75 template <typename T>
77 public:
99
106 virtual tResult Push(const iobject_ptr<ISample>& pSample) = 0;
107
113 virtual tResult Pop(iobject_ptr<ISample>& pSample) = 0;
118 virtual tResult Pop() = 0;
119
125 virtual tResult Top(iobject_ptr<ISample>& pSample) = 0;
126
131 virtual tResult Clear() = 0;
132
137 virtual size_t GetSize() = 0;
138
144 virtual bool Empty() = 0;
145
159 tTimeStamp tmTimeStamp,
160 tTimeStamp tmDeltaT,
161 uint32_t ui32GetMethod) = 0;
168 virtual tResult GetSettings(tTimeStamp& tmTimeRange, size_t& szSizeRange) const = 0;
176 virtual tResult SetSettings(const tTimeStamp tmTimeRange, const size_t szSizeRange) = 0;
183 virtual void GetTimes(tTimeStamp& tmFirst, tTimeStamp& tmLast) const = 0;
184
191
197 virtual tResult UnregisterQueueEventSink(const ISampleQueueEventSink* pQueueEventSink) = 0;
198};
199
200
201
202
203} //namesapce ant
204} //namespac streaming
205} // namespace adtf
A_UTILS_NS::cResult tResult
For backwards compatibility and to bring latest version into scope.
Definition result.h:736
Definition samplequeue_intf.h:25
virtual tResult OnSampleQueueEvent(uint32_t ui32Event, int nParam1, int nParam2, tTimeStamp tmTimeRange)=0
tSampleQueueEvent
specifies the several types of events
Definition samplequeue_intf.h:32
@ SQE_SampleQueueInserted
Definition samplequeue_intf.h:36
@ SQE_SampleQueueErased
Definition samplequeue_intf.h:40
Definition samplequeue_intf.h:62
virtual tResult Get(iobject_ptr< ISample > &pSample, tTimeStamp tmTimeStamp, tTimeStamp tmDeltaT, uint32_t ui32GetMethod)=0
virtual tResult Top(iobject_ptr< ISample > &pSample)=0
adtf::ucom::ant::iobject_ptr< T > iobject_ptr
used type for iobject_ptr
Definition samplequeue_intf.h:73
virtual tResult Push(const iobject_ptr< ISample > &pSample)=0
virtual tResult GetSettings(tTimeStamp &tmTimeRange, size_t &szSizeRange) const =0
virtual tResult SetSettings(const tTimeStamp tmTimeRange, const size_t szSizeRange)=0
ADTF_IID(ISampleQueue, "samplequeue.ant.streaming.adtf.iid")
definiton of interface id
~ISampleQueue()=default
not destructable
virtual void GetTimes(tTimeStamp &tmFirst, tTimeStamp &tmLast) const =0
adtf::ucom::ant::iobject_list< T > iobject_list
used type for iobject_list
Definition samplequeue_intf.h:76
tSampleQueueGetMethod
Definition samplequeue_intf.h:82
@ SQG_GetNearestOlder
gets the nearest sample refering to the given time, but only returns the older one
Definition samplequeue_intf.h:90
@ SQG_GetLast
gets the very last sample
Definition samplequeue_intf.h:84
@ SQG_GetNewest
gets the newest sample
Definition samplequeue_intf.h:92
@ SQG_GetUser
Offset for user methods.
Definition samplequeue_intf.h:97
@ SQG_GetNearestNewer
gets the nearest sample refering to the given time, but only returns the newer one
Definition samplequeue_intf.h:88
@ SQG_GetNearest
gets the nearest sample refering to the given time
Definition samplequeue_intf.h:86
@ SQG_GetOldest
gets the oldest sample in the queue
Definition samplequeue_intf.h:94
virtual tResult RegisterQueueEventSink(ISampleQueueEventSink *pQueueEventSink)=0
virtual tResult Pop(iobject_ptr< ISample > &pSample)=0
virtual tResult UnregisterQueueEventSink(const ISampleQueueEventSink *pQueueEventSink)=0
Definition object_intf.h:33
Namespace for all functionality of the ADTF Streaming SDK provided since v3.0.
Definition bindingproxyoutport.h:16
Namespace for the ADTF Streaming SDK.
Definition bindingproxyinport.h:14
iobject_enum< T > iobject_list
Definition object_list.h:387
Namespace for all functionality provided by ADTF and its SDKs.
Definition adtf_client_connector.h:14