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_

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


Member Typedef Documentation

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

Constructor & Destructor Documentation

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

Member Function Documentation

template<typename Node, typename Edge>
EdgeConstIterator BALL::TMolecularGraph< Node, Edge >::beginEdge (  )  const [inline]
template<typename Node, typename Edge>
EdgeIterator BALL::TMolecularGraph< Node, Edge >::beginEdge (  )  [inline]
template<typename Node, typename Edge>
NodeConstIterator BALL::TMolecularGraph< Node, Edge >::beginNode (  )  const [inline]
template<typename Node, typename Edge>
NodeIterator BALL::TMolecularGraph< Node, Edge >::beginNode (  )  [inline]
template<typename Node , typename Edge >
bool BALL::TMolecularGraph< Node, Edge >::deleteEdge ( const Bond bond  )  [inline]
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]
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]
template<typename Node, typename Edge>
EdgeIterator BALL::TMolecularGraph< Node, Edge >::endEdge (  )  [inline]
template<typename Node, typename Edge>
NodeConstIterator BALL::TMolecularGraph< Node, Edge >::endNode (  )  const [inline]
template<typename Node, typename Edge>
NodeIterator BALL::TMolecularGraph< Node, Edge >::endNode (  )  [inline]
template<typename Node, typename Edge>
const EdgeItemType& BALL::TMolecularGraph< Node, Edge >::getEdge ( Position  index  )  const [inline]
template<typename Node, typename Edge>
EdgeItemType& BALL::TMolecularGraph< Node, Edge >::getEdge ( Position  index  )  [inline]
template<typename Node, typename Edge>
const NodeItemType& BALL::TMolecularGraph< Node, Edge >::getNode ( Position  index  )  const [inline]
template<typename Node, typename Edge>
NodeItemType& BALL::TMolecularGraph< Node, Edge >::getNode ( Position  index  )  [inline]
template<typename Node , typename Edge >
BALL_INLINE Size BALL::TMolecularGraph< Node, Edge >::getNumberOfEdges (  )  const [inline]

Return the number of nodes in the graph

References BALL::TMolecularGraph< Node, Edge >::edges_.

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

Return the number of nodes in the graph

References BALL::TMolecularGraph< Node, Edge >::nodes_.

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

Member Data Documentation