XMP Toolkit SDK
6.0.0
ISharedObject.h
Go to the documentation of this file.
1
#ifndef __ISharedObject_h__
2
#define __ISharedObject_h__ 1
3
4
// =================================================================================================
5
// Copyright 2014 Adobe
6
// All Rights Reserved.
7
//
8
// NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms
9
// of the Adobe license agreement accompanying it. If you have received this file from a source other
10
// than Adobe, then your use, modification, or distribution of it requires the prior written permission
11
// of Adobe.
12
// =================================================================================================
13
14
#include "
XMPCommon/XMPCommonFwdDeclarations.h
"
15
16
namespace
AdobeXMPCommon
{
17
28
29
class
XMP_PUBLIC
ISharedObject
{
30
public
:
31
35
virtual
void
APICALL Acquire()
const
__NOTHROW__
= 0;
36
41
virtual
void
APICALL Release()
const
__NOTHROW__
= 0;
42
47
virtual
AdobeXMPCommon_Int::pISharedObject_I
APICALL GetISharedObject_I()
__NOTHROW__
= 0;
48
49
XMP_PRIVATE
AdobeXMPCommon_Int::pcISharedObject_I
GetISharedObject_I()
const
__NOTHROW__
{
50
return
const_cast<
ISharedObject
*
>
( this )->GetISharedObject_I();
51
}
54
55
protected
:
56
60
virtual
~
ISharedObject
()
__NOTHROW__
= 0;
61
62
#ifdef FRIEND_CLASS_DECLARATION
63
FRIEND_CLASS_DECLARATION();
64
#endif
65
66
REQ_FRIEND_CLASS_DECLARATION
();
67
};
68
69
inline
ISharedObject::~ISharedObject
()
__NOTHROW__
{ }
70
71
};
72
73
#endif // __ISharedObject_h__
AdobeXMPCommon_Int::pISharedObject_I
ISharedObject_I * pISharedObject_I
Definition:
XMPCommonFwdDeclarations.h:149
XMP_PRIVATE
#define XMP_PRIVATE
Definition:
XMP_Environment.h:222
__NOTHROW__
#define __NOTHROW__
Definition:
XMPCommonDefines.h:147
XMP_PUBLIC
#define XMP_PUBLIC
Definition:
XMP_Environment.h:221
AdobeXMPCommon
Definition:
IConfigurable.h:21
XMPCommonFwdDeclarations.h
REQ_FRIEND_CLASS_DECLARATION
#define REQ_FRIEND_CLASS_DECLARATION()
Definition:
XMPCommonDefines.h:137
AdobeXMPCommon_Int::pcISharedObject_I
const typedef ISharedObject_I * pcISharedObject_I
Definition:
XMPCommonFwdDeclarations.h:151
AdobeXMPCommon::ISharedObject::~ISharedObject
virtual ~ISharedObject() __NOTHROW__=0
Definition:
ISharedObject.h:69
AdobeXMPCommon::ISharedObject
Interface that serves as the base interface of all the externally exposed interfaces.
Definition:
ISharedObject.h:29
public
include
XMPCommon
Interfaces
BaseInterfaces
ISharedObject.h
Generated by
1.8.17