ADTF
Loading...
Searching...
No Matches
session_intf.h
Go to the documentation of this file.
1
7#pragma once
12
14#define CID_ADTF_SESSION_MANAGER "session_manager.service.adtf.cid"
15
16namespace adtf
17{
18namespace services
19{
20namespace ant
21{
22
29{
30protected:
32 ~ISession() = default;
33
34public:
36 ADTF_IID(ISession, "session.ant.services.adtf.iid");
37
38public:
45 virtual tResult SetSessionName(const char* strSessionFileName) = 0;
46
53 virtual tResult GetSessionName(base::ant::IString&& strSessionName) = 0;
54
63 virtual tResult SetSystemFile(const char* strSystemFileName, const char* strSystemPropertiesFileName) = 0;
64
72 virtual tResult GetSystemFile(base::ant::IString&& strSystemFile) const = 0;
73
81 virtual tResult GetSystemPropertiesFile(base::ant::IString&& strProperties) const = 0;
82
89 virtual tResult SetGraphFile(const char* strGraphFileName, const char* strPropertiesFileName) = 0;
90
98 virtual tResult GetGraphFile(base::ant::IString&& strGraph) const = 0;
99
107 virtual tResult GetGraphPropertiesFile(base::ant::IString&& strProperties) const = 0;
108
121
133 virtual tResult
135
145 virtual tResult SetActiveFilterGraph(const char* strActiveFilterGraph) = 0;
146
153 virtual tResult GetActiveFilterGraph(base::ant::IString&& strActiveFilterGraph) const = 0;
154
164 virtual tResult SetActiveStreamingGraph(const char* strActiveStreamingGraph) = 0;
165
172 virtual tResult GetActiveStreamingGraph(base::ant::IString&& strActiveStreamingGraph) const = 0;
173};
174
186{
187protected:
189 ~ISessionManager() = default;
190public:
192 ADTF_IID(ISessionManager, "sessionmanager.ant.services.adtf.iid");
193
194public:
202 virtual tResult CreateSession() = 0;
203
210 virtual tResult CreateSession(const char* strSessionFileName) = 0;
211
216 virtual tResult ReleaseSession() = 0;
217
226 virtual tResult GetSessionFile(base::ant::IString&& strSessionFilePath) const = 0;
227
239};
240
251
263
275
283
284} // END of namespace ant.
285
286namespace joker
287{
288
293{
294protected:
296 ~ISessionManager() = default;
297public:
299 ADTF_IID(ISessionManager, "session_manager.joker.services.adtf.iid");
300
306 virtual tResult SetEnvironmentFile(const char* strEnvironmentFile) = 0;
307};
308
309} // END of namespace joker.
310
311namespace x
312{
313
318{
319protected:
321 ~ISessionManager() = default;
322
323public:
325 ADTF_IID(ISessionManager, "session_manager.x.services.adtf.iid");
326
328
337 virtual tResult SetEnvironmentFile(const char* strEnvironmentFile, bool bPluginDiscovery) = 0;
338};
339
340} // END of namespace x.
341
342namespace yak
343{
344
349{
350protected:
351 ~ISession() = default;
352
353public:
354 ADTF_IID(ISession, "session.yak.services.adtf.iid");
355
365 const adtf::ucom::ifunction<tResult(const char*)>& fnCallback) const = 0;
366};
367
368} // END of namespace yak.
369
371using ant::ISession;
373
374using ant::get_session;
378
379} // END of namespace services.
380} // END of namespace adtf.
#define ADTF_IID(_interface, _striid)
Definition adtf_iid.h:19
A_UTILS_NS::cResult tResult
For backwards compatibility and to bring latest version into scope.
Definition result.h:736
Definition string_intf.h:29
Session Manager interface defines System Core Object.
Definition session_intf.h:186
ADTF_IID(ISessionManager, "sessionmanager.ant.services.adtf.iid")
definition of interface id
virtual tResult GetCurrentSession(ucom::ant::iobject_ptr< ant::ISession > &pCurrentSession) const =0
virtual tResult CreateSession(const char *strSessionFileName)=0
virtual tResult GetSessionFile(base::ant::IString &&strSessionFilePath) const =0
~ISessionManager()=default
not destructable
Definition session_intf.h:29
virtual tResult GetSystemFile(base::ant::IString &&strSystemFile) const =0
virtual tResult GetGraphFile(base::ant::IString &&strGraph) const =0
virtual tResult SetActiveFilterGraph(const char *strActiveFilterGraph)=0
ADTF_IID(ISession, "session.ant.services.adtf.iid")
definition of interface id
virtual tResult SetActiveStreamingGraph(const char *strActiveStreamingGraph)=0
virtual tResult GetCurrentFilterGraph(ucom::ant::iobject_ptr< streaming::ant::IFilterGraph > &pGraph) const =0
virtual tResult SetGraphFile(const char *strGraphFileName, const char *strPropertiesFileName)=0
virtual tResult GetCurrentStreamingGraph(ucom::ant::iobject_ptr< streaming::ant::IStreamingGraph > &pStreamingGraph) const =0
virtual tResult SetSystemFile(const char *strSystemFileName, const char *strSystemPropertiesFileName)=0
virtual tResult GetSessionName(base::ant::IString &&strSessionName)=0
virtual tResult GetActiveFilterGraph(base::ant::IString &&strActiveFilterGraph) const =0
~ISession()=default
not destructable
virtual tResult GetGraphPropertiesFile(base::ant::IString &&strProperties) const =0
virtual tResult SetSessionName(const char *strSessionFileName)=0
virtual tResult GetSystemPropertiesFile(base::ant::IString &&strProperties) const =0
virtual tResult GetActiveStreamingGraph(base::ant::IString &&strActiveStreamingGraph) const =0
Session Manager interface defines System Core Object.
Definition session_intf.h:293
~ISessionManager()=default
not destructable
ADTF_IID(ISessionManager, "session_manager.joker.services.adtf.iid")
definition of interface id
virtual tResult SetEnvironmentFile(const char *strEnvironmentFile)=0
Session Manager interface defines System Core Object.
Definition session_intf.h:318
virtual tResult SetEnvironmentFile(const char *strEnvironmentFile, bool bPluginDiscovery)=0
ADTF_IID(ISessionManager, "session_manager.x.services.adtf.iid")
definition of interface id
~ISessionManager()=default
not destructable
Definition session_intf.h:349
virtual tResult GetLoadedEnvironmentFiles(const adtf::ucom::ifunction< tResult(const char *)> &fnCallback) const =0
Definition object_intf.h:33
Base object pointer to realize binary compatible reference counting in interface methods.
Definition object_ptr_intf.h:112
Definition function_ptr.h:28
tResult create_empty_session()
tResult get_session_streaming_graph(ucom::ant::iobject_ptr< adtf::streaming::IStreamingGraph > &pCurrentStreamingGraph)
tResult get_session_filter_graph(ucom::ant::iobject_ptr< adtf::streaming::IFilterGraph > &pCurrentFilterGraph)
tResult get_session(ucom::ant::iobject_ptr< ISession > &pCurrentSession)
Namespace for all service interfaces provided since v3.9.
Definition session_intf.h:287
Namespace for all service interfaces provided since v3.23.
Definition session_intf.h:312
Namespace for all service interfaces provided since v3.24.
Definition session_intf.h:343
ant::IObject IObject
Alias always bringing the latest version of ant::IObject into scope.
Definition object_intf.h:109
Namespace for all functionality provided by ADTF and its SDKs.
Definition adtf_client_connector.h:14