|
nx_cloud_storage_sdk
1.0
Cloud Storage SDK
|
#include <interface.h>
Public Member Functions | |
| virtual IRefCountable * | queryInterface (const InterfaceId *id) |
| template<class Interface > | |
| Ptr< Interface > | queryInterface () |
| template<class Interface > | |
| Ptr< const Interface > | queryInterface () const |
Protected Member Functions | |
| virtual IRefCountable * | queryInterface (const IRefCountable::InterfaceId *id) override |
| IRefCountable * | queryInterfaceSupportingDeprecatedId (const IRefCountable::InterfaceId *id, const Uuid &deprecatedInterfaceId) |
Helper class to define interfaces: provides the appropriate queryInterface().
Usage:
NOTE: For binary compatibility, when an interface needs to be extended with new methods, instead of adding virtual methods to the interface class, define a new descendant class with the new methods, and use the following naming scheme for class names and interface ids:
Such naming scheme implies the following:
|
inline |
VMT #1.
Intended to be called indirectly, via queryInterface<Interface>(), hence protected.
|
inlineprotected |
Call from DerivedInterface::queryInterface() to support interface id from the old SDK.
1.8.14