00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifdef MODULE_SPAMOD
00026
00027 #include "controler-gmap-types.hh"
00028 #include "parameters-gmap-default-values.hh"
00029 #include "parameter-spamod.hh"
00030 #include <cassert>
00031 using namespace std;
00032 using namespace GMap3d;
00033
00034 CParameterSpamod::CParameterSpamod(int ANbRef) :
00035 CParameter(ANbRef),
00036 FViewMode (SPAMOD_TOPOLOGICAL)
00037 {
00038 FEuclidianParam[0] = true;
00039 FEuclidianParam[1] = true;
00040
00041 FAnalyticParam [0] = true;
00042 FAnalyticParam [1] = true;
00043 FAnalyticParam [2] = true;
00044 FAnalyticParam [3] = true;
00045
00046 FVoxelParam [0] = true;
00047 FVoxelParam [1] = true;
00048 FVoxelParam [2] = true;
00049
00050 FK2Param [0] = true;
00051 FK2Param [1] = true;
00052 FK2Param [2] = true;
00053 }
00054
00055 CParameterSpamod::CParameterSpamod(const CParameterSpamod & AParam) :
00056 CParameter(AParam),
00057 FViewMode (AParam.FViewMode)
00058 {
00059 FEuclidianParam[0] = AParam.FEuclidianParam[0];
00060 FEuclidianParam[1] = AParam.FEuclidianParam[1];
00061
00062 FAnalyticParam [0] = AParam.FAnalyticParam [0];
00063 FAnalyticParam [1] = AParam.FAnalyticParam [1];
00064 FAnalyticParam [2] = AParam.FAnalyticParam [2];
00065 FAnalyticParam [3] = AParam.FAnalyticParam [3];
00066
00067 FVoxelParam [0] = AParam.FVoxelParam [0];
00068 FVoxelParam [1] = AParam.FVoxelParam [1];
00069 FVoxelParam [2] = AParam.FVoxelParam [2];
00070
00071 FK2Param [0] = AParam.FK2Param [0];
00072 FK2Param [1] = AParam.FK2Param [1];
00073 FK2Param [2] = AParam.FK2Param [2];
00074 }
00075
00076 CParameterSpamod::~CParameterSpamod()
00077 {}
00078
00079 CParameter * CParameterSpamod::copy() const
00080 { return new CParameterSpamod(*this); }
00081
00082 void CParameterSpamod::save(ostream& )
00083 {}
00084
00085 void CParameterSpamod::load(istream& )
00086 {}
00087
00088 void CParameterSpamod::reinit()
00089 {}
00090
00091 int CParameterSpamod::getType() const
00092 {
00093 return PARAMETER_SPAMOD;
00094 }
00095
00096 void CParameterSpamod::setViewMode(TSpamodViewMode AMode)
00097 {
00098 if ( FViewMode!=AMode )
00099 {
00100 FViewMode = AMode;
00101 putAllNeedToUpdate();
00102 }
00103 }
00104
00105 void CParameterSpamod::setNextViewMode()
00106 {
00107 if (FViewMode==SPAMOD_K2) FViewMode=SPAMOD_TOPOLOGICAL;
00108 else FViewMode = 1+(int)FViewMode;
00109 putAllNeedToUpdate();
00110 }
00111
00112 TSpamodViewMode CParameterSpamod::getViewMode() const
00113 {
00114 return FViewMode;
00115 }
00116
00117 bool CParameterSpamod::getEuclidianParam(int AIndex)
00118 {
00119 assert(0<=AIndex && AIndex<=1);
00120 return FEuclidianParam[AIndex];
00121 }
00122
00123 void CParameterSpamod::setEuclidianParam(int AIndex, bool AValue)
00124 {
00125 assert(0<=AIndex && AIndex<=1);
00126 FEuclidianParam[AIndex] = AValue;
00127 }
00128
00129 bool CParameterSpamod::getAnalyticParam(int AIndex)
00130 {
00131 assert(0<=AIndex && AIndex<=3);
00132 return FAnalyticParam[AIndex];
00133 }
00134
00135 void CParameterSpamod::setAnalyticParam(int AIndex, bool AValue)
00136 {
00137 assert(0<=AIndex && AIndex<=1);
00138 FAnalyticParam[AIndex] = AValue;
00139 }
00140
00141 bool CParameterSpamod::getVoxelParam(int AIndex)
00142 {
00143 assert(0<=AIndex && AIndex<=2);
00144 return FVoxelParam[AIndex];
00145 }
00146
00147 void CParameterSpamod::setVoxelParam(int AIndex, bool AValue)
00148 {
00149 assert(0<=AIndex && AIndex<=1);
00150 FVoxelParam[AIndex] = AValue;
00151 }
00152
00153 bool CParameterSpamod::getK2Param(int AIndex)
00154 {
00155 assert(0<=AIndex && AIndex<=2);
00156 return FK2Param[AIndex];
00157 }
00158
00159 void CParameterSpamod::setK2Param(int AIndex, bool AValue)
00160 {
00161 assert(0<=AIndex && AIndex<=1);
00162 FK2Param[AIndex] = AValue;
00163 }
00164
00165 #endif // MODULE_SPAMOD
00166