Adobe.com
Contents Suites Classes Class Index Member Index

AIColorSpace.h

Go to the documentation of this file.
00001 
00002 #ifndef __AIColorSpace__
00003 #define __AIColorSpace__
00004 
00005 /*
00006  *        Name: AIColorSpace.h
00007  *   $Revision: 1 $
00008  *      Author: Simon Chen
00009  *        Date:
00010  *     Purpose: Adobe Illustrator Color Space Suite.
00011  *
00012  * ADOBE SYSTEMS INCORPORATED
00013  * Copyright 2005-2007 Adobe Systems Incorporated.
00014  * All rights reserved.
00015  *
00016  * NOTICE:  Adobe permits you to use, modify, and distribute this file 
00017  * in accordance with the terms of the Adobe license agreement 
00018  * accompanying it. If you have received this file from a source other 
00019  * than Adobe, then your use, modification, or distribution of it 
00020  * requires the prior written permission of Adobe.
00021  *
00022  */
00023 
00024 
00025 /*******************************************************************************
00026  **
00027  **     Imports
00028  **
00029  **/
00030 
00031 #include "IAIColorSpace.hpp"
00032 #include "AITypes.h"
00033 
00034 #include "AIHeaderBegin.h"
00035 
00038 /*******************************************************************************
00039  **
00040  ** Constants
00041  **
00042  **/
00044 #define kAIColorSpaceSuite                              "AI Color Space Suite"
00045 
00046 #define kAIColorSpaceSuiteVersion               AIAPI_VERSION(7)
00047 
00048 #define kAIColorSpaceVersion                    kAIColorSpaceSuiteVersion
00049 
00050 /*******************************************************************************
00051  **
00052  ** Types
00053  **
00054  **/
00055 
00056 /*******************************************************************************
00057  **
00058  **     Suite
00059  **
00060  **/
00061 
00071 typedef struct {
00072         /* Color Space List related APIs */
00073 
00078         AIAPI AIErr (*NewColorSpaceList) (ai::ColorSpaceList &csList, const ai::ColorSpace &cs);
00083         AIAPI AIErr (*AddColorSpace) (ai::ColorSpaceList &csList, const ai::ColorSpace &cs);
00090         AIAPI ai::int32 (*GetNumColorSpaces) (const ai::ColorSpaceList &csList);
00098         AIAPI AIErr (*GetNthColorSpace) (const ai::ColorSpaceList &csList, ai::int32 n, ai::ColorSpace &cs);
00103         AIAPI AIErr (*CopyColorSpaceList) (ai::ColorSpaceList &out, const ai::ColorSpaceList &in);
00107         AIAPI AIErr (*DeleteColorSpaceList) (ai::ColorSpaceList& csList);
00108 
00120         AIAPI AIErr (*Normalize)(ai::ColorSpaceList& csList, ai::int16 docColorModel, AIBoolean convertGrayToFullProcess);
00121 
00122         /* Color Space related APIs */
00123 
00129         AIAPI AIErr (*NewSimpleColorSpace) (ai::ColorSpace &cs, ai::ColorSpace::Family family, AIBoolean hasAlpha);
00136         AIAPI AIErr (*NewProcessSeparationColorSpace) (ai::ColorSpace &cs, ai::int32 separationNum, AIBoolean hasAlpha);
00143         AIAPI AIErr (*NewGlobalColorSpace) (ai::ColorSpace &cs, const AICustomColorHandle customColor, AIBoolean hasAlpha);
00156         AIAPI AIErr (*NewNChannelColorSpace) (ai::ColorSpace &cs, const ai::ColorSpaceList &csList, AIBoolean hasAlpha, AIBoolean promoteToProcess);
00167         AIAPI AIErr (*NewIndexedColorSpace) (ai::ColorSpace &cs, const ai::ColorSpace &baseCs, ai::int32 numComponents,
00168                 ai::int32 numEntries, const ASUInt8 *lookup);
00174         AIAPI AIErr (*NewColorSpace) (ai::ColorSpace &cs, const ai::ColorSpace &baseCs, AIBoolean hasAlpha);
00179         AIAPI AIErr (*CopyColorSpace) (ai::ColorSpace& out, const ai::ColorSpace& in);
00183         AIAPI AIErr (*DeleteColorSpace) (ai::ColorSpace& cs);
00189         AIAPI ai::ColorSpace::Family (*GetFamily) (const ai::ColorSpace &cs);
00197         AIAPI AIBoolean (*HasAlpha) (const ai::ColorSpace &cs);
00206         AIAPI ai::int32 (*GetNumComponents) (const ai::ColorSpace &cs);
00214         AIAPI ai::int32 (*GetNumColorComponents) (const ai::ColorSpace &cs);
00223         AIAPI ai::int32 (*GetNumSpotComponents) (const ai::ColorSpace &cs);
00230         AIAPI AIErr (*GetBaseColorSpace) (const ai::ColorSpace &cs, ai::ColorSpace &baseCs);
00236         AIAPI ai::int32 (*GetIndexedNumComponents) (const ai::ColorSpace &cs);
00242         AIAPI ai::int32 (*GetIndexedNumEntries) (const ai::ColorSpace &cs);
00248         AIAPI const ASUInt8* (*GetIndexedTable) (const ai::ColorSpace &cs);
00254         AIAPI const AIFloat* (*GetSeparationAltColors) (const ai::ColorSpace &cs);
00260         AIAPI AIErr (*GetColorSpaceList) (const ai::ColorSpace &cs, ai::ColorSpaceList &csList);
00272         AIAPI AIErr (*GetNthColorant) (const ai::ColorSpace &cs, ai::int32 n, ai::UnicodeString& name);
00280         AIAPI AIBoolean (*HasFullSetOfProcessComponents) (const ai::ColorSpace &cs);
00287         AIAPI AIBoolean (*Equal) (const ai::ColorSpace &cs1, const ai::ColorSpace &cs2);
00288 } AIColorSpaceSuite;
00289 
00290 
00291 #include "AIHeaderEnd.h"
00292 
00293 
00294 
00295 #endif // __AIColorSpace__


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