00001
00002
00003
00004
00005
00006
00007
00008
00009
00026 #ifndef __JSScriptingSuite__
00027 #define __JSScriptingSuite__
00028
00029 #include "ASTypes.h"
00030 #include "ASPragma.h"
00031 #include "SPFiles.h"
00032
00033 #ifdef __cplusplus
00034 extern "C" {
00035 #endif
00036
00037 #pragma PRAGMA_IMPORT_BEGIN
00038
00039
00040
00041
00042
00043
00045 #define kJSScriptingSuite "JavaScript Scripting Suite"
00046 #define kJSScriptingSuiteVersion2 2L
00047 #define kJSScriptingSuiteVersion1 1L
00048 #define kJSScriptingSuiteVersion kJSScriptingSuiteVersion2
00049 #define kJSScriptingVersion kJSScriptingSuiteVersion
00050
00051
00052
00053
00054
00063 #define kJSScriptExecutionError 'ScEr'
00064 #define kJSScriptInternalError 'ScIE'
00065 #define kJSScriptGeneralError 'ScGr'
00066 #define kJSScriptCantCreateEngine 'ScCJ'
00067 #define kJSScriptBadEnginReference 'ScBR'
00068 #define kJSScriptLanguageNotSupported 'Sc!s'
00069 #define kJSBufferTooSmall 'Sbts' // close defgroup, because I don't want others to appear in it.
00072
00073
00074
00075
00076
00077
00078
00080 typedef struct _t_JSEngine * JSEngineRef;
00084 enum JavaScriptExecutionMode
00085 {
00086 kJSExecutionModeNoDebug = 1,
00087 kJSExecutionModeDebugOnError = 2,
00088 kJSExecutionModeDebugAtBeginning = 3
00089 };
00090
00091
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108
00109
00110
00111
00112
00113
00114
00115
00116
00117
00118
00119
00120
00121
00122
00123
00124
00125
00126
00127
00128
00129
00130
00131
00132
00133
00134
00135
00138 typedef struct {
00139
00141 ASAPI ASBoolean (*ScriptIsRunning) ( void );
00142
00144 ASAPI ASErr (*CreateEngine) ( JSEngineRef * engineRefPtr );
00145
00147 ASAPI ASErr (*DeleteEngine) ( JSEngineRef engineRef );
00148
00152 ASAPI ASErr (*SetIncludePath) ( JSEngineRef engineRef, const ASUnicode * includePath );
00153
00159 ASAPI ASErr (*GetIncludePath) ( JSEngineRef engineRef, ASUnicode * includePathBuff, long * buffSize );
00160
00168 ASAPI ASErr (*ExecuteScript) ( JSEngineRef engineRef,
00169 const ASUnicode * script,
00170 JavaScriptExecutionMode executionMode,
00171 const ASUnicode ** result );
00172
00174
00175
00176
00178 ASAPI ASErr (*CreateEngineAPE) ( JSEngineRef * engineRefPtr, intptr_t apeEngineRef );
00179
00180 } JSScriptingSuite2;
00181
00182
00183
00186 typedef struct {
00187
00189 ASAPI ASBoolean (*ScriptIsRunning) ( void );
00190
00192 ASAPI ASErr (*CreateEngine) ( JSEngineRef * engineRefPtr );
00193
00195 ASAPI ASErr (*DeleteEngine) ( JSEngineRef engineRef );
00196
00200 ASAPI ASErr (*SetIncludePath) ( JSEngineRef engineRef, const ASUnicode * includePath );
00201
00207 ASAPI ASErr (*GetIncludePath) ( JSEngineRef engineRef, ASUnicode * includePathBuff, long * buffSize );
00208
00216 ASAPI ASErr (*ExecuteScript) ( JSEngineRef engineRef,
00217 const ASUnicode * script,
00218 JavaScriptExecutionMode executionMode,
00219 const ASUnicode ** result );
00220
00221 } JSScriptingSuite1;
00222
00223
00224 #pragma PRAGMA_IMPORT_END
00225
00226 #ifdef __cplusplus
00227 }
00228 #endif
00229
00230
00231 #endif // __JSScriptingSuite__