Files
Copium/CopiumEngine/src/copium/asset/AssetRef.cpp
T
2023-07-13 10:58:41 +02:00

24 lines
473 B
C++

#include "copium/asset/AssetRef.h"
#include "copium/asset/AssetManager.h"
namespace Copium
{
struct AssetHandleUnloader {
void operator()(AssetHandle* handle) {
AssetManager::UnloadAsset(*handle);
}
};
AssetRef::AssetRef() = default;
AssetRef::AssetRef(AssetHandle handle)
: handle{std::shared_ptr<AssetHandle>(new AssetHandle{handle}, AssetHandleUnloader{})}
{}
AssetRef::operator AssetHandle() const
{
return *handle;
}
}