Adobe.com
Contents Suites Classes Class Index Member Index

AIArray.h

Go to the documentation of this file.
00001 #ifndef __AIArray__
00002 #define __AIArray__
00003 
00004 /*
00005  *        Name: AIArray.h
00006  *              $Id $
00007  *      Author:
00008  *        Date:
00009  *     Purpose: Adobe Illustrator Array Object Suite.
00010  *
00011  * ADOBE SYSTEMS INCORPORATED
00012  * Copyright 1999-2007 Adobe Systems Incorporated.
00013  * All rights reserved.
00014  *
00015  * NOTICE:  Adobe permits you to use, modify, and distribute this file 
00016  * in accordance with the terms of the Adobe license agreement 
00017  * accompanying it. If you have received this file from a source other 
00018  * than Adobe, then your use, modification, or distribution of it 
00019  * requires the prior written permission of Adobe.
00020  *
00021  */
00022 
00023 
00024 /*******************************************************************************
00025  **
00026  **     Imports
00027  **
00028  **/
00029 
00030 #ifndef __AIEntry__
00031 #include "AIEntry.h"
00032 #endif
00033 
00034 
00035 #include "AIHeaderBegin.h"
00036 
00039 /*******************************************************************************
00040  **
00041  **     Constants
00042  **
00043  **/
00044 
00045 
00046 #define kAIArraySuite                                   "AI Array Suite"
00047 #define kAIArraySuiteVersion6                   AIAPI_VERSION(6)
00048 #define kAIArraySuiteVersion                    kAIArraySuiteVersion6
00049 #define kAIArrayVersion                                 kAIArraySuiteVersion
00050 
00051 
00052 // Array errors.
00053 
00054 /*******************************************************************************
00055  **
00056  **     Types
00057  **
00058  **/
00059 
00060 
00061 /*******************************************************************************
00062  **
00063  **     Suite
00064  **
00065  **/
00066 
00067 
00091 typedef struct AIArraySuite {
00092 
00098         AIAPI AIErr (*CreateArray) ( AIArrayRef* array );
00099 
00100 
00108         AIAPI ai::int32 (*AddRef) ( AIArrayRef array );
00109 
00118         AIAPI ai::int32 (*Release) ( AIArrayRef array );
00119 
00124         AIAPI AIErr (*Clone) ( AIArrayRef src, AIArrayRef* dst );
00129         AIAPI AIErr (*Copy) ( AIArrayRef array, AIArrayRef src );
00130 
00137         AIAPI ai::int32 (*Size) ( AIArrayRef array );
00142         AIAPI AIErr (*DeleteEntry) ( AIArrayRef array, ai::int32 i );
00148         AIAPI AIErr (*InsertEntry) ( AIArrayRef array, ai::int32 i );
00149 
00155         AIAPI AIErr (*GetEntryType) ( AIArrayRef array, ai::int32 i, AIEntryType* type );
00156 
00164         AIAPI AIErr (*CopyEntry) ( AIArrayRef array1, AIArrayRef array2, ai::int32 position1,
00165                         ai::int32 position2 );
00166 
00175         AIAPI AIErr (*MoveEntry) ( AIArrayRef array1, AIArrayRef array2, ai::int32 position1,
00176                         ai::int32 position2, ai::int32* newposition );
00177 
00184         AIAPI AIErr (*SwapEntries) ( AIArrayRef array1, AIArrayRef array2, ai::int32 position1,
00185                         ai::int32 position2 );
00186 
00193         AIAPI AIErr (*GetArtEntry) ( AIArrayRef array, ai::int32 i, AIArtHandle* art );
00200         AIAPI AIErr (*NewArtEntry) ( AIArrayRef array, ai::int32 i, ai::int16 type );
00201 
00208         AIAPI AIErr (*MoveArtToEntry) ( AIArrayRef array, ai::int32 i, AIArtHandle art );
00209 
00219         AIAPI AIErr (*MoveEntryToArt) ( AIArrayRef array, ai::int32 i, ai::int16 paintOrder,
00220                         AIArtHandle prep, AIArtHandle* art );
00221 
00222 
00229         AIAPI AIErr (*CopyArtToEntry) ( AIArrayRef array, ai::int32 i, AIArtHandle art );
00230 
00239         AIAPI AIErr (*CopyEntryToArt) ( AIArrayRef array, ai::int32 i, ai::int16 paintOrder,
00240                         AIArtHandle prep, AIArtHandle* art );
00241 
00248         AIAPI AIErr (*SetEntryToLayer) ( AIArrayRef array, ai::int32 i, AILayerHandle layer );
00249 
00260         AIAPI AIErr (*SetLayerToEntry) ( AIArrayRef array, ai::int32 i, ai::int16 paintOrder,
00261                         AILayerHandle prep, AILayerHandle *layer );
00262 
00270         AIAPI AIEntryRef (*Get) ( AIArrayRef array, ai::int32 i );
00271 
00279         AIAPI AIErr (*Set) ( AIArrayRef array, ai::int32 i, AIEntryRef entry );
00280 
00281 
00282         // the following are convenience APIs for getting and setting entries of the basic types
00283 
00289         AIAPI AIErr (*GetBooleanEntry) ( AIArrayRef array, ai::int32 i, ASBoolean* value );
00290 
00296         AIAPI AIErr (*SetBooleanEntry) ( AIArrayRef array, ai::int32 i, AIBoolean value );
00297 
00303         AIAPI AIErr (*GetIntegerEntry) ( AIArrayRef array, ai::int32 i, ai::int32* value );
00304 
00310         AIAPI AIErr (*SetIntegerEntry) ( AIArrayRef array, ai::int32 i, ai::int32 value );
00311 
00317         AIAPI AIErr (*GetRealEntry) ( AIArrayRef array, ai::int32 i, AIReal* value );
00318 
00324         AIAPI AIErr (*SetRealEntry) ( AIArrayRef array, ai::int32 i, AIReal value );
00325 
00331         AIAPI AIErr (*GetStringEntry) ( AIArrayRef array, ai::int32 i, const char** value );
00332 
00338         AIAPI AIErr (*SetStringEntry) ( AIArrayRef array, ai::int32 i, const char* value );
00339 
00346         AIAPI AIErr (*GetBinaryEntry) ( AIArrayRef array, ai::int32 i, void* value, ASInt32* size );
00347 
00354         AIAPI AIErr (*SetBinaryEntry) ( AIArrayRef array, ai::int32 i, void* value, ai::int32 size );
00355 
00361         AIAPI AIErr (*GetDictEntry) ( AIArrayRef array, ai::int32 i, AIDictionaryRef* value );
00362 
00368         AIAPI AIErr (*SetDictEntry) ( AIArrayRef array, ai::int32 i, AIDictionaryRef value );
00369 
00375         AIAPI AIErr (*GetArrayEntry) ( AIArrayRef array, ai::int32 i, AIArrayRef* value );
00376 
00382         AIAPI AIErr (*SetArrayEntry) ( AIArrayRef array, ai::int32 i, AIArrayRef value );
00383 
00389         AIAPI AIErr (*GetUnicodeStringEntry) ( AIArrayRef array, ai::int32 i, ai::UnicodeString& value );
00390 
00396         AIAPI AIErr (*SetUnicodeStringEntry) ( AIArrayRef array, ai::int32 i, const ai::UnicodeString& value );
00397 
00403         AIAPI AIErr (*AppendEntry) ( AIArrayRef array, AIEntryRef entry );
00404 
00409         AIAPI AIErr (*Reserve) ( AIArrayRef array, ai::int32 count );
00410 
00411 } AIArraySuite;
00412 
00413 #include "AIHeaderEnd.h"
00414 
00415 
00416 #endif


Contents Suites Classes Class Index Member Index
Adobe Solutions Network
 
Copyright © 2016 Adobe Systems Incorporated. All rights reserved.
Terms of Use Online Privacy Policy Adobe and accessibility Avoid software piracy Permissions and Trademarks