Files
LayaNative2.0/Conch/source/conch/JSWrapper/LayaWrap/JSCallbackFuncObj.h
T
2020-11-11 16:17:13 +08:00

65 lines
1.3 KiB
C++

/**
@file JSCallbackFuncObj.h
@brief
@author James
@version 1.0
@date 2018_6_21
*/
#ifndef __JSCallbackFuncObj_H__
#define __JSCallbackFuncObj_H__
#include <stdio.h>
#include <string>
#include <vector>
#include "../JSInterface/JSInterface.h"
#include <JSObjBase.h>
namespace laya
{
class JSCallbackFuncObj :public JsObjBase, public JSObjNode
{
public:
static JsObjClassInfo JSCLSINFO;
static void exportJS();
JSCallbackFuncObj();
JSCallbackFuncObj(int nID);
~JSCallbackFuncObj();
void addCallbackFunc(int nFuncID, JSValueAsParam pFunction);
void callJS(int nID);
template<typename P1>
void callJS(int nID, P1 p1)
{
{
if (m_vFunc[nID])
{
m_vFunc[nID]->Call(p1);
}
else
{
LOGI("JSCallbackFuncObj::callJS error id=%d", nID);
}
}
}
public:
void testCall(int nID);
public:
int m_nID;
std::vector<JsObjHandle*> m_vFunc;
};
}
//------------------------------------------------------------------------------
#endif //__JSCallbackFuncObj_H__
//-----------------------------END FILE--------------------------------