00001 #ifndef TopologyImp_H
00002 #define TopologyImp_H
00003
00004 #include "defs.h"
00005 #include "TopolParams.h"
00006
00015 class TopologyImp {
00016 public:
00018 virtual Value_Type distance(int bmu, int i, int dimensions[MaxDimension], int type) = 0;
00019
00021 virtual int Coord( int pos, int axis, int dimensions[MaxDimension] ) = 0;
00022
00024 virtual TMatrix LinInitCoords(int mapsize, int dimensions[MaxDimension]) = 0;
00025
00027 virtual TMatrix CreateDelta(int dimensions[MaxDimension], int lattice, int mapsize ) = 0;
00028
00030 virtual Value_Type H( const Value_Type delta, Value_Type radius, int neighboor ) = 0;
00031
00033 virtual vector<int> getNeighbors( int i, int neighbor, int dimensions[] ) = 0;
00034
00035 protected:
00037 TopologyImp(const TopolParams&) {};
00038 };
00039
00040
00041 #endif