#include <GassiplexBoardStrip.hh>
Inheritance diagram for GassiplexBoardStrip:
Public Member Functions | |
GassiplexBoardStrip (const Chamber &aChamber, const i32 aCol, const i32 aRow, const ui32 nbColumns, const ui32 nbRows, const i32 aId) | |
virtual | ~GassiplexBoardStrip () |
const float | getXGap () const |
const float | getYGap () const |
Private Member Functions | |
void | init () |
Static Private Member Functions | |
static void | initMap () |
Static Private Attributes | |
static std::map< ui16, ui16 > | m3 |
Definition at line 22 of file GassiplexBoardStrip.hh.
GassiplexBoardStrip::GassiplexBoardStrip | ( | const Chamber & | aChamber, | |
const i32 | aCol, | |||
const i32 | aRow, | |||
const ui32 | nbColumns, | |||
const ui32 | nbRows, | |||
const i32 | aId | |||
) |
Definition at line 158 of file GassiplexBoardStrip.cpp.
00159 : Board(aChamber, aCol, aRow, nbColumns, nbRows, aId) 00160 { 00161 FILE_LOG(logDEBUG) << "GassiplexBoardStrip constructor" << endl; 00162 GassiplexBoardStrip::initMap(); 00163 init(); 00164 };
GassiplexBoardStrip::~GassiplexBoardStrip | ( | ) | [virtual] |
const float GassiplexBoardStrip::getXGap | ( | ) | const [inline, virtual] |
const float GassiplexBoardStrip::getYGap | ( | ) | const [inline, virtual] |
void GassiplexBoardStrip::init | ( | ) | [private] |
Definition at line 173 of file GassiplexBoardStrip.cpp.
Referenced by GassiplexBoardStrip().
00174 { 00175 int nbchannel = NBCHANNEL; 00176 00177 try 00178 { 00179 const GassiplexStripChamber1 &chamber = dynamic_cast< const GassiplexStripChamber1 &> (this->chamber); 00180 for (int index = 0; index < nbchannel; index++) 00181 { 00182 00183 unsigned int col = 0; unsigned int row = 0; 00184 unsigned int hardId = 0; unsigned stripNum = 0; 00185 00186 Chip *chip = NULL; 00187 if ( chamber.getHorizontal() == false ) 00188 { // Strip vertical 00189 stripNum = GassiplexBoardStrip::m3.find(index)->first; 00190 hardId = GassiplexBoardStrip::m3.find(index)->second; 00191 col = stripNum ; 00192 } 00193 else 00194 { // Strip horizontal 00195 stripNum = GassiplexBoardStrip::m3.find(index)->first; 00196 hardId = GassiplexBoardStrip::m3.find(index)->second; 00197 row = stripNum ; 00198 } 00199 chip = new GassiplexStripChip(*this, col, row, 1, 1 , hardId,0); 00200 chips.insert(make_pair(hardId, chip)); 00201 // cout << "chamber[" << this->getChamber().getId() << "], hardId["<< hardId << "] strip[" << stripNum << "]" << endl; 00202 00203 } 00204 } 00205 catch (...) {exit(-1);} 00206 00207 00208 }
void GassiplexBoardStrip::initMap | ( | ) | [static, private] |
Definition at line 20 of file GassiplexBoardStrip.cpp.
Referenced by GassiplexBoardStrip().
00021 { 00022 //map<ui16,ui16> mapping; // key is strip Number, value is hardId 00023 00024 /* 00025 m1[0]= 71; m1[1]= 70; m1[2]= 67; m1[3]= 66; m1[4]= 63; m1[5]= 62; m1[6]= 59; m1[7]= 58; m1[8]= 55; m1[9]= 54; 00026 m1[10]=51; m1[11]=50; m1[12]=47; m1[13]=46; m1[14]=43; m1[15]=42; m1[16]=39; m1[17]=38; m1[18]=35; m1[19]=34; 00027 m1[20]=31; m1[21]=30; m1[22]=27; m1[23]=26; m1[24]=23; m1[25]=22; m1[26]=19; m1[27]=18; m1[28]=15; m1[29]=14; 00028 m1[30]=11; m1[31]=10; m1[32]=7 ; m1[33]=6 ; m1[34]=3 ; m1[35]=2 ; m1[36]=1 ; m1[37]=0 ; m1[38]=5 ; m1[39]=4 ; 00029 m1[40]=9 ; m1[41]=8 ; m1[42]=13; m1[43]=12; m1[44]=17; m1[45]=16; m1[46]=21; m1[47]=20; m1[48]=25; m1[49]=24; 00030 m1[50]=29; m1[51]=28; m1[52]=33; m1[53]=32; m1[54]=37; m1[55]=36; m1[56]=41; m1[57]=40; m1[58]=45; m1[59]=44; 00031 m1[60]=49; m1[61]=48; m1[62]=53; m1[63]=52; m1[64]=57; m1[65]=56; m1[66]=61; m1[67]=60; m1[68]=65; m1[69]=64; 00032 m1[70]=69; m1[71]=68; m1[72]=72; m1[73]=73; m1[74]=74; m1[75]=75; m1[76]=76; m1[77]=77; m1[78]=78; m1[79]=79; 00033 m1[80]=80; m1[81]=81; m1[82]=82; m1[83]=83; m1[84]=84; m1[85]=85; m1[86]=86; m1[87]=87; m1[88]=88; m1[89]=89; 00034 m1[90]=90; m1[91]=91; m1[92]=92; m1[93]=93; m1[94]=94; m1[95]=95; m1[96]=96; 00035 00036 00037 m2[0] =80 ;m2[1] =79 ;m2[2] =81 ;m2[3] =78 ;m2[4] =82 ;m2[5] =77 ;m2[6] =83 ;m2[7] =76 ;m2[8] =84 ;m2[9] =75 ; 00038 m2[10]=85 ;m2[11]=74 ;m2[12]=86 ;m2[13]=73 ;m2[14]=87 ;m2[15]=72 ;m2[16]=88 ;m2[17]=71 ;m2[18]=89 ;m2[19]=70 ; 00039 m2[20]=90 ;m2[21]=69 ;m2[22]=91 ;m2[23]=68 ;m2[24]=92 ;m2[25]=67 ;m2[26]=93 ;m2[27]=66 ;m2[28]=94 ;m2[29]=65 ; 00040 m2[30]=95 ;m2[31]=64 ;m2[32]=48 ;m2[33]=47 ;m2[34]=49 ;m2[35]=46 ;m2[36]=50 ;m2[37]=45 ;m2[38]=51 ;m2[39]=44 ; 00041 m2[40]=52 ;m2[41]=43 ;m2[42]=53 ;m2[43]=42 ;m2[44]=54 ;m2[45]=41 ;m2[46]=55 ;m2[47]=40 ;m2[48]=56 ;m2[49]=39 ; 00042 m2[50]=57 ;m2[51]=38 ;m2[52]=58 ;m2[53]=37 ;m2[54]=59 ;m2[55]=36 ;m2[56]=60 ;m2[57]=35 ;m2[58]=61 ;m2[59]=34 ; 00043 m2[60]=62 ;m2[61]=33 ;m2[62]=63 ;m2[63]=32 ;m2[64]=16 ;m2[65]=15 ;m2[66]=17 ;m2[67]=14 ;m2[68]=18 ;m2[69]=13 ; 00044 m2[70]=19 ;m2[71]=12 ;m2[72]=20 ;m2[73]=11 ;m2[74]=21 ;m2[75]=10 ;m2[76]=22 ;m2[77]= 9 ;m2[78]=23 ;m2[79]=8 ; 00045 m2[80]=24 ;m2[81]=7 ;m2[82]=25 ;m2[83]=6 ;m2[84]=26 ;m2[85]=5 ;m2[86]=27 ;m2[87]=4 ;m2[88]=28 ;m2[89]=3 ; 00046 m2[90]=29 ;m2[91] =2 ;m2[92]=30 ;m2[93]= 1 ;m2[94]=31 ;m2[95]=0 ; 00047 00048 m3[0]=80;m3[1]=79;m3[2]=81;m3[3]=78;m3[4]=82;m3[5]=77;m3[6]=83;m3[7]=76;m3[8]=84;m3[9]=75; 00049 m3[10]=85;m3[11]=74;m3[12]=86;m3[13]=73;m3[14]=87;m3[15]=72;m3[16]=88;m3[17]=71;m3[18]=89;m3[19]=70; 00050 m3[20]=90;m3[21]=69;m3[22]=91;m3[23]=68;m3[24]=92;m3[25]=67;m3[26]=93;m3[27]=66;m3[28]=94;m3[29]=65; 00051 m3[30]=95;m3[31]=64;m3[32]=48;m3[33]=47;m3[34]=49;m3[35]=46;m3[36]=50;m3[37]=45;m3[38]=51;m3[39]=44; 00052 m3[40]=52;m3[41]=43;m3[42]=53;m3[43]=42;m3[44]=54;m3[45]=41;m3[46]=55;m3[47]=40;m3[48]=56;m3[49]=39; 00053 m3[50]=57;m3[51]=38;m3[52]=58;m3[53]=37;m3[54]=59;m3[55]=36;m3[56]=60;m3[57]=35;m3[58]=61;m3[59]=34; 00054 m3[60]=62;m3[61]=33;m3[62]=63;m3[63]=32;m3[64]=16;m3[65]=15;m3[66]=17;m3[67]=14;m3[68]=18;m3[69]=13; 00055 m3[70]=19;m3[71]=12;m3[72]=20;m3[73]=11;m3[74]=21;m3[75]=10;m3[76]=22;m3[77]=9;m3[78]=23;m3[79]=8; 00056 m3[80]=24;m3[81]=7;m3[82]=25;m3[83]=6;m3[84]=26;m3[85]=5;m3[86]=27;m3[87]=4;m3[88]=28;m3[89]=3; 00057 m3[90]=29;m3[91]=2;m3[92]=30;m3[93]=1;m3[94]=31;m3[95]=0; 00058 00059 */ 00060 GassiplexBoardStrip::m3[0]=80; 00061 GassiplexBoardStrip::m3[1]=79; 00062 GassiplexBoardStrip::m3[2]=81; 00063 GassiplexBoardStrip::m3[3]=78; 00064 GassiplexBoardStrip::m3[4]=82; 00065 GassiplexBoardStrip::m3[5]=77; 00066 GassiplexBoardStrip::m3[6]=83; 00067 GassiplexBoardStrip::m3[7]=76; 00068 GassiplexBoardStrip::m3[8]=84; 00069 GassiplexBoardStrip::m3[9]=75; 00070 GassiplexBoardStrip::m3[10]=85; 00071 GassiplexBoardStrip::m3[11]=74; 00072 GassiplexBoardStrip::m3[12]=86; 00073 GassiplexBoardStrip::m3[13]=73; 00074 GassiplexBoardStrip::m3[14]=87; 00075 GassiplexBoardStrip::m3[15]=72; 00076 GassiplexBoardStrip::m3[16]=88; 00077 GassiplexBoardStrip::m3[17]=71; 00078 GassiplexBoardStrip::m3[18]=89; 00079 GassiplexBoardStrip::m3[19]=70; 00080 GassiplexBoardStrip::m3[20]=90; 00081 GassiplexBoardStrip::m3[21]=69; 00082 GassiplexBoardStrip::m3[22]=91; 00083 GassiplexBoardStrip::m3[23]=68; 00084 GassiplexBoardStrip::m3[24]=92; 00085 GassiplexBoardStrip::m3[25]=67; 00086 GassiplexBoardStrip::m3[26]=93; 00087 GassiplexBoardStrip::m3[27]=66; 00088 GassiplexBoardStrip::m3[28]=94; 00089 GassiplexBoardStrip::m3[29]=65; 00090 GassiplexBoardStrip::m3[30]=95; 00091 GassiplexBoardStrip::m3[31]=64; 00092 GassiplexBoardStrip::m3[32]=48; 00093 GassiplexBoardStrip::m3[33]=47; 00094 GassiplexBoardStrip::m3[34]=49; 00095 GassiplexBoardStrip::m3[35]=46; 00096 GassiplexBoardStrip::m3[36]=50; 00097 GassiplexBoardStrip::m3[37]=45; 00098 GassiplexBoardStrip::m3[38]=51; 00099 GassiplexBoardStrip::m3[39]=44; 00100 GassiplexBoardStrip::m3[40]=52; 00101 GassiplexBoardStrip::m3[41]=43; 00102 GassiplexBoardStrip::m3[42]=53; 00103 GassiplexBoardStrip::m3[43]=42; 00104 GassiplexBoardStrip::m3[44]=54; 00105 GassiplexBoardStrip::m3[45]=41; 00106 GassiplexBoardStrip::m3[46]=55; 00107 GassiplexBoardStrip::m3[47]=40; 00108 GassiplexBoardStrip::m3[48]=56; 00109 GassiplexBoardStrip::m3[49]=39; 00110 GassiplexBoardStrip::m3[50]=57; 00111 GassiplexBoardStrip::m3[51]=38; 00112 GassiplexBoardStrip::m3[52]=58; 00113 GassiplexBoardStrip::m3[53]=37; 00114 GassiplexBoardStrip::m3[54]=59; 00115 GassiplexBoardStrip::m3[55]=36; 00116 GassiplexBoardStrip::m3[56]=60; 00117 GassiplexBoardStrip::m3[57]=35; 00118 GassiplexBoardStrip::m3[58]=61; 00119 GassiplexBoardStrip::m3[59]=34; 00120 GassiplexBoardStrip::m3[60]=62; 00121 GassiplexBoardStrip::m3[61]=33; 00122 GassiplexBoardStrip::m3[62]=63; 00123 GassiplexBoardStrip::m3[63]=32; 00124 GassiplexBoardStrip::m3[64]=16; 00125 GassiplexBoardStrip::m3[65]=15; 00126 GassiplexBoardStrip::m3[66]=17; 00127 GassiplexBoardStrip::m3[67]=14; 00128 GassiplexBoardStrip::m3[68]=18; 00129 GassiplexBoardStrip::m3[69]=13; 00130 GassiplexBoardStrip::m3[70]=19; 00131 GassiplexBoardStrip::m3[71]=12; 00132 GassiplexBoardStrip::m3[72]=20; 00133 GassiplexBoardStrip::m3[73]=11; 00134 GassiplexBoardStrip::m3[74]=21; 00135 GassiplexBoardStrip::m3[75]=10; 00136 GassiplexBoardStrip::m3[76]=22; 00137 GassiplexBoardStrip::m3[77]=9; 00138 GassiplexBoardStrip::m3[78]=23; 00139 GassiplexBoardStrip::m3[79]=8; 00140 GassiplexBoardStrip::m3[80]=24; 00141 GassiplexBoardStrip::m3[81]=7; 00142 GassiplexBoardStrip::m3[82]=25; 00143 GassiplexBoardStrip::m3[83]=6; 00144 GassiplexBoardStrip::m3[84]=26; 00145 GassiplexBoardStrip::m3[85]=5; 00146 GassiplexBoardStrip::m3[86]=27; 00147 GassiplexBoardStrip::m3[87]=4; 00148 GassiplexBoardStrip::m3[88]=28; 00149 GassiplexBoardStrip::m3[89]=3; 00150 GassiplexBoardStrip::m3[90]=29; 00151 GassiplexBoardStrip::m3[91]=2; 00152 GassiplexBoardStrip::m3[92]=30; 00153 GassiplexBoardStrip::m3[93]=1; 00154 GassiplexBoardStrip::m3[94]=31; 00155 GassiplexBoardStrip::m3[95]=0; 00156 }
map< ui16, ui16 > GassiplexBoardStrip::m3 [static, private] |