123
This commit is contained in:
62
CryScriptSystem/FunctionHandler.h
Normal file
62
CryScriptSystem/FunctionHandler.h
Normal file
@@ -0,0 +1,62 @@
|
||||
// FunctionHandler.h: interface for the CFunctionHandler class.
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
|
||||
#if !defined(AFX_FUNCTIONHANDLER_H__CB02D9A1_DFAA_4DA3_8DF7_E2E8769F4ECE__INCLUDED_)
|
||||
#define AFX_FUNCTIONHANDLER_H__CB02D9A1_DFAA_4DA3_8DF7_E2E8769F4ECE__INCLUDED_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER > 1000
|
||||
|
||||
#include "IScriptSystem.h"
|
||||
struct lua_State;
|
||||
/*! IFunctionHandler implementation
|
||||
@see IFunctionHandler
|
||||
*/
|
||||
class CFunctionHandler : public IFunctionHandler
|
||||
{
|
||||
public:
|
||||
CFunctionHandler();
|
||||
virtual ~CFunctionHandler();
|
||||
|
||||
public:
|
||||
//IFunctionHandler
|
||||
void __Attach(HSCRIPT hScript);
|
||||
THIS_PTR GetThis();
|
||||
//THIS_PTR GetThis2();
|
||||
int GetFunctionID();
|
||||
int GetParamCount();
|
||||
|
||||
bool GetParam(int nIdx,int &n); //AMD Port
|
||||
#if defined(WIN64) || defined(LINUX64)
|
||||
bool GetParam(int nIdx,INT_PTR &n); //AMD Port
|
||||
#endif
|
||||
bool GetParam(int nIdx,float &f);
|
||||
bool GetParam(int nIdx,const char * &s);
|
||||
bool GetParam(int nIdx,bool &b);
|
||||
bool GetParam(int nIdx,IScriptObject *pObj);
|
||||
bool GetParam(int nIdx,HSCRIPTFUNCTION &hFunc, int nReference);
|
||||
bool GetParam(int nIdx,USER_DATA &ud);
|
||||
bool GetParamUDVal(int nIdx,USER_DATA&val,int &cookie); //AMD Port
|
||||
ScriptVarType GetParamType(int nIdx);
|
||||
int EndFunction(int nRetVal);
|
||||
int EndFunction(float fRetVal);
|
||||
int EndFunction(const char* fRetVal);
|
||||
int EndFunction(bool bRetVal);
|
||||
int EndFunction(IScriptObject *pObj);
|
||||
int EndFunction(HSCRIPTFUNCTION hFunc);
|
||||
int EndFunction(USER_DATA ud);
|
||||
int EndFunction();
|
||||
int EndFunctionNull();
|
||||
|
||||
// 2 return params versions.
|
||||
virtual int EndFunction(int nRetVal1,int nRetVal2);
|
||||
virtual int EndFunction(float fRetVal1,float fRetVal2);
|
||||
|
||||
void Unref (HSCRIPTFUNCTION hFunc);
|
||||
private:
|
||||
lua_State *m_pLS;
|
||||
};
|
||||
|
||||
#endif // !defined(AFX_FUNCTIONHANDLER_H__CB02D9A1_DFAA_4DA3_8DF7_E2E8769F4ECE__INCLUDED_)
|
||||
Reference in New Issue
Block a user