Program Listing for File base_graph_los.hpp

Return to documentation for file (cosm/repr/base_graph_los.hpp)

#pragma once

/*******************************************************************************
 * Includes
 ******************************************************************************/
#include <utility>

#include "rcppsw/er/client.hpp"
#include "rcppsw/math/vector3.hpp"
#include "rcppsw/spatial/euclidean_dist.hpp"
#include "rcppsw/types/type_uuid.hpp"

#include "cosm/cosm.hpp"

/*******************************************************************************
 * Namespaces/Decls
 ******************************************************************************/
namespace cosm::repr {

/*******************************************************************************
 * Class Definitions
 ******************************************************************************/
template <typename TGraphViewEntityType>
class base_graph_los : public rer::client<base_graph_los<TGraphViewEntityType>>,
                       public TGraphViewEntityType {
 public:
  using graph_view_entity_type = TGraphViewEntityType;
  using graph_view_type = typename graph_view_entity_type::graph_view_type;

  base_graph_los(const rtypes::type_uuid& c_id,
                 graph_view_type&& the_view,
                 const rspatial::euclidean_dist& c_unit)
      : ER_CLIENT_INIT("cosm.repr.base_graph_los"),
        graph_view_entity_type(c_id, std::move(the_view), c_unit) {}
};

} /* namespace cosm::repr */