|
1 #include "ai_bridgelist.hpp" |
|
2 |
|
3 namespace SQConvert { |
|
4 /* Allow AIBridgeList to be used as Squirrel parameter */ |
|
5 template <> AIBridgeList *GetParam(ForceType<AIBridgeList *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AIBridgeList *)instance; } |
|
6 template <> AIBridgeList &GetParam(ForceType<AIBridgeList &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIBridgeList *)instance; } |
|
7 template <> const AIBridgeList *GetParam(ForceType<const AIBridgeList *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AIBridgeList *)instance; } |
|
8 template <> const AIBridgeList &GetParam(ForceType<const AIBridgeList &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIBridgeList *)instance; } |
|
9 template <> int Return<AIBridgeList *>(HSQUIRRELVM vm, AIBridgeList *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AIBridgeList", res, NULL, DefSQDestructorCallback<AIBridgeList>); return 1; } |
|
10 }; // namespace SQConvert |
|
11 |
|
12 void SQAIBridgeList_Register(Squirrel *engine) { |
|
13 DefSQClass <AIBridgeList> SQAIBridgeList("AIBridgeList"); |
|
14 SQAIBridgeList.PreRegister(engine, "AIAbstractList"); |
|
15 SQAIBridgeList.AddConstructor<void (AIBridgeList::*)(), 1>(engine, "x"); |
|
16 |
|
17 SQAIBridgeList.DefSQStaticMethod(engine, &AIBridgeList::GetClassName, "GetClassName", 1, "x"); |
|
18 |
|
19 SQAIBridgeList.PostRegister(engine); |
|
20 } |
|
21 |
|
22 namespace SQConvert { |
|
23 /* Allow AIBridgeList_Length to be used as Squirrel parameter */ |
|
24 template <> AIBridgeList_Length *GetParam(ForceType<AIBridgeList_Length *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AIBridgeList_Length *)instance; } |
|
25 template <> AIBridgeList_Length &GetParam(ForceType<AIBridgeList_Length &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIBridgeList_Length *)instance; } |
|
26 template <> const AIBridgeList_Length *GetParam(ForceType<const AIBridgeList_Length *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return (AIBridgeList_Length *)instance; } |
|
27 template <> const AIBridgeList_Length &GetParam(ForceType<const AIBridgeList_Length &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIBridgeList_Length *)instance; } |
|
28 template <> int Return<AIBridgeList_Length *>(HSQUIRRELVM vm, AIBridgeList_Length *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AIBridgeList_Length", res, NULL, DefSQDestructorCallback<AIBridgeList_Length>); return 1; } |
|
29 }; // namespace SQConvert |
|
30 |
|
31 void SQAIBridgeList_Length_Register(Squirrel *engine) { |
|
32 DefSQClass <AIBridgeList_Length> SQAIBridgeList_Length("AIBridgeList_Length"); |
|
33 SQAIBridgeList_Length.PreRegister(engine, "AIAbstractList"); |
|
34 SQAIBridgeList_Length.AddConstructor<void (AIBridgeList_Length::*)(uint length), 2>(engine, "xi"); |
|
35 |
|
36 SQAIBridgeList_Length.DefSQStaticMethod(engine, &AIBridgeList_Length::GetClassName, "GetClassName", 1, "x"); |
|
37 |
|
38 SQAIBridgeList_Length.PostRegister(engine); |
|
39 } |