src/ai/api/ai_enginelist_valuator.hpp.sq
author truebrain
Fri, 22 Feb 2008 12:30:17 +0000
branchnoai
changeset 9737 ee408edf3851
parent 9714 fdbdae7ea647
child 9741 53c1c5850e01
permissions -rw-r--r--
(svn r12216) [NoAI] -Codechange: made most functions 'static', which removes the need to create an instance to get, for example, engine information, and therefor heavily simplifying AI creation (Morloth)
#include "ai_enginelist_valuator.hpp"

namespace SQConvert {
	/* Allow AIEngineListCargoType to be used as Squirrel parameter */
	template <> AIEngineListCargoType *GetParam(ForceType<AIEngineListCargoType *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return  (AIEngineListCargoType *)instance; }
	template <> AIEngineListCargoType &GetParam(ForceType<AIEngineListCargoType &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIEngineListCargoType *)instance; }
	template <> const AIEngineListCargoType *GetParam(ForceType<const AIEngineListCargoType *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return  (AIEngineListCargoType *)instance; }
	template <> const AIEngineListCargoType &GetParam(ForceType<const AIEngineListCargoType &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIEngineListCargoType *)instance; }
	template <> int Return<AIEngineListCargoType *>(HSQUIRRELVM vm, AIEngineListCargoType *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AIEngineListCargoType", res, NULL, DefSQDestructorCallback<AIEngineListCargoType>); return 1; }
}; // namespace SQConvert

void SQAIEngineListCargoTypeRegister(Squirrel *engine) {
	DefSQClass <AIEngineListCargoType> SQAIEngineListCargoType("AIEngineListCargoType");
	SQAIEngineListCargoType.PreRegister(engine);
	SQAIEngineListCargoType.AddConstructor<void (AIEngineListCargoType::*)(), 1>(engine, "x");

	SQAIEngineListCargoType.DefSQStaticMethod(engine, &AIEngineListCargoType::GetClassName, "GetClassName", 1, "x");

	SQAIEngineListCargoType.PostRegister(engine);
}

namespace SQConvert {
	/* Allow AIEngineListCapacity to be used as Squirrel parameter */
	template <> AIEngineListCapacity *GetParam(ForceType<AIEngineListCapacity *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return  (AIEngineListCapacity *)instance; }
	template <> AIEngineListCapacity &GetParam(ForceType<AIEngineListCapacity &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIEngineListCapacity *)instance; }
	template <> const AIEngineListCapacity *GetParam(ForceType<const AIEngineListCapacity *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return  (AIEngineListCapacity *)instance; }
	template <> const AIEngineListCapacity &GetParam(ForceType<const AIEngineListCapacity &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIEngineListCapacity *)instance; }
	template <> int Return<AIEngineListCapacity *>(HSQUIRRELVM vm, AIEngineListCapacity *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AIEngineListCapacity", res, NULL, DefSQDestructorCallback<AIEngineListCapacity>); return 1; }
}; // namespace SQConvert

void SQAIEngineListCapacityRegister(Squirrel *engine) {
	DefSQClass <AIEngineListCapacity> SQAIEngineListCapacity("AIEngineListCapacity");
	SQAIEngineListCapacity.PreRegister(engine);
	SQAIEngineListCapacity.AddConstructor<void (AIEngineListCapacity::*)(), 1>(engine, "x");

	SQAIEngineListCapacity.DefSQStaticMethod(engine, &AIEngineListCapacity::GetClassName, "GetClassName", 1, "x");

	SQAIEngineListCapacity.PostRegister(engine);
}

namespace SQConvert {
	/* Allow AIEngineListReliability to be used as Squirrel parameter */
	template <> AIEngineListReliability *GetParam(ForceType<AIEngineListReliability *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return  (AIEngineListReliability *)instance; }
	template <> AIEngineListReliability &GetParam(ForceType<AIEngineListReliability &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIEngineListReliability *)instance; }
	template <> const AIEngineListReliability *GetParam(ForceType<const AIEngineListReliability *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return  (AIEngineListReliability *)instance; }
	template <> const AIEngineListReliability &GetParam(ForceType<const AIEngineListReliability &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIEngineListReliability *)instance; }
	template <> int Return<AIEngineListReliability *>(HSQUIRRELVM vm, AIEngineListReliability *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AIEngineListReliability", res, NULL, DefSQDestructorCallback<AIEngineListReliability>); return 1; }
}; // namespace SQConvert

void SQAIEngineListReliabilityRegister(Squirrel *engine) {
	DefSQClass <AIEngineListReliability> SQAIEngineListReliability("AIEngineListReliability");
	SQAIEngineListReliability.PreRegister(engine);
	SQAIEngineListReliability.AddConstructor<void (AIEngineListReliability::*)(), 1>(engine, "x");

	SQAIEngineListReliability.DefSQStaticMethod(engine, &AIEngineListReliability::GetClassName, "GetClassName", 1, "x");

	SQAIEngineListReliability.PostRegister(engine);
}

namespace SQConvert {
	/* Allow AIEngineListMaxSpeed to be used as Squirrel parameter */
	template <> AIEngineListMaxSpeed *GetParam(ForceType<AIEngineListMaxSpeed *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return  (AIEngineListMaxSpeed *)instance; }
	template <> AIEngineListMaxSpeed &GetParam(ForceType<AIEngineListMaxSpeed &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIEngineListMaxSpeed *)instance; }
	template <> const AIEngineListMaxSpeed *GetParam(ForceType<const AIEngineListMaxSpeed *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return  (AIEngineListMaxSpeed *)instance; }
	template <> const AIEngineListMaxSpeed &GetParam(ForceType<const AIEngineListMaxSpeed &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIEngineListMaxSpeed *)instance; }
	template <> int Return<AIEngineListMaxSpeed *>(HSQUIRRELVM vm, AIEngineListMaxSpeed *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AIEngineListMaxSpeed", res, NULL, DefSQDestructorCallback<AIEngineListMaxSpeed>); return 1; }
}; // namespace SQConvert

void SQAIEngineListMaxSpeedRegister(Squirrel *engine) {
	DefSQClass <AIEngineListMaxSpeed> SQAIEngineListMaxSpeed("AIEngineListMaxSpeed");
	SQAIEngineListMaxSpeed.PreRegister(engine);
	SQAIEngineListMaxSpeed.AddConstructor<void (AIEngineListMaxSpeed::*)(), 1>(engine, "x");

	SQAIEngineListMaxSpeed.DefSQStaticMethod(engine, &AIEngineListMaxSpeed::GetClassName, "GetClassName", 1, "x");

	SQAIEngineListMaxSpeed.PostRegister(engine);
}

namespace SQConvert {
	/* Allow AIEngineListPrice to be used as Squirrel parameter */
	template <> AIEngineListPrice *GetParam(ForceType<AIEngineListPrice *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return  (AIEngineListPrice *)instance; }
	template <> AIEngineListPrice &GetParam(ForceType<AIEngineListPrice &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIEngineListPrice *)instance; }
	template <> const AIEngineListPrice *GetParam(ForceType<const AIEngineListPrice *>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return  (AIEngineListPrice *)instance; }
	template <> const AIEngineListPrice &GetParam(ForceType<const AIEngineListPrice &>, HSQUIRRELVM vm, int index) { SQUserPointer instance; sq_getinstanceup(vm, index, &instance, 0); return *(AIEngineListPrice *)instance; }
	template <> int Return<AIEngineListPrice *>(HSQUIRRELVM vm, AIEngineListPrice *res) { if (res == NULL) { sq_pushnull(vm); return 1; } res->AddRef(); Squirrel::CreateClassInstanceVM(vm, "AIEngineListPrice", res, NULL, DefSQDestructorCallback<AIEngineListPrice>); return 1; }
}; // namespace SQConvert

void SQAIEngineListPriceRegister(Squirrel *engine) {
	DefSQClass <AIEngineListPrice> SQAIEngineListPrice("AIEngineListPrice");
	SQAIEngineListPrice.PreRegister(engine);
	SQAIEngineListPrice.AddConstructor<void (AIEngineListPrice::*)(), 1>(engine, "x");

	SQAIEngineListPrice.DefSQStaticMethod(engine, &AIEngineListPrice::GetClassName, "GetClassName", 1, "x");

	SQAIEngineListPrice.PostRegister(engine);
}