1#ifndef FILENAME_MANAGER_H
2#define FILENAME_MANAGER_H
25 static std::shared_ptr<FileNameManager>
getInstance(
const std::string& wilson =
"",
const std::string& model =
"");
31 const std::string& baseTemplateRoot,
32 const std::string& assetsRoot);
70 const std::string& model,
71 std::shared_ptr<IMartyPathProxy> path_proxy);
73 static std::string toLowercase(std::string value);
74 static std::string ensureTrailingSlash(
const std::string& value);
76 static inline std::string test_template_root{};
77 static inline std::string test_base_template_root{};
78 static inline std::string test_assets_root{};
80 std::shared_ptr<IMartyPathProxy> path_proxy_;
84 std::string lowercaseWilson_;
85 std::string lowercaseModel_;
87 std::string templateDir_;
88 std::string baseTemplateDir_;
89 std::string smMappingFile_;
90 std::optional<std::string> bsmMappingFile_;
static std::shared_ptr< FileNameManager > getInstance(const std::string &wilson="", const std::string &model="")
Retrieves a FileNameManager for a given (wilson, model) pair.
std::string getNumGeneratedFileName() const
std::string getCsvWilsonFileName() const
std::optional< std::string > getBsmMappingFileName() const
std::string getGeneratedFileName() const
std::string getExecutableFileName() const
std::string getParamFileName() const
std::string getOutputDir() const
static void setTestingRoots(const std::string &templateRoot, const std::string &baseTemplateRoot, const std::string &assetsRoot)
Testing-only root overrides.
std::string getNumExecutableFileName() const
FileNameManager & operator=(const FileNameManager &)=delete
std::string getTemplateDir() const
std::string getNumParamFileName() const
std::string getHelperFileName(const std::string &extension) const
std::string getBaseHelperFileName(const std::string &extension) const
std::string getSmMappingFileName() const
std::string getLibDir() const
static void clearTestingRoots()
FileNameManager(const FileNameManager &)=delete
std::string getjsondbmodel() const
Legacy accessor kept for existing code.