Interface that serves as the base interface for all the externally exposed interfaces which needs to provide evolving versions of the interface. More...
#include <IVersionable.h>
Public Member Functions | |
template<typename requestedInterface > | |
XMP_PRIVATE requestedInterface * | GetInterfacePointer () |
Get the raw pointer to an interface object implementing the requested version. More... | |
template<typename requestedInterface > | |
XMP_PRIVATE const requestedInterface * | GetInterfacePointer () const |
Get the raw pointer to a const interface object implementing the requested version. More... | |
Protected Member Functions | |
virtual | ~IVersionable () |
REQ_FRIEND_CLASS_DECLARATION () | |
Interface that serves as the base interface for all the externally exposed interfaces which needs to provide evolving versions of the interface.
Provide pointer to interface requested by client. Requirements on the class type
Definition at line 28 of file IVersionable.h.
|
inlineprotectedvirtual |
Definition at line 56 of file IVersionable.h.
References __NOTHROW__, and REQ_FRIEND_CLASS_DECLARATION.
|
inline |
Get the raw pointer to an interface object implementing the requested version.
Definition at line 38 of file IVersionable.h.
Referenced by AdobeXMPCommon::IObjectFactory_v1::MakeObjectFactory().
|
inline |
Get the raw pointer to a const interface object implementing the requested version.
Definition at line 51 of file IVersionable.h.
|
protected |