DiaDes
0.1
DIAgnosis of Discrete-Event System
|
#include <Node.hh>
Public Types | |
typedef Diades::Utils::Exception< Node > | Exception |
typedef vector< Node >::size_type | SizeType |
typedef SizeType | NodeId |
Public Member Functions | |
Constructors | |
Node ()=default | |
Node (const Node &node)=default | |
Node (Node &&node)=default | |
Node & | operator= (Node &&other)=default |
Node (NodeData *data) | |
~Node ()=default | |
NodeData * | data () |
Node & | operator= (const Node &node)=default |
Accessors | |
SizeType | memoryUsage () const |
SizeType | degree () const |
SizeType | outDeg () const |
SizeType | inDeg () const |
OutEdgeIterator | outEdgeBegin () const |
OutEdgeIterator | outEdgeEnd () const |
InEdgeIterator | inEdgeBegin () const |
InEdgeIterator | inEdgeEnd () const |
bool | valid () const |
bool | isValid () const |
bool | operator== (const Node &node) const |
bool | operator!= (const Node &node) const |
bool | operator< (const Node &node) const |
bool | operator> (const Node &node) const |
const Graph & | owner () const |
NodeId | id () const |
void | printInformation () const |
Static Public Member Functions | |
static string | typeName () |
Private Member Functions | |
void | create (NodeId idt, Graph *own) |
void | destroy () |
void | changeId (NodeId id) |
Private Attributes | |
NodeData * | _nData |
Friends | |
class | Graph |
the underling NodeData of the Node More... | |
ostream & | operator<< (ostream &os, const Node &node) |
A Node of a Graph can have input edges (Edge) or output edges (Edge) To associate an information with one Node, you can use a EdgeMap<T>
typedef Diades::Utils::Exception<Node> Diades::Graph::Node::Exception |
typedef vector<Node>::size_type Diades::Graph::Node::SizeType |
|
default |
|
default |
Copy constructor.
node | Node to copy |
|
inline |
|
default |
Desctuctor
Referenced by Node().
|
inlineprivate |
idt | the identifier of the created node |
own | the Graph that owns the created node |
Create the NodeData of id idt in the Graph *own
Definition at line 70 of file NodeImpl.hh.
References _nData, ensure, require, Diades::Graph::NodeData::setIdentifier(), Diades::Graph::NodeData::setOwner(), and valid().
Referenced by id().
|
inline |
Definition at line 101 of file Node.hh.
References _nData, and operator=().
|
inline |
|
inlineprivate |
Destroy the underlying NodeData
Definition at line 275 of file Node.hh.
References _nData, ensure, Diades::Graph::NodeData::inEdges(), Diades::Graph::NodeData::outEdges(), require, and valid().
|
inline |
Identifier of a Node
Definition at line 248 of file Node.hh.
References _nData, create(), Diades::Graph::NodeData::identifier(), printInformation(), require, and valid().
Referenced by Diades::Graph::hash_value(), operator<(), Diades::Graph::ConstNodeMap< set< Diades::Automata::Event > >::operator[](), Diades::Graph::NodeMap< Status >::operator[](), printInformation(), and boost::serialization::save().
|
inline |
Input Degree of a node
Definition at line 148 of file Node.hh.
References _nData, Diades::Graph::NodeData::inEdgesNb(), require, and valid().
Referenced by degree(), and printInformation().
|
inline |
Iterator on Edges
Definition at line 178 of file Node.hh.
References _nData, Diades::Graph::NodeData::inEdges(), require, and valid().
Referenced by Diades::Graph::Graph::inEdgeBegin().
|
inline |
Iterator on Edges
Definition at line 188 of file Node.hh.
References _nData, Diades::Graph::NodeData::inEdges(), require, and valid().
Referenced by Diades::Graph::Graph::inEdgeEnd().
|
inline |
Validity (rename of valid() for consistency)
Definition at line 202 of file Node.hh.
References valid().
Referenced by Diades::Graph::NodeData::owner().
|
inline |
|
inline |
Inequality operator
node | Node to compare |
Definition at line 217 of file Node.hh.
References operator<().
|
inline |
Order of Node
Definition at line 83 of file NodeImpl.hh.
References id(), owner(), and valid().
Referenced by operator!=().
Move assignement (default)
other |
Referenced by data().
|
inline |
|
inline |
|
inline |
Output Degree of a node
Definition at line 138 of file Node.hh.
References _nData, Diades::Graph::NodeData::outEdgesNb(), require, and valid().
Referenced by degree(), and printInformation().
|
inline |
Iterator on Edges
Definition at line 158 of file Node.hh.
References _nData, Diades::Graph::NodeData::outEdges(), require, and valid().
Referenced by Diades::Graph::Graph::outEdgeBegin().
|
inline |
Iterator on Edges
Definition at line 168 of file Node.hh.
References _nData, Diades::Graph::NodeData::outEdges(), require, and valid().
Referenced by Diades::Graph::Graph::outEdgeEnd().
|
inline |
Owner of a node
Definition at line 46 of file NodeImpl.hh.
References _nData, Diades::Graph::NodeData::owner(), require, and valid().
Referenced by Diades::Graph::Graph::inEdgeBegin(), Diades::Graph::Graph::inEdgeEnd(), Diades::Automata::FaultPattern::isFinal(), operator<(), operator>(), Diades::Graph::Graph::outEdgeBegin(), Diades::Graph::Graph::outEdgeEnd(), and printInformation().
|
inline |
|
inline |
Validity
Definition at line 23 of file NodeImpl.hh.
References _nData, and Diades::Graph::NodeData::isValid().
Referenced by changeId(), create(), degree(), destroy(), generateBehaviour(), Diades::Graph::hash_value(), id(), inDeg(), inEdgeBegin(), Diades::Graph::Graph::inEdgeBegin(), inEdgeEnd(), Diades::Graph::Graph::inEdgeEnd(), Diades::Automata::FaultPattern::isFinal(), isValid(), Diades::Graph::NodeElement< T >::NodeElement(), operator<(), Diades::Graph::ConstNodeMap< set< Diades::Automata::Event > >::operator[](), Diades::Graph::NodeMap< Status >::operator[](), outDeg(), outEdgeBegin(), Diades::Graph::Graph::outEdgeBegin(), outEdgeEnd(), Diades::Graph::Graph::outEdgeEnd(), owner(), and printInformation().
|
friend |
|
friend |
|
private |
Definition at line 298 of file Node.hh.
Referenced by changeId(), create(), data(), destroy(), id(), inDeg(), inEdgeBegin(), inEdgeEnd(), operator==(), outDeg(), outEdgeBegin(), outEdgeEnd(), owner(), and valid().