ADTF
|
Base class for every interface type within the uCOM. More...
Inherited by object< ant::cFilterGraph, base::ant::IConfiguration >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::ISampleStream, hollow::IInternalBindingProxy, base::flash::IRunnable >, object< IStreamType >, object< flash::cSampleStreamOutPort, ITriggerPipeHierachy >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::ISampleStream, ant::IStreamingPort, ant::IStreamingInPort, ant::ISampleStreamInPort, base::flash::IRunnable >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IPin, ant::IInPin, base::flash::IRunnable, flash::IStreamerPin >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, IPin, IOutPin, IFilterGraphPort, IFilterGraphDataPort, IFilterGraphDataOutPort, base::flash::IRunnable >, object< ITriggerPipeItem, trigger_pipe_source< ITriggerPipeItem > >, object< IPin, named_graph_object< trigger_pipe_item< IInPin > > >, object< IPin, IInPin, IFilterGraphPort, IFilterGraphDataPort, named_graph_object< trigger_pipe_item< IFilterGraphDataInPort > > >, object< IBindingObject, named_graph_object< IBindingClient > >, object< adtf::streaming::ant::IStreamType >, object< IStreamMetaType >, object< IPin, named_graph_object< trigger_pipe_item< IOutPin > > >, object< cServiceLevelmachine, IClassInfo, IObjectInfo, IService >, object< ucom::ant::cClassInfo, ant::INamedGraphObject, ant::ITriggerPipeSource, ant::IActiveRunner, base::ant::configuration<> >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IRunner, ant::IFilterGraphPort, ant::IFilterGraphRunnerPort, base::flash::IRunnable >, object< ITriggerPipeSource, ITriggerPipeSource >, object< ant::ISample, flash::ISample, hollow::ISample, ucom::ant::IClassInfo >, object< IPin, IOutPin, IFilterGraphPort, IFilterGraphDataPort, named_graph_object< trigger_pipe_item< IFilterGraphDataOutPort > > >, object< IRunnable, IRunnable >, object< IInputStream, IOutputStream, IStream >, object< flash::cOutPin, ITriggerPipeHierachy >, object< IStreamingRequests >, object< IStreamingPort, IStreamingOutPort, sample_stream< ISampleStreamOutPort > >, object< IBindingObject, IBindingClient, IFilterGraphPort, IFilterGraphInterfacePort, named_graph_object< IFilterGraphInterfaceClientPort > >, object< cInPin, adtf::base::configuration<> >, object< streaming::ant::cFilterBase, base::ant::configuration<> >, object< IPlugin, IPluginLogging, level_machine< cPlugin, IPlugin::tPluginState, IPlugin::tPluginState::Deinitialized > >, object< services::ant::IReferenceClock::IClock, services::flash::IReferenceClock::IClock, ucom::cEventSource >, object< ant::IBindingObject, ant::named_graph_object< ant::IBindingServer > >, object< ucom::ant::cClassInfo, base::ant::configuration<>, IDynamicDataBinding, IStreamingService, IStreamingSource, data_binding< named_graph_object< ISampleStreamingSource > > >, object< quiet::cADTFRuntime, ucom::spider::IRuntimeStartup >, object< ant::IRunnable, ant::IRunnable, IRunnable, IRunnable >, object< ifunction< ResultType(Arguments...)> >, object< streaming::ant::INamedGraphObject, streaming::ant::IDataBinding, streaming::ant::IInterfaceBinding, streaming::ant::IRuntimeBehaviour, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding, streaming::ant::IStreamingService, streaming::ant::IStreamingSource, streaming::ant::ISampleStreamingSource, base::ant::IConfiguration >, object< streaming::ant::INamedGraphObject, streaming::ant::IDataBinding, streaming::ant::IInterfaceBinding, streaming::ant::IRuntimeBehaviour, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding, streaming::ant::IStreamingService, streaming::ant::IStreamingSink, streaming::ant::ISampleStreamingSink, base::ant::IConfiguration >, object< IProperties >, object< IClassFactory >, object< ISharedLockedObject >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IPin, ant::IOutPin, base::flash::IRunnable, flash::IStreamerPin >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, IPin, IInPin, IFilterGraphPort, IFilterGraphDataPort, IFilterGraphDataInPort, base::flash::IRunnable >, object< IGraphConnection, named_graph_object< IGraphConnection > >, object< IDataBinding, IDataBinding >, object< IBindingType, ucom::ant::IClassInfo, ucom::ant::ISerializable >, object< IConfiguration, IConfiguration >, object< ant::IPluginInfo >, object< flash::cFilterGraphRunnerPort, ITriggerPipeHierachy >, object< ant::cSampleStreamingSink, interface_binding<> >, object< IRuntimeBehaviour, Interface >, object< cOutPin, adtf::base::configuration<> >, object< IBindingProxyOutPort, binding_proxy< adtf::ucom::ant::IObject, false > >, object< IEventSource >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IRunner, base::flash::IRunnable >, object< IInterfaceBinding, IInterfaceBinding >, object< IFilter, graph< runtime_behaviour< interface_binding< data_binding< named_graph_object< IFilterGraph > > > > > >, object< IErrorHandling::IErrorHandler >, object< services::ant::IReferenceClock::IClock, ucom::cEventSource >, object< flash::cFilterGraphDataOutPort, ITriggerPipeHierachy >, object< IBindingProxyInPort, binding_proxy< adtf::ucom::ant::IObject, false > >, object< detail::cSampleStreamBase, ISampleStream, named_graph_object< trigger_pipe_item< ISampleStream > > >, object< INamedGraphObject, INamedGraphObject >, object< cFilterLevelmachine, ucom::ant::cClassInfo, runtime_behaviour< interface_binding< data_binding< named_graph_object< IFilter > > > > >, object< ILockedObject >, object< flash::cFilterGraphDataInPort, ITriggerPipeHierachy >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::ISampleStream, ant::IStreamingPort, ant::IStreamingOutPort, ant::ISampleStreamOutPort, base::flash::IRunnable >, object< ant::cSampleStreamingSource, interface_binding<> >, object< IBindingObject, IBindingServer, IFilterGraphPort, IFilterGraphInterfacePort, named_graph_object< IFilterGraphInterfaceServerPort > >, object< IRunner, IFilterGraphPort, trigger_pipe_item< named_graph_object< IFilterGraphRunnerPort > > >, object< cFilter, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding >, object< IObjectPool, IClassFactory >, object< IStreamingPort, IStreamingInPort, sample_stream< ISampleStreamInPort > >, object< remote::ant::IRPCObjectServer, remote::catwo::IRPCInterfaceDefinition >, object< streaming::ant::INamedGraphObject, streaming::ant::IDataBinding, streaming::ant::IInterfaceBinding, streaming::ant::IRuntimeBehaviour, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding, streaming::ant::IFilter, base::ant::IConfiguration >, object< ant::IProperties >, object< ucom::ant::detail::cRuntime, IADTFRuntime >, object< ant::runtime< LAST_RUN_LEVEL >, spider::IRuntimeStartup >, object< IRuntime >, object< IGraph, IGraph >, object< ucom::ant::cClassInfo, base::ant::configuration<>, IDynamicDataBinding, IStreamingService, IStreamingSink, data_binding< named_graph_object< ISampleStreamingSink > > >, object< ucom::ant::cService, base::ant::configuration<> >, object< ucom::ant::cClassInfo, ant::INamedGraphObject, ant::ITriggerPipeSource, ant::IActiveRunner, spider::IActiveRunner, base::ant::configuration<> >, object< flash::cSampleStreamInPort, ITriggerPipeHierachy >, object< flash::cSampleStream, ITriggerPipeHierachy >, object< flash::cInPin, ITriggerPipeHierachy >, object< ISampleQueue >, object< IBindingObject, named_graph_object< IBindingServer > >, object< IClassInfo >, object< flash::cRunner, ITriggerPipeHierachy >, IProperties, IErrorHandling, IErrorHandling::IErrorHandler, IADTFRuntime, ITriggerConfiguration, IRPCObjectServer, IRPCInterfaceDefinition, IApplication, IApplication::IJob, IKernel, IKernel::IKernelRunnable, IKernel::IScheduling, IKernel::ISignal, IKernel::IThread, IKernel::ITimer, ILogging, IMacroResolver, IMediaDescriptionService, IMemoryAllocator, IPlayer, IRPCObjectServerRegistry, IRecorder, IRecordingFile, IReferenceClock, IReferenceClock::IClock, IReferenceClock::ISync2RefChannel, IReferenceClock::ISync2RefChannelFactory, ISession, ISessionManager, ISignalListening, ISignalRegistry, ISignalRegistry::ISignalProvider, ISampleStreamTracer, IADTFFileSupport, IKernel::INamedKernelObject, IReferenceClock::ISystemClock, IReferenceClock::IGuardableClock, IReferenceClock::ITimeBarrier, IReferenceClock::ITimeGuard, IBindingType, IFilterGraphPort, IGraph, INamedGraphObject, ISample, ISampleBufferFactory, ISampleInStream, ISampleInfo, ISampleLog, ISampleOutStream, ISampleQueue, ISampleSerialization, IStreamMetaType, IStreamType, IStreamingPort, ITriggerPipe, ITriggerPipeSource, IStreamerPin, IInternalBindingProxy, IStreamingRequest, IStreamingRequests, ITriggerPipeHierachy, ICacheStatus, IClassFactory, IClassInfo, IDevice, IEventSource, IInputStream, ILockedObject, IObjectPool, IOutputStream, IPlugin, IPluginInfo, IPluginLogging, IRuntime, IScriptable, object< Bases >, ifunction< ResultType(Arguments...)>, IRuntimeStartup, IQtXSystem, and IQtShared.
Public Member Functions | |
ADTF_IID (IObject, "object.ant.ucom.adtf.iid") | |
Marks the IObject to be castable with the ucom_cast() More... | |
Protected Member Functions | |
~IObject ()=default | |
Protected destructor --> Use implemented Destroy() instead of delete! | |
Private Member Functions | |
virtual tResult | GetInterface (const char *i_strIID, void *&o_pInterface)=0 |
Query interfaces on an object. More... | |
virtual tResult | GetInterface (const char *i_strIID, const void *&o_pInterface) const =0 |
Provides const correct interface querying. More... | |
virtual void | Destroy () const =0 |
Destruct and deallocate instantiations of type IObject . More... | |
Base class for every interface type within the uCOM.
Deriving from this interface enables the inherited type to be usable with ucom_cast
.
Definition at line 30 of file object_intf.h.
ADTF_IID | ( | IObject | , |
"object.ant.ucom.adtf.iid" | |||
) |
Marks the IObject
to be castable with the ucom_cast()
ADTF_IID(_interface, _striid)
|
privatepure virtual |
Destruct and deallocate instantiations of type IObject
.
To safely deallocate arbitrary objects between binary boundaries, the usage of ordinary deallocation (e.g. delete
or free
) is strongly disadvised. Allocators and deallocator implementations might differ in different compiling modes which might result in undefined behavior if allocating an object in mode A (e.g. Release) and deallocating it in mode B (e.g. Debug). To ensure that an object is always allocated and deallocated on the same side of a DLL, method Destroy()
can be used. The usual implementation of Destroy()
just calls delete *this
as allocating usually works using new
. When calling IObject::Destroy()
on an instantiated object, the vtable of pure abstract interface IObject
points to the correct implementation of Destroy()
ensuring correct destructor calling and deallocation.
default_object
to use the standard implementation. Implemented in object< Bases >, object< ant::cFilterGraph, base::ant::IConfiguration >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::ISampleStream, hollow::IInternalBindingProxy, base::flash::IRunnable >, object< IStreamType >, object< flash::cSampleStreamOutPort, ITriggerPipeHierachy >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::ISampleStream, ant::IStreamingPort, ant::IStreamingInPort, ant::ISampleStreamInPort, base::flash::IRunnable >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IPin, ant::IInPin, base::flash::IRunnable, flash::IStreamerPin >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, IPin, IOutPin, IFilterGraphPort, IFilterGraphDataPort, IFilterGraphDataOutPort, base::flash::IRunnable >, object< ITriggerPipeItem, trigger_pipe_source< ITriggerPipeItem > >, object< IPin, named_graph_object< trigger_pipe_item< IInPin > > >, object< IPin, IInPin, IFilterGraphPort, IFilterGraphDataPort, named_graph_object< trigger_pipe_item< IFilterGraphDataInPort > > >, object< IBindingObject, named_graph_object< IBindingClient > >, object< adtf::streaming::ant::IStreamType >, object< IStreamMetaType >, object< IPin, named_graph_object< trigger_pipe_item< IOutPin > > >, object< cServiceLevelmachine, IClassInfo, IObjectInfo, IService >, object< ucom::ant::cClassInfo, ant::INamedGraphObject, ant::ITriggerPipeSource, ant::IActiveRunner, base::ant::configuration<> >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IRunner, ant::IFilterGraphPort, ant::IFilterGraphRunnerPort, base::flash::IRunnable >, object< ITriggerPipeSource, ITriggerPipeSource >, object< ant::ISample, flash::ISample, hollow::ISample, ucom::ant::IClassInfo >, object< IPin, IOutPin, IFilterGraphPort, IFilterGraphDataPort, named_graph_object< trigger_pipe_item< IFilterGraphDataOutPort > > >, object< IRunnable, IRunnable >, object< IInputStream, IOutputStream, IStream >, object< flash::cOutPin, ITriggerPipeHierachy >, object< IStreamingRequests >, object< IStreamingPort, IStreamingOutPort, sample_stream< ISampleStreamOutPort > >, object< IBindingObject, IBindingClient, IFilterGraphPort, IFilterGraphInterfacePort, named_graph_object< IFilterGraphInterfaceClientPort > >, object< cInPin, adtf::base::configuration<> >, object< streaming::ant::cFilterBase, base::ant::configuration<> >, object< IPlugin, IPluginLogging, level_machine< cPlugin, IPlugin::tPluginState, IPlugin::tPluginState::Deinitialized > >, object< services::ant::IReferenceClock::IClock, services::flash::IReferenceClock::IClock, ucom::cEventSource >, object< ant::IBindingObject, ant::named_graph_object< ant::IBindingServer > >, object< ucom::ant::cClassInfo, base::ant::configuration<>, IDynamicDataBinding, IStreamingService, IStreamingSource, data_binding< named_graph_object< ISampleStreamingSource > > >, object< quiet::cADTFRuntime, ucom::spider::IRuntimeStartup >, object< ant::IRunnable, ant::IRunnable, IRunnable, IRunnable >, object< ifunction< ResultType(Arguments...)> >, object< streaming::ant::INamedGraphObject, streaming::ant::IDataBinding, streaming::ant::IInterfaceBinding, streaming::ant::IRuntimeBehaviour, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding, streaming::ant::IStreamingService, streaming::ant::IStreamingSource, streaming::ant::ISampleStreamingSource, base::ant::IConfiguration >, object< streaming::ant::INamedGraphObject, streaming::ant::IDataBinding, streaming::ant::IInterfaceBinding, streaming::ant::IRuntimeBehaviour, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding, streaming::ant::IStreamingService, streaming::ant::IStreamingSink, streaming::ant::ISampleStreamingSink, base::ant::IConfiguration >, object< IProperties >, object< IClassFactory >, object< ISharedLockedObject >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IPin, ant::IOutPin, base::flash::IRunnable, flash::IStreamerPin >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, IPin, IInPin, IFilterGraphPort, IFilterGraphDataPort, IFilterGraphDataInPort, base::flash::IRunnable >, object< IGraphConnection, named_graph_object< IGraphConnection > >, object< IDataBinding, IDataBinding >, object< IBindingType, ucom::ant::IClassInfo, ucom::ant::ISerializable >, object< IConfiguration, IConfiguration >, object< ant::IPluginInfo >, object< flash::cFilterGraphRunnerPort, ITriggerPipeHierachy >, object< ant::cSampleStreamingSink, interface_binding<> >, object< IRuntimeBehaviour, Interface >, object< cOutPin, adtf::base::configuration<> >, object< IBindingProxyOutPort, binding_proxy< adtf::ucom::ant::IObject, false > >, object< IEventSource >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IRunner, base::flash::IRunnable >, object< IInterfaceBinding, IInterfaceBinding >, object< IFilter, graph< runtime_behaviour< interface_binding< data_binding< named_graph_object< IFilterGraph > > > > > >, object< IErrorHandling::IErrorHandler >, object< services::ant::IReferenceClock::IClock, ucom::cEventSource >, object< flash::cFilterGraphDataOutPort, ITriggerPipeHierachy >, object< IBindingProxyInPort, binding_proxy< adtf::ucom::ant::IObject, false > >, object< detail::cSampleStreamBase, ISampleStream, named_graph_object< trigger_pipe_item< ISampleStream > > >, object< INamedGraphObject, INamedGraphObject >, object< cFilterLevelmachine, ucom::ant::cClassInfo, runtime_behaviour< interface_binding< data_binding< named_graph_object< IFilter > > > > >, object< ILockedObject >, object< flash::cFilterGraphDataInPort, ITriggerPipeHierachy >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::ISampleStream, ant::IStreamingPort, ant::IStreamingOutPort, ant::ISampleStreamOutPort, base::flash::IRunnable >, object< ant::cSampleStreamingSource, interface_binding<> >, object< IBindingObject, IBindingServer, IFilterGraphPort, IFilterGraphInterfacePort, named_graph_object< IFilterGraphInterfaceServerPort > >, object< IRunner, IFilterGraphPort, trigger_pipe_item< named_graph_object< IFilterGraphRunnerPort > > >, object< cFilter, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding >, object< IObjectPool, IClassFactory >, object< IStreamingPort, IStreamingInPort, sample_stream< ISampleStreamInPort > >, object< remote::ant::IRPCObjectServer, remote::catwo::IRPCInterfaceDefinition >, object< streaming::ant::INamedGraphObject, streaming::ant::IDataBinding, streaming::ant::IInterfaceBinding, streaming::ant::IRuntimeBehaviour, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding, streaming::ant::IFilter, base::ant::IConfiguration >, object< ant::IProperties >, object< ucom::ant::detail::cRuntime, IADTFRuntime >, object< ant::runtime< LAST_RUN_LEVEL >, spider::IRuntimeStartup >, object< IRuntime >, object< IGraph, IGraph >, object< ucom::ant::cClassInfo, base::ant::configuration<>, IDynamicDataBinding, IStreamingService, IStreamingSink, data_binding< named_graph_object< ISampleStreamingSink > > >, object< ucom::ant::cService, base::ant::configuration<> >, object< ucom::ant::cClassInfo, ant::INamedGraphObject, ant::ITriggerPipeSource, ant::IActiveRunner, spider::IActiveRunner, base::ant::configuration<> >, object< flash::cSampleStreamInPort, ITriggerPipeHierachy >, object< flash::cSampleStream, ITriggerPipeHierachy >, object< flash::cInPin, ITriggerPipeHierachy >, object< ISampleQueue >, object< IBindingObject, named_graph_object< IBindingServer > >, object< IClassInfo >, and object< flash::cRunner, ITriggerPipeHierachy >.
|
privatepure virtual |
Provides const correct interface querying.
Query interfaces on an object. The IObject::GetInterface method returns a pointer to a specified interface on an object to which a client currently holds an interface pointer. Due to the fact that this querying of interfaces is not at all type safe, the IObject::GetInterface methods reside inside the private section of the interface and can only be accessed by ucom_cast()
function template.
[in] | i_strIID | Identifier of the interface being requested. |
[out] | o_pInterface | Address of pointer variable that receives the interface pointer requested in idInterface. Upon successful return, *o_pInterface contains the requested interface pointer to the object. If the object does not expose the interface specified in i_strIID , i_pInterface is set to NULL. |
ERR_NOERROR | The interface identified by i_strIID was implemented and exposed by the implementation of *this. o_pInterface points to the queried interface. |
ERR_NO_INTERFACE | The requested interface is not exposed. o_pInterface==NULL |
ucom_cast()
function template Implemented in object< Bases >, object< ant::cFilterGraph, base::ant::IConfiguration >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::ISampleStream, hollow::IInternalBindingProxy, base::flash::IRunnable >, object< IStreamType >, object< flash::cSampleStreamOutPort, ITriggerPipeHierachy >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::ISampleStream, ant::IStreamingPort, ant::IStreamingInPort, ant::ISampleStreamInPort, base::flash::IRunnable >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IPin, ant::IInPin, base::flash::IRunnable, flash::IStreamerPin >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, IPin, IOutPin, IFilterGraphPort, IFilterGraphDataPort, IFilterGraphDataOutPort, base::flash::IRunnable >, object< ITriggerPipeItem, trigger_pipe_source< ITriggerPipeItem > >, object< IPin, named_graph_object< trigger_pipe_item< IInPin > > >, object< IPin, IInPin, IFilterGraphPort, IFilterGraphDataPort, named_graph_object< trigger_pipe_item< IFilterGraphDataInPort > > >, object< IBindingObject, named_graph_object< IBindingClient > >, object< adtf::streaming::ant::IStreamType >, object< IStreamMetaType >, object< IPin, named_graph_object< trigger_pipe_item< IOutPin > > >, object< cServiceLevelmachine, IClassInfo, IObjectInfo, IService >, object< ucom::ant::cClassInfo, ant::INamedGraphObject, ant::ITriggerPipeSource, ant::IActiveRunner, base::ant::configuration<> >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IRunner, ant::IFilterGraphPort, ant::IFilterGraphRunnerPort, base::flash::IRunnable >, object< ITriggerPipeSource, ITriggerPipeSource >, object< ant::ISample, flash::ISample, hollow::ISample, ucom::ant::IClassInfo >, object< IPin, IOutPin, IFilterGraphPort, IFilterGraphDataPort, named_graph_object< trigger_pipe_item< IFilterGraphDataOutPort > > >, object< IRunnable, IRunnable >, object< IInputStream, IOutputStream, IStream >, object< flash::cOutPin, ITriggerPipeHierachy >, object< IStreamingRequests >, object< IStreamingPort, IStreamingOutPort, sample_stream< ISampleStreamOutPort > >, object< IBindingObject, IBindingClient, IFilterGraphPort, IFilterGraphInterfacePort, named_graph_object< IFilterGraphInterfaceClientPort > >, object< cInPin, adtf::base::configuration<> >, object< streaming::ant::cFilterBase, base::ant::configuration<> >, object< IPlugin, IPluginLogging, level_machine< cPlugin, IPlugin::tPluginState, IPlugin::tPluginState::Deinitialized > >, object< services::ant::IReferenceClock::IClock, services::flash::IReferenceClock::IClock, ucom::cEventSource >, object< ant::IBindingObject, ant::named_graph_object< ant::IBindingServer > >, object< ucom::ant::cClassInfo, base::ant::configuration<>, IDynamicDataBinding, IStreamingService, IStreamingSource, data_binding< named_graph_object< ISampleStreamingSource > > >, object< quiet::cADTFRuntime, ucom::spider::IRuntimeStartup >, object< ant::IRunnable, ant::IRunnable, IRunnable, IRunnable >, object< ifunction< ResultType(Arguments...)> >, object< streaming::ant::INamedGraphObject, streaming::ant::IDataBinding, streaming::ant::IInterfaceBinding, streaming::ant::IRuntimeBehaviour, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding, streaming::ant::IStreamingService, streaming::ant::IStreamingSource, streaming::ant::ISampleStreamingSource, base::ant::IConfiguration >, object< streaming::ant::INamedGraphObject, streaming::ant::IDataBinding, streaming::ant::IInterfaceBinding, streaming::ant::IRuntimeBehaviour, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding, streaming::ant::IStreamingService, streaming::ant::IStreamingSink, streaming::ant::ISampleStreamingSink, base::ant::IConfiguration >, object< IProperties >, object< IClassFactory >, object< ISharedLockedObject >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IPin, ant::IOutPin, base::flash::IRunnable, flash::IStreamerPin >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, IPin, IInPin, IFilterGraphPort, IFilterGraphDataPort, IFilterGraphDataInPort, base::flash::IRunnable >, object< IGraphConnection, named_graph_object< IGraphConnection > >, object< IDataBinding, IDataBinding >, object< IBindingType, ucom::ant::IClassInfo, ucom::ant::ISerializable >, object< IConfiguration, IConfiguration >, object< ant::IPluginInfo >, object< flash::cFilterGraphRunnerPort, ITriggerPipeHierachy >, object< ant::cSampleStreamingSink, interface_binding<> >, object< IRuntimeBehaviour, Interface >, object< cOutPin, adtf::base::configuration<> >, object< IBindingProxyOutPort, binding_proxy< adtf::ucom::ant::IObject, false > >, object< IEventSource >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IRunner, base::flash::IRunnable >, object< IInterfaceBinding, IInterfaceBinding >, object< IFilter, graph< runtime_behaviour< interface_binding< data_binding< named_graph_object< IFilterGraph > > > > > >, object< IErrorHandling::IErrorHandler >, object< services::ant::IReferenceClock::IClock, ucom::cEventSource >, object< flash::cFilterGraphDataOutPort, ITriggerPipeHierachy >, object< IBindingProxyInPort, binding_proxy< adtf::ucom::ant::IObject, false > >, object< detail::cSampleStreamBase, ISampleStream, named_graph_object< trigger_pipe_item< ISampleStream > > >, object< INamedGraphObject, INamedGraphObject >, object< cFilterLevelmachine, ucom::ant::cClassInfo, runtime_behaviour< interface_binding< data_binding< named_graph_object< IFilter > > > > >, object< ILockedObject >, object< flash::cFilterGraphDataInPort, ITriggerPipeHierachy >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::ISampleStream, ant::IStreamingPort, ant::IStreamingOutPort, ant::ISampleStreamOutPort, base::flash::IRunnable >, object< ant::cSampleStreamingSource, interface_binding<> >, object< IBindingObject, IBindingServer, IFilterGraphPort, IFilterGraphInterfacePort, named_graph_object< IFilterGraphInterfaceServerPort > >, object< IRunner, IFilterGraphPort, trigger_pipe_item< named_graph_object< IFilterGraphRunnerPort > > >, object< cFilter, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding >, object< IObjectPool, IClassFactory >, object< IStreamingPort, IStreamingInPort, sample_stream< ISampleStreamInPort > >, object< remote::ant::IRPCObjectServer, remote::catwo::IRPCInterfaceDefinition >, object< streaming::ant::INamedGraphObject, streaming::ant::IDataBinding, streaming::ant::IInterfaceBinding, streaming::ant::IRuntimeBehaviour, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding, streaming::ant::IFilter, base::ant::IConfiguration >, object< ant::IProperties >, object< ucom::ant::detail::cRuntime, IADTFRuntime >, object< ant::runtime< LAST_RUN_LEVEL >, spider::IRuntimeStartup >, object< IRuntime >, object< IGraph, IGraph >, object< ucom::ant::cClassInfo, base::ant::configuration<>, IDynamicDataBinding, IStreamingService, IStreamingSink, data_binding< named_graph_object< ISampleStreamingSink > > >, object< ucom::ant::cService, base::ant::configuration<> >, object< ucom::ant::cClassInfo, ant::INamedGraphObject, ant::ITriggerPipeSource, ant::IActiveRunner, spider::IActiveRunner, base::ant::configuration<> >, object< flash::cSampleStreamInPort, ITriggerPipeHierachy >, object< flash::cSampleStream, ITriggerPipeHierachy >, object< flash::cInPin, ITriggerPipeHierachy >, object< ISampleQueue >, object< IBindingObject, named_graph_object< IBindingServer > >, object< IClassInfo >, and object< flash::cRunner, ITriggerPipeHierachy >.
|
privatepure virtual |
Query interfaces on an object.
The IObject::GetInterface method returns a pointer to a specified interface on an object to which a client currently holds an interface pointer. Due to the fact that this querying of interfaces is not at all type safe, the IObject::GetInterface methods reside inside the private section of the interface and can only be accessed by ucom_cast()
function template.
[in] | i_strIID | Identifier of the interface being requested. |
[out] | o_pInterface | Address of pointer variable that receives the interface pointer requested in idInterface. Upon successful return, *o_pInterface contains the requested interface pointer to the object. If the object does not expose the interface specified in i_strIID , i_pInterface is set to NULL. |
ERR_NOERROR | The interface identified by i_strIID was implemented and exposed by the implementation of *this. o_pInterface points to the queried interface. |
ERR_NO_INTERFACE | The requested interface is not exposed. o_pInterface==NULL |
ucom_cast()
function template Implemented in object< Bases >, object< ant::cFilterGraph, base::ant::IConfiguration >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::ISampleStream, hollow::IInternalBindingProxy, base::flash::IRunnable >, object< IStreamType >, object< flash::cSampleStreamOutPort, ITriggerPipeHierachy >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::ISampleStream, ant::IStreamingPort, ant::IStreamingInPort, ant::ISampleStreamInPort, base::flash::IRunnable >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IPin, ant::IInPin, base::flash::IRunnable, flash::IStreamerPin >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, IPin, IOutPin, IFilterGraphPort, IFilterGraphDataPort, IFilterGraphDataOutPort, base::flash::IRunnable >, object< ITriggerPipeItem, trigger_pipe_source< ITriggerPipeItem > >, object< IPin, named_graph_object< trigger_pipe_item< IInPin > > >, object< IPin, IInPin, IFilterGraphPort, IFilterGraphDataPort, named_graph_object< trigger_pipe_item< IFilterGraphDataInPort > > >, object< IBindingObject, named_graph_object< IBindingClient > >, object< adtf::streaming::ant::IStreamType >, object< IStreamMetaType >, object< IPin, named_graph_object< trigger_pipe_item< IOutPin > > >, object< cServiceLevelmachine, IClassInfo, IObjectInfo, IService >, object< ucom::ant::cClassInfo, ant::INamedGraphObject, ant::ITriggerPipeSource, ant::IActiveRunner, base::ant::configuration<> >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IRunner, ant::IFilterGraphPort, ant::IFilterGraphRunnerPort, base::flash::IRunnable >, object< ITriggerPipeSource, ITriggerPipeSource >, object< ant::ISample, flash::ISample, hollow::ISample, ucom::ant::IClassInfo >, object< IPin, IOutPin, IFilterGraphPort, IFilterGraphDataPort, named_graph_object< trigger_pipe_item< IFilterGraphDataOutPort > > >, object< IRunnable, IRunnable >, object< IInputStream, IOutputStream, IStream >, object< flash::cOutPin, ITriggerPipeHierachy >, object< IStreamingRequests >, object< IStreamingPort, IStreamingOutPort, sample_stream< ISampleStreamOutPort > >, object< IBindingObject, IBindingClient, IFilterGraphPort, IFilterGraphInterfacePort, named_graph_object< IFilterGraphInterfaceClientPort > >, object< cInPin, adtf::base::configuration<> >, object< streaming::ant::cFilterBase, base::ant::configuration<> >, object< IPlugin, IPluginLogging, level_machine< cPlugin, IPlugin::tPluginState, IPlugin::tPluginState::Deinitialized > >, object< services::ant::IReferenceClock::IClock, services::flash::IReferenceClock::IClock, ucom::cEventSource >, object< ant::IBindingObject, ant::named_graph_object< ant::IBindingServer > >, object< ucom::ant::cClassInfo, base::ant::configuration<>, IDynamicDataBinding, IStreamingService, IStreamingSource, data_binding< named_graph_object< ISampleStreamingSource > > >, object< quiet::cADTFRuntime, ucom::spider::IRuntimeStartup >, object< ant::IRunnable, ant::IRunnable, IRunnable, IRunnable >, object< ifunction< ResultType(Arguments...)> >, object< streaming::ant::INamedGraphObject, streaming::ant::IDataBinding, streaming::ant::IInterfaceBinding, streaming::ant::IRuntimeBehaviour, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding, streaming::ant::IStreamingService, streaming::ant::IStreamingSource, streaming::ant::ISampleStreamingSource, base::ant::IConfiguration >, object< streaming::ant::INamedGraphObject, streaming::ant::IDataBinding, streaming::ant::IInterfaceBinding, streaming::ant::IRuntimeBehaviour, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding, streaming::ant::IStreamingService, streaming::ant::IStreamingSink, streaming::ant::ISampleStreamingSink, base::ant::IConfiguration >, object< IProperties >, object< IClassFactory >, object< ISharedLockedObject >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IPin, ant::IOutPin, base::flash::IRunnable, flash::IStreamerPin >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, IPin, IInPin, IFilterGraphPort, IFilterGraphDataPort, IFilterGraphDataInPort, base::flash::IRunnable >, object< IGraphConnection, named_graph_object< IGraphConnection > >, object< IDataBinding, IDataBinding >, object< IBindingType, ucom::ant::IClassInfo, ucom::ant::ISerializable >, object< IConfiguration, IConfiguration >, object< ant::IPluginInfo >, object< flash::cFilterGraphRunnerPort, ITriggerPipeHierachy >, object< ant::cSampleStreamingSink, interface_binding<> >, object< IRuntimeBehaviour, Interface >, object< cOutPin, adtf::base::configuration<> >, object< IBindingProxyOutPort, binding_proxy< adtf::ucom::ant::IObject, false > >, object< IEventSource >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::IRunner, base::flash::IRunnable >, object< IInterfaceBinding, IInterfaceBinding >, object< IFilter, graph< runtime_behaviour< interface_binding< data_binding< named_graph_object< IFilterGraph > > > > > >, object< IErrorHandling::IErrorHandler >, object< services::ant::IReferenceClock::IClock, ucom::cEventSource >, object< flash::cFilterGraphDataOutPort, ITriggerPipeHierachy >, object< IBindingProxyInPort, binding_proxy< adtf::ucom::ant::IObject, false > >, object< detail::cSampleStreamBase, ISampleStream, named_graph_object< trigger_pipe_item< ISampleStream > > >, object< INamedGraphObject, INamedGraphObject >, object< cFilterLevelmachine, ucom::ant::cClassInfo, runtime_behaviour< interface_binding< data_binding< named_graph_object< IFilter > > > > >, object< ILockedObject >, object< flash::cFilterGraphDataInPort, ITriggerPipeHierachy >, object< base::ant::IRunnable, ant::ITriggerPipeSource, ant::ITriggerPipeItem, ant::INamedGraphObject, ant::ISampleStream, ant::IStreamingPort, ant::IStreamingOutPort, ant::ISampleStreamOutPort, base::flash::IRunnable >, object< ant::cSampleStreamingSource, interface_binding<> >, object< IBindingObject, IBindingServer, IFilterGraphPort, IFilterGraphInterfacePort, named_graph_object< IFilterGraphInterfaceServerPort > >, object< IRunner, IFilterGraphPort, trigger_pipe_item< named_graph_object< IFilterGraphRunnerPort > > >, object< cFilter, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding >, object< IObjectPool, IClassFactory >, object< IStreamingPort, IStreamingInPort, sample_stream< ISampleStreamInPort > >, object< remote::ant::IRPCObjectServer, remote::catwo::IRPCInterfaceDefinition >, object< streaming::ant::INamedGraphObject, streaming::ant::IDataBinding, streaming::ant::IInterfaceBinding, streaming::ant::IRuntimeBehaviour, streaming::ant::IDynamicDataBinding, streaming::ant::IDynamicInterfaceBinding, streaming::ant::IFilter, base::ant::IConfiguration >, object< ant::IProperties >, object< ucom::ant::detail::cRuntime, IADTFRuntime >, object< ant::runtime< LAST_RUN_LEVEL >, spider::IRuntimeStartup >, object< IRuntime >, object< IGraph, IGraph >, object< ucom::ant::cClassInfo, base::ant::configuration<>, IDynamicDataBinding, IStreamingService, IStreamingSink, data_binding< named_graph_object< ISampleStreamingSink > > >, object< ucom::ant::cService, base::ant::configuration<> >, object< ucom::ant::cClassInfo, ant::INamedGraphObject, ant::ITriggerPipeSource, ant::IActiveRunner, spider::IActiveRunner, base::ant::configuration<> >, object< flash::cSampleStreamInPort, ITriggerPipeHierachy >, object< flash::cSampleStream, ITriggerPipeHierachy >, object< flash::cInPin, ITriggerPipeHierachy >, object< ISampleQueue >, object< IBindingObject, named_graph_object< IBindingServer > >, object< IClassInfo >, and object< flash::cRunner, ITriggerPipeHierachy >.