ADTF  3.18.3
adtf_remote_session_intf.h
Go to the documentation of this file.
1 
7 #pragma once
8 #include <adtf_utils.h>
9 #include <adtfucom3/adtf_ucom3.h>
11 
12 namespace adtf
13 {
14 namespace remote
15 {
16 namespace ant
17 {
18 
23 class ISession
24 {
25  public:
27  ADTF_IID(ISession, "session.ant.remote.adtf");
29  static constexpr const tChar* const DEFAULT_NAME = "session";
30 
31  public:
32  /*
33  * @return The URL of the currently loaded session file.
34  */
35  virtual const char* GetSessionUrl() const = 0;
36 
37  /*
38  * @return The URL of the currently loaded system file.
39  */
40  virtual const char* GetSystemUrl() const = 0;
41 
42  /*
43  * @return The URL of the currently loaded system properties file.
44  */
45  virtual const char* GetSystemPropertiesUrl() const = 0;
46 
47  /*
48  * @return The URL of the currently loaded graph file.
49  */
50  virtual const char* GetGraphUrl() const = 0;
51 
52  /*
53  * @return The URL of the currently loaded graph properties file.
54  */
55  virtual const char* GetGraphPropertiesUrl() const = 0;
56 
57  /*
58  * @return The name of the currently loaded session.
59  */
60  virtual const char* GetSessionName() const = 0;
61 
67  virtual tResult LoadGraphFromUrl(const char* strGraphFile) = 0;
68 
74  virtual tResult LoadGraphPropertiesFromUrl(const char* strPropertiesFile) = 0;
75 
76  /*
77  * @return The name of the active filter graph.
78  */
79  virtual const char* GetActiveFilterGraph() const = 0;
80 
86  virtual tResult SetActiveFilterGraph(const char* strFilterGraphName) = 0;
87 
88  /*
89  * @return The name of the active streaming graph.
90  */
91  virtual const char* GetActiveStreamingGraph() const = 0;
92 
98  virtual tResult SetActiveStreamingGraph(const char* strStreamingGraphName) = 0;
99 };
100 }
101 
102 namespace catwo
103 {
104 
105 class ISession: public ant::ISession
106 {
107  public:
109  ADTF_IID(ISession, "session.catwo.remote.adtf");
110 
111  public:
117  virtual const char* GetObjects() const = 0;
118 
124  virtual const char* GetProperties(const char* strObject) const = 0;
125 
132  virtual const char* GetProperty(const char* strObject,
133  const char* strPropertyName) const = 0;
134 
142  virtual tResult SetProperty(const char* strObject,
143  const char* strPropertyName,
144  const char* strPropertyValue) = 0;
145 };
146 
147 }
148 
149 namespace hollow
150 {
151 
153 {
154  public:
156  ADTF_IID(ISession, "session.hollow.remote.adtf");
157 
158  public:
163  {
164  None = 0x00,
165  };
166 
167  public:
168 
186  virtual const char* GetObjectProperties(const char* strObject, uint32_t nFlags = tPropertyFlags::None) const = 0;
187 
194  virtual const char* GetPropertyType(const char* strObject,
195  const char* strPropertyName) const = 0;
196 
197 
198 };
199 
200 }
201 
202 namespace quiet
203 {
204 
206 {
207  public:
209  ADTF_IID(ISession, "session.quiet.remote.adtf");
210 
216  virtual const char* GetGraphObjects() const = 0;
217 
218  enum class tGraphObjectConnectableType : uint8_t
219  {
220  in = 0,
221  out = 1
222  };
223 
229  {
233  std::string strName = {};
237  tGraphObjectConnectableType eInOut = {};
245  std::vector<std::string> vecConnectedGraphObjects = {};
246  };
247 
251  enum class tGraphObjectInfoType : uint8_t
252  {
253  unknown = 0,
254  filter,
255  samplestreamingsource,
256  samplestreamingsink,
257  inpin,
258  outpin,
259  samplestream,
260  subgraph,
261  inport,
262  outport
263  };
264 
269  {
282  std::vector<tGraphConnectableObjectInfo> vecConnectableObjects = {};
283  };
284 
291  virtual tGraphObjectInfo GetGraphObjectInfo(const char* strObject) const = 0;
292 
298  virtual std::unordered_map<std::string, tGraphObjectInfo> GetGraphObjectsInfo() const = 0;
299 };
300 
301 } // namespace quiet
302 
303 using quiet::ISession;
304 
305 }
306 }
307 
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.
char tChar
The tChar defines the type for platform character set (platform and compiler dependent type).
Interface of the ADTF Session RPC object server.
virtual tResult LoadGraphFromUrl(const char *strGraphFile)=0
Loads a new graph file.
ADTF_IID(ISession, "session.ant.remote.adtf")
RPC interface ID of the ADTF Session RPC object server.
virtual tResult SetActiveFilterGraph(const char *strFilterGraphName)=0
Selects the active filter graph.
static constexpr const tChar *const DEFAULT_NAME
Default RPC object server name of the ADTF Session RPC object server.
virtual tResult SetActiveStreamingGraph(const char *strStreamingGraphName)=0
Selects the active streaming graph.
virtual tResult LoadGraphPropertiesFromUrl(const char *strPropertiesFile)=0
Loads a new graph properties file.
ADTF_IID(ISession, "session.catwo.remote.adtf")
RPC interface ID of the ADTF Session RPC object server.
virtual const char * GetObjects() const =0
Get all available session objects.
virtual tResult SetProperty(const char *strObject, const char *strPropertyName, const char *strPropertyValue)=0
Sets the value of a given property.
virtual const char * GetProperties(const char *strObject) const =0
Retrieve the properties and their values of a given session object.
virtual const char * GetProperty(const char *strObject, const char *strPropertyName) const =0
Gets the value of a given property.
ADTF_IID(ISession, "session.hollow.remote.adtf")
RPC interface ID of the ADTF Session RPC object server.
virtual const char * GetObjectProperties(const char *strObject, uint32_t nFlags=tPropertyFlags::None) const =0
Retrieve the properties a given session object.
virtual const char * GetPropertyType(const char *strObject, const char *strPropertyName) const =0
Retrieves the type of a given property.
virtual tGraphObjectInfo GetGraphObjectInfo(const char *strObject) const =0
Retrieve GraphObject Info and there input and output objects.
ADTF_IID(ISession, "session.quiet.remote.adtf")
RPC interface ID of the ADTF Session RPC object server.
virtual std::unordered_map< std::string, tGraphObjectInfo > GetGraphObjectsInfo() const =0
Retrieve a list of all Graph Object Info and there input and output objects.
virtual const char * GetGraphObjects() const =0
Get all available graph objects.
Object pointer implementation used for reference counting on objects of type IObject.
Definition: object_ptr.h:163
Namespace for entire ADTF SDK.
Info for a connectable object This might be a pin, samplestream or port.
tGraphObjectConnectableType eInOut
Direction of the connectable object (inport/outport, inpin/outpin, samplestream(in and out))
adtf::ucom::object_ptr< const adtf::streaming::ant::IStreamType > pStreamType
the current streamtype
std::vector< std::string > vecConnectedGraphObjects
The name of the connected objects (empty if not connected)
tGraphObjectInfoType eObjectType
Graph object type.
std::vector< tGraphConnectableObjectInfo > vecConnectableObjects
All inputs for the object filter: all input and input pins inpin, outpin: the pin itself subgraph: al...