bioprocessing 6.0.4
bio::BaseEdge< V > Class Template Reference

Base class for edges. More...

#include <bioprocessing/graph/baseedge.h>

Inheritance diagram for bio::BaseEdge< V >:
Collaboration diagram for bio::BaseEdge< V >:

Public Types

typedef V Vertex
 Vertex type.
 
typedef BaseEdgeRef< V > Edge
 Usable Edge type (RC)
 
typedef BaseEdgeRef< V > Ref
 Reference type.
 

Public Member Functions

virtual ~BaseEdge ()
 
virtual Vertex x ()
 access the first vertex (arbitrary choice for non oriented edges)
 
virtual const Vertex x () const
 access the first vertex (arbitrary choice for non oriented edges)
 
virtual Vertex y ()
 access the second vertex (arbitrary choice for non oriented edges)
 
virtual const Vertex y () const
 access the second vertex (arbitrary choice for non oriented edges)
 
virtual Vertex other (const Vertex &v)
 access the vertex that is not v
 
virtual const Vertex other (const Vertex &v) const
 access the vertex that is not v
 
virtual bool operator== (const This &other) const
 
virtual bool operator!= (const This &other) const
 
virtual bool operator> (const This &other) const
 
virtual bool operator< (const This &other) const
 
virtual bool operator>= (const This &other) const
 
virtual bool operator<= (const This &other) const
 

Protected Types

typedef BaseEdge< V > This
 Type of *this.
 

Friends

class BaseEdgeRef< V >
 

Detailed Description

template<typename V>
class bio::BaseEdge< V >

Base class for edges.

This class is only a base defining classic methods for edge manipulation. Implementation class derive from it and are then usable. An edge is defined by a couple of vertices. Oriented edges embed additionaly an order (a->b != b->a)

It is templated on a vertex type (prefer a VertexRef type)

Definition at line 35 of file baseedge.h.

Member Typedef Documentation

◆ Edge

template<typename V>
typedef BaseEdgeRef<V> bio::BaseEdge< V >::Edge

Usable Edge type (RC)

Definition at line 42 of file baseedge.h.

◆ Ref

template<typename V>
typedef BaseEdgeRef<V> bio::BaseEdge< V >::Ref

Reference type.

Definition at line 43 of file baseedge.h.

◆ This

template<typename V>
typedef BaseEdge<V> bio::BaseEdge< V >::This
protected

Type of *this.

Definition at line 39 of file baseedge.h.

◆ Vertex

template<typename V>
typedef V bio::BaseEdge< V >::Vertex

Vertex type.

Definition at line 41 of file baseedge.h.

Constructor & Destructor Documentation

◆ ~BaseEdge()

template<typename V>
virtual bio::BaseEdge< V >::~BaseEdge ( )
inlinevirtual

Definition at line 47 of file baseedge.h.

Member Function Documentation

◆ operator!=()

template<typename V>
virtual bool bio::BaseEdge< V >::operator!= ( const This & other) const
inlinevirtual

Definition at line 67 of file baseedge.h.

References other().

◆ operator<()

template<typename V>
virtual bool bio::BaseEdge< V >::operator< ( const This & other) const
inlinevirtual

Definition at line 69 of file baseedge.h.

References other().

◆ operator<=()

template<typename V>
virtual bool bio::BaseEdge< V >::operator<= ( const This & other) const
inlinevirtual

Definition at line 71 of file baseedge.h.

◆ operator==()

template<typename V>
virtual bool bio::BaseEdge< V >::operator== ( const This & other) const
inlinevirtual

Definition at line 66 of file baseedge.h.

References other().

◆ operator>()

template<typename V>
virtual bool bio::BaseEdge< V >::operator> ( const This & other) const
inlinevirtual

Definition at line 68 of file baseedge.h.

References other().

◆ operator>=()

template<typename V>
virtual bool bio::BaseEdge< V >::operator>= ( const This & other) const
inlinevirtual

Definition at line 70 of file baseedge.h.

References other().

◆ other() [1/2]

template<typename V>
virtual Vertex bio::BaseEdge< V >::other ( const Vertex & v)
inlinevirtual

access the vertex that is not v

Reimplemented in bio::SetEdge< V >.

Definition at line 60 of file baseedge.h.

Referenced by BaseEdgeRef< V >, operator!=(), operator<(), operator==(), operator>(), and operator>=().

◆ other() [2/2]

template<typename V>
virtual const Vertex bio::BaseEdge< V >::other ( const Vertex & v) const
inlinevirtual

access the vertex that is not v

Reimplemented in bio::SetEdge< V >.

Definition at line 62 of file baseedge.h.

◆ x() [1/2]

template<typename V>
virtual Vertex bio::BaseEdge< V >::x ( )
inlinevirtual

access the first vertex (arbitrary choice for non oriented edges)

Reimplemented in bio::SetEdge< V >.

Definition at line 52 of file baseedge.h.

Referenced by operator<<().

◆ x() [2/2]

template<typename V>
virtual const Vertex bio::BaseEdge< V >::x ( ) const
inlinevirtual

access the first vertex (arbitrary choice for non oriented edges)

Reimplemented in bio::SetEdge< V >.

Definition at line 54 of file baseedge.h.

◆ y() [1/2]

template<typename V>
virtual Vertex bio::BaseEdge< V >::y ( )
inlinevirtual

access the second vertex (arbitrary choice for non oriented edges)

Reimplemented in bio::SetEdge< V >.

Definition at line 56 of file baseedge.h.

Referenced by operator<<().

◆ y() [2/2]

template<typename V>
virtual const Vertex bio::BaseEdge< V >::y ( ) const
inlinevirtual

access the second vertex (arbitrary choice for non oriented edges)

Reimplemented in bio::SetEdge< V >.

Definition at line 58 of file baseedge.h.

Friends And Related Symbol Documentation

◆ BaseEdgeRef< V >

template<typename V>
friend class BaseEdgeRef< V >
friend

Definition at line 71 of file baseedge.h.

References other().


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