67 #include "utility/actor/actor/MovableObject.h" 68 #include "utility/tagged/storage/ArrayOfTaggedObjects.h" 69 #include "solution/graph/graph/VertexIter.h" 74 class TaggedObjectStorage;
76 class FEM_ObjectBroker;
92 void inic(
const size_t &);
93 void copia(
const Graph &other);
99 Graph(
int numVertices);
103 virtual bool addVertex(
const Vertex &vertexPtr,
bool checkAdjacency =
true);
104 virtual int addEdge(
int vertexTag,
int otherVertexTag);
112 virtual bool removeVertex(
int tag,
bool removeEdgeFlag =
true);
113 const Vertex *BuscaRef(
int ref)
const;
114 void getBand(
int &,
int &)
const;
121 virtual void Print(std::ostream &os,
int flag =0);
125 friend std::ostream &operator<<(std::ostream &s,
Graph &M);
Graph & operator=(const Graph &other)
Assignment operator.
Definition: Graph.cpp:129
virtual bool addVertex(const Vertex &vertexPtr, bool checkAdjacency=true)
Appends a vertex to the graph. If the adjacency list of the vertex is not empty, we check before that...
Definition: Graph.cpp:140
virtual bool removeVertex(int tag, bool removeEdgeFlag=true)
Removes from the graph the vertex identified by the tag being passed as parameter.
Definition: Graph.cpp:277
int recvData(const CommParameters &)
Receives object members through the channel being passed as parameter.
Definition: Graph.cpp:443
ArrayOfTaggedObjects is a storage class. The class is responsible for holding and providing access to...
Definition: ArrayOfTaggedObjects.h:81
int getVertexDiffMaxima(void) const
Returns the maximum (positive) of the difference between vertices indexes.
Definition: Graph.cpp:370
virtual VertexIter & getVertices(void)
Returns an iterator to the vertices of the graph.
Definition: Graph.cpp:257
virtual int getNumEdge(void) const
Returns the número de aristas del grafo.
Definition: Graph.cpp:269
virtual int getFreeTag(void)
Returns the siguiente identificador (tag) libre.
Definition: Graph.cpp:273
Iterator over the vertices of the graph.
Definition: VertexIter.h:75
int sendSelf(CommParameters &)
Sends object through the channel being passed as parameter.
Definition: Graph.cpp:452
void getBand(int &, int &) const
Returns the extremos del ancho de banda.
Definition: Graph.cpp:340
Object that can move between processes.
Definition: MovableObject.h:91
Vertex of a graph.
Definition: Vertex.h:73
int sendData(CommParameters &)
Send object members through the channel being passed as parameter.
Definition: Graph.cpp:434
virtual Vertex * getVertexPtr(int vertexTag)
Returns a pointer to the vertex identified by the tag being passed as parameter.
Definition: Graph.cpp:237
int getVertexDiffExtrema(void) const
Returns the extreme (positive or negative) of the difference between vertices indexes.
Definition: Graph.cpp:394
virtual int getNumVertex(void) const
Returns the number of vertices del grafo.
Definition: Graph.cpp:265
virtual int merge(Graph &other)
Mezcla los dos grafos.
Definition: Graph.cpp:297
virtual int addEdge(int vertexTag, int otherVertexTag)
Adds an edge to the graph. Previously we check that its vertices are already defined in the graph...
Definition: Graph.cpp:189
Graph(void)
Constructor.
Definition: Graph.cpp:116
The Graph class provides the abstraction of a graph, a collection of vertices and edges...
Definition: Graph.h:84
int recvSelf(const CommParameters &)
Receives object through the channel being passed as parameter.
Definition: Graph.cpp:467
virtual void Print(std::ostream &os, int flag=0)
Imprime.
Definition: Graph.cpp:423
Communication parameters between processes.
Definition: CommParameters.h:65
================================================================================
Definition: ContinuaReprComponent.h:34