GassiplexBoardStrip Class Reference

#include <GassiplexBoardStrip.hh>

Inheritance diagram for GassiplexBoardStrip:

Inheritance graph
[legend]
Collaboration diagram for GassiplexBoardStrip:

Collaboration graph
[legend]
List of all members.

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

Detailed Description

Definition at line 22 of file GassiplexBoardStrip.hh.


Constructor & Destructor Documentation

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]

Definition at line 167 of file GassiplexBoardStrip.cpp.

00168 {
00169   FILE_LOG(logDEBUG) << "GassiplexBoardStrip destructor" << endl;
00170 };


Member Function Documentation

const float GassiplexBoardStrip::getXGap (  )  const [inline, virtual]

Implements Board.

Definition at line 29 of file GassiplexBoardStrip.hh.

00029 { return(0); };// in centimeter 

const float GassiplexBoardStrip::getYGap (  )  const [inline, virtual]

Implements Board.

Definition at line 30 of file GassiplexBoardStrip.hh.

00030 { return(0); }; // in centimeter

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 }


Member Data Documentation

map< ui16, ui16 > GassiplexBoardStrip::m3 [static, private]

Definition at line 42 of file GassiplexBoardStrip.hh.

Referenced by init(), and initMap().


The documentation for this class was generated from the following files:
Generated on Mon Jan 7 13:18:24 2013 for MicromegasFramework by  doxygen 1.4.7