BALL::TMolecularGraph< Node, Edge > Class Template Reference

#include <BALL/STRUCTURE/molecularGraph.h>

List of all members.

Public Types

typedef NodeItem< Node, Edge > NodeItemType
typedef EdgeItem< Node, Edge > EdgeItemType
typedef std::list
< NodeItemType >::iterator 
NodeIterator
typedef std::list
< NodeItemType >
::const_iterator 
NodeConstIterator
typedef std::list
< EdgeItemType >::iterator 
EdgeIterator
typedef std::list
< EdgeItemType >
::const_iterator 
EdgeConstIterator

Public Member Functions

 TMolecularGraph ()
 TMolecularGraph (const Molecule &molecule)
bool newNode (const Atom &atom)
bool newEdge (const Bond &bond)
bool deleteNode (NodeItemType &node)
bool deleteEdge (EdgeItemType &edge)
bool deleteNode (const Atom &atom)
bool deleteEdge (const Bond &bond)
NodeIterator beginNode ()
NodeConstIterator beginNode () const
EdgeIterator beginEdge ()
EdgeConstIterator beginEdge () const
NodeIterator endNode ()
NodeConstIterator endNode () const
EdgeIterator endEdge ()
EdgeConstIterator endEdge () const
bool has (const Atom &atom) const
bool has (const Bond &bond) const
NodeItemTypegetNode (Position index)
const NodeItemTypegetNode (Position index) const
EdgeItemTypegetEdge (Position index)
const EdgeItemTypegetEdge (Position index) const
Size getNumberOfNodes () const
Size getNumberOfEdges () const

Protected Attributes

std::list< NodeItemTypenodes_
std::list< EdgeItemTypeedges_
HashMap< Atom *, NodeItemType * > atom_to_node_
HashMap< Bond *, EdgeItemType * > bond_to_edge_

Detailed Description

template<typename Node, typename Edge>
class BALL::TMolecularGraph< Node, Edge >

Definition at line 145 of file molecularGraph.h.


Member Typedef Documentation

template<typename Node, typename Edge>
typedef std::list<EdgeItemType>::const_iterator BALL::TMolecularGraph< Node, Edge >::EdgeConstIterator

Definition at line 153 of file molecularGraph.h.

template<typename Node, typename Edge>
typedef EdgeItem<Node, Edge> BALL::TMolecularGraph< Node, Edge >::EdgeItemType

Definition at line 149 of file molecularGraph.h.

template<typename Node, typename Edge>
typedef std::list<EdgeItemType>::iterator BALL::TMolecularGraph< Node, Edge >::EdgeIterator

Definition at line 152 of file molecularGraph.h.

template<typename Node, typename Edge>
typedef std::list<NodeItemType>::const_iterator BALL::TMolecularGraph< Node, Edge >::NodeConstIterator

Definition at line 151 of file molecularGraph.h.

template<typename Node, typename Edge>
typedef NodeItem<Node, Edge> BALL::TMolecularGraph< Node, Edge >::NodeItemType

Definition at line 148 of file molecularGraph.h.

template<typename Node, typename Edge>
typedef std::list<NodeItemType>::iterator BALL::TMolecularGraph< Node, Edge >::NodeIterator

Definition at line 150 of file molecularGraph.h.


Constructor & Destructor Documentation

template<typename Node , typename Edge >
BALL::TMolecularGraph< Node, Edge >::TMolecularGraph (  )  [inline]

Definition at line 205 of file molecularGraph.h.

template<typename Node , typename Edge >
BALL::TMolecularGraph< Node, Edge >::TMolecularGraph ( const Molecule molecule  )  [inline]

Definition at line 215 of file molecularGraph.h.


Member Function Documentation

template<typename Node, typename Edge>
EdgeConstIterator BALL::TMolecularGraph< Node, Edge >::beginEdge (  )  const [inline]

Definition at line 170 of file molecularGraph.h.

template<typename Node, typename Edge>
EdgeIterator BALL::TMolecularGraph< Node, Edge >::beginEdge (  )  [inline]

Definition at line 169 of file molecularGraph.h.

template<typename Node, typename Edge>
NodeConstIterator BALL::TMolecularGraph< Node, Edge >::beginNode (  )  const [inline]

Definition at line 168 of file molecularGraph.h.

template<typename Node, typename Edge>
NodeIterator BALL::TMolecularGraph< Node, Edge >::beginNode (  )  [inline]

Definition at line 167 of file molecularGraph.h.

template<typename Node , typename Edge >
bool BALL::TMolecularGraph< Node, Edge >::deleteEdge ( const Bond bond  )  [inline]

Definition at line 325 of file molecularGraph.h.

template<typename Node, typename Edge>
bool BALL::TMolecularGraph< Node, Edge >::deleteEdge ( EdgeItemType edge  ) 
template<typename Node , typename Edge >
bool BALL::TMolecularGraph< Node, Edge >::deleteNode ( const Atom atom  )  [inline]

Definition at line 314 of file molecularGraph.h.

template<typename Node, typename Edge>
bool BALL::TMolecularGraph< Node, Edge >::deleteNode ( NodeItemType node  ) 
template<typename Node, typename Edge>
EdgeConstIterator BALL::TMolecularGraph< Node, Edge >::endEdge (  )  const [inline]

Definition at line 174 of file molecularGraph.h.

template<typename Node, typename Edge>
EdgeIterator BALL::TMolecularGraph< Node, Edge >::endEdge (  )  [inline]

Definition at line 173 of file molecularGraph.h.

template<typename Node, typename Edge>
NodeConstIterator BALL::TMolecularGraph< Node, Edge >::endNode (  )  const [inline]

Definition at line 172 of file molecularGraph.h.

template<typename Node, typename Edge>
NodeIterator BALL::TMolecularGraph< Node, Edge >::endNode (  )  [inline]

Definition at line 171 of file molecularGraph.h.

template<typename Node, typename Edge>
const EdgeItemType& BALL::TMolecularGraph< Node, Edge >::getEdge ( Position  index  )  const [inline]

Definition at line 182 of file molecularGraph.h.

template<typename Node, typename Edge>
EdgeItemType& BALL::TMolecularGraph< Node, Edge >::getEdge ( Position  index  )  [inline]

Definition at line 181 of file molecularGraph.h.

template<typename Node, typename Edge>
const NodeItemType& BALL::TMolecularGraph< Node, Edge >::getNode ( Position  index  )  const [inline]

Definition at line 180 of file molecularGraph.h.

template<typename Node, typename Edge>
NodeItemType& BALL::TMolecularGraph< Node, Edge >::getNode ( Position  index  )  [inline]

Definition at line 179 of file molecularGraph.h.

template<typename Node , typename Edge >
BALL_INLINE Size BALL::TMolecularGraph< Node, Edge >::getNumberOfEdges (  )  const [inline]

Return the number of nodes in the graph

Definition at line 500 of file molecularGraph.h.

template<typename Node , typename Edge >
BALL_INLINE Size BALL::TMolecularGraph< Node, Edge >::getNumberOfNodes (  )  const [inline]

Return the number of nodes in the graph

Definition at line 492 of file molecularGraph.h.

template<typename Node, typename Edge>
bool BALL::TMolecularGraph< Node, Edge >::has ( const Bond bond  )  const [inline]

Definition at line 177 of file molecularGraph.h.

template<typename Node, typename Edge>
bool BALL::TMolecularGraph< Node, Edge >::has ( const Atom atom  )  const [inline]

Definition at line 176 of file molecularGraph.h.

template<typename Node , typename Edge >
bool BALL::TMolecularGraph< Node, Edge >::newEdge ( const Bond bond  )  [inline]

Definition at line 258 of file molecularGraph.h.

template<typename Node , typename Edge >
bool BALL::TMolecularGraph< Node, Edge >::newNode ( const Atom atom  )  [inline]

Definition at line 241 of file molecularGraph.h.


Member Data Documentation

template<typename Node, typename Edge>
HashMap<Atom*, NodeItemType*> BALL::TMolecularGraph< Node, Edge >::atom_to_node_ [protected]

Definition at line 195 of file molecularGraph.h.

template<typename Node, typename Edge>
HashMap<Bond*, EdgeItemType*> BALL::TMolecularGraph< Node, Edge >::bond_to_edge_ [protected]

Definition at line 196 of file molecularGraph.h.

template<typename Node, typename Edge>
std::list<EdgeItemType> BALL::TMolecularGraph< Node, Edge >::edges_ [protected]

Definition at line 194 of file molecularGraph.h.

template<typename Node, typename Edge>
std::list<NodeItemType> BALL::TMolecularGraph< Node, Edge >::nodes_ [protected]

Definition at line 193 of file molecularGraph.h.

Generated by  doxygen 1.6.3