ADTF
Loading...
Searching...
No Matches
sample_streaming_sink.h
Go to the documentation of this file.
1
7#pragma once
10#include "graph_object.h"
11
12#include <memory>
13
14namespace adtf
15{
16namespace filter
17{
18
36class cSampleStreamingSink:
37 public ucom::catwo::object<streaming::ant::INamedGraphObject,
38 streaming::ant::IDataBinding,
39 streaming::ant::IInterfaceBinding,
40 streaming::ant::IRuntimeBehaviour,
41 streaming::ant::IDynamicDataBinding,
42 streaming::ant::IDynamicInterfaceBinding,
43 streaming::ant::IStreamingService,
44 streaming::ant::IStreamingSink,
45 streaming::ant::ISampleStreamingSink,
46 base::ant::IConfiguration>,
47 public cGraphObject,
49{
50 public:
51 // this needs to be here because unfortunately multiple base classes have this as well (altough it is not needed at all)
52 template <typename T>
53 using iobject_ptr = adtf::ucom::ant::iobject_ptr<T>;
54
55 cSampleStreamingSink();
56 ~cSampleStreamingSink() override;
57
68 tResult Init() override;
69
79
89
90 tResult SetName(const char* strName) override;
91 tResult GetName(base::ant::IString&& strName) const override;
92 tResult SetParent(const ucom::ant::IObject* poParentObject) override;
93 tResult GetParent(const ucom::ant::IObject*& poParentObject) const override;
94
95 tResult GetPins(ucom::ant::iobject_list<streaming::ant::IPin>& oPins) const override;
96 tResult FindPin(const char* strName, ucom::ant::iobject_ptr<ucom::ant::IObject>& pPin) const override;
97
98 tResult GetBindingObjects(ucom::ant::iobject_list<streaming::ant::IBindingObject>& lstBindingObject) override;
99 tResult GetBindingObjects(ucom::ant::iobject_list<const streaming::ant::IBindingObject>& lstBindingObject) const override;
100 tResult FindBindingObject(const char* strName,
101 ucom::ant::iobject_ptr<const ucom::ant::IObject>& pIBindingObject) const override;
102 tResult FindBindingObject(const char* strName,
103 ucom::ant::iobject_ptr<ucom::ant::IObject>& pIBindingObject) override;
104
105 tResult GetRunners(ucom::ant::iobject_list<streaming::ant::IRunner>& lstRunners) const override;
106 tResult FindRunner(const char* strName, ucom::ant::iobject_ptr<ucom::ant::IObject>& pRunner) const override;
107 tResult GetInnerPipes(ucom::ant::iobject_list<streaming::ant::ITriggerPipe>& lstInnerTriggerPipes) const override;
108
109 tResult RequestPin(const char* strName,
112 tResult RequestPin(const char* strName,
115
116 tResult RequestBindingObject(const char* strName,
119 tResult RequestBindingObject(const char* strName,
122
123 tResult SetState(tStreamingState eFilterState) override;
124 tStreamingState GetState() override;
125
126 tResult GetProperties(ucom::ant::iobject_ptr<const base::ant::IProperties>& pProperties) const override;
127 tResult GetProperties(ucom::ant::iobject_ptr<base::ant::IProperties>& pProperties) override;
128 tResult AttachConfiguration(const char* strName, base::ant::IConfiguration& oAttachedConfiguration) override;
129 tResult DetachConfiguration(const char* strName) override;
130
131 private:
132 class cImplementation;
133 std::unique_ptr<cImplementation> m_pImplementation;
134};
135
136}
137}
138
A_UTILS_NS::cResult tResult
For backwards compatibility and to bring latest version into scope.
Definition result.h:736
Definition configuration_intf.h:24
Definition string_intf.h:29
cGraphObject()
Default Constructor.
Definition streaming_source.h:31
Definition object_intf.h:33
Base object pointer to realize binary compatible reference counting in interface methods.
Definition object_ptr_intf.h:112
Definition object.h:397
Namespace for the ADTF Filter SDK.
Definition configurable_runner.h:18
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