2 #ifndef _YI_DT_BINDING_IMPLEMENTATION_H_ 3 #define _YI_DT_BINDING_IMPLEMENTATION_H_ 44 PropertyData(
const char *name, duk_uint_t uFlags,
bool bIsFloat, duk_c_function getterCallback, duk_int_t nGetterArgs,
45 duk_c_function setterCallback, duk_int_t nSetterArgs, duk_int_t nValue, duk_double_t fValue)
46 : name(name), uFlags(uFlags), bIsFloat(bIsFloat), getterCallback(getterCallback), nGetterArgs(nGetterArgs)
47 , setterCallback(setterCallback), nSetterArgs(nSetterArgs), nValue(nValue), fValue(fValue) {};
65 SignalData(
const char *signalName, duk_c_function connectCallback, duk_c_function disconnectCallback, duk_c_function disconnectAllCallback)
66 : signalName(signalName), connectCallback(connectCallback), disconnectCallback(disconnectCallback), disconnectAllCallback(disconnectAllCallback) {};
81 virtual void SetIsRooted(
bool bIsRooted)
override final;
120 const duk_function_list_entry *pMethodList,
const duk_function_list_entry *pStaticMethodList,
121 const std::vector<PropertyData> &propertyData,
const std::vector<PropertyData> &staticPropertyData);
duk_c_function connectCallback
Definition: YiDTBindingImplementation.h:69
Definition: YiDTBindingImplementation.h:63
duk_double_t fValue
Definition: YiDTBindingImplementation.h:57
Definition: YiDTBindingImplementation.h:31
Container class for Unicode strings. Conceptually, a CYIString object is a sequence of Unicode charac...
Definition: YiString.h:35
static duk_ret_t JSShallowConstructor(duk_context *pDKContext)
static duk_ret_t JSDestructor(duk_context *pDKContext)
ConstructorData(duk_c_function callback, duk_int_t nArgs)
Definition: YiDTBindingImplementation.h:33
bool bIsFloat
Definition: YiDTBindingImplementation.h:51
virtual ~CYIDTBindingImplementation()
#define YI_TYPE_BASES(...)
Definition: YiRtti.h:350
PropertyData(const char *name, duk_uint_t uFlags, bool bIsFloat, duk_c_function getterCallback, duk_int_t nGetterArgs, duk_c_function setterCallback, duk_int_t nSetterArgs, duk_int_t nValue, duk_double_t fValue)
Definition: YiDTBindingImplementation.h:44
The base class for an object accessible from script source code.
Definition: YiScriptableObject.h:28
This is the base class for binding implementations between C++ and Javascript using the Duktape bindi...
Definition: YiDTBindingImplementation.h:25
duk_int_t nArgs
Definition: YiDTBindingImplementation.h:36
A binding context implementation for the Duktape Javascript binding engine.
Definition: YiDTBindingContext.h:32
duk_int_t nValue
Definition: YiDTBindingImplementation.h:56
CYIDTBindingImplementation()
duk_c_function disconnectAllCallback
Definition: YiDTBindingImplementation.h:71
duk_c_function setterCallback
Definition: YiDTBindingImplementation.h:54
The base class where binding occurs between C++ and another language.
Definition: YiBindingImplementation.h:27
const char * signalName
Definition: YiDTBindingImplementation.h:66
duk_c_function callback
Definition: YiDTBindingImplementation.h:33
The entry point for executing script source code in You.i Engine.
Definition: YiBindingContext.h:29
SignalData(const char *signalName, duk_c_function connectCallback, duk_c_function disconnectCallback, duk_c_function disconnectAllCallback)
Definition: YiDTBindingImplementation.h:65
duk_c_function getterCallback
Definition: YiDTBindingImplementation.h:52
duk_c_function disconnectCallback
Definition: YiDTBindingImplementation.h:70
const char * name
Definition: YiDTBindingImplementation.h:47
duk_uint_t uFlags
Definition: YiDTBindingImplementation.h:50
static void CreateTemplateOnStack(duk_context *pDKContext, CYIString templateNamespace, CYIString templateName, CYIString parentNameSpace, CYIString parentName, const ConstructorData &constructorData, const duk_function_list_entry *pMethodList, const duk_function_list_entry *pStaticMethodList, const std::vector< PropertyData > &propertyData, const std::vector< PropertyData > &staticPropertyData)
duk_int_t nSetterArgs
Definition: YiDTBindingImplementation.h:55
duk_int_t nGetterArgs
Definition: YiDTBindingImplementation.h:53
const std::vector< SignalData > & m_signalData
Definition: YiDTBindingImplementation.h:123
static CYIDTBindingImplementation * GetInstanceFromStack(duk_context *pDKContext, duk_idx_t nIndex)
void InitConstructor(CYIScriptableObject *pScriptableObject)
Definition: YiDTBindingImplementation.h:42
This file contains the classes and macros used to implement RTTI in You.i Engine. ...
virtual void CreateNewScriptObject(CYIBindingContext *pBindingContext, CYIScriptableObject *pScriptableObject, void *pScriptObjectPointer) override
virtual void SetIsRooted(bool bIsRooted) overridefinal