| XMP Toolkit SDK 6.0.0

IClientDOMParser.h
Go to the documentation of this file.
1 // =================================================================================================
2 // Copyright Adobe
3 // Copyright 2015 Adobe
4 // All Rights Reserved
5 //
6 // NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms
7 // of the Adobe license agreement accompanying it. If you have received this file from a source other
8 // than Adobe, then your use, modification, or distribution of it requires the prior written permission
9 // of Adobe.
10 // =================================================================================================
11
12 #include "XMPCore/XMPCoreFwdDeclarations.h"
13 #include "XMPCommon/Interfaces/IError.h"
14 #include "XMPCommon/Interfaces/BaseInterfaces/IConfigurable.h"
15 #include "XMPCore/XMPCoreErrorCodes.h"
16
17 namespace AdobeXMPCore {
18
24 class XMP_PUBLIC IClientDOMParser_v1
25 {
26 public:
27
37 virtual spINode APICALL Parse( const char * buffer, sizet bufferLength, pcIConfigurable configurationParameters, ReportErrorAndContinueFunctor proc ) = 0;
38
44 virtual bool APICALL AreKeysCaseSensitive() const { return false; }
45
52 virtual void APICALL Initialize( pIConfigurable configurationParameters ) {};
53
62 virtual eConfigurableErrorCode APICALL Validate( const uint64 & key, IConfigurable::eDataType dataType, const IConfigurable::CombinedDataValue & dataValue ) {
63 return kCECNone;
64 }
65
69 virtual void APICALL Release() const __NOTHROW__ = 0;
70
71 protected:
75 virtual ~IClientDOMParser_v1() {}
76
78 virtual pINode_base APICALL parse( const char * buffer, sizet bufferLength, pcIConfigurable configurationParameters, ReportErrorAndContinueABISafeProc proc, pcIError_base & error, uint32 & unknownExceptionCaught ) __NOTHROW__;
79 virtual uint32 APICALL areKeysCaseSensitive( pcIError_base & error, uint32 & unknownExceptionCaught ) const __NOTHROW__;
80 virtual void APICALL initialize( pIConfigurable configurationParameters, pcIError_base & error, uint32 & unknownExceptionCaught ) __NOTHROW__;
81 virtual uint32 APICALL validate( const uint64 & key, uint32 dataType, const IConfigurable::CombinedDataValue & dataValue, pcIError_base & error, uint32 & unknownExceptionCaught ) __NOTHROW__;
82
83 #ifdef FRIEND_CLASS_DECLARATION
84 FRIEND_CLASS_DECLARATION();
85 #endif
86 REQ_FRIEND_CLASS_DECLARATION();
88
89 };
90 }
IError.h
AdobeXMPCore::IClientDOMParser_v1::Initialize
virtual void APICALL Initialize(pIConfigurable configurationParameters)
Initialize the default configuration parameters.
Definition: IClientDOMParser.h:52
AdobeXMPCommon::IConfigurable
Interface that allows to attach various key-value parameters to the underlying object.
Definition: IConfigurable.h:32
__NOTHROW__
#define __NOTHROW__
Definition: XMPCommonDefines.h:147
AdobeXMPCore::INode_v1
Version1 of the interface that serves as a base interface to all types of nodes in the XMP DOM.
Definition: INode.h:28
XMP_PUBLIC
#define XMP_PUBLIC
Definition: XMP_Environment.h:221
AdobeXMPCommon::IConfigurable::CombinedDataValue
A union data type to store all kind of values.
Definition: IConfigurable.h:148
AdobeXMPCommon::pcIConfigurable
const typedef IConfigurable * pcIConfigurable
Definition: XMPCommonFwdDeclarations.h:118
AdobeXMPCore::IClientDOMParser_v1::AreKeysCaseSensitive
virtual bool APICALL AreKeysCaseSensitive() const
Indicates whether object supports case sensitive keys or not.
Definition: IClientDOMParser.h:44
AdobeXMPCore::IClientDOMParser_v1
Version 1 of the interface that supports parsing by the client supplied parser of the XMP Data Model.
Definition: IClientDOMParser.h:24
AdobeXMPCore
Definition: IArrayNode.h:18
AdobeXMPCommon::uint32
XMP_Uns32 uint32
Definition: XMPCommonDefines.h:174
XMPCoreFwdDeclarations.h
AdobeXMPCommon::sizet
uint32 sizet
Definition: XMPCommonDefines.h:176
AdobeXMPCommon::IConfigurable::eDataType
eDataType
Indicates various types of parameter values.
Definition: IConfigurable.h:39
AdobeXMPCommon::kCECNone
@ kCECNone
Indicates no error.
Definition: XMPCommonErrorCodes.h:94
REQ_FRIEND_CLASS_DECLARATION
#define REQ_FRIEND_CLASS_DECLARATION()
Definition: XMPCommonDefines.h:137
AdobeXMPCore::spINode
shared_ptr< INode > spINode
Definition: XMPCoreFwdDeclarations.h:67
AdobeXMPCommon::eConfigurableErrorCode
eConfigurableErrorCode
Indicates various types of error codes within Configurable domain.
Definition: XMPCommonErrorCodes.h:92
AdobeXMPCommon::ReportErrorAndContinueABISafeProc
uint32(* ReportErrorAndContinueABISafeProc)(uint32 errorDomain, uint32 errorCode, uint32 errorSeverity, const char *message, pcIError_base &error)
A function pointer to report back errors and warnings to the library encountered during the serializa...
Definition: IError.h:345
XMPCoreErrorCodes.h
AdobeXMPCore::IClientDOMParser_v1::Validate
virtual eConfigurableErrorCode APICALL Validate(const uint64 &key, IConfigurable::eDataType dataType, const IConfigurable::CombinedDataValue &dataValue)
Validate the data type and value for a parameter.
Definition: IClientDOMParser.h:62
AdobeXMPCommon::ReportErrorAndContinueFunctor
A Function object used by the client to report back and warnings to the library encountered during th...
Definition: IError.h:352
AdobeXMPCommon::pcIError_base
const typedef IError_v1 * pcIError_base
Definition: XMPCommonFwdDeclarations.h:64
AdobeXMPCommon::uint64
XMP_Uns64 uint64
Definition: XMPCommonDefines.h:172
IConfigurable.h