Program Listing for File SpecsynCommons.hpp
↰ Return to documentation for file (src/specsyn/SpecsynCommons.hpp)
#ifndef SPECSYNCOMMONS_HPP
#define SPECSYNCOMMONS_HPP
#include "../utils/Constants.hpp"
#include <cstdint>
#include <filesystem>
#include <string>
#include <vector>
namespace specsyn
{
inline static const std::string defaultRegistry = // NOLINT(bugprone-throwing-static-initialization,cert-err58-cpp) -- built from fixed string literals, so the (theoretically throwing) path conversion can never actually throw here
(std::filesystem::path("data") / std::filesystem::path("spectra")
/ std::filesystem::path("spectra.toml"));
inline constexpr double defaultCFe = 0.0;
inline constexpr double defaultMicroTurb = 0.0;
inline constexpr double defaultR = 500;
inline constexpr double defaultWlMin = (utils::h * utils::c / (10.0 * utils::Ryd)) / utils::Angstrom;
inline constexpr double defaultWlMax = 1e5;
inline constexpr unsigned long defaultNWl = 2048;
inline const std::vector<std::string> defaultModelList = { // NOLINT(cert-err58-cpp) -- built from fixed string literals, so construction can never actually throw here
"POWR_WC", "POWR_WNE", "POWR_WNL_H20", "POWR_WNL_H40", "POWR_WNL_H60",
"TLUSTY_O", "TLUSTY_B", "BOSZ", "CK04", "MARCS",
"TREMBLAY_DA", "TREMBLAY_ELM", "RAUCH", "RAUCH_H07"
};
enum class OOBPolicy : std::uint8_t
{
raise,
silent,
coerce
};
enum class GridType : std::uint8_t
{
wrGrid,
wdGrid,
normalGrid,
nGridType
};
} // namespace specsyn
#endif // SPECSYNCOMMONS_HPP