Loading...
Searching...
No Matches
hellfire::AssetImportManager Class Reference

#include <AssetImportManager.h>

Collaboration diagram for hellfire::AssetImportManager:

Public Member Functions

 AssetImportManager (AssetRegistry &registry, AssetManager &asset_manager, const std::filesystem::path &project_root)
 
void import_all_pending ()
 Import all unprocessed assets in registry.
 
void import_all_models ()
 
void import_all_textures ()
 
bool import_asset (AssetID id)
 
bool needs_import (AssetID id) const
 
std::filesystem::path get_import_output_dir () const
 

Private Member Functions

bool import_model (const AssetMetadata &meta)
 
bool import_model_threaded (const AssetMetadata &meta, std::mutex &registry_mutex)
 
bool import_texture (const AssetMetadata &meta)
 
bool has_imported_mesh (AssetID original_id) const
 
std::filesystem::path get_imported_path (const AssetMetadata &meta, const std::string &extension) const
 

Private Attributes

AssetRegistryregistry_
 
AssetManagerasset_manager_
 
std::filesystem::path project_root_
 
std::filesystem::path import_output_dir_
 

Detailed Description

Definition at line 12 of file AssetImportManager.h.

Constructor & Destructor Documentation

◆ AssetImportManager()

hellfire::AssetImportManager::AssetImportManager ( AssetRegistry registry,
AssetManager asset_manager,
const std::filesystem::path &  project_root 
)

Definition at line 47 of file AssetImportManager.cpp.

Member Function Documentation

◆ get_import_output_dir()

std::filesystem::path hellfire::AssetImportManager::get_import_output_dir ( ) const
inline

Definition at line 29 of file AssetImportManager.h.

◆ get_imported_path()

std::filesystem::path hellfire::AssetImportManager::get_imported_path ( const AssetMetadata meta,
const std::string &  extension 
) const
private

Definition at line 265 of file AssetImportManager.cpp.

◆ has_imported_mesh()

bool hellfire::AssetImportManager::has_imported_mesh ( AssetID  original_id) const
private

Definition at line 261 of file AssetImportManager.cpp.

◆ import_all_models()

void hellfire::AssetImportManager::import_all_models ( )

Definition at line 63 of file AssetImportManager.cpp.

◆ import_all_pending()

void hellfire::AssetImportManager::import_all_pending ( )

Import all unprocessed assets in registry.

Definition at line 54 of file AssetImportManager.cpp.

◆ import_all_textures()

void hellfire::AssetImportManager::import_all_textures ( )

Definition at line 102 of file AssetImportManager.cpp.

◆ import_asset()

bool hellfire::AssetImportManager::import_asset ( AssetID  id)

Definition at line 127 of file AssetImportManager.cpp.

◆ import_model()

bool hellfire::AssetImportManager::import_model ( const AssetMetadata meta)
private

Definition at line 159 of file AssetImportManager.cpp.

◆ import_model_threaded()

bool hellfire::AssetImportManager::import_model_threaded ( const AssetMetadata meta,
std::mutex &  registry_mutex 
)
private

Definition at line 204 of file AssetImportManager.cpp.

◆ import_texture()

bool hellfire::AssetImportManager::import_texture ( const AssetMetadata meta)
private

Definition at line 249 of file AssetImportManager.cpp.

◆ needs_import()

bool hellfire::AssetImportManager::needs_import ( AssetID  id) const

Definition at line 141 of file AssetImportManager.cpp.

Member Data Documentation

◆ asset_manager_

AssetManager& hellfire::AssetImportManager::asset_manager_
private

Definition at line 32 of file AssetImportManager.h.

◆ import_output_dir_

std::filesystem::path hellfire::AssetImportManager::import_output_dir_
private

Definition at line 34 of file AssetImportManager.h.

◆ project_root_

std::filesystem::path hellfire::AssetImportManager::project_root_
private

Definition at line 33 of file AssetImportManager.h.

◆ registry_

AssetRegistry& hellfire::AssetImportManager::registry_
private

Definition at line 31 of file AssetImportManager.h.


The documentation for this class was generated from the following files: