22 #ifndef AGS_ENGINE_SCRIPT_SCRIPT_RUNTIME_H 23 #define AGS_ENGINE_SCRIPT_SCRIPT_RUNTIME_H 25 #include "ags/shared/core/types.h" 26 #include "ags/shared/script/cc_script.h" 27 #include "ags/engine/script/cc_instance.h" 33 using AGS::Shared::String;
37 const char *Name =
nullptr;
42 ScFnRegister(
const char *name, ScriptAPIFunction *fn,
void *plfn =
nullptr)
44 ScFnRegister(
const char *name, ScriptAPIObjectFunction *fn,
void *plfn =
nullptr)
46 template<
typename TPlFn>
47 ScFnRegister(
const char *name, ScriptAPIFunction *fn, TPlFn plfn)
49 template<
typename TPlFn>
50 ScFnRegister(
const char *name, ScriptAPIObjectFunction *fn, TPlFn plfn)
59 bool ccAddExternalStaticFunction(
const String &name, ScriptAPIFunction *pfn);
60 bool ccAddExternalObjectFunction(
const String &name, ScriptAPIObjectFunction *pfn);
70 void ccRemoveExternalSymbol(
const String &name);
72 void ccRemoveAllSymbols();
76 bool ccAddExternalStaticFunction361(
const String &name, ScriptAPIFunction *scfn,
void *dirfn =
nullptr);
77 bool ccAddExternalObjectFunction361(
const String &name, ScriptAPIObjectFunction *scfn,
void *dirfn =
nullptr);
78 bool ccAddExternalFunction361(
const ScFnRegister &scfnreg);
81 inline void ccAddExternalFunctions361(
const ScFnRegister (&arr)[N]) {
82 for (
const ScFnRegister *it = arr; it != (arr + N); ++it)
83 ccAddExternalFunction361(*it);
87 void *ccGetSymbolAddress(
const String &name);
91 void *ccGetScriptObjectAddress(
const String &name,
const String &type);
94 typedef void (*new_line_hook_type)(
ccInstance *, int);
95 void ccSetDebugHook(new_line_hook_type jibble);
101 void ccSetScriptAliveTimer(
unsigned sys_poll_timeout,
unsigned abort_timeout,
unsigned abort_loops);
103 void ccNotifyScriptStillAlive();
Definition: cc_script_object.h:60
Definition: runtime_script_value.h:63
Definition: cc_static_array.h:60
Definition: script_runtime.h:36
Definition: plugin_base.h:151
Definition: plugin_base.h:189
Definition: cc_instance.h:114