mirror of
https://github.com/OpenSpace/OpenSpace.git
synced 2026-02-21 12:29:04 -06:00
No longer expose the request function on the asset object but still retain it for the add functionality
This commit is contained in:
@@ -45,7 +45,6 @@ int onDeinitialize(lua_State* state);
|
||||
int onInitializeDependency(lua_State* state);
|
||||
int onDeinitializeDependency(lua_State* state);
|
||||
int require(lua_State* state);
|
||||
int request(lua_State* state);
|
||||
int exists(lua_State* state);
|
||||
int localResource(lua_State* state);
|
||||
int syncedResource(lua_State* state);
|
||||
@@ -164,7 +163,6 @@ public:
|
||||
void assetUnrequested(Asset* parent, std::shared_ptr<Asset> child);
|
||||
|
||||
private:
|
||||
std::shared_ptr<Asset> request(const std::string& identifier);
|
||||
void unrequest(const std::string& identifier);
|
||||
|
||||
void setUpAssetLuaTable(Asset* asset);
|
||||
@@ -194,7 +192,6 @@ private:
|
||||
friend int assetloader::onInitializeDependency(lua_State* state);
|
||||
friend int assetloader::onDeinitializeDependency(lua_State* state);
|
||||
friend int assetloader::require(lua_State* state);
|
||||
friend int assetloader::request(lua_State* state);
|
||||
friend int assetloader::exists(lua_State* state);
|
||||
friend int assetloader::localResource(lua_State* state);
|
||||
friend int assetloader::syncedResource(lua_State* state);
|
||||
|
||||
@@ -190,12 +190,6 @@ void AssetLoader::setUpAssetLuaTable(Asset* asset) {
|
||||
lua_pushcclosure(*_luaState, &assetloader::require, 1);
|
||||
lua_setfield(*_luaState, assetTableIndex, RequireFunctionName);
|
||||
|
||||
// Register request function
|
||||
// Dependency request(string path)
|
||||
lua_pushlightuserdata(*_luaState, asset);
|
||||
lua_pushcclosure(*_luaState, &assetloader::request, 1);
|
||||
lua_setfield(*_luaState, assetTableIndex, RequestFunctionName);
|
||||
|
||||
// Register exists function
|
||||
// bool exists(string path)
|
||||
lua_pushlightuserdata(*_luaState, asset);
|
||||
@@ -472,14 +466,6 @@ int AssetLoader::onDeinitializeDependencyLua(Asset* dependant, Asset* dependency
|
||||
return 0;
|
||||
}
|
||||
|
||||
std::shared_ptr<Asset> AssetLoader::request(const std::string& identifier) {
|
||||
std::shared_ptr<Asset> asset = getAsset(identifier);
|
||||
Asset* parent = _currentAsset;
|
||||
parent->request(asset);
|
||||
assetRequested(parent, asset);
|
||||
return asset;
|
||||
}
|
||||
|
||||
void AssetLoader::unrequest(const std::string& identifier) {
|
||||
std::shared_ptr<Asset> asset = has(identifier);
|
||||
Asset* parent = _currentAsset;
|
||||
@@ -498,7 +484,11 @@ ghoul::filesystem::Directory AssetLoader::currentDirectory() const {
|
||||
|
||||
std::shared_ptr<Asset> AssetLoader::add(const std::string& identifier) {
|
||||
setCurrentAsset(_rootAsset.get());
|
||||
return request(identifier);
|
||||
std::shared_ptr<Asset> asset = getAsset(identifier);
|
||||
Asset* parent = _currentAsset;
|
||||
parent->request(asset);
|
||||
assetRequested(parent, asset);
|
||||
return asset;
|
||||
}
|
||||
|
||||
void AssetLoader::remove(const std::string& identifier) {
|
||||
@@ -695,32 +685,6 @@ int AssetLoader::requireLua(Asset* dependant) {
|
||||
return 2;
|
||||
}
|
||||
|
||||
int AssetLoader::requestLua(Asset* parent) {
|
||||
ghoul::lua::checkArgumentsAndThrow(*_luaState, 1, "lua::request");
|
||||
|
||||
const std::string assetName = luaL_checkstring(*_luaState, 1);
|
||||
lua_settop(*_luaState, 0);
|
||||
|
||||
std::shared_ptr<Asset> child = request(assetName);
|
||||
|
||||
addLuaDependencyTable(parent, child.get());
|
||||
|
||||
// Get the dependency table
|
||||
lua_rawgeti(*_luaState, LUA_REGISTRYINDEX, _assetsTableRef);
|
||||
lua_getfield(*_luaState, -1, child->id().c_str());
|
||||
lua_getfield(*_luaState, -1, DependantsTableName);
|
||||
lua_getfield(*_luaState, -1, parent->id().c_str());
|
||||
const int dependencyTableIndex = lua_gettop(*_luaState);
|
||||
|
||||
lua_pushvalue(*_luaState, dependencyTableIndex);
|
||||
|
||||
lua_replace(*_luaState, 1);
|
||||
lua_settop(*_luaState, 1);
|
||||
|
||||
ghoul_assert(lua_gettop(*_luaState) == 1, "Incorrect number of items left on stack");
|
||||
return 1;
|
||||
}
|
||||
|
||||
int AssetLoader::existsLua(Asset*) {
|
||||
ghoul::lua::checkArgumentsAndThrow(*_luaState, 1, "lua::exists");
|
||||
|
||||
|
||||
@@ -71,7 +71,7 @@ int onDeinitializeDependency(lua_State* state) {
|
||||
}
|
||||
|
||||
/**
|
||||
* Requires rependency
|
||||
* Requires dependency
|
||||
* Gives access to
|
||||
* AssetTable: Exported lua values
|
||||
* Dependency: ...
|
||||
@@ -82,17 +82,6 @@ int require(lua_State* state) {
|
||||
return asset->loader()->requireLua(asset);
|
||||
}
|
||||
|
||||
/**
|
||||
* Requests rependency
|
||||
* Gives access to
|
||||
* Dependency: ...
|
||||
* Usage: Dependency = asset.import(string assetIdentifier)
|
||||
*/
|
||||
int request(lua_State* state) {
|
||||
Asset* asset = reinterpret_cast<Asset*>(lua_touserdata(state, lua_upvalueindex(1)));
|
||||
return asset->loader()->requestLua(asset);
|
||||
}
|
||||
|
||||
int exists(lua_State* state) {
|
||||
Asset* asset = reinterpret_cast<Asset*>(lua_touserdata(state, lua_upvalueindex(1)));
|
||||
return asset->loader()->existsLua(asset);
|
||||
|
||||
Reference in New Issue
Block a user