Adobe.com
Contents Suites Classes Class Index Member Index

AIFilter.h

Go to the documentation of this file.
00001 #ifndef __AIFilter__
00002 #define __AIFilter__
00003 
00004 /*
00005  *        Name: AIFilter.h
00006  *   $Revision: 6 $
00007  *      Author:
00008  *        Date:
00009  *     Purpose: Adobe Illustrator Filter Suite.
00010  *
00011  * ADOBE SYSTEMS INCORPORATED
00012  * Copyright 1986-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 __AITypes__
00031 #include "AITypes.h"
00032 #endif
00033 
00034 #ifndef __AIPlugin__
00035 #include "AIPlugin.h"
00036 #endif
00037 
00038 #ifndef __AIMenu__
00039 #include "AIMenu.h"
00040 #endif
00041 
00042 
00043 #include "AIHeaderBegin.h"
00044 
00052 /*******************************************************************************
00053  **
00054  ** Constants
00055  **
00056  **/
00057 
00058 #define kAIFilterSuite          "AI Filter Suite"
00059 #define kAIFilterSuiteVersion   AIAPI_VERSION(4)
00060 #define kAIFilterVersion        kAIFilterSuiteVersion
00061 
00065 #define kCallerAIFilter                                 "AI Filter"
00066 
00075 #define kSelectorAIGetFilterParameters  "AI Get Parameters"
00076 
00085 #define kSelectorAIGoFilter                             "AI Go"
00086 
00087 
00088 /*******************************************************************************
00089  **
00090  ** Types
00091  **
00092  **/
00093 
00096 typedef struct _t_AIFilterOpaque *AIFilterHandle;
00097 
00098 
00099 #if Macintosh || MSWindows
00100 
00103 typedef void *PlatformFilterParameters;
00104 
00112 typedef struct {
00115         unsigned char *category;
00121         unsigned char *title;
00122 } PlatformAddFilterData;
00123 #endif
00124 
00126 typedef struct {
00128         SPMessageData d;
00132         AIFilterHandle filter;
00135         PlatformFilterParameters parameters;
00136 } AIFilterMessage;
00137 
00138 
00139 /*******************************************************************************
00140  **
00141  **     Suite
00142  **
00143  **/
00144 
00174 typedef struct {
00175 
00189         AIAPI AIErr (*AddFilter) ( SPPluginRef self, char *name,
00190                                 PlatformAddFilterData *data, ai::int32 options, AIFilterHandle *filter );
00191 
00197         AIAPI AIErr (*GetFilterName) ( AIFilterHandle filter, char **name );
00198 
00204         AIAPI AIErr (*GetFilterOptions) ( AIFilterHandle filter, ai::int32 *options );
00205 
00211         AIAPI AIErr (*SetFilterOptions) ( AIFilterHandle filter, ai::int32 options );
00212 
00219         AIAPI AIErr (*GetFilterParameters) ( AIFilterHandle filter, PlatformFilterParameters *parameters );
00220 
00229         AIAPI AIErr (*SetFilterParameters) ( AIFilterHandle filter, PlatformFilterParameters parameters );
00230 
00236         AIAPI AIErr (*GetFilterMenuItem) ( AIFilterHandle filter, AIMenuItemHandle *menuItem );
00237 
00242         AIAPI AIErr (*GetFilterPlugin) ( AIFilterHandle filter, SPPluginRef *plugin );
00243 
00248         AIAPI AIErr (*CountFilters) ( ai::int32 *count );
00249 
00255         AIAPI AIErr (*GetNthFilter) ( ai::int32 n, AIFilterHandle *filter );
00256 
00257 } AIFilterSuite;
00258 
00259 
00260 #include "AIHeaderEnd.h"
00261 
00262 #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