00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #include "asAssetGroup.h"
00018
00019 #ifdef __COMPILE_WITH_ANGELSCRIPT__
00020
00021 #include "asHasEvents.h"
00022 #include "../ScriptHelper.h"
00023
00024 #include "../../core/AssetGroup.h"
00025
00026
00028 AssetGroup* createAssetGroup(const std::string &name, const std::string &dirName)
00029 {
00030 return new AssetGroup(name, dirName);
00031 }
00032
00034 void bindAssetGroup(asIScriptEngine *engine)
00035 {
00036
00037 int r;
00038
00039
00040 r = engine->RegisterObjectType("AssetGroup", sizeof(AssetGroup), asOBJ_REF);
00041 r = engine->RegisterObjectType("AssetProcessor", sizeof(AssetProcessor), asOBJ_REF);
00042
00043
00044 bindHasEventsBase<AssetGroup>(engine, "AssetGroup");
00045
00046
00047 r = engine->RegisterObjectBehaviour("AssetGroup", asBEHAVE_FACTORY, "AssetGroup@ f(const string &in, " \
00048 " const string &in)", asFUNCTION(createAssetGroup), asCALL_CDECL);
00049 assert(r >= 0);
00050 r = engine->RegisterObjectBehaviour("AssetGroup", asBEHAVE_ADDREF, "void f()",
00051 asMETHOD(AssetGroup, grab), asCALL_THISCALL); assert(r >= 0);
00052 r = engine->RegisterObjectBehaviour("AssetGroup", asBEHAVE_RELEASE, "void f()",
00053 asMETHOD(AssetGroup, drop), asCALL_THISCALL); assert(r >= 0);
00054
00055 r = engine->RegisterObjectMethod("AssetGroup", "AssetGroup& opAssign(const AssetGroup &in)",
00056 asFUNCTION(assignT<AssetGroup>), asCALL_CDECL_OBJLAST); assert(r >= 0);
00057
00058
00059 r = engine->RegisterObjectMethod("AssetGroup", "u32 getID()",
00060 asMETHOD(AssetGroup, getID), asCALL_THISCALL); assert(r >= 0);
00061 r = engine->RegisterObjectMethod("AssetGroup", "const string& getName()",
00062 asMETHOD(AssetGroup, getName), asCALL_THISCALL); assert(r >= 0);
00063 r = engine->RegisterObjectMethod("AssetGroup", "const string& getBaseDir()",
00064 asMETHOD(AssetGroup, getBaseDir), asCALL_THISCALL); assert(r >= 0);
00065
00066 r = engine->RegisterObjectMethod("AssetGroup", "AssetProcessor@ getAssetProcessor(const string &in)",
00067 asMETHOD(AssetGroup, getAssetProcessor), asCALL_THISCALL); assert(r >= 0);
00068
00069 r = engine->RegisterObjectMethod("AssetGroup", "bool reloadAsset(const string &in)",
00070 asMETHOD(AssetGroup, reloadAsset), asCALL_THISCALL); assert(r >= 0);
00071 r = engine->RegisterObjectMethod("AssetGroup", "void reloadAssets()",
00072 asMETHOD(AssetGroup, reloadAssets), asCALL_THISCALL); assert(r >= 0);
00073
00074 r = engine->RegisterObjectMethod("AssetGroup", "bool removeAsset(const string &in)",
00075 asMETHOD(AssetGroup, removeAsset), asCALL_THISCALL); assert(r >= 0);
00076 r = engine->RegisterObjectMethod("AssetGroup", "void removeAssets()",
00077 asMETHOD(AssetGroup, removeAssets), asCALL_THISCALL); assert(r >= 0);
00078 }
00079
00080 #endif // __COMPILE_WITH_ANGELSCRIPT__
00081
00082