mirror of
https://github.com/WinampDesktop/winamp.git
synced 2024-12-18 20:15:51 +01:00
393 lines
13 KiB
C++
393 lines
13 KiB
C++
// ----------------------------------------------------------------------------
|
|
// Generated by InterfaceFactory [Fri Oct 01 02:49:40 1999]
|
|
//
|
|
// File : api_maki.h
|
|
// Class : api_maki
|
|
// class layer : Dispatchable Interface
|
|
// ----------------------------------------------------------------------------
|
|
|
|
#ifndef __API_MAKI_H
|
|
#define __API_MAKI_H
|
|
|
|
#include <bfc/dispatch.h>
|
|
|
|
class ScriptObject;
|
|
class ScriptObjectController;
|
|
|
|
#include <api/script/scriptvar.h>
|
|
#include <api/script/vcputypes.h>
|
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
class NOVTABLE api_maki: public Dispatchable {
|
|
protected:
|
|
api_maki() {}
|
|
~api_maki() {}
|
|
public:
|
|
void maki_pushObject(void *o);
|
|
void maki_pushInt(int i);
|
|
void maki_pushBoolean(int b);
|
|
void maki_pushFloat(float f);
|
|
void maki_pushDouble(double d);
|
|
void maki_pushString(const wchar_t *s);
|
|
void maki_pushVoid();
|
|
void maki_pushAny(scriptVar v);
|
|
void *maki_popObject();
|
|
int maki_popInt();
|
|
bool maki_popBoolean();
|
|
float maki_popFloat();
|
|
double maki_popDouble();
|
|
const wchar_t *maki_popString();
|
|
scriptVar maki_popAny();
|
|
void maki_popDiscard();
|
|
const wchar_t *maki_getFunction(int dlfid, int *nparams, ScriptObjectController **p);
|
|
int maki_addDlfRef(ScriptObjectController *o, const wchar_t *function_name, void *host);
|
|
void maki_addDlfClassRef(ScriptObjectController *o, void *host);
|
|
void maki_remDlfRef(void *host);
|
|
scriptVar maki_callFunction(ScriptObject *o, int dlfid, scriptVar **params);
|
|
scriptVar maki_triggerEvent(ScriptObject *o, int dlfid, int np, int scriptid = -1);
|
|
int maki_getScriptInt(scriptVar v);
|
|
bool maki_getScriptBoolean(scriptVar v);
|
|
float maki_getScriptFloat(scriptVar v);
|
|
double maki_getScriptDouble(scriptVar v);
|
|
const wchar_t *maki_getScriptString(scriptVar v);
|
|
ScriptObject *maki_getScriptObject(scriptVar v);
|
|
scriptVar maki_updateDlf(maki_cmd *cmd, int *dlfid, int *linkcount);
|
|
ScriptObject *maki_instantiate(GUID classguid);
|
|
void maki_destroy(ScriptObject *o);
|
|
void *maki_encapsulate(GUID classguid, ScriptObject *o);
|
|
void maki_deencapsulate(GUID classguid, void *o);
|
|
ScriptObjectController *maki_getController(GUID scriptclass);
|
|
int maki_createOrphan(int type);
|
|
void maki_killOrphan(int id);
|
|
void maki_setObjectAtom(const wchar_t *atomname, ScriptObject *object);
|
|
ScriptObject *maki_getObjectAtom(const wchar_t *atomname);
|
|
#ifdef WASABI_COMPILE_WND
|
|
ScriptObject *maki_findObject(const wchar_t *name);
|
|
#endif
|
|
void vcpu_addScriptObject(ScriptObject *o);
|
|
void vcpu_removeScriptObject(ScriptObject *o);
|
|
int vcpu_getCacheCount();
|
|
int vcpu_isValidScriptId(int id);
|
|
int vcpu_mapVarId(int varid, int scriptid);
|
|
int vcpu_getUserAncestorId(int varid, int scriptid);
|
|
int vcpu_getNumEvents();
|
|
int vcpu_getEvent(int event, int *dlf, int *script, int *var);
|
|
int vcpu_getComplete();
|
|
void vcpu_setComplete();
|
|
void vcpu_resetComplete();
|
|
const wchar_t *vcpu_getClassName(int vcpuid, int localclassid);
|
|
|
|
protected:
|
|
enum {
|
|
API_MAKI_MAKI_PUSHOBJECT = 10,
|
|
API_MAKI_MAKI_PUSHINT = 20,
|
|
API_MAKI_MAKI_PUSHBOOLEAN = 30,
|
|
API_MAKI_MAKI_PUSHFLOAT = 40,
|
|
API_MAKI_MAKI_PUSHDOUBLE = 50,
|
|
API_MAKI_MAKI_PUSHSTRING = 60,
|
|
API_MAKI_MAKI_PUSHVOID = 70,
|
|
API_MAKI_MAKI_PUSHANY = 80,
|
|
API_MAKI_MAKI_POPOBJECT = 90,
|
|
API_MAKI_MAKI_POPINT = 100,
|
|
API_MAKI_MAKI_POPBOOLEAN = 110,
|
|
API_MAKI_MAKI_POPFLOAT = 120,
|
|
API_MAKI_MAKI_POPDOUBLE = 130,
|
|
API_MAKI_MAKI_POPSTRING = 140,
|
|
API_MAKI_MAKI_POPANY = 150,
|
|
API_MAKI_MAKI_POPDISCARD = 160,
|
|
API_MAKI_MAKI_GETFUNCTION = 170,
|
|
API_MAKI_MAKI_ADDDLFREF = 180,
|
|
API_MAKI_MAKI_ADDDLFCLASSREF = 190,
|
|
API_MAKI_MAKI_REMDLFREF = 200,
|
|
API_MAKI_MAKI_CALLFUNCTION = 210,
|
|
API_MAKI_MAKI_TRIGGEREVENT = 220,
|
|
API_MAKI_MAKI_GETSCRIPTINT = 230,
|
|
API_MAKI_MAKI_GETSCRIPTBOOLEAN = 240,
|
|
API_MAKI_MAKI_GETSCRIPTFLOAT = 250,
|
|
API_MAKI_MAKI_GETSCRIPTDOUBLE = 260,
|
|
API_MAKI_MAKI_GETSCRIPTSTRING = 270,
|
|
API_MAKI_MAKI_GETSCRIPTOBJECT = 280,
|
|
API_MAKI_MAKI_UPDATEDLF = 290,
|
|
API_MAKI_MAKI_INSTANTIATE = 300,
|
|
API_MAKI_MAKI_DESTROY = 310,
|
|
API_MAKI_MAKI_ENCAPSULATE = 320,
|
|
API_MAKI_MAKI_DEENCAPSULATE = 330,
|
|
API_MAKI_MAKI_GETCONTROLLER = 340,
|
|
API_MAKI_MAKI_CREATEORPHAN = 350,
|
|
API_MAKI_MAKI_KILLORPHAN = 360,
|
|
API_MAKI_MAKI_SETOBJECTATOM = 370,
|
|
API_MAKI_MAKI_GETOBJECTATOM = 380,
|
|
#ifdef WASABI_COMPILE_WND
|
|
API_MAKI_MAKI_FINDOBJECT = 390,
|
|
#endif
|
|
API_MAKI_VCPU_ADDSCRIPTOBJECT = 400,
|
|
API_MAKI_VCPU_REMOVESCRIPTOBJECT = 410,
|
|
API_MAKI_VCPU_GETCACHECOUNT = 420,
|
|
API_MAKI_VCPU_ISVALIDSCRIPTID = 430,
|
|
API_MAKI_VCPU_MAPVARID = 440,
|
|
API_MAKI_VCPU_GETUSERANCESTORID = 450,
|
|
API_MAKI_VCPU_GETNUMEVENTS = 460,
|
|
API_MAKI_VCPU_GETEVENT = 470,
|
|
API_MAKI_VCPU_GETCOMPLETE = 480,
|
|
API_MAKI_VCPU_SETCOMPLETE = 481,
|
|
API_MAKI_VCPU_RESETCOMPLETE = 482,
|
|
API_MAKI_VCPU_GETCLASSNAME = 490,
|
|
};
|
|
};
|
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
inline void api_maki::maki_pushObject(void *o) {
|
|
_voidcall(API_MAKI_MAKI_PUSHOBJECT, o);
|
|
}
|
|
|
|
inline void api_maki::maki_pushInt(int i) {
|
|
_voidcall(API_MAKI_MAKI_PUSHINT, i);
|
|
}
|
|
|
|
inline void api_maki::maki_pushBoolean(int b) {
|
|
_voidcall(API_MAKI_MAKI_PUSHBOOLEAN, b);
|
|
}
|
|
|
|
inline void api_maki::maki_pushFloat(float f) {
|
|
_voidcall(API_MAKI_MAKI_PUSHFLOAT, f);
|
|
}
|
|
|
|
inline void api_maki::maki_pushDouble(double d) {
|
|
_voidcall(API_MAKI_MAKI_PUSHDOUBLE, d);
|
|
}
|
|
|
|
inline void api_maki::maki_pushString(const wchar_t *s) {
|
|
_voidcall(API_MAKI_MAKI_PUSHSTRING, s);
|
|
}
|
|
|
|
inline void api_maki::maki_pushVoid() {
|
|
_voidcall(API_MAKI_MAKI_PUSHVOID);
|
|
}
|
|
|
|
inline void api_maki::maki_pushAny(scriptVar v) {
|
|
_voidcall(API_MAKI_MAKI_PUSHANY, v);
|
|
}
|
|
|
|
inline void *api_maki::maki_popObject() {
|
|
void *__retval = _call(API_MAKI_MAKI_POPOBJECT, (void *)NULL);
|
|
return __retval;
|
|
}
|
|
|
|
inline int api_maki::maki_popInt() {
|
|
int __retval = _call(API_MAKI_MAKI_POPINT, (int)0);
|
|
return __retval;
|
|
}
|
|
|
|
inline bool api_maki::maki_popBoolean() {
|
|
bool __retval = _call(API_MAKI_MAKI_POPBOOLEAN, (bool)0);
|
|
return __retval;
|
|
}
|
|
|
|
inline float api_maki::maki_popFloat() {
|
|
float __retval = _call(API_MAKI_MAKI_POPFLOAT, (float)0);
|
|
return __retval;
|
|
}
|
|
|
|
inline double api_maki::maki_popDouble() {
|
|
double __retval = _call(API_MAKI_MAKI_POPDOUBLE, (double)0);
|
|
return __retval;
|
|
}
|
|
|
|
inline const wchar_t *api_maki::maki_popString() {
|
|
return _call(API_MAKI_MAKI_POPSTRING, (const wchar_t *)0);
|
|
|
|
}
|
|
|
|
inline scriptVar api_maki::maki_popAny()
|
|
{
|
|
scriptVar r; r.type = SCRIPT_VOID; r.data.idata = 0;
|
|
scriptVar __retval = _call(API_MAKI_MAKI_POPANY, (scriptVar)r);
|
|
return __retval;
|
|
}
|
|
|
|
inline void api_maki::maki_popDiscard() {
|
|
_voidcall(API_MAKI_MAKI_POPDISCARD);
|
|
}
|
|
|
|
inline const wchar_t *api_maki::maki_getFunction(int dlfid, int *nparams, ScriptObjectController **p) {
|
|
return _call(API_MAKI_MAKI_GETFUNCTION, (const wchar_t *)0, dlfid, nparams, p);
|
|
|
|
}
|
|
|
|
inline int api_maki::maki_addDlfRef(ScriptObjectController *o, const wchar_t *function_name, void *host) {
|
|
int __retval = _call(API_MAKI_MAKI_ADDDLFREF, (int)0, o, function_name, host);
|
|
return __retval;
|
|
}
|
|
|
|
inline void api_maki::maki_addDlfClassRef(ScriptObjectController *o, void *host) {
|
|
_voidcall(API_MAKI_MAKI_ADDDLFCLASSREF, o, host);
|
|
}
|
|
|
|
inline void api_maki::maki_remDlfRef(void *host) {
|
|
_voidcall(API_MAKI_MAKI_REMDLFREF, host);
|
|
}
|
|
|
|
inline scriptVar api_maki::maki_callFunction(ScriptObject *o, int dlfid, scriptVar **params) {
|
|
scriptVar r; r.type = SCRIPT_VOID; r.data.idata = 0;
|
|
scriptVar __retval = _call(API_MAKI_MAKI_CALLFUNCTION, (scriptVar)r, o, dlfid, params);
|
|
return __retval;
|
|
}
|
|
|
|
inline scriptVar api_maki::maki_triggerEvent(ScriptObject *o, int dlfid, int np, int scriptid) {
|
|
scriptVar r; r.type = SCRIPT_VOID; r.data.idata = 0;
|
|
scriptVar __retval = _call(API_MAKI_MAKI_TRIGGEREVENT, (scriptVar)r, o, dlfid, np, scriptid);
|
|
return __retval;
|
|
}
|
|
|
|
inline int api_maki::maki_getScriptInt(scriptVar v) {
|
|
int __retval = _call(API_MAKI_MAKI_GETSCRIPTINT, (int)0, v);
|
|
return __retval;
|
|
}
|
|
|
|
inline bool api_maki::maki_getScriptBoolean(scriptVar v) {
|
|
bool __retval = _call(API_MAKI_MAKI_GETSCRIPTBOOLEAN, (bool)0, v);
|
|
return __retval;
|
|
}
|
|
|
|
inline float api_maki::maki_getScriptFloat(scriptVar v) {
|
|
float __retval = _call(API_MAKI_MAKI_GETSCRIPTFLOAT, (float)0, v);
|
|
return __retval;
|
|
}
|
|
|
|
inline double api_maki::maki_getScriptDouble(scriptVar v) {
|
|
double __retval = _call(API_MAKI_MAKI_GETSCRIPTDOUBLE, (double)0, v);
|
|
return __retval;
|
|
}
|
|
|
|
inline const wchar_t *api_maki::maki_getScriptString(scriptVar v) {
|
|
const wchar_t *__retval = _call(API_MAKI_MAKI_GETSCRIPTSTRING, (const wchar_t *)0, v);
|
|
return __retval;
|
|
}
|
|
|
|
inline ScriptObject *api_maki::maki_getScriptObject(scriptVar v) {
|
|
ScriptObject *__retval = _call(API_MAKI_MAKI_GETSCRIPTOBJECT, (ScriptObject *)NULL, v);
|
|
return __retval;
|
|
}
|
|
|
|
inline scriptVar api_maki::maki_updateDlf(maki_cmd *cmd, int *dlfid, int *linkcount) {
|
|
scriptVar r; r.type = SCRIPT_VOID; r.data.idata = 0;
|
|
scriptVar __retval = _call(API_MAKI_MAKI_UPDATEDLF, (scriptVar)r, cmd, dlfid, linkcount);
|
|
return __retval;
|
|
}
|
|
|
|
inline ScriptObject *api_maki::maki_instantiate(GUID classguid) {
|
|
ScriptObject *__retval = _call(API_MAKI_MAKI_INSTANTIATE, (ScriptObject *)NULL, classguid);
|
|
return __retval;
|
|
}
|
|
|
|
inline void api_maki::maki_destroy(ScriptObject *o) {
|
|
_voidcall(API_MAKI_MAKI_DESTROY, o);
|
|
}
|
|
|
|
inline void *api_maki::maki_encapsulate(GUID classguid, ScriptObject *o) {
|
|
void *__retval = _call(API_MAKI_MAKI_ENCAPSULATE, (void *)NULL, classguid, o);
|
|
return __retval;
|
|
}
|
|
|
|
inline void api_maki::maki_deencapsulate(GUID classguid, void *o) {
|
|
_voidcall(API_MAKI_MAKI_DEENCAPSULATE, classguid, o);
|
|
}
|
|
|
|
inline ScriptObjectController *api_maki::maki_getController(GUID scriptclass) {
|
|
ScriptObjectController *__retval = _call(API_MAKI_MAKI_GETCONTROLLER, (ScriptObjectController *)NULL, scriptclass);
|
|
return __retval;
|
|
}
|
|
|
|
inline int api_maki::maki_createOrphan(int type) {
|
|
int __retval = _call(API_MAKI_MAKI_CREATEORPHAN, (int)0, type);
|
|
return __retval;
|
|
}
|
|
|
|
inline void api_maki::maki_killOrphan(int id) {
|
|
_voidcall(API_MAKI_MAKI_KILLORPHAN, id);
|
|
}
|
|
|
|
inline void api_maki::maki_setObjectAtom(const wchar_t *atomname, ScriptObject *object) {
|
|
_voidcall(API_MAKI_MAKI_SETOBJECTATOM, atomname, object);
|
|
}
|
|
|
|
inline ScriptObject *api_maki::maki_getObjectAtom(const wchar_t *atomname) {
|
|
ScriptObject *__retval = _call(API_MAKI_MAKI_GETOBJECTATOM, (ScriptObject *)NULL, atomname);
|
|
return __retval;
|
|
}
|
|
|
|
#ifdef WASABI_COMPILE_WND
|
|
inline ScriptObject *api_maki::maki_findObject(const wchar_t *name) {
|
|
ScriptObject *__retval = _call(API_MAKI_MAKI_FINDOBJECT, (ScriptObject *)NULL, name);
|
|
return __retval;
|
|
}
|
|
|
|
#endif
|
|
inline void api_maki::vcpu_addScriptObject(ScriptObject *o) {
|
|
_voidcall(API_MAKI_VCPU_ADDSCRIPTOBJECT, o);
|
|
}
|
|
|
|
inline void api_maki::vcpu_removeScriptObject(ScriptObject *o) {
|
|
_voidcall(API_MAKI_VCPU_REMOVESCRIPTOBJECT, o);
|
|
}
|
|
|
|
inline int api_maki::vcpu_getCacheCount() {
|
|
int __retval = _call(API_MAKI_VCPU_GETCACHECOUNT, (int)0);
|
|
return __retval;
|
|
}
|
|
|
|
inline int api_maki::vcpu_isValidScriptId(int id) {
|
|
int __retval = _call(API_MAKI_VCPU_ISVALIDSCRIPTID, (int)0, id);
|
|
return __retval;
|
|
}
|
|
|
|
inline int api_maki::vcpu_mapVarId(int varid, int scriptid) {
|
|
int __retval = _call(API_MAKI_VCPU_MAPVARID, (int)0, varid, scriptid);
|
|
return __retval;
|
|
}
|
|
|
|
inline int api_maki::vcpu_getUserAncestorId(int varid, int scriptid) {
|
|
int __retval = _call(API_MAKI_VCPU_GETUSERANCESTORID, (int)0, varid, scriptid);
|
|
return __retval;
|
|
}
|
|
|
|
inline int api_maki::vcpu_getNumEvents() {
|
|
int __retval = _call(API_MAKI_VCPU_GETNUMEVENTS, (int)0);
|
|
return __retval;
|
|
}
|
|
|
|
inline int api_maki::vcpu_getEvent(int event, int *dlf, int *script, int *var) {
|
|
int __retval = _call(API_MAKI_VCPU_GETEVENT, (int)0, event, dlf, script, var);
|
|
return __retval;
|
|
}
|
|
|
|
inline int api_maki::vcpu_getComplete() {
|
|
int __retval = _call(API_MAKI_VCPU_GETCOMPLETE, (int)0);
|
|
return __retval;
|
|
}
|
|
|
|
inline void api_maki::vcpu_setComplete() {
|
|
_voidcall(API_MAKI_VCPU_SETCOMPLETE);
|
|
}
|
|
|
|
inline void api_maki::vcpu_resetComplete() {
|
|
_voidcall(API_MAKI_VCPU_RESETCOMPLETE);
|
|
}
|
|
|
|
inline const wchar_t *api_maki::vcpu_getClassName(int vcpuid, int localclassid) {
|
|
return _call(API_MAKI_VCPU_GETCLASSNAME, (const wchar_t *)0, vcpuid, localclassid);
|
|
|
|
}
|
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
// {87D2391B-C928-4a49-8E0B-D47C049E0711}
|
|
static const GUID makiApiServiceGuid =
|
|
{ 0x87d2391b, 0xc928, 0x4a49, { 0x8e, 0xb, 0xd4, 0x7c, 0x4, 0x9e, 0x7, 0x11 } };
|
|
|
|
extern api_maki *makiApi;
|
|
|
|
#endif // __API_MAKI_H
|