Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Namespaces | Constant Groups
Graph.hh File Reference

generic graph class header More...

#include <core/graph/Graph.fwd.hh>
#include <platform/types.hh>
#include <utility/pointer/ReferenceCount.hh>
#include <iosfwd>
#include <cassert>
#include <core/graph/unordered_object_pool.fwd.hpp>
#include <utility/vector1_bool.hh>
#include <ObjexxFCL/FArray2D.fwd.hh>

Classes

class  core::graph::EdgeListElement
 An extensible graph class. More...
 
class  core::graph::EdgeListIterator
 Custom Edge list (non-const) iterator class, which can return non-const Edge pointers. This iterator cannot be used to change the structure of its list without access to that list directly. Customized since STL's const-iterator cannot be prevented from giving non-const access to its data. The former workaround to this problem was to define two sets of edge lists on each vertex: a list< Edge * > and a list< Edge const * >. More...
 
class  core::graph::EdgeListConstIterator
 Custom Edge list const iterator class, which returns only const Edge pointers. This iterator cannot be used to change the structure of its list without access to that list directly. Customized since STL's const-iterator cannot be prevented from giving non-const access to its data. The former workaround to this problem was to define two sets of edge lists on each vertex: a list< Edge * > and a list< Edge const * >. More...
 
class  core::graph::EdgeList
 Custom edge list class. Returns const-iterators which only return Edge const *'s and non-const-iterators which can return either const or non-const Edge*'s. Manages its own memory using an unordered-object-pool for fast insertion and deletion of EdgeListElements. Implemented as a doubly linked list, though there's no practical way to start at the end of a list and work backward since decrementing the end iterator is not a valid operation. More...
 
class  core::graph::Node
 
class  core::graph::Edge
 
class  core::graph::Graph
 A Graph with constant time edge insertion and deletion. Extensible. More...
 

Namespaces

 core
 A class for defining atom parameters, known as atom_types.
 
 core::graph
 

Constant Groups

 core
 A class for defining atom parameters, known as atom_types.
 
 core::graph
 

Detailed Description

generic graph class header

Author
Andrew Leaver-Fay (aleav.nosp@m.erfa.nosp@m.y@gma.nosp@m.il.c.nosp@m.om)