AssetContainer concept
Some checks failed
Bigfoot / Build & Test Debug (Unity Build: OFF) (push) Successful in 43s
Bigfoot / Build & Test Debug (Unity Build: ON) (push) Successful in 36s
Bigfoot / Build & Test RelWithDebInfo (Unity Build: ON) (push) Failing after 10s
Bigfoot / Build & Test Release (Unity Build: OFF) (push) Failing after 9s
Bigfoot / Build & Test Release (Unity Build: ON) (push) Failing after 19s
Bigfoot / Clang Format Checks (push) Successful in 10s
Bigfoot / Build & Test RelWithDebInfo (Unity Build: OFF) (push) Failing after 11m40s
Some checks failed
Bigfoot / Build & Test Debug (Unity Build: OFF) (push) Successful in 43s
Bigfoot / Build & Test Debug (Unity Build: ON) (push) Successful in 36s
Bigfoot / Build & Test RelWithDebInfo (Unity Build: ON) (push) Failing after 10s
Bigfoot / Build & Test Release (Unity Build: OFF) (push) Failing after 9s
Bigfoot / Build & Test Release (Unity Build: ON) (push) Failing after 19s
Bigfoot / Clang Format Checks (push) Successful in 10s
Bigfoot / Build & Test RelWithDebInfo (Unity Build: OFF) (push) Failing after 11m40s
This commit is contained in:
@@ -17,8 +17,8 @@ namespace Bigfoot
|
||||
{
|
||||
template<typename FLAT_ASSET>
|
||||
concept FlatAssetConcept = requires(FLAT_ASSET p_flatAsset) {
|
||||
requires std::is_base_of_v<::flatbuffers::Table, FLAT_ASSET>;
|
||||
requires std::derived_from<typename FLAT_ASSET::NativeTableType, ::flatbuffers::NativeTable>;
|
||||
requires std::is_base_of_v<::flatbuffers::Table, FLAT_ASSET> &&
|
||||
std::derived_from<typename FLAT_ASSET::NativeTableType, ::flatbuffers::NativeTable>;
|
||||
|
||||
{ FLAT_ASSET::GetFullyQualifiedName() } -> std::convertible_to<const char*>;
|
||||
{ p_flatAsset.asset_header() } -> std::same_as<const Bigfoot::Flat::AssetHeader*>;
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
/*********************************************************************
|
||||
* \file AssetContainer.hpp
|
||||
*
|
||||
* \author Romain BOULLARD
|
||||
* \date February 2026
|
||||
*********************************************************************/
|
||||
#ifndef BIGFOOT_ENGINE_ASSETCONTAINER_HPP
|
||||
#define BIGFOOT_ENGINE_ASSETCONTAINER_HPP
|
||||
#include <Engine/BigFile/Asset/Asset.hpp>
|
||||
|
||||
#include <Engine/EngineAssertHandler.hpp>
|
||||
|
||||
#include <unordered_map>
|
||||
|
||||
namespace Bigfoot
|
||||
{
|
||||
template<typename ASSET>
|
||||
concept BigfootAssetConcept = requires(ASSET p_asset) {
|
||||
requires FlatAssetConcept<typename ASSET::FLAT_ASSET> &&
|
||||
std::constructible_from<ASSET, FlatAssetWrapper<typename ASSET::FLAT_ASSET>>;
|
||||
};
|
||||
|
||||
template<BigfootAssetConcept ASSET>
|
||||
class AssetContainer
|
||||
{
|
||||
public:
|
||||
|
||||
private:
|
||||
};
|
||||
} // namespace Bigfoot
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,36 @@
|
||||
/*********************************************************************
|
||||
* \file AssetA.hpp
|
||||
*
|
||||
* \author Romain BOULLARD
|
||||
* \date February 2026
|
||||
*********************************************************************/
|
||||
#ifndef BIGFOOT_ENGINETESTS_ASSETA_HPP
|
||||
#define BIGFOOT_ENGINETESTS_ASSETA_HPP
|
||||
#include <Engine/BigFile/Asset/AssetContainer.hpp>
|
||||
|
||||
#include <EngineTests/BigFile/Asset/AssetA_generated.hpp>
|
||||
|
||||
namespace Bigfoot
|
||||
{
|
||||
class AssetA
|
||||
{
|
||||
public:
|
||||
using FLAT_ASSET = Flat::AssetA;
|
||||
|
||||
AssetA(const FlatAssetWrapper<Flat::AssetA>& p_flatAsset);
|
||||
|
||||
AssetA(const AssetA& p_assetA) = default;
|
||||
AssetA(AssetA&& p_assetA) = default;
|
||||
|
||||
~AssetA() = default;
|
||||
|
||||
AssetA& operator=(const AssetA& p_assetA) = default;
|
||||
AssetA& operator=(AssetA&& p_assetA) = default;
|
||||
|
||||
private:
|
||||
};
|
||||
|
||||
using AssetAContainer = AssetContainer<AssetA>;
|
||||
} // namespace Bigfoot
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user