summaryrefslogtreecommitdiff
path: root/includes/plugin_internal.h
diff options
context:
space:
mode:
Diffstat (limited to 'includes/plugin_internal.h')
-rw-r--r--includes/plugin_internal.h84
1 files changed, 84 insertions, 0 deletions
diff --git a/includes/plugin_internal.h b/includes/plugin_internal.h
new file mode 100644
index 0000000..be84406
--- /dev/null
+++ b/includes/plugin_internal.h
@@ -0,0 +1,84 @@
+#pragma once
+#include "plugin.h"
+
+#ifdef __MWERKS__
+#pragma options align=mac68k
+#endif
+struct CWPluginPrivateContext {
+ CWPluginPrivateContext();
+ ~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;
+};
+#ifdef __MWERKS__
+#pragma options align=reset
+#endif