DiaDes  0.1
DIAgnosis of Discrete-Event System
Public Types | Public Member Functions | Static Public Member Functions | Private Attributes | Friends | List of all members
Diades::Graph::EdgeData Class Reference

#include <EdgeData.hh>

Public Types

typedef Diades::Utils::Exception< EdgeDataException
 
typedef vector< EdgeData * >::size_type SizeType
 
typedef vector< Edge >::size_type EdgeId
 

Public Member Functions

 EdgeData ()
 
 EdgeData (EdgeId idt, NodeData *s, NodeData *t)
 
 ~EdgeData ()
 
void setSourcePos (list< Edge >::iterator sourcePos)
 
void setTargetPos (list< Edge >::iterator targetPos)
 
SizeType memoryUsage () const
 
string details () const
 

Static Public Member Functions

static string typeName ()
 

Private Attributes

SizeType _identifier
 
NodeData_source
 identifier of the Edge More...
 
NodeData_target
 pointer to the NodeData source of the Edge More...
 
list< Edge >::iterator _sourcePos
 pointer to the NodeData source of the Edge More...
 
list< Edge >::iterator _targetPos
 position of the Edge in the list of Edge associated with the source Node More...
 

Friends

class Graph
 position of the Edge in the list of Edge associated with the source Node More...
 
class Edge
 EdgeData is a friend class of Edge. More...
 
class NodeData
 EdgeData is a friend class of NodeData. More...
 

Detailed Description

Data of an Edge. An Edge is a reference to an EdgeData. The EdgeData structure is allocated and managed in the Graph. The user do not have to use this class explicitly.

Author
Y. Pencolé
Version
1.0

Definition at line 29 of file EdgeData.hh.

Member Typedef Documentation

◆ EdgeId

typedef vector<Edge>::size_type Diades::Graph::EdgeData::EdgeId

Definition at line 40 of file EdgeData.hh.

◆ Exception

typedef Diades::Utils::Exception<EdgeData> Diades::Graph::EdgeData::Exception

Definition at line 35 of file EdgeData.hh.

◆ SizeType

typedef vector<EdgeData *>::size_type Diades::Graph::EdgeData::SizeType

Definition at line 39 of file EdgeData.hh.

Constructor & Destructor Documentation

◆ EdgeData() [1/2]

Diades::Graph::EdgeData::EdgeData ( )
inline

Default constructor

Definition at line 47 of file EdgeData.hh.

Referenced by Diades::Graph::Edge::create(), and memoryUsage().

◆ EdgeData() [2/2]

Diades::Graph::EdgeData::EdgeData ( EdgeId  idt,
NodeData s,
NodeData t 
)
inline
Parameters
idtidentifier of the Edge implemeted by this EdgeData
ssource of the Edge (NodeData)
ttarget of the Edge (NodeData)

Definition at line 59 of file EdgeData.hh.

◆ ~EdgeData()

Diades::Graph::EdgeData::~EdgeData ( )
inline

Destructor

Definition at line 69 of file EdgeData.hh.

Member Function Documentation

◆ details()

string Diades::Graph::EdgeData::details ( ) const
inline
Returns
some information about the EdgeData

Definition at line 24 of file EdgeImpl.hh.

References _identifier, _source, and _target.

Referenced by memoryUsage().

◆ memoryUsage()

SizeType Diades::Graph::EdgeData::memoryUsage ( ) const
inline

Size of a transData

Returns
the memory usage of a transData

Definition at line 93 of file EdgeData.hh.

References details(), and EdgeData().

◆ setSourcePos()

void Diades::Graph::EdgeData::setSourcePos ( list< Edge >::iterator  sourcePos)
inline
Parameters
sourcePosposition of the Edge in the list of Edge associated with the source Node

Definition at line 76 of file EdgeData.hh.

References _sourcePos.

◆ setTargetPos()

void Diades::Graph::EdgeData::setTargetPos ( list< Edge >::iterator  targetPos)
inline
Parameters
targetPosposition of the Edge in the list of Edge associated with the target Node

Definition at line 86 of file EdgeData.hh.

References _targetPos.

◆ typeName()

static string Diades::Graph::EdgeData::typeName ( )
inlinestatic

Definition at line 32 of file EdgeData.hh.

Friends And Related Function Documentation

◆ Edge

friend class Edge
friend

EdgeData is a friend class of Edge.

Definition at line 118 of file EdgeData.hh.

◆ Graph

friend class Graph
friend

position of the Edge in the list of Edge associated with the source Node

EdgeData is a friend class of Graph

Definition at line 116 of file EdgeData.hh.

◆ NodeData

friend class NodeData
friend

EdgeData is a friend class of NodeData.

Definition at line 120 of file EdgeData.hh.

Member Data Documentation

◆ _identifier

SizeType Diades::Graph::EdgeData::_identifier
private

Definition at line 104 of file EdgeData.hh.

Referenced by details(), and Diades::Graph::Edge::id().

◆ _source

NodeData* Diades::Graph::EdgeData::_source
mutableprivate

◆ _sourcePos

list<Edge>::iterator Diades::Graph::EdgeData::_sourcePos
private

pointer to the NodeData source of the Edge

Definition at line 110 of file EdgeData.hh.

Referenced by Diades::Graph::NodeData::delOutEdge(), setSourcePos(), and Diades::Graph::Edge::sourcePos().

◆ _target

NodeData* Diades::Graph::EdgeData::_target
mutableprivate

pointer to the NodeData source of the Edge

Definition at line 108 of file EdgeData.hh.

Referenced by Diades::Graph::Edge::destroy(), details(), Diades::Graph::Graph::source(), and Diades::Graph::Graph::sourceRef().

◆ _targetPos

list<Edge>::iterator Diades::Graph::EdgeData::_targetPos
private

position of the Edge in the list of Edge associated with the source Node

Definition at line 112 of file EdgeData.hh.

Referenced by Diades::Graph::NodeData::delInEdge(), setTargetPos(), and Diades::Graph::Edge::targetPos().


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