12 const std::string &technique)
const {
13 std::vector<std::string> previews;
15 for (
const auto &pvs :
m_previews.at(facility)) {
16 for (
const auto &pv : pvs.second) {
17 if (technique.empty() || pvs.first == technique) {
18 previews.emplace_back(pv.first);
27 const std::string &preview)
const {
29 throw std::runtime_error(
"Preview with the given name is not registered "
30 "under the facility and technique.");
32 return *
m_previews.at(facility).at(technique).at(preview);
38 return m_previews.at(facility).count(technique) > 0;
44 const std::string &preview)
const {
46 return m_previews.at(facility).at(technique).count(preview) > 0;
IPreview : This is the abstract base class of the raw data previews.
bool checkFacility(const std::string &facility) const
std::vector< std::string > getPreviews(const std::string &facility, const std::string &technique="") const
bool checkTechnique(const std::string &facility, const std::string &technique) const
const IPreview & getPreview(const std::string &facility, const std::string &technique, const std::string &preview) const
PreviewRegister m_previews
bool checkPreview(const std::string &facility, const std::string &technique, const std::string &preview) const