Developer Documentation
RAVL, Recognition And Vision Library
USER HOME PAGE CLASS LIST CONTENTS
Ravl - Core - Graphs - GraphEdgeBaseC
 

  PUBLIC
GraphEdgeBaseC::GraphEdgeBaseC(GraphBaseBodyC &)
GraphEdgeBaseC::GraphEdgeBaseC(const GraphEdgeBaseC &)
GraphEdgeBaseC::operator ==(const GraphEdgeBaseC &) const
GraphEdgeBaseC::Hash(void) const
GraphEdgeBaseC::Source(void)
GraphEdgeBaseC::Target(void)
GraphEdgeBaseC::Node1(void)
GraphEdgeBaseC::Node2(void)
GraphEdgeBaseC::SourceAdj(void)
GraphEdgeBaseC::TargetAdj(void)
GraphEdgeBaseC::Node1Adj(void)
GraphEdgeBaseC::Node2Adj(void)
GraphEdgeBaseC::Del(void)
GraphEdgeBaseC::Redirect(void)
GraphEdgeBaseC::GraphEdgeBaseC(void)
GraphEdgeBaseC::ID(void) const
GraphEdgeBaseC::TargetRep(void)
GraphEdgeBaseC::SourceRep(void)
GraphEdgeBaseC::Node1Rep(void)
GraphEdgeBaseC::Node2Rep(void)
GraphEdgeBaseC::GraphEdgeBaseC(GraphEdgeBaseBodyC &,IntrDListC &)
GraphEdgeBaseC::Graph(void)
IntrDLIterC::IsValid(void) const
IntrDLIterC::First(void)
IntrDLIterC::Last(void)
IntrDLIterC::operator bool(void) const
IntrDLIterC::IsElm(void) const
IntrDLIterC::IsFirst(void) const
IntrDLIterC::IsLast(void) const
IntrDLIterC::operator ++(void)
IntrDLIterC::operator ++(int)
IntrDLIterC::operator --(int)
IntrDLIterC::Next(void)
IntrDLIterC::Prev(void)
IntrDLIterC::NextCrc(void)
IntrDLIterC::PrevCrc(void)
IntrDLIterC::operator *(void)
IntrDLIterC::operator *(void) const
IntrDLIterC::operator ->(void)
IntrDLIterC::operator ->(void) const
IntrDLIterC::Data(void)
IntrDLIterC::Data(void) const
IntrDLIterC::Extract(void)
IntrDLIterC::Del(void)
IntrDLIterC::InsertBef(DataT &)
IntrDLIterC::InsertAft(DataT &)
IntrDLIterC::List(void)
IntrDLIterC::List(void) const
IntrDLIterC::Invalidate(void)
IntrDLIterC::SetIter(const IntrDListC &,DataT &)
IntrDLIterC::Head(void)
IntrDLIterC::Head(void) const

   GraphEdgeBaseC   
 
Graph Edge handle.
 
include "Ravl/GraphBase.hh"
Created:22/8/1994 
Source file:Ravl/Core/Container/Graph/GraphBase.hh
User Level:Develop
Library:RavlCore
In Scope:RavlN

Comments:
The class also serves as an iterator of the list of graph edges.

Parent Classes: Derived Classes: Methods:
GraphEdgeBaseC(GraphBaseBodyC & graph)
Creates the edge iterator of the 'graph'. The iterator will point to the first edge in the edge list of the graph.

GraphEdgeBaseC(const GraphEdgeBaseC & edge)
Copy constructor.

bool operator ==(const GraphEdgeBaseC & Oth) const
True when both iterators are pointing at the same edge.

UIntT Hash(void) const
Returns a hash value for the current edge. Access to the neighboring graph lists. --------------------------------------

GraphNodeBaseC Source()
Returns the source node of this directed edge.

GraphNodeBaseC Target()
Returns the target node of this directed edge.

GraphNodeBaseC Node1()
Returns the first node of this undirected edge.

GraphNodeBaseC Node2()
Returns the second node of this undirected edge.

GraphAdjIterBaseC SourceAdj()
Returns the adjacency of the source node of this directed edge.

GraphAdjIterBaseC TargetAdj()
Returns the adjacency of the target node of this directed edge.

GraphAdjIterBaseC Node1Adj()
Returns the adjacency of the first node of this undirected edge.

GraphAdjIterBaseC Node2Adj()
Returns the adjacency of the second node of this undirected edge. Changing of the edge list. --------------------------

void Del()
Unlinks edge from the graph and deletes it. The iterator will point to the previous edge in the graph edge list.

void Redirect()
Changes the orientation of the edge. In other words it means swapping of the meaning of Node1(), Source() with Node2(), Target(). If the graph is undirected the order of edges is held. If the graph is directed the order of edges of both nodes is changed.

GraphEdgeBaseC()
The default constructor used by constructors of arrays. It constructs the invalid object.

UIntT ID() const
Access edge id.

GraphNodeBaseBodyC & TargetRep()
Returns the target node of this directed edge.

GraphNodeBaseBodyC & SourceRep()
Returns the source node of this directed edge.

GraphNodeBaseBodyC & Node1Rep()
Returns the first node of this undirected edge.

GraphNodeBaseBodyC & Node2Rep()
Returns the second node of this undirected edge.

GraphEdgeBaseC(GraphEdgeBaseBodyC & edge,IntrDListC<GraphEdgeBaseBodyC> & list)
Creates the iterator pointing to the edge which belongs to the 'list'.

GraphBaseBodyC & Graph()
Returns the graph.

#include "Ravl/InDLIter.hh"
bool IsValid() const
Is iterator valid ?
true is returned for a valid iterator.

void First()
Goto first element in the list.

void Last()
Goto the last element in the list.

operator bool() const
At a valid node ?

bool IsElm() const
At a valid element in the list ?
AMMA compatibilty function, use operator bool() instread.

bool IsFirst() const
At the first element in the list ?
AMMA compatibilty function.

bool IsLast() const
At the last element in the list ?
AMMA compatibilty function.

void operator ++()
Goto next element in list.

void operator ++(int)
Goto next element in list.

void operator --(int)
Goto previous element in list.

void Next()
Goto next element in list.
AMMA compatibilty function, use operator++() instread.

void Prev()
Goto previous element in list.
AMMA compatibilty function, use operator--() instread.

void NextCrc()
Goto next element in list, skip the head element.
AMMA compatibilty function.

void PrevCrc()
Goto previous element in list, skip the head element.
AMMA compatibilty function.

GraphEdgeBaseBodyC & operator *()
Access data.
NB. The iterator MUST be valid. check with 'operator bool()'.

const GraphEdgeBaseBodyC & operator *() const
Constant access to data.
NB. The iterator MUST be valid. check with 'operator bool()'.

GraphEdgeBaseBodyC * operator ->()
Access data.
NB. The iterator MUST be valid. check with 'operator bool()'.

const GraphEdgeBaseBodyC * operator ->() const
Constant access to data.
NB. The iterator MUST be valid. check with 'operator bool()'.

GraphEdgeBaseBodyC & Data()
Access data.
NB. The iterator MUST be valid. check with 'operator bool()'.

const GraphEdgeBaseBodyC & Data() const
Constant access to data.
NB. The iterator MUST be valid. check with 'operator bool()'.

GraphEdgeBaseBodyC & Extract()
Extract the current element from the list.
Do not delete it, the user is responsible for ensuring this happens at an approprate time. The iteration is left pointing at the element before the one extracted. The iterator must be valid.

void Del()
Delete the current element from the list.
actuall delete the element where appropriate. The iterator must be valid.

void InsertBef(GraphEdgeBaseBodyC & dat)
Insert data before current element.
if at the head of the list (i.e. operator bool() failes.) then add at end.

void InsertAft(GraphEdgeBaseBodyC & dat)
Insert data after current element.
if at the head of the list (i.e. operator bool() failes.) then add at begining.

IntrDListC<GraphEdgeBaseBodyC> & List()
Access the list we're iterating.

const IntrDListC<GraphEdgeBaseBodyC> & List() const
Access the list we're iterating.

bool Invalidate()
Point interator at an invalid element.

void SetIter(const IntrDListC<GraphEdgeBaseBodyC> & lst,GraphEdgeBaseBodyC & nplace)
Set iterator to new value.

DLinkC & Head()
Get head of list.

const DLinkC & Head() const
Get head of list.


Maintainer:Radek Marik, Created: 22/8/1994, Documentation by CxxDoc: Tue Aug 13 09:59:30 2002