11 const auto& config = mm->getMemoryCache().config;
12 if (!config.mty_model_path.has_value()) {
13 throw std::logic_error(
"MARTY model path is not defined in HyperisoConfig::mty_model_path.");
15 return config.mty_model_path.value();
20 /
"input_files" /
"marty_model" /
"sm.h";
21 if (!fs::is_regular_file(path)) {
22 throw std::runtime_error(
23 "Packaged MARTY SM model header is missing: " + path.string()
43 if (!optional_path.has_value()) {
44 throw std::logic_error(
"MARTY BSM mapping path is not defined in HyperisoConfig::mty_bsm_mapping_path.");
46 return optional_path.value();
50 throw std::logic_error(
"Unknown MartyPath.");
69 if (!config.mty_model_name.has_value()) {
70 throw std::logic_error(
"MARTY model name is not defined in HyperisoConfig::mty_model_name.");
73 return config.mty_model_name.value();
@ TEMPLATE_DIR
Read-only directory containing generated-code templates.
@ MARTY_TEMP_DIR
Writable cache directory used for generated MARTY files.
@ PARAM_MAPPING_DIR
Read-only directory containing MARTY/Hyperiso parameter mappings.
@ ASSETS_ROOT
Root directory for HyperISO read-only assets.
Core-side adapter giving MARTY access to configuration and managed paths.
MartyPath
Enumerates MARTY-related filesystem resources.
InternalFlag
Internal flags used for memory management status.
bool check_flag(InternalFlag flag) override
Checks the status of a specific internal flag.
fs::path get_path(MartyPath path_name) override
Retrieves a required MARTY-related path.
std::string get_marty_model_name() const
Retrieves the configured MARTY model name.
std::optional< fs::path > get_optional_path(MartyPath path_name) override
Retrieves an optional MARTY-related path.
const MemoryCache & getMemoryCache()
Retrieves the current memory cache.
static MemoryManager * GetInstance()
Retrieves the singleton instance of MemoryManager.
std::optional< fs::path > mty_bsm_mapping_path
Optional user-provided BSM mapping JSON.
std::map< InternalFlag, bool > flags
Internal status flags.
HyperisoConfig config
Config struct for various flags and runtime information.