ADTF  3.18.2
interface_binding_intf.h
Go to the documentation of this file.
1 
7 #pragma once
11 #include <adtfucom3/adtf_ucom3.h>
12 
13 namespace adtf
14 {
15 namespace streaming
16 {
17 namespace ant
18 {
19 
27 {
28  public:
30  ADTF_IID(IInterfaceBinding, "interface_binding.ant.streaming.adtf.iid");
31 
32  protected:
34  ~IInterfaceBinding() = default;
35 
36  public:
38  template <typename T>
41  template <typename T>
43 
44  public:
51  virtual tResult GetBindingObjects(iobject_list<IBindingObject>& lstBindingObject) = 0;
52 
59  virtual tResult GetBindingObjects(iobject_list<const IBindingObject>& lstBindingObject) const = 0;
60 
69  virtual tResult FindBindingObject(const char* strName,
70  iobject_ptr<adtf::ucom::ant::IObject>& pIBindingObject) = 0;
71 
80  virtual tResult FindBindingObject(const char* strName,
81  iobject_ptr<const adtf::ucom::ant::IObject>& pIBindingObject) const = 0;
82 };
83 
89 {
90 public:
92  ADTF_IID(IDynamicInterfaceBinding, "dynamic_interface_binding.ant.streaming.adtf.iid");
93 
94 protected:
97 
98 public:
113  virtual tResult RequestBindingObject(const char* strName,
115  ucom::ant::iobject_ptr<IBindingClient>& pBindingClient) = 0;
130  virtual tResult RequestBindingObject(const char* strName,
132  ucom::ant::iobject_ptr<IBindingServer>& pBindingServer) = 0;
133 
134 };
135 
136 } // namespace ant
137 
140 
141 } //namespace streaming
142 } //namespace adtf
Copyright © Audi Electronics Venture GmbH.
This interface extends the IInterfaceBinding Interface to provide dynamic binding object creation whi...
virtual tResult RequestBindingObject(const char *strName, const ucom::ant::iobject_ptr< const IBindingType > &pType, ucom::ant::iobject_ptr< IBindingClient > &pBindingClient)=0
Request a client binding object which can not be find via IInterfaceBinding::FindBindingObject.
~IDynamicInterfaceBinding()=default
not destructable
ADTF_IID(IDynamicInterfaceBinding, "dynamic_interface_binding.ant.streaming.adtf.iid")
defintion of interface id
virtual tResult RequestBindingObject(const char *strName, const ucom::ant::iobject_ptr< const IBindingType > &pType, ucom::ant::iobject_ptr< IBindingServer > &pBindingServer)=0
Request a server binding object which can not be find via IInterfaceBinding::FindBindingObject.
The IInterfaceBinding provides an interface to implement and access a common dynamic binding object r...
virtual tResult FindBindingObject(const char *strName, iobject_ptr< adtf::ucom::ant::IObject > &pIBindingObject)=0
This Function will search a binding object with the given strName and return it on pIBindingObject.
virtual tResult GetBindingObjects(iobject_list< IBindingObject > &lstBindingObject)=0
Return a list of all Binding Objects on lstBindingObject.
virtual tResult FindBindingObject(const char *strName, iobject_ptr< const adtf::ucom::ant::IObject > &pIBindingObject) const =0
This Function will search a binding object with the given strName and return it on pIBindingObject.
ADTF_IID(IInterfaceBinding, "interface_binding.ant.streaming.adtf.iid")
definition of interface id
~IInterfaceBinding()=default
not destructable
virtual tResult GetBindingObjects(iobject_list< const IBindingObject > &lstBindingObject) const =0
Return a list of all Binding Objects on lstBindingObject.
Base object pointer to realize binary compatible reference counting in interface methods.
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.
Namespace for entire ADTF SDK.