 |
NAVTOR SDK
v.3.0
Software Development Kit for fast and efficient development of ECDIS, ECS and generic marine applications
|
|
Go to the documentation of this file. 1 #ifndef SDK_BASE_SDK_OBJECT_INTERFACE_H_
11 #define SDK_BASE_SDK_OBJECT_INTERFACE_H_
22 #ifndef FWD_DECL_INTERFACE
23 #define FWD_DECL_INTERFACE(class_name) \
25 typedef SDK_NAMESPACE::SDKRefPtr< class_name > class_name##SP; \
26 typedef SDK_NAMESPACE::SDKRefPtr< const class_name > class_name##SCP;
45 virtual SDKAtomicRefCount SDK_CALLTYPE
AddRef()
const throw() = 0;
47 virtual SDKAtomicRefCount SDK_CALLTYPE
Release()
const throw() = 0;
53 template <
typename _Itf>
72 virtual SDKResult SDK_CALLTYPE CreateInstance(
73 SDK_NAMESPACE::SDKComponentSP& obj_instance)
const throw() = 0;
75 virtual SDKResult SDK_CALLTYPE LockServer(
bool lock)
throw() = 0;
85 inline SDK_NAMESPACE::SDKRefPtr<T> GetInterfaceT(
void* in) {
86 SDK_NAMESPACE::SDKRefPtr<T> out;
88 static_cast<SDK_NAMESPACE::ISDKComponent*
>(in)->GetInterface(T::IID(),
89 reinterpret_cast<void**
>(&out));
98 #endif // SDK_BASE_SDK_OBJECT_INTERFACE_H_
Interfaces wrapper with reference count control.
Uuid InterfaceId
Definition of interface UUID.
Definition: sdk_uuid.h:45
SDKResult GetInterface(_Itf **obj_ptr)
Returns pointers to the supported interfaces on a component.
Definition: sdk_component_interface.h:54
virtual SDKResult SDK_CALLTYPE GetInterface(const InterfaceId &id, void **obj_ptr)=0
Returns pointers to the supported interfaces on a component.
SDKInt32 SDKResult
Type of all error or return codes which SDK functions can end with.
Definition: sdk_results.h:17
A smart pointer class for managing SDK components interface pointers.
Definition: sdk_ref_ptr.h:23
Base interface for all SDK interfaces.
Definition: sdk_component_interface.h:41
virtual SDKAtomicRefCount SDK_CALLTYPE AddRef() const =0
Increments the reference count for an interface on a component.
SDK return values synonyms in the sdk namespace.
FWD_DECL_INTERFACE(ILWEParserWrapper)
Provides a wrapper around the message parser to get, add or remove the.
Definition of the Universal Unique Identifier.
virtual SDKAtomicRefCount SDK_CALLTYPE Release() const =0
Decrements the reference count for an interface on a component.
Describes the interface that creates a class of components.
Definition: sdk_component_interface.h:68