xmp_toolkit_ruby 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.idea/.gitignore +8 -0
- data/.rspec +3 -0
- data/.rubocop.yml +88 -0
- data/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/AGENTS.md +72 -0
- data/CHANGELOG.md +45 -0
- data/LICENSE.txt +21 -0
- data/README.md +287 -0
- data/Rakefile +25 -0
- data/cliff.toml +138 -0
- data/docker/Dockerfile +87 -0
- data/docker/ProductConfig.cmake.patch +11 -0
- data/docker/ToolchainGCC.cmake.patch +11 -0
- data/exe/xmp_toolkit_ruby +8 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/LICENSE +31 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/build/XMP_BuildInfo.h +17 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/TXMPFiles.hpp +853 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/TXMPIterator.hpp +234 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/TXMPMeta.hpp +1753 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/TXMPUtils.hpp +967 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMP.hpp +98 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMP.incl_cpp +69 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/Interfaces/BaseInterfaces/IConfigurable.h +225 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/Interfaces/BaseInterfaces/ISharedObject.h +71 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/Interfaces/BaseInterfaces/IThreadSafe.h +76 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/Interfaces/BaseInterfaces/IVersionable.h +71 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/Interfaces/IConfigurationManager.h +167 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/Interfaces/IError.h +377 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/Interfaces/IErrorNotifier.h +52 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/Interfaces/IMemoryAllocator.h +65 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/Interfaces/IObjectFactory.h +90 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/Interfaces/IUTF8String.h +504 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/Utilities/TWrapperFunctions.h +252 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/Utilities/TWrapperFunctions2.h +564 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/XMPCommonDefines.h +194 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/XMPCommonErrorCodes.h +114 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/XMPCommonFwdDeclarations.h +158 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/XMPCommonLatestInterfaceVersions.h +51 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/source/IConfigurable.cpp +204 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/source/IConfigurationManager.cpp +92 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/source/IError.cpp +207 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/source/IErrorNotifier.cpp +26 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/source/IUTF8String.cpp +299 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/IArrayNode.h +303 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/IClientDOMParser.h +88 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/IClientDOMSerializer.h +94 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/ICompositeNode.h +331 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/ICoreConfigurationManager.h +107 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/ICoreObjectFactory.h +279 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/IDOMImplementationRegistry.h +150 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/IDOMParser.h +181 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/IDOMSerializer.h +120 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/IMetadata.h +145 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/IMetadataConverterUtils.h +116 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/INameSpacePrefixMap.h +236 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/INode.h +582 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/INodeIterator.h +193 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/IPath.h +212 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/IPathSegment.h +225 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/ISimpleNode.h +150 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/Interfaces/IStructureNode.h +306 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/XMPCoreDefines.h +94 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/XMPCoreErrorCodes.h +116 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/XMPCoreFwdDeclarations.h +325 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/XMPCoreLatestInterfaceVersions.h +97 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/IArrayNode.cpp +163 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/IClientDOMParser.cpp +76 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/IClientDOMSerializer.cpp +73 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/ICompositeNode.cpp +121 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/ICoreConfigurationManager.cpp +88 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/ICoreObjectFactory.cpp +83 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/IDOMImplementationRegistry.cpp +122 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/IDOMParser.cpp +116 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/IDOMSerializer.cpp +109 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/IMetadata.cpp +113 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/IMetadataConverterUtils.cpp +92 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/INameSpacePrefixMap.cpp +187 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/INode.cpp +377 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/INodeIterator.cpp +105 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/IPath.cpp +157 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/IPathSegment.cpp +146 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/ISimpleNode.cpp +111 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCore/source/IStructureNode.cpp +104 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMP_Const.h +1590 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMP_Environment.h +223 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMP_IO.hpp +169 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMP_Version.h +52 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/client-glue/TXMPFiles.incl_cpp +484 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/client-glue/TXMPIterator.incl_cpp +223 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/client-glue/TXMPMeta.incl_cpp +917 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/client-glue/TXMPUtils.incl_cpp +445 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/client-glue/WXMPFiles.hpp +281 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/client-glue/WXMPIterator.hpp +74 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/client-glue/WXMPMeta.hpp +635 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/client-glue/WXMPUtils.hpp +314 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/client-glue/WXMP_Common.hpp +132 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/libraries/i80386linux_x64/debug/libXMPCore.so +0 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/libraries/i80386linux_x64/debug/libXMPCoreStatic.a +0 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/libraries/i80386linux_x64/debug/libXMPFiles.so +0 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/libraries/i80386linux_x64/debug/libXMPFilesStatic.a +0 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/libraries/macintosh/universal/Debug/libXMPCoreStatic.a +0 -0
- data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/libraries/macintosh/universal/Debug/libXMPFilesStatic.a +0 -0
- data/ext/xmp_toolkit_ruby/extconf.rb +101 -0
- data/ext/xmp_toolkit_ruby/xmp_toolkit.cpp +321 -0
- data/ext/xmp_toolkit_ruby/xmp_toolkit.hpp +69 -0
- data/ext/xmp_toolkit_ruby/xmp_toolkit_ruby.cpp +44 -0
- data/lib/xmp_toolkit_ruby/cli.rb +95 -0
- data/lib/xmp_toolkit_ruby/namespaces.rb +77 -0
- data/lib/xmp_toolkit_ruby/plugins/LICENSE +31 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/i80386linux/i80386linux/PDF_Handler.resources/MODULE_IDENTIFIER.txt +1 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/i80386linux/i80386linux/PDF_Handler.resources/XMPPLUGINUIDS.txt +31 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/i80386linux/i80386linux/PDF_Handler.xpi +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/i80386linux/i80386linux/libMiniPDFL.so +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/i80386linux/i80386linux_x64/PDF_Handler.resources/MODULE_IDENTIFIER.txt +1 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/i80386linux/i80386linux_x64/PDF_Handler.resources/XMPPLUGINUIDS.txt +31 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/i80386linux/i80386linux_x64/PDF_Handler.xpi +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/i80386linux/i80386linux_x64/libMiniPDFL.so +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/PDF_Handler +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Resources/Info.plist +52 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Resources/MODULE_IDENTIFIER.txt +1 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Resources/MiniPDFL.framework/MiniPDFL +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Resources/MiniPDFL.framework/Resources/English.lproj/InfoPlist.strings +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Resources/MiniPDFL.framework/Resources/Info.plist +35 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Resources/MiniPDFL.framework/Versions/A/MiniPDFL +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Resources/MiniPDFL.framework/Versions/A/Resources/English.lproj/InfoPlist.strings +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Resources/MiniPDFL.framework/Versions/A/Resources/Info.plist +35 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Resources/MiniPDFL.framework/Versions/A/_CodeSignature/CodeResources +146 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Resources/MiniPDFL.framework/Versions/Current/MiniPDFL +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Resources/MiniPDFL.framework/Versions/Current/Resources/English.lproj/InfoPlist.strings +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Resources/MiniPDFL.framework/Versions/Current/Resources/Info.plist +35 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Resources/MiniPDFL.framework/Versions/Current/_CodeSignature/CodeResources +146 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Resources/XMPPLUGINUIDS.txt +31 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/PDF_Handler +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/Resources/Info.plist +52 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/Resources/MODULE_IDENTIFIER.txt +1 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/Resources/MiniPDFL.framework/MiniPDFL +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/Resources/MiniPDFL.framework/Resources/English.lproj/InfoPlist.strings +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/Resources/MiniPDFL.framework/Resources/Info.plist +35 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/Resources/MiniPDFL.framework/Versions/A/MiniPDFL +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/Resources/MiniPDFL.framework/Versions/A/Resources/English.lproj/InfoPlist.strings +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/Resources/MiniPDFL.framework/Versions/A/Resources/Info.plist +35 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/Resources/MiniPDFL.framework/Versions/A/_CodeSignature/CodeResources +146 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/Resources/MiniPDFL.framework/Versions/Current/MiniPDFL +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/Resources/MiniPDFL.framework/Versions/Current/Resources/English.lproj/InfoPlist.strings +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/Resources/MiniPDFL.framework/Versions/Current/Resources/Info.plist +35 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/Resources/MiniPDFL.framework/Versions/Current/_CodeSignature/CodeResources +146 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/Resources/XMPPLUGINUIDS.txt +31 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/A/_CodeSignature/CodeResources +216 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/PDF_Handler +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/Resources/Info.plist +52 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/Resources/MODULE_IDENTIFIER.txt +1 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/Resources/MiniPDFL.framework/MiniPDFL +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/Resources/MiniPDFL.framework/Resources/English.lproj/InfoPlist.strings +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/Resources/MiniPDFL.framework/Resources/Info.plist +35 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/Resources/MiniPDFL.framework/Versions/A/MiniPDFL +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/Resources/MiniPDFL.framework/Versions/A/Resources/English.lproj/InfoPlist.strings +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/Resources/MiniPDFL.framework/Versions/A/Resources/Info.plist +35 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/Resources/MiniPDFL.framework/Versions/A/_CodeSignature/CodeResources +146 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/Resources/MiniPDFL.framework/Versions/Current/MiniPDFL +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/Resources/MiniPDFL.framework/Versions/Current/Resources/English.lproj/InfoPlist.strings +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/Resources/MiniPDFL.framework/Versions/Current/Resources/Info.plist +35 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/Resources/MiniPDFL.framework/Versions/Current/_CodeSignature/CodeResources +146 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/Resources/XMPPLUGINUIDS.txt +31 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/macintosh/universal/PDF_Handler.xpi/Versions/Current/_CodeSignature/CodeResources +216 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/resource/linux/PDF_Handler.exp +11 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/resource/mac/PDF_Handler.exp +2 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/resource/mac/PDF_Handler.plist +28 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/resource/mac/PDF_HandlerPList.h +12 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/resource/win/CopyPDFL.bat +14 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/resource/win/PDF_Handler-32.rc +8 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/resource/win/PDF_Handler-64.rc +8 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/resource/win/PDF_Handler.def +9 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/windows/windows_x64/MiniPDFL.dll +0 -0
- data/lib/xmp_toolkit_ruby/plugins/PDF_Handler/windows/windows_x64/PDF_Handler.xpi +0 -0
- data/lib/xmp_toolkit_ruby/version.rb +5 -0
- data/lib/xmp_toolkit_ruby/xmp_file_format.rb +87 -0
- data/lib/xmp_toolkit_ruby/xmp_file_handler_flags.rb +49 -0
- data/lib/xmp_toolkit_ruby.rb +237 -0
- data/sig/xmp_toolkit_ruby.rbs +4 -0
- data/tasks/changelog.rake +29 -0
- metadata +357 -0
@@ -0,0 +1,167 @@
|
|
1
|
+
//! @file IConfigurationManager.h
|
2
|
+
|
3
|
+
#ifndef IConfigurationManager_h__
|
4
|
+
#define IConfigurationManager_h__ 1
|
5
|
+
|
6
|
+
//
|
7
|
+
// =================================================================================================
|
8
|
+
// Copyright Adobe
|
9
|
+
// Copyright 2014 Adobe
|
10
|
+
// All Rights Reserved
|
11
|
+
//
|
12
|
+
// NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms
|
13
|
+
// of the Adobe license agreement accompanying it.
|
14
|
+
// =================================================================================================
|
15
|
+
//
|
16
|
+
|
17
|
+
#include "XMPCommon/Interfaces/BaseInterfaces/ISharedObject.h"
|
18
|
+
#include "XMPCommon/Interfaces/BaseInterfaces/IVersionable.h"
|
19
|
+
|
20
|
+
#include "XMPCommon/XMPCommonFwdDeclarations.h"
|
21
|
+
|
22
|
+
namespace AdobeXMPCommon {
|
23
|
+
|
24
|
+
//!
|
25
|
+
//! @class IConfigurationManager_v1
|
26
|
+
//! \brief Version1 of the interface that represents configuration settings controllable by the client.
|
27
|
+
//! \details Provides functions through which client can plug in its own memory allocators, error notifiers.
|
28
|
+
//! \attention Not Thread Safe as this functionality is generally used at the initialization phase.
|
29
|
+
//!
|
30
|
+
class XMP_PUBLIC IConfigurationManager_v1
|
31
|
+
: public virtual ISharedObject
|
32
|
+
, public virtual IVersionable
|
33
|
+
{
|
34
|
+
public:
|
35
|
+
|
36
|
+
//!
|
37
|
+
//! @brief Allows the client to plug in its own memory allocation procedures which will be used to allocate/deallocate memory from the heap.
|
38
|
+
//!
|
39
|
+
//! \param[in] memoryAllocator A pointer to an object of type AdobeXMPCommon::IMemoryAllocator.
|
40
|
+
//! NULL pointer will switch to default allocator built in the library.
|
41
|
+
//! \return A value of bool type; true means successful and false otherwise.
|
42
|
+
//!
|
43
|
+
virtual bool APICALL RegisterMemoryAllocator( pIMemoryAllocator memoryAllocator ) = 0;
|
44
|
+
|
45
|
+
//!
|
46
|
+
//! @brief Allows the client to plug in its own error notification procedures which will be used to
|
47
|
+
//! inform client about various warnings and errors.
|
48
|
+
//! \param[in] clientErrorNotifier A pointer to an object of type AdobeXMPCommon::IErrorNotifier. NULL
|
49
|
+
//! pointer means client no longer wants to be notified of any warnings or errors.
|
50
|
+
//! \return a value of bool type; true means successful and false otherwise.
|
51
|
+
//!
|
52
|
+
virtual bool APICALL RegisterErrorNotifier( pIErrorNotifier_base clientErrorNotifier ) = 0;
|
53
|
+
|
54
|
+
//!
|
55
|
+
//! @brief Allows the client to disable the support for multi threading inside the library.
|
56
|
+
//! By default library supports multi-threading.
|
57
|
+
//! \return A value of bool type; true means successful and false otherwise.
|
58
|
+
//!
|
59
|
+
virtual bool APICALL DisableMultiThreading() = 0;
|
60
|
+
|
61
|
+
//!
|
62
|
+
//! @brief Returns whether library supports multi threading or not
|
63
|
+
//! \return A value of bool type; true means it supports multi threading and false otherwise.
|
64
|
+
//!
|
65
|
+
virtual bool APICALL IsMultiThreaded() const = 0;
|
66
|
+
|
67
|
+
//!
|
68
|
+
//! \cond XMP_INTERNAL_DOCUMENTATION
|
69
|
+
//! @{
|
70
|
+
//! @brief Returns the actual raw pointer from the shared pointer, which can be a shared pointer of a proxy class.
|
71
|
+
//! \return Either a const or non const pointer to IConfigurationManager interface.
|
72
|
+
//!
|
73
|
+
virtual pIConfigurationManager APICALL GetActualIConfigurationManager() __NOTHROW__ = 0;
|
74
|
+
XMP_PRIVATE pcIConfigurationManager GetActualIConfigurationManager() const __NOTHROW__ {
|
75
|
+
return const_cast< IConfigurationManager_v1 * >( this )->GetActualIConfigurationManager();
|
76
|
+
}
|
77
|
+
//!
|
78
|
+
//! @}
|
79
|
+
|
80
|
+
//!
|
81
|
+
//! @{
|
82
|
+
//! @brief Convert raw pointer to shared pointer.
|
83
|
+
//! @detail The raw pointer is of version 1 interface where as the returned shared pointer depends on the version client is interested in.
|
84
|
+
//!
|
85
|
+
//! \return Shared pointer to const or non constant IConfigurationManager interface.
|
86
|
+
//!
|
87
|
+
XMP_PRIVATE static spIConfigurationManager MakeShared( pIConfigurationManager_base ptr );
|
88
|
+
XMP_PRIVATE static spcIConfigurationManager MakeShared( pcIConfigurationManager_base ptr ) {
|
89
|
+
return MakeShared( const_cast< pIConfigurationManager_base >( ptr ) );
|
90
|
+
}
|
91
|
+
//!
|
92
|
+
//! @}
|
93
|
+
|
94
|
+
//!
|
95
|
+
//! @brief Return the unique ID assigned to the interface.
|
96
|
+
//! \return 64 bit unsigned integer representing the unique ID assigned to the interface.
|
97
|
+
//!
|
98
|
+
XMP_PRIVATE static uint64 GetInterfaceID() { return kIConfigurationManagerID; }
|
99
|
+
|
100
|
+
//!
|
101
|
+
//! @brief Returns the version of the interface.
|
102
|
+
//! \return 32 bit unsigned integer representing the version of the interface.
|
103
|
+
//!
|
104
|
+
XMP_PRIVATE static uint32 GetInterfaceVersion() { return 1; }
|
105
|
+
//! \endcond
|
106
|
+
|
107
|
+
virtual ~IConfigurationManager_v1() __NOTHROW__ {}
|
108
|
+
|
109
|
+
protected:
|
110
|
+
|
111
|
+
//! \cond XMP_INTERNAL_DOCUMENTATION
|
112
|
+
virtual uint32 APICALL registerMemoryAllocator( pIMemoryAllocator_base memoryAllocator, pcIError_base & error ) __NOTHROW__ = 0;
|
113
|
+
virtual uint32 APICALL registerErrorNotifier( pIErrorNotifier_base clientErrorNotifier, pcIError_base & error ) __NOTHROW__ = 0;
|
114
|
+
virtual uint32 APICALL disableMultiThreading( pcIError_base & error ) __NOTHROW__ = 0;
|
115
|
+
virtual uint32 APICALL isMultiThreaded( pcIError_base & error ) const __NOTHROW__ = 0;
|
116
|
+
//! \endcond
|
117
|
+
|
118
|
+
#ifdef FRIEND_CLASS_DECLARATION
|
119
|
+
FRIEND_CLASS_DECLARATION();
|
120
|
+
#endif
|
121
|
+
REQ_FRIEND_CLASS_DECLARATION();
|
122
|
+
//! \endcond
|
123
|
+
};
|
124
|
+
}
|
125
|
+
|
126
|
+
|
127
|
+
#if !BUILDING_XMPCOMMON_LIB && !SOURCE_COMPILING_XMP_ALL
|
128
|
+
|
129
|
+
namespace AdobeXMPCommon {
|
130
|
+
class IConfigurationManagerProxy
|
131
|
+
: public virtual IConfigurationManager
|
132
|
+
{
|
133
|
+
private:
|
134
|
+
pIConfigurationManager mRawPtr;
|
135
|
+
|
136
|
+
public:
|
137
|
+
IConfigurationManagerProxy( pIConfigurationManager ptr )
|
138
|
+
: mRawPtr( ptr )
|
139
|
+
{
|
140
|
+
mRawPtr->Acquire();
|
141
|
+
}
|
142
|
+
|
143
|
+
~IConfigurationManagerProxy() __NOTHROW__ { mRawPtr->Release(); }
|
144
|
+
pIConfigurationManager APICALL GetActualIConfigurationManager() __NOTHROW__ { return mRawPtr; }
|
145
|
+
AdobeXMPCommon_Int::pISharedObject_I APICALL GetISharedObject_I() __NOTHROW__ { return mRawPtr->GetISharedObject_I(); }
|
146
|
+
|
147
|
+
void APICALL Acquire() const __NOTHROW__;
|
148
|
+
void APICALL Release() const __NOTHROW__;
|
149
|
+
pvoid APICALL GetInterfacePointer( uint64 interfaceID, uint32 interfaceVersion );
|
150
|
+
virtual bool APICALL RegisterMemoryAllocator( pIMemoryAllocator memoryAllocator );
|
151
|
+
virtual bool APICALL RegisterErrorNotifier( pIErrorNotifier_base clientErrorNotifier );
|
152
|
+
virtual bool APICALL DisableMultiThreading();
|
153
|
+
virtual bool APICALL IsMultiThreaded() const;
|
154
|
+
|
155
|
+
protected:
|
156
|
+
virtual uint32 APICALL registerMemoryAllocator( pIMemoryAllocator_base memoryAllocator, pcIError_base & error ) __NOTHROW__;
|
157
|
+
virtual uint32 APICALL registerErrorNotifier( pIErrorNotifier_base clientErrorNotifier, pcIError_base & error ) __NOTHROW__;
|
158
|
+
virtual uint32 APICALL disableMultiThreading( pcIError_base & error ) __NOTHROW__;
|
159
|
+
virtual uint32 APICALL isMultiThreaded( pcIError_base & error ) const __NOTHROW__;
|
160
|
+
pvoid APICALL getInterfacePointer( uint64 interfaceID, uint32 interfaceVersion, pcIError_base & error ) __NOTHROW__;
|
161
|
+
};
|
162
|
+
|
163
|
+
}
|
164
|
+
|
165
|
+
#endif // BUILDING_XMPCOMMON_LIB && !SOURCE_COMPILING_XMP_LIB
|
166
|
+
|
167
|
+
#endif // IConfigurationManager_h__
|
@@ -0,0 +1,377 @@
|
|
1
|
+
//! @file IError.h
|
2
|
+
#ifndef __IError_h__
|
3
|
+
#define __IError_h__ 1
|
4
|
+
|
5
|
+
// =================================================================================================
|
6
|
+
// Copyright 2014 Adobe
|
7
|
+
// All Rights Reserved.
|
8
|
+
//
|
9
|
+
// NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms
|
10
|
+
// of the Adobe license agreement accompanying it.
|
11
|
+
// ================================================================================================
|
12
|
+
|
13
|
+
#include "XMPCommon/Interfaces/BaseInterfaces/ISharedObject.h"
|
14
|
+
#include "XMPCommon/Interfaces/BaseInterfaces/IVersionable.h"
|
15
|
+
|
16
|
+
#include "XMPCommon/XMPCommonFwdDeclarations.h"
|
17
|
+
|
18
|
+
namespace AdobeXMPCommon {
|
19
|
+
|
20
|
+
//!
|
21
|
+
//! @brief Version1 of the interface that represents an error/warning encountered during processing.
|
22
|
+
//! \details Provides all the functions to get required information regarding error scenario.
|
23
|
+
//! \attention Do Not support Multi-threading at object level.
|
24
|
+
//! \attention Multi-threading not required since clients will only be provided const objects.
|
25
|
+
//!
|
26
|
+
class XMP_PUBLIC IError_v1
|
27
|
+
: public virtual ISharedObject
|
28
|
+
, public virtual IVersionable
|
29
|
+
{
|
30
|
+
public:
|
31
|
+
//!
|
32
|
+
//! @brief Indicates various types of errors.
|
33
|
+
//!
|
34
|
+
typedef enum {
|
35
|
+
//! No severity, not to be used.
|
36
|
+
kESNone = 0,
|
37
|
+
|
38
|
+
//! Recovery is possible, client can choose to ignore and let library continue with the best possible way.
|
39
|
+
kESWarning = 1 << 0,
|
40
|
+
|
41
|
+
//! Recovery is not possible, an exception of type pcIError_base will be thrown aborting the API call.
|
42
|
+
kESOperationFatal = 1 << 1,
|
43
|
+
|
44
|
+
//! Recovery is not possible, an exception of type pcIError_base will be thrown, client should abort the process.
|
45
|
+
kESProcessFatal = 1 << 2,
|
46
|
+
|
47
|
+
// Add new severities here
|
48
|
+
|
49
|
+
//! Maximum value this enum can hold, should be treated as invalid value.
|
50
|
+
kESMaxValue = 1 << 31,
|
51
|
+
|
52
|
+
//! Union of all severities
|
53
|
+
kESAll = kAllBits,
|
54
|
+
} eErrorSeverity;
|
55
|
+
|
56
|
+
|
57
|
+
//!
|
58
|
+
//! @brief Indicates various types of error domains.
|
59
|
+
//!
|
60
|
+
typedef enum {
|
61
|
+
//! No Domain
|
62
|
+
kEDNone = 0,
|
63
|
+
|
64
|
+
//! Indicates error related to general conditions.
|
65
|
+
kEDGeneral = 1,
|
66
|
+
|
67
|
+
//! Indicates error related to memory allocation-deallocation conditions.
|
68
|
+
kEDMemoryManagement = 2,
|
69
|
+
|
70
|
+
//! Indicates error related to configurable APIs.
|
71
|
+
kEDConfigurable = 3,
|
72
|
+
|
73
|
+
//! Indicates error releated to multithreading.
|
74
|
+
kEDMultiThreading = 4,
|
75
|
+
|
76
|
+
//! Indicates error related to XMP Data Model Management.
|
77
|
+
kEDDataModel = 100,
|
78
|
+
|
79
|
+
//! Indicates error related to XMP Parsing.
|
80
|
+
kEDParser = 101,
|
81
|
+
|
82
|
+
//! Indicates error related to XMP Serializing.
|
83
|
+
kEDSerializer = 102,
|
84
|
+
|
85
|
+
|
86
|
+
//! Indicates error related to dealing with XMP in various file formats.
|
87
|
+
kEDXMPFiles = 200,
|
88
|
+
|
89
|
+
|
90
|
+
//! Indicates error related to Conflict Identification.
|
91
|
+
kEDConflictIdentification = 400,
|
92
|
+
|
93
|
+
//! Indicates error related to Conflict Resolution.
|
94
|
+
kEDConflictResolution = 500,
|
95
|
+
|
96
|
+
//! Indicates error related to 3 Way Merge.
|
97
|
+
kEDThreeWayMerge = 600,
|
98
|
+
|
99
|
+
//! Indicates error related to Generic Strategy Database
|
100
|
+
kEDGenericStrategyDatabase = 601,
|
101
|
+
|
102
|
+
//! Indicates error related to Asset Management.
|
103
|
+
kEDAssetManagement = 10000,
|
104
|
+
|
105
|
+
//! Maximum value this enum can hold, should be treated as invalid value.
|
106
|
+
kEDMaxValue = kMaxEnumValue
|
107
|
+
} eErrorDomain;
|
108
|
+
|
109
|
+
typedef uint32 eErrorCode;
|
110
|
+
|
111
|
+
//!
|
112
|
+
//! @brief Get the error code.
|
113
|
+
//! \return An object of type #eErrorCode indicating the error code.
|
114
|
+
//!
|
115
|
+
virtual eErrorCode APICALL GetCode() const = 0;
|
116
|
+
|
117
|
+
//!
|
118
|
+
//! @brief Get the error domain.
|
119
|
+
//! \return An object of type #eErrorDomain indicating the error domain.
|
120
|
+
//!
|
121
|
+
virtual eErrorDomain APICALL GetDomain() const = 0;
|
122
|
+
|
123
|
+
//!
|
124
|
+
//! @brief Get the error severity.
|
125
|
+
//! \return An object of type #eErrorSeverity indicating the severity of error.
|
126
|
+
//!
|
127
|
+
virtual eErrorSeverity APICALL GetSeverity() const = 0;
|
128
|
+
|
129
|
+
//!
|
130
|
+
//! @brief Get the error message.
|
131
|
+
//! \details Error message contains a descriptive string, for debugging use only. It must not be shown to users
|
132
|
+
//! in a final product. It is written for developers, not users, and never localized.
|
133
|
+
//! \return A shared pointer to const AdobeXMPCommon::IUTF8String object containing message string.
|
134
|
+
//!
|
135
|
+
virtual spcIUTF8String APICALL GetMessage() const = 0;
|
136
|
+
|
137
|
+
//!
|
138
|
+
//! @brief Get the location of the error origin.
|
139
|
+
//! \return A shared pointer to const AdobeXMPCommon::IUTF8String object containing location as like file name
|
140
|
+
//! and line number.
|
141
|
+
//! \note For debugging use only.
|
142
|
+
//!
|
143
|
+
virtual spcIUTF8String APICALL GetLocation() const = 0;
|
144
|
+
|
145
|
+
//!
|
146
|
+
//! @brief Get the value of a parameter at a particular index.
|
147
|
+
//! \details Based on each error condition various parameters are stored along with the error object. Clients can
|
148
|
+
//! one by one get access to each parameter that can be later used for debugging.
|
149
|
+
//! \param[in] index A value of \#AdobeXMPCommon::sizet indicating the index of the parameter client is
|
150
|
+
//! interested in retrieving.
|
151
|
+
//! \return A shared pointer to const \#AdobeXMPCommon::IUTF8String object containing some string.
|
152
|
+
//! \attention Throws \#AdobeXMPCommon::pcIError_base in case index is out of bounds.
|
153
|
+
//! \note For debugging use only.
|
154
|
+
//!
|
155
|
+
virtual spcIUTF8String APICALL GetParameter( sizet index ) const = 0;
|
156
|
+
|
157
|
+
//!
|
158
|
+
//! @brief Get the count of parameters.
|
159
|
+
//! \return An object of type \#AdobeXMPCommon::sizet containing the count of paramaters associated with the error object.
|
160
|
+
//!
|
161
|
+
virtual sizet APICALL GetParametersCount() const __NOTHROW__ = 0;
|
162
|
+
|
163
|
+
//!
|
164
|
+
//! @{
|
165
|
+
//! @brief Get the next error in the chain.
|
166
|
+
//! \return A pointer to const/non-const \#AdobeXMPCommon::IError object which is the next error in the chain.
|
167
|
+
//! \note Return an invalid shared pointer in case it is the last error object in the chain.
|
168
|
+
//!
|
169
|
+
virtual spIError APICALL GetNextError() = 0;
|
170
|
+
|
171
|
+
XMP_PRIVATE spcIError GetNextError() const {
|
172
|
+
return const_cast< IError_v1 * >( this )->GetNextError();
|
173
|
+
}
|
174
|
+
//! @}
|
175
|
+
|
176
|
+
//!
|
177
|
+
//! @brief Set the next error in the chain.
|
178
|
+
//! \param[in] error A pointer to \#AdobeXMP::IError object which will be the next error in the chain.
|
179
|
+
//! \return A pointer to \#AdobeXMPCommon::IError object which is the current next error in the chain.
|
180
|
+
//! \note Return an invalid pointer in case there is no current next error in the chain.
|
181
|
+
//!
|
182
|
+
virtual spIError APICALL SetNextError( const spIError & error ) = 0;
|
183
|
+
|
184
|
+
//!
|
185
|
+
//! @brief Set the error message.
|
186
|
+
//! \param[in] message Pointer to a constant char buffer containing message. It can be null terminated or not.
|
187
|
+
//! NULL pointer will be treated as empty message string.
|
188
|
+
//! \param[in] len A value of \#AdobeXMPCommon::sizet indicating the length in case message is not null
|
189
|
+
//! terminated. In case message is null terminated it can be set to its default value ( npos ).
|
190
|
+
//!
|
191
|
+
virtual void APICALL SetMessage( const char * message, sizet len = npos ) __NOTHROW__ = 0;
|
192
|
+
|
193
|
+
//!
|
194
|
+
//! @brief Set the location of origin of error.
|
195
|
+
//! \param[in] fileName Pointer to a null terminated char buffer containing the file name from which the error
|
196
|
+
//! originated. NULL pointer will be treated as empty fileName.
|
197
|
+
//! \param[in] lineNumber A value of \#AdobeXMPCommon::sizet indicating the line in source file from which the error
|
198
|
+
//! originated.
|
199
|
+
//!
|
200
|
+
virtual void APICALL SetLocation( const char * fileName, sizet lineNumber ) __NOTHROW__ = 0;
|
201
|
+
|
202
|
+
//!
|
203
|
+
//! @brief Appends a parameter to the list of parameters.
|
204
|
+
//! \param[in] parameter Pointer to a constant char buffer containing parameter. It can be null terminated or not.
|
205
|
+
//! NULL pointer will be treated as empty message string.
|
206
|
+
//! \param[in] len A value of AdobeXMPCommon::sizet indicating the length in case parameter is not null
|
207
|
+
//! terminated. In case parameter is null terminated it can be set to its default value ( npos ).
|
208
|
+
//!
|
209
|
+
virtual void APICALL AppendParameter( const char * parameter, sizet len = npos ) __NOTHROW__ = 0;
|
210
|
+
|
211
|
+
//!
|
212
|
+
//! @brief Appends an address as a string to the list of parameters.
|
213
|
+
//! \param[in] addressParameter A value of void * type containing the address of the location to be used as parameter.
|
214
|
+
//!
|
215
|
+
virtual void APICALL AppendParameter( void * addressParameter ) __NOTHROW__ = 0;
|
216
|
+
|
217
|
+
//!
|
218
|
+
//! @brief Appends a 32 bit unsigned integer value as a string to the list of parameters.
|
219
|
+
//! \param[in] integerValue A value of AdobeXMPCommon::uint32 type containing the integral value to be used as parameter.
|
220
|
+
//!
|
221
|
+
virtual void APICALL AppendParameter( const uint32 & integerValue ) __NOTHROW__ = 0;
|
222
|
+
|
223
|
+
//!
|
224
|
+
//! @brief Appends a 64 bit unsigned integer value as a string to the list of parameters.
|
225
|
+
//! \param[in] integerValue A value of AdobeXMPCommon::uint64 type containing the integral value to be used as parameter.
|
226
|
+
//!
|
227
|
+
virtual void APICALL AppendParameter( const uint64 & integerValue ) __NOTHROW__ = 0;
|
228
|
+
|
229
|
+
//!
|
230
|
+
//! @brief Appends a 32 bit integer value as a string to the list of parameters.
|
231
|
+
//! \param[in] integerValue A value of AdobeXMPCommon::int32 type containing the integral value to be used as parameter.
|
232
|
+
//!
|
233
|
+
virtual void APICALL AppendParameter( const int32 & integerValue ) __NOTHROW__ = 0;
|
234
|
+
|
235
|
+
//!
|
236
|
+
//! @brief Appends a 64 bit integer value as a string to the list of parameters.
|
237
|
+
//! \param[in] integerValue A value of AdobeXMPCommon::uint64 type containing the integral value to be used as parameter.
|
238
|
+
//!
|
239
|
+
virtual void APICALL AppendParameter( const int64 & integerValue ) __NOTHROW__ = 0;
|
240
|
+
|
241
|
+
//!
|
242
|
+
//! @brief Appends a floating value as a string to the list of parameters.
|
243
|
+
//! \param[in] floatValue A value of float type containing the floating value to be used as parameter.
|
244
|
+
//!
|
245
|
+
virtual void APICALL AppendParameter( const float & floatValue ) __NOTHROW__ = 0;
|
246
|
+
|
247
|
+
//!
|
248
|
+
//! @brief Appends a double floating value as a string to the list of parameters.
|
249
|
+
//! \param[in] doubleValue A value of double type containing the floating value to be used as parameter.
|
250
|
+
//!
|
251
|
+
virtual void APICALL AppendParameter( const double & doubleValue ) __NOTHROW__ = 0;
|
252
|
+
|
253
|
+
//!
|
254
|
+
//! @brief Appends a boolean value as a string to the list of parameters.
|
255
|
+
//! \param[in] booleanValue A value of bool type containing the boolean value to be used as parameter.
|
256
|
+
//!
|
257
|
+
virtual void APICALL AppendParameter( bool booleanValue ) __NOTHROW__ = 0;
|
258
|
+
|
259
|
+
//!
|
260
|
+
//! @brief Creates an error object.
|
261
|
+
//! \param[in] objFactory A pointer to IObjectFactory object.
|
262
|
+
//! \param[in] errDomain A value of #eErrorDomain indicating the error domain.
|
263
|
+
//! \param[in] errCode A value of #eErrorCode indicating the error code.
|
264
|
+
//! \param[in] errSeverity A value of #eErrorSeverity indicating the severity of the error.
|
265
|
+
//! \return A shared pointer to an object of IError_v1.
|
266
|
+
//!
|
267
|
+
static spIError CreateError( pIObjectFactory objFactory, eErrorDomain errDomain,
|
268
|
+
eErrorCode errCode, eErrorSeverity errSeverity );
|
269
|
+
|
270
|
+
//!
|
271
|
+
//! \cond XMP_INTERNAL_DOCUMENTATION
|
272
|
+
//! @{
|
273
|
+
//! @brief Return the actual raw pointer from the pointer available to client, which can be of a proxy class.
|
274
|
+
//! \return Either a const or non const pointer to IError interface.
|
275
|
+
//!
|
276
|
+
virtual pIError APICALL GetActualIError() __NOTHROW__ = 0;
|
277
|
+
XMP_PRIVATE pcIError GetActualIError() const __NOTHROW__ {
|
278
|
+
return const_cast< IError_v1 * >( this )->GetActualIError();
|
279
|
+
}
|
280
|
+
//!
|
281
|
+
//! @}
|
282
|
+
|
283
|
+
//!
|
284
|
+
//! @{
|
285
|
+
//! @brief Convert raw pointer to shared pointer.
|
286
|
+
//! @details The raw pointer is of version 1 interface where as the returned shared pointer depends on the version client who is interested in.
|
287
|
+
//!
|
288
|
+
//! \return Shared pointer to const or non constant IError interface.
|
289
|
+
//!
|
290
|
+
XMP_PRIVATE static spIError MakeShared( pIError_base ptr );
|
291
|
+
XMP_PRIVATE static spcIError MakeShared( pcIError_base ptr ) {
|
292
|
+
return MakeShared( const_cast< pIError_base >( ptr ) );
|
293
|
+
}
|
294
|
+
//!
|
295
|
+
//! @}
|
296
|
+
|
297
|
+
//!
|
298
|
+
//! @brief Returns the unique ID assigned to the interface.
|
299
|
+
//! \return 64 bit unsigned integer representing the unique ID assigned to the interface.
|
300
|
+
//!
|
301
|
+
XMP_PRIVATE static uint64 GetInterfaceID() { return kIErrorID; }
|
302
|
+
|
303
|
+
//!
|
304
|
+
//! @brief Returns the version of the interface.
|
305
|
+
//! \return 32 bit unsigned integer representing the version of the interface.
|
306
|
+
//!
|
307
|
+
XMP_PRIVATE static uint32 GetInterfaceVersion() { return 1; }
|
308
|
+
//! \endcond
|
309
|
+
|
310
|
+
protected:
|
311
|
+
//!
|
312
|
+
//! Destructor
|
313
|
+
//!
|
314
|
+
virtual ~IError_v1() __NOTHROW__ {}
|
315
|
+
|
316
|
+
//! \cond XMP_INTERNAL_DOCUMENTATION
|
317
|
+
virtual uint32 APICALL getCode( pcIError_base & error ) const __NOTHROW__ = 0;
|
318
|
+
virtual uint32 APICALL getDomain( pcIError_base & error ) const __NOTHROW__ = 0;
|
319
|
+
virtual uint32 APICALL getSeverity( pcIError_base & error ) const __NOTHROW__ = 0;
|
320
|
+
virtual pcIUTF8String_base APICALL getMessage( pcIError_base & error ) const __NOTHROW__ = 0;
|
321
|
+
virtual pcIUTF8String_base APICALL getLocation( pcIError_base & error ) const __NOTHROW__ = 0;
|
322
|
+
virtual pcIUTF8String_base APICALL getParameter( sizet index, pcIError_base & error ) const __NOTHROW__ = 0;
|
323
|
+
virtual pIError_base APICALL getNextError( pcIError_base & error ) __NOTHROW__ = 0;
|
324
|
+
virtual pIError_base APICALL setNextError( pIError_base nextError, pcIError_base & error ) __NOTHROW__ = 0;
|
325
|
+
|
326
|
+
#ifdef FRIEND_CLASS_DECLARATION
|
327
|
+
FRIEND_CLASS_DECLARATION();
|
328
|
+
#endif
|
329
|
+
REQ_FRIEND_CLASS_DECLARATION();
|
330
|
+
//! \endcond
|
331
|
+
};
|
332
|
+
|
333
|
+
//!
|
334
|
+
//! @brief A function pointer to report back errors and warnings to the library encountered during the serialization operation.
|
335
|
+
//! @details Based on the error condition library can return 0 or non zero to indicate that a particular warning can be ignored
|
336
|
+
//! and operation can continue.
|
337
|
+
//! \param[in] errorDomain An unsigned 32 bit integer indicating the domain of the error.
|
338
|
+
//! \param[in] errorCode An unsigned 32 bit integer indicating the code of the error.
|
339
|
+
//! \param[in] errorSeverity An unsigned 32 bit integer indicating the severity of the error.
|
340
|
+
//! \param[out] error A reference to a pointer to const IError object which will be filled with the error object in case of any error.
|
341
|
+
//! \return non zero value indicating that process can continue ignoring the warning, otherwise return 0 to indicate it should stop immediately.
|
342
|
+
//!
|
343
|
+
typedef uint32( *ReportErrorAndContinueABISafeProc )( uint32 errorDomain, uint32 errorCode, uint32 errorSeverity, const char * message, pcIError_base & error );
|
344
|
+
|
345
|
+
//!
|
346
|
+
//! @brief A Function object used by the client to report back and warnings to the library encountered during the serialization operation.
|
347
|
+
//! @details Based on the error condition library can return 0 or non zero to indicate that a particular warning can be ignored
|
348
|
+
//! and operation can continue.
|
349
|
+
//!
|
350
|
+
class ReportErrorAndContinueFunctor {
|
351
|
+
public:
|
352
|
+
ReportErrorAndContinueFunctor( ReportErrorAndContinueABISafeProc safeProc )
|
353
|
+
: mSafeProc( safeProc ) {}
|
354
|
+
|
355
|
+
//!
|
356
|
+
//! \param[in] errorDomain A value of \#IError_v1::eErrorDomain indicating the domain of the error.
|
357
|
+
//! \param[in] errorCode A value of \#IError_v1::eErrorCode indicating the code of the error.
|
358
|
+
//! \param[in] errorSeverity A value of \#IError_v1::eErrorSeverity indicating the severity of the error.
|
359
|
+
//! \param[in] message Pointer to a constant char buffer containing message.
|
360
|
+
//! \return true value indicating that process can continue ignoring the warning, otherwise return false to indicate it should stop immediately.
|
361
|
+
//!
|
362
|
+
bool operator()( IError_v1::eErrorDomain errorDomain, IError_v1::eErrorCode errorCode, IError_v1::eErrorSeverity errorSeverity, const char * message ) {
|
363
|
+
pcIError_base error( NULL );
|
364
|
+
auto retValue = mSafeProc( static_cast< uint32 >( errorDomain ), static_cast< uint32 >( errorCode ), static_cast< uint32 >( errorSeverity ), message, error );
|
365
|
+
if ( error )
|
366
|
+
throw IError_v1::MakeShared( error );
|
367
|
+
return retValue != 0 ? true : false;
|
368
|
+
}
|
369
|
+
|
370
|
+
protected:
|
371
|
+
ReportErrorAndContinueABISafeProc mSafeProc;
|
372
|
+
};
|
373
|
+
|
374
|
+
|
375
|
+
}
|
376
|
+
|
377
|
+
#endif // __IError_h__
|
data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/Interfaces/IErrorNotifier.h
ADDED
@@ -0,0 +1,52 @@
|
|
1
|
+
#ifndef IErrorNotifier_h__
|
2
|
+
#define IErrorNotifier_h__ 1
|
3
|
+
|
4
|
+
// =================================================================================================
|
5
|
+
// Copyright Adobe
|
6
|
+
// Copyright 2014 Adobe
|
7
|
+
// All Rights Reserved
|
8
|
+
//
|
9
|
+
// NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms
|
10
|
+
// of the Adobe license agreement accompanying it.
|
11
|
+
// =================================================================================================
|
12
|
+
|
13
|
+
#include "XMPCommon/XMPCommonFwdDeclarations.h"
|
14
|
+
|
15
|
+
namespace AdobeXMPCommon {
|
16
|
+
|
17
|
+
//!
|
18
|
+
//! \brief Version1 of the interface that represents an interface to be implemented by client
|
19
|
+
//! in case he is interested in getting notifications with respect to errors/warnings encountered
|
20
|
+
//! by library.
|
21
|
+
//! \details In case client is interested in error notifications he can implement this interface
|
22
|
+
//! and register the same with the \#AdobeXMPCommon::IConfigurationManager. For every warning or error
|
23
|
+
//! encountered the NotifyError function will be called by the library. In case of warnings ( indicated
|
24
|
+
//! by the severity of the error ) the client has the option to continue ignoring the warning by returning
|
25
|
+
//! true else he can return false and the warning will be thrown aborting the current operation.
|
26
|
+
//!
|
27
|
+
class XMP_PUBLIC IErrorNotifier_v1
|
28
|
+
{
|
29
|
+
public:
|
30
|
+
//!
|
31
|
+
//! @brief Called by the library to notify the client about the warning/error.
|
32
|
+
//! \param[in] error const pointer to a \#AdobeXMPCommon::IError. Client can use the information
|
33
|
+
//! in the error to decide what should be the future course of action.
|
34
|
+
//! \return A value of bool type that will indicate the future course of action.
|
35
|
+
//!
|
36
|
+
virtual bool APICALL Notify( const spcIError & error ) = 0;
|
37
|
+
virtual ~IErrorNotifier_v1() {}
|
38
|
+
|
39
|
+
protected:
|
40
|
+
//! \cond XMP_INTERNAL_DOCUMENTATION
|
41
|
+
virtual uint32 APICALL notify( pcIError_base error, uint32 & exceptionThrown ) __NOTHROW__;
|
42
|
+
//! \endcond
|
43
|
+
|
44
|
+
#ifdef FRIEND_CLASS_DECLARATION
|
45
|
+
FRIEND_CLASS_DECLARATION();
|
46
|
+
#endif
|
47
|
+
REQ_FRIEND_CLASS_DECLARATION();
|
48
|
+
//! \endcond
|
49
|
+
};
|
50
|
+
}
|
51
|
+
|
52
|
+
#endif // IErrorNotifier_h__
|
data/ext/xmp_toolkit_ruby/XMP-Toolkit-SDK/public/include/XMPCommon/Interfaces/IMemoryAllocator.h
ADDED
@@ -0,0 +1,65 @@
|
|
1
|
+
#ifndef IMemoryAllocator_h__
|
2
|
+
#define IMemoryAllocator_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.
|
10
|
+
// =================================================================================================
|
11
|
+
|
12
|
+
#include "XMPCommon/Interfaces/BaseInterfaces/IVersionable.h"
|
13
|
+
|
14
|
+
#include "XMPCommon/XMPCommonFwdDeclarations.h"
|
15
|
+
|
16
|
+
namespace AdobeXMPCommon {
|
17
|
+
|
18
|
+
//!
|
19
|
+
//! \brief Version1 of the interface that represents an interface to be implemented by client in case
|
20
|
+
//! he is interested in controlling the memory allocation and deallocation on the heap.
|
21
|
+
//! \details In case client is interested in controlling the memory allocation and deallocation on
|
22
|
+
//! the heap he can implement this interface and register the same with the
|
23
|
+
//! \#AdobeXMPCommon::IConfigurationManager. For every request of memory allocation or deallocation on
|
24
|
+
//! the heap corresponding function will be called by the library.
|
25
|
+
//! \attention Support for Multi threading is under clients hand.
|
26
|
+
//!
|
27
|
+
class XMP_PUBLIC IMemoryAllocator_v1
|
28
|
+
{
|
29
|
+
public:
|
30
|
+
//!
|
31
|
+
//! @brief Called by the library whenever it needs some space on the heap.
|
32
|
+
//! \param[in] size A value of type \#AdobeXMPCommon::sizet indicating the number of bytes
|
33
|
+
//! required by the library on the heap.
|
34
|
+
//! \return A pointer to memory location on the heap.
|
35
|
+
//!
|
36
|
+
virtual void * APICALL allocate( sizet size ) __NOTHROW__ = 0;
|
37
|
+
|
38
|
+
//!
|
39
|
+
//! @brief Called by the library whenever there is no further need for a previously allocated space on the heap.
|
40
|
+
//! \param[in] ptr A pointer to a memory location which is no longer needed.
|
41
|
+
//!
|
42
|
+
virtual void APICALL deallocate( void * ptr ) __NOTHROW__ = 0;
|
43
|
+
|
44
|
+
//!
|
45
|
+
//! @brief Called by the library whenever it needs to expand or contract some space already allocated on
|
46
|
+
//! the heap, preserving the contents.
|
47
|
+
//! \param[in] ptr A pointer to a memory location which was previously allocated on the heap.
|
48
|
+
//! \param[in] size A value of type \#AdobeXMPCommon::sizet indicating the new number of bytes
|
49
|
+
//! required by the library on the heap.
|
50
|
+
//! \return A pointer to memory location on the heap which is of new size and previous contents are
|
51
|
+
//! preserved.
|
52
|
+
//!
|
53
|
+
virtual void * APICALL reallocate( void * ptr, sizet size ) __NOTHROW__ = 0;
|
54
|
+
virtual ~IMemoryAllocator_v1(){}
|
55
|
+
|
56
|
+
protected:
|
57
|
+
|
58
|
+
#ifdef FRIEND_CLASS_DECLARATION
|
59
|
+
FRIEND_CLASS_DECLARATION();
|
60
|
+
#endif
|
61
|
+
REQ_FRIEND_CLASS_DECLARATION();
|
62
|
+
};
|
63
|
+
};
|
64
|
+
|
65
|
+
#endif // IMemoryAllocator_h__
|