#pragma once #include "plugin.h" #ifdef __MWERKS__ #pragma options align=mac68k #endif struct CWPluginPrivateContext { CWPluginPrivateContext(SInt32 thePluginType, SInt32 totalSize = 0); ~CWPluginPrivateContext(); SInt32 request; SInt32 apiVersion; void *shellContext; void *pluginStorage; CWFileSpec projectFile; CWFileSpec outputFileDirectory; SInt32 shellSignature; SInt32 pluginType; SInt32 numFiles; SInt32 numOverlayGroups; OSErr callbackOSError; OSErr pluginOSError; CWIDEInfo *shellInfo; IDEAccessPathList *accessPathList; SInt32 dontEatEvents; CWFileSpec *targetDataDirectorySpec; SInt32 reserved[17]; CW_BasePluginCallbacks *callbacks; }; struct CWCompilerLinkerContext : CWPluginPrivateContext { CWCompilerLinkerContext(); ~CWCompilerLinkerContext(); SInt32 whichfile; CWFileSpec sourcefile; const char *sourcetext; SInt32 sourcetextsize; Boolean precompile; Boolean autoprecompile; Boolean preprocess; Boolean cachingPCH; Boolean debuginfo; SInt16 fileID; CWBrowseOptions browseoptions; Boolean recordbrowseinfo; void *reserved; SInt32 sequenceID; CWCompilerLinkerContext *parentPB; void *targetStorage; SInt32 reservedcompiler[7]; CWMemHandle texthandle; CWTargetInfoV7 targetinfo_V7; CWTargetInfo *targetinfo; const char *commandLineArgs; CWFileSpec *workingDirectorySpec; SInt32 numEnvironmentVariables; CWEnvVarInfo *environmentVariables; SInt32 workingDirectoryError; SInt32 reservedlinker[2]; CWCompilerLinkerCallbacks *callbacks; }; struct CWParserContext : CWPluginPrivateContext { CWParserContext(); ~CWParserContext(); CWCommandLineArgs *args; CWDataType cpu; CWDataType os; const char *build_date; const char *build_time; const ToolVersionInfo *build_tool; int numPlugins; CLPluginInfo *plugins; int numPanels; const char **panelNames; CWCommandLineArgs *plugin_args; CWCommandLineArgs *panel_args; CWParserCallbacks *callbacks; }; struct Plugin; typedef struct shellContextType { Plugin *plugin; Boolean userAccessPathsChanged; Boolean systemAccessPathsChanged; } shellContextType; #ifdef __MWERKS__ #pragma options align=reset #endif