#include <Vertex.h>
Public Member Functions | |
| Vertex (VertexLabel l, SamplePos *sposs, SampleValue **svalues, EmbValue t) | |
| ~Vertex (void) | |
| SamplePos | getSamplePos (unsigned short i) const |
| SampleValue * | getSampleValue (unsigned short i) const |
| UWORD32 | getDegree (void) const |
| Edge * | getShortestEdge (void) const |
| void | updateShortestEdge (void) |
| void | markDeleted (void) |
| void | unmarkDeleted (void) |
| VertexLabel | getLabel (void) const |
| void | setLabel (VertexLabel l) |
| void | setSampleOccurenceIt (unsigned short i, std::list< SampleOccurence >::iterator it) |
| EmbValue | getEmbeddedValue (void) const |
| EmbValue | getTargetValue (unsigned short i) const |
| void | print (unsigned short spc=0) const |
| void | printEdges (void) const |
Private Attributes | |
| VertexLabel | Label |
| the vertex label of this vertex | |
| SamplePos * | SamplePositions |
| the sample positions of the samples described by this vertex in the CvrStgFile | |
| SampleValue ** | SampleValues |
| the sample values at the SamplePositions | |
| EmbValue * | TargetValues |
| the target values for the sample values (exactly one of them has to be reached (and the other left unchanged) to embed this vertex) | |
| std::list< SampleOccurence >::iterator * | SampleOccurenceIts |
| point to entries in std::lists of sample occurences in the graph | |
| Edge * | ShortestEdge |
| the shortest edge of this vertex (as calculated by updateShortestEdge) | |
| bool | valid |
| true iff this vertex is not deleted | |
| unsigned short | SelfDegree |
| the number of loop edges (loop edges are not valid edges) | |
NOTE: Vertex relies on the Globals object pointed to by the Globs pointer. This means that it must be set correctly before using any method of a Vertex object.
| Vertex::Vertex | ( | VertexLabel | l, | |
| SamplePos * | sposs, | |||
| SampleValue ** | svalues, | |||
| EmbValue | t | |||
| ) |
construct a new vertex object
| l | the vertex label for this vertex | |
| sposs | the array (with length g->getSamplesPerVertex()) of the positions of the samples | |
| svalues | the array (with length g->getSamplesPerVertex()) of (unique (!)) pointers to the sample values | |
| t | the target value for the whole vertex - the value that should be returned by getEmbeddedValue() after the embedding |
| Vertex::~Vertex | ( | void | ) |
| SamplePos Vertex::getSamplePos | ( | unsigned short | i | ) | const [inline] |
get the i-th sample position
| i | an index of a sample in this vertex (must be < TheCvrStgFile->getNumSamplesPerVertex()) |
| SampleValue* Vertex::getSampleValue | ( | unsigned short | i | ) | const [inline] |
get the i-th sample value
| i | an index of a sample in this vertex (must be < TheCvrStgFile->getNumSamplesPerVertex()) |
| UWORD32 Vertex::getDegree | ( | void | ) | const |
get the degree of this vertex
| Edge* Vertex::getShortestEdge | ( | void | ) | const [inline] |
get the shortest edge of this vertex
| void Vertex::updateShortestEdge | ( | void | ) |
find shortest edge of this vertex and save result to ShortestEdge
| void Vertex::markDeleted | ( | void | ) |
if this vertex is valid, mark it as deleted
| void Vertex::unmarkDeleted | ( | void | ) |
if this vertex is marked as deleted, undo this
| VertexLabel Vertex::getLabel | ( | void | ) | const [inline] |
| void Vertex::setLabel | ( | VertexLabel | l | ) | [inline] |
| void Vertex::setSampleOccurenceIt | ( | unsigned short | i, | |
| std::list< SampleOccurence >::iterator | it | |||
| ) | [inline] |
| EmbValue Vertex::getEmbeddedValue | ( | void | ) | const |
| EmbValue Vertex::getTargetValue | ( | unsigned short | i | ) | const [inline] |
| void Vertex::print | ( | unsigned short | spc = 0 |
) | const |
| void Vertex::printEdges | ( | void | ) | const |
VertexLabel Vertex::Label [private] |
SamplePos* Vertex::SamplePositions [private] |
SampleValue** Vertex::SampleValues [private] |
EmbValue* Vertex::TargetValues [private] |
std::list<SampleOccurence>::iterator* Vertex::SampleOccurenceIts [private] |
Edge* Vertex::ShortestEdge [private] |
bool Vertex::valid [private] |
unsigned short Vertex::SelfDegree [private] |
1.5.1