[Bf-blender-cvs] [ffafde7bd67] temp-asset-representation: Cleanup: Remove unncessary stoarage wrapper class
Julian Eisel
noreply at git.blender.org
Tue Nov 8 16:33:46 CET 2022
Commit: ffafde7bd672b582fe392119fe91627a7c904b3e
Author: Julian Eisel
Date: Tue Nov 8 16:26:49 2022 +0100
Branches: temp-asset-representation
https://developer.blender.org/rBffafde7bd672b582fe392119fe91627a7c904b3e
Cleanup: Remove unncessary stoarage wrapper class
===================================================================
M source/blender/blenkernel/BKE_asset_library.hh
M source/blender/blenkernel/BKE_asset_representation.hh
M source/blender/blenkernel/intern/asset_library.cc
===================================================================
diff --git a/source/blender/blenkernel/BKE_asset_library.hh b/source/blender/blenkernel/BKE_asset_library.hh
index 091df6d8edd..d0140b2b3f7 100644
--- a/source/blender/blenkernel/BKE_asset_library.hh
+++ b/source/blender/blenkernel/BKE_asset_library.hh
@@ -29,13 +29,6 @@ namespace blender::bke {
struct AssetRepresentation;
-class AssetStorage {
- Vector<std::unique_ptr<AssetRepresentation>> assets_;
-
- public:
- AssetRepresentation &append(std::unique_ptr<AssetRepresentation> asset);
-};
-
/**
* AssetLibrary provides access to an asset library's data.
*
@@ -85,7 +78,7 @@ struct AssetLibrary {
* So this really is arbitrary storage as far as #AssetLibrary is concerned (allowing the API
* user to manage partial library storage and partial loading, so only relevant parts of a
* library are kept in memory). */
- AssetStorage asset_storage_;
+ Vector<std::unique_ptr<AssetRepresentation>> asset_storage_;
};
Vector<AssetLibraryReference> all_valid_asset_library_refs();
diff --git a/source/blender/blenkernel/BKE_asset_representation.hh b/source/blender/blenkernel/BKE_asset_representation.hh
index 2acf30fbc88..35aecba51e5 100644
--- a/source/blender/blenkernel/BKE_asset_representation.hh
+++ b/source/blender/blenkernel/BKE_asset_representation.hh
@@ -16,7 +16,7 @@ namespace blender::bke {
/**
* \brief Abstraction to reference an asset, with necessary data for display & interaction.
*
- * #AssetRepresentation is the core data-structure to store information about an asset. It doesn't
+ * #AssetRepresentation is the data-structure to store information about a single asset. It doesn't
* contain the asset itself, but information like the metadata and preview, as well as methods to
* interact with them. Think of it like a view on an asset.
*/
diff --git a/source/blender/blenkernel/intern/asset_library.cc b/source/blender/blenkernel/intern/asset_library.cc
index a6243876d34..4efa2c33891 100644
--- a/source/blender/blenkernel/intern/asset_library.cc
+++ b/source/blender/blenkernel/intern/asset_library.cc
@@ -126,12 +126,14 @@ void AssetLibrary::refresh()
AssetRepresentation &AssetLibrary::add_external_asset(std::unique_ptr<AssetMetaData> metadata)
{
- return asset_storage_.append(std::make_unique<AssetRepresentation>(std::move(metadata)));
+ asset_storage_.append(std::make_unique<AssetRepresentation>(std::move(metadata)));
+ return *asset_storage_.last();
}
AssetRepresentation &AssetLibrary::add_local_id_asset(const ID &id)
{
- return asset_storage_.append(std::make_unique<AssetRepresentation>(id));
+ asset_storage_.append(std::make_unique<AssetRepresentation>(id));
+ return *asset_storage_.last();
}
namespace {
@@ -213,10 +215,4 @@ Vector<AssetLibraryReference> all_valid_asset_library_refs()
return result;
}
-AssetRepresentation &AssetStorage::append(std::unique_ptr<AssetRepresentation> asset)
-{
- assets_.append(std::move(asset));
- return *assets_.last();
-}
-
} // namespace blender::bke
More information about the Bf-blender-cvs
mailing list