00001 #ifndef __AIAssetMgmt__
00002 #define __AIAssetMgmt__
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef __AITypes__
00031 #include "AITypes.h"
00032 #endif
00033
00034 #include "IAIFilePath.hpp"
00035
00036 #include "AIHeaderBegin.h"
00037
00040
00041
00042
00043
00044
00045
00046 #define kAIAssetMgmtSuite "AI Asset Management Suite"
00047 #define kAIAssetMgmtSuiteVersion9 AIAPI_VERSION(9)
00048 #define kAIAssetMgmtSuiteVersion kAIAssetMgmtSuiteVersion9
00049 #define kAIAssetMgmtVersion kAIAssetMgmtSuiteVersion
00050
00052 #define kAILaunchProjectBridgeNotifier "AI Launch Project Bridge Notifier"
00053
00056 enum AIXMPMetadataSelector {
00058 kAIXMPDefault = 0x00000000,
00060 kAIXMPPreserveDocumentID = 0x00000001,
00062 kAIXMPNoPageInfo = 0x00000002,
00064 kAIXMPNoDocumentSwatches = 0x00000004,
00066 kAIXMPNoPlateUsages = 0x00000008,
00068 kAIXMPNoUsedFonts = 0x00000010,
00070 kAIXMPNoThumbnail = 0x00000020
00071 };
00072
00073
00074
00075
00076
00077
00078
00082 typedef struct _AIXMPSession *AIXMPSession;
00083
00086 typedef struct AIXMPDataFieldMap {
00088 const char *name;
00092 const char *value;
00095 AIBoolean replace;
00096 } AIXMPDataFieldMap;
00097
00098
00099
00100
00101
00102
00103
00104
00113 typedef struct AIAssetMgmtSuite {
00118 AIAPI AIBoolean (*IsAssetMgmtEnabled)();
00119
00131 AIAPI AIErr (*UpdateDynamicMetadataFields) (const char *xapIn,
00132 const AIXMPDataFieldMap *fields, const ai::int32 length,
00133 char **xapOut);
00134
00143 AIAPI AIErr (*UpdateDynamicMetadata) (const char *mimeType, const char* managedURL , ai::uint32 metadataSelectors);
00144
00149 AIAPI AIBoolean (*Progress) ( ai::int32 bytesTransferred, ai::int32 contentLength,
00150 char *server, char *uri, char *method,
00151 char *contentType, const ai::FilePath &localFile);
00160 AIAPI AIErr (*CreateXMPSession) (const char *xmpIn , AIXMPSession* xmp);
00161
00166 AIAPI AIErr (*DisposeXMPSession) (AIXMPSession xmp);
00167
00174 AIAPI AIErr (*GetXMPSessionSize) (AIXMPSession xmp , int* xmpSize);
00175
00182 AIAPI AIErr (*GetXMPSessionBuffer) (AIXMPSession xmp , char *xmpOut);
00183
00193 AIAPI AIErr (*GetPropertySize) (AIXMPSession xmp, const char *nameSpace, const char* key, ai::int32* valueSize);
00194
00203 AIAPI AIErr (*GetProperty) (AIXMPSession xmp, const char *nameSpace, const char* key , char* value);
00204
00212 AIAPI AIErr (*SetProperty) (AIXMPSession xmp, const char *nameSpace, const char* key , const char* value);
00213
00220 AIAPI AIErr (*DeleteProperty) (AIXMPSession xmp, const char *nameSpace, const char* key);
00221
00222
00233 AIAPI AIErr (*ShowMetadataDialog) (const char *xmpIn, char **xmpOut, const char *dialogTitle);
00234 } AIAssetMgmtSuite;
00235
00236 #include "AIHeaderEnd.h"
00237
00238
00239 #endif