Program Listing for File name_spec.hpp

Return to documentation for file (cosm/metrics/name_spec.hpp)

#pragma once

/*******************************************************************************
 * Includes
 ******************************************************************************/
#include <string>

#include "rcppsw/types/type_uuid.hpp"

#include "cosm/cosm.hpp"

/*******************************************************************************
 * Namespaces/Decls
 ******************************************************************************/
namespace cosm::metrics::specs {

/*******************************************************************************
 * Class Definitions
 ******************************************************************************/
class name_spec {
 public:
  name_spec(const std::string& xml, const std::string& scoped);

  std::string xml(const rtypes::type_uuid& id = rtypes::constants::kNoUUID) const;

  std::string
  scoped(const rtypes::type_uuid& id = rtypes::constants::kNoUUID) const;

 private:
  /* clang-format off */
  std::string       m_xml;
  std::string       m_scoped;
  /* clang-format on */
};

} /* namespace cosm::metrics::specs */