Template Class base_graph_view_entity
Defined in File base_graph_view_entity.hpp
Inheritance Relationships
Base Type
public rpdecorator::decorator< TGraphViewType >
Derived Type
public cosm::repr::graph3D_view_entity< TGraphType, TGraphViewType >
(Template Class graph3D_view_entity)
Class Documentation
-
template<typename TGraphType, typename TGraphViewType>
class base_graph_view_entity : public rpdecorator::decorator<TGraphViewType> Representation of an entity within the arena which is a view from a graph. This representation makes it much easier to query and obtain summary information about the underlying subgraph without having to iterate over vertices/edges, by providing a “bounding-box” interface to the subgraph.
It has the following characteristics:
Does not “exist” in the sense that it is not detectable by robots.
Has no concept of movability/immovability (it is abstract).
Subclassed by cosm::repr::graph3D_view_entity< TGraphType, TGraphViewType >
Public Types
-
using decoratee_type = typename decorator_type::decoratee_type
-
using decorator_type = rpdecorator::decorator<graph_view_type>
-
using edge_descriptor = typename TGraphViewType::edge_descriptor
-
using edge_property_type = typename TGraphViewType::edge_property_type
-
using graph_type = TGraphType
-
using graph_view_type = TGraphViewType
-
using vertex_coord_type = typename TGraphViewType::vertex_coord_type
-
using vertex_descriptor = typename TGraphViewType::vertex_descriptor
-
using vertex_property_type = typename TGraphViewType::vertex_property_type
Public Functions
-
inline base_graph_view_entity(graph_view_type &&view, const rspatial::euclidean_dist &unit)
-
virtual ~base_graph_view_entity(void) = default
-
virtual const edge_property_type *access(const edge_descriptor vd) const = 0
-
virtual const vertex_property_type *access(const vertex_coord_type &c) const = 0
-
virtual const vertex_property_type *access(const vertex_descriptor vd) const = 0
Get the vertex associated with a particular set of coordinates within the view. Asserts that coordinates are within the bounds of the graph underlying the view.
- Parameters:
c – The coordinates.
- Returns:
A reference to the vertex.
-
virtual bool contains(const vertex_coord_type &c) const = 0
Determine if the specified coordinates lie within the view entity.
-
template<typename ...Args>
inline auto Func(Args&&... args) -> decltype(std::declval<decltype(Member)>().Func(args...))
-
template<typename ...Args>
inline auto Func(Args&&... args) -> decltype(std::declval<decltype(Member)>().Func(args...))
-
template<typename ...Args>
inline auto Func(Args&&... args) -> decltype(std::declval<decltype(Member)>().Func(args...))
-
template<typename ...Args>
inline auto Func(Args&&... args) -> decltype(std::declval<decltype(Member)>().Func(args...))
-
template<typename ...Args>
inline auto Func(Args&&... args) -> decltype(std::declval<decltype(Member)>().Func(args...))
-
template<typename ...Args>
inline auto Func(Args&&... args) -> decltype(std::declval<decltype(Member)>().Func(args...))
-
RCPPSW_DECORATE_DECL(vertex_iterator)
-
RCPPSW_WRAP_DECLDEF(adjacent_vertices)
Protected Functions
-
inline const rspatial::euclidean_dist &unit(void) const
-
inline graph_view_type &view(void)
-
inline const graph_view_type &view(void) const