MTK++ Latest version: 0.2.0

vertex.h
Go to the documentation of this file.
00001 
00033 #ifndef VERTEX_H
00034 #define VERTEX_H
00035 
00036 #include <iostream>
00037 #include <string>
00038 #include <vector>
00039 #include <algorithm>
00040 #include <stdio.h>
00041 #include <stdlib.h>
00042 #include <math.h>
00043 #include <map>
00044 
00045 namespace MTKpp
00046 {
00047 
00048 // ============================================================
00049 // Class : vertex()
00050 // ------------------------------------------------------------
00058 // ============================================================
00059 
00060 class vertex
00061 {
00062 public:
00063 
00067     vertex();
00068 
00070     virtual ~vertex();
00071 
00076     void                     setName(std::string name);
00077 
00082     std::string              getName();
00083 
00088     void                     setIndex(int i);
00089 
00094     int                      getIndex();
00095 
00100     void                     setParent(vertex* v);
00101 
00106     vertex*                  getParent();
00107 
00111     void                     setVisited();
00112 
00117     void                     setVisited(bool v);
00118 
00122     bool                     isVisited();
00123 
00127     void                     setLeaf();
00128 
00132     bool                     isLeaf();
00133 
00138     void                     setLayer(int l);
00139 
00143     int                      getLayer();
00144 
00149     void                     setValue(double d);
00150 
00154     double                   getValue();
00155 
00160     void                     addNeighbor(vertex* v);
00161 
00166     void                     delNeighbor(vertex* v);
00167 
00172     std::vector<vertex*>     getNeighbors();
00173 
00174 protected:
00175 
00177     std::string              itsName;
00178 
00180     vertex*                  itsParent;
00181 
00183     std::vector<vertex*>     itsNeighbors;
00184 
00186     int                      itsLayer;
00187 
00189     double                   itsValue;
00190 
00192     int                      itsIndex;
00193 
00195     bool                     visited;
00196 
00198     bool                     leaf;
00199 
00201     typedef std::vector<vertex*>::iterator VertexIterator;
00202 };
00203 
00204 } // MTK++ namespace
00205 
00206 #endif // VERTEX_H
00207 
00208 

Generated on Fri Dec 23 2011 09:28:52 for MTK++ by Doxygen 1.7.5.1