/data3/calcul/jacquem/working_dir/Micromegas/micromegasFrameWork/src/geometry/GassiplexChamber4.cpp

Go to the documentation of this file.
00001 /* @version $Revision: 1393 $ * @modifiedby $Author: jacquem $ * @lastmodified $Date: 2011-12-16 00:10:36 +0100 (Fri, 16 Dec 2011) $ */
00002 
00003 #include "geometry/GassiplexChamber4.hh"
00004 #include "geometry/GassiplexBoardBeta24.hh"
00005 
00006 #include "tools/Log.hh"
00007 #include <iostream>
00008 
00009 using namespace std;
00010 
00011 #define NBCHANNEL 384
00012 
00013 //--------------- Constructor -------------//
00014 //GassiplexChamber4::GassiplexChamber4(const i32 aX, const i32 aY, const i32 aZ, const i32 aId) : Chamber(aX, aY, aZ, aId)
00015 GassiplexChamber4::GassiplexChamber4(const float aX, const float aY, const float aZ, const bool   xRotation,const bool yRotation,const i16 zRotation, const ui32 nbColumns, const ui32 nbRows ,const i32 id)
00016 : Chamber(aX, aY , aZ ,  xRotation,yRotation,zRotation, nbColumns, nbRows , id )
00017 //
00018 {
00019   FILE_LOG(logDEBUG) << "---GassiplexChamber4 contructor id["<< id << "]" << endl;
00020   description = "GassiplexChamber4";
00021   type = GASSIPLEXCHAMBER4;
00022   myIsValid = true;
00023   init();
00024 }
00025 //--------------- Destructor -------------//
00026 
00027 GassiplexChamber4::~GassiplexChamber4()
00028 {
00029   //FILE_LOG(logDEBUG) << "---GassiplexChamber4 destructor"<< endl;
00030 }
00031 
00032 
00033 //------------
00034 //--------------------------//
00035 void GassiplexChamber4::init()
00036 {
00037   // the board ID is used to make the channel Id (see GassiplexChip.init())  PAD Side:w
00038                 
00039 
00040 
00041           //         0    1
00042           //      ---------------------|
00043           //    __|         |          |__
00044           // 1 [__|  1      |  2       |__] gassiplex
00045           //      |         |          |
00046           //      |---------------------
00047           //    __|         |          |__
00048           // 0 [__|  3      |  4       |__] gassiplex
00049           //      |         |          |
00050           //      |---------------------
00051 
00052   int boardId = 1;                                                                                                                                                                                      // aCol,  aRow,  nbColumns, nbRows
00053   boards.insert(make_pair(boardId, new GassiplexBoardBeta24(*this, 0, 1, 16, 6 , boardId)));
00054 
00055   boardId = 2;
00056   boards.insert(make_pair(boardId, new GassiplexBoardBeta24(*this, 1, 1, 16 , 6 , boardId)));
00057 
00058   boardId = 3;
00059   boards.insert(make_pair(boardId, new GassiplexBoardBeta24(*this, 0, 0, 16, 6 , boardId)));
00060 
00061   boardId = 4;
00062   boards.insert(make_pair(boardId, new GassiplexBoardBeta24(*this, 1, 0,16 ,6 , boardId)));
00063 }
00064 /*
00065 //-------------------------------------------//
00066   const ui32  GassiplexChamber4::getXLength() const
00067   {
00068       const Board&  board = *(boards.begin()->second);
00069         //              cout << "GassiplexChamber4 getXLenght[" <<  this->nbColumns * ( board.getXLength() + this->getXGap() ) << "]" << endl;
00070      return this->nbColumns * ( board.getXLength() + this->getXGap() );
00071 
00072   }
00073 //-------------------------------------------//
00074   const ui32  GassiplexChamber4::getYLength() const
00075   {
00076       const Board&  board = *(boards.begin()->second);
00077         //              cout << "GassiplexChamber4 getYLenght[" <<  this->nbRows * ( board.getYLength() + this->getYGap() ) << "]" << endl;
00078       return this->nbRows * ( board.getYLength() + this->getYGap() );
00079   }
00080 */

Generated on Mon Jan 7 13:15:22 2013 for MicromegasFramework by  doxygen 1.4.7