Rosetta  2019.07
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
utility::graph::UpperEdgeGraph< V, E > Class Template Reference

#include <UpperEdgeGraph.hh>

Inheritance diagram for utility::graph::UpperEdgeGraph< V, E >:
Inheritance graph
[legend]

Public Types

typedef UEVertex< V, E > VertexClass
 
typedef UEEdge< V, E > EdgeClass
 
typedef utility::vector1
< utility::pointer::shared_ptr
< VertexClass > > 
VertexVector
 
typedef utility::vector1
< UEEdge< V, E > >::iterator 
UpperEdgeListIter
 
typedef utility::vector1
< UEEdge< V, E >
>::const_iterator 
UpperEdgeListConstIter
 
- Public Types inherited from utility::pointer::ReferenceCount
typedef platform::Size Size
 
typedef platform::Size size_type
 

Public Member Functions

 UpperEdgeGraph ()
 
 UpperEdgeGraph (platform::Size nverts)
 
 UpperEdgeGraph (UpperEdgeGraph< V, E > const &other)
 
 ~UpperEdgeGraph () override=default
 
UpperEdgeGraph< V, E > const & operator= (UpperEdgeGraph< V, E > const &other)
 
void set_num_vertices (platform::Size num_vertices)
 
VertexClassget_vertex (platform::Size index)
 
VertexClass const & get_vertex (platform::Size index) const
 
void add_edge (platform::Size lower_vertex, platform::Size upper_vertex)
 
void add_edge (platform::Size lower_vertex, platform::Size upper_vertex, E const &edge_data)
 
bool edge_exists (platform::Size lower_vertex, platform::Size upper_vertex)
 
EdgeClassget_edge (platform::Size lower_vertex, platform::Size upper_vertex)
 
platform::Size num_edges () const
 
platform::Size num_vertices () const
 
void drop_all_edges ()
 
- Public Member Functions inherited from utility::pointer::ReferenceCount
 ReferenceCount ()
 Default constructor. More...
 
virtual ~ReferenceCount ()
 

Private Member Functions

void create_vertices ()
 
void copy_from (UpperEdgeGraph< V, E > const &other)
 
VertexClassget_vertex_ptr (int index)
 
void note_edge_deleted ()
 

Private Attributes

platform::Size num_vertices_
 
platform::Size num_edges_
 
VertexVector vertices_
 

Friends

class UEEdge< V, E >
 
class UEVertex< V, E >
 

Member Typedef Documentation

template<class V, class E>
typedef UEEdge< V, E > utility::graph::UpperEdgeGraph< V, E >::EdgeClass
template<class V, class E>
typedef utility::vector1< UEEdge< V, E > >::iterator utility::graph::UpperEdgeGraph< V, E >::UpperEdgeListIter
template<class V, class E>
typedef UEVertex< V, E > utility::graph::UpperEdgeGraph< V, E >::VertexClass
template<class V, class E>
typedef utility::vector1< utility::pointer::shared_ptr< VertexClass > > utility::graph::UpperEdgeGraph< V, E >::VertexVector

Constructor & Destructor Documentation

template<class V, class E>
utility::graph::UpperEdgeGraph< V, E >::UpperEdgeGraph ( )
inline
template<class V, class E>
utility::graph::UpperEdgeGraph< V, E >::UpperEdgeGraph ( platform::Size  nverts)
inline
template<class V, class E>
utility::graph::UpperEdgeGraph< V, E >::UpperEdgeGraph ( UpperEdgeGraph< V, E > const &  other)
inline
template<class V, class E>
utility::graph::UpperEdgeGraph< V, E >::~UpperEdgeGraph ( )
overridedefault

Member Function Documentation

template<class V, class E>
void utility::graph::UpperEdgeGraph< V, E >::add_edge ( platform::Size  lower_vertex,
platform::Size  upper_vertex 
)
inline
template<class V, class E>
void utility::graph::UpperEdgeGraph< V, E >::add_edge ( platform::Size  lower_vertex,
platform::Size  upper_vertex,
E const &  edge_data 
)
inline
template<class V, class E>
void utility::graph::UpperEdgeGraph< V, E >::copy_from ( UpperEdgeGraph< V, E > const &  other)
inlineprivate
template<class V, class E>
void utility::graph::UpperEdgeGraph< V, E >::create_vertices ( )
inlineprivate
template<class V, class E>
void utility::graph::UpperEdgeGraph< V, E >::drop_all_edges ( )
inline
template<class V, class E>
bool utility::graph::UpperEdgeGraph< V, E >::edge_exists ( platform::Size  lower_vertex,
platform::Size  upper_vertex 
)
inline
template<class V, class E>
EdgeClass* utility::graph::UpperEdgeGraph< V, E >::get_edge ( platform::Size  lower_vertex,
platform::Size  upper_vertex 
)
inline
template<class V, class E>
VertexClass& utility::graph::UpperEdgeGraph< V, E >::get_vertex ( platform::Size  index)
inline
template<class V, class E>
VertexClass const& utility::graph::UpperEdgeGraph< V, E >::get_vertex ( platform::Size  index) const
inline
template<class V, class E>
VertexClass* utility::graph::UpperEdgeGraph< V, E >::get_vertex_ptr ( int  index)
inlineprivate
template<class V, class E>
void utility::graph::UpperEdgeGraph< V, E >::note_edge_deleted ( )
inlineprivate
template<class V, class E>
platform::Size utility::graph::UpperEdgeGraph< V, E >::num_edges ( ) const
inline
template<class V, class E>
platform::Size utility::graph::UpperEdgeGraph< V, E >::num_vertices ( ) const
inline
template<class V, class E>
UpperEdgeGraph< V, E > const& utility::graph::UpperEdgeGraph< V, E >::operator= ( UpperEdgeGraph< V, E > const &  other)
inline
template<class V, class E>
void utility::graph::UpperEdgeGraph< V, E >::set_num_vertices ( platform::Size  num_vertices)
inline

Friends And Related Function Documentation

template<class V, class E>
friend class UEEdge< V, E >
friend
template<class V, class E>
friend class UEVertex< V, E >
friend

Member Data Documentation

template<class V, class E>
platform::Size utility::graph::UpperEdgeGraph< V, E >::num_edges_
private
template<class V, class E>
platform::Size utility::graph::UpperEdgeGraph< V, E >::num_vertices_
private
template<class V, class E>
VertexVector utility::graph::UpperEdgeGraph< V, E >::vertices_
private

The documentation for this class was generated from the following files: