X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=MUON%2FAliMUONChamberTrigger.cxx;h=06f25189270a8744a5fb19eb22c7d12f857b5d23;hb=96e9d606f432a305491695c2a1f6ab2fd6f10342;hp=23208628c9718ef9095c1a100a546b1bd2f07fe6;hpb=139856523defd6c842e24ef6640d45886e722bef;p=u%2Fmrichter%2FAliRoot.git diff --git a/MUON/AliMUONChamberTrigger.cxx b/MUON/AliMUONChamberTrigger.cxx index 23208628c97..06f25189270 100644 --- a/MUON/AliMUONChamberTrigger.cxx +++ b/MUON/AliMUONChamberTrigger.cxx @@ -15,22 +15,23 @@ /* $Id$ */ +#include + #include "AliMUONChamberTrigger.h" #include "AliMUONResponseTrigger.h" #include "AliMUONHit.h" #include "AliMUON.h" -#include "AliMUONSegmentation.h" -#include "AliMUONGeometrySegmentation.h" #include "AliMUONGeometryTransformer.h" #include "AliLog.h" -/// +//----------------------------------------------------------------------------- /// \class AliMUONChamberTrigger /// /// Implementation of AliMUONChamber for the trigger /// -/// This class is to be deprecated. +/// \deprecated This class is to be deprecated. /// +//----------------------------------------------------------------------------- /// \cond CLASSIMP ClassImp(AliMUONChamberTrigger) @@ -42,17 +43,14 @@ AliMUONChamberTrigger::AliMUONChamberTrigger() : AliMUONChamber(), fkGeomTransformer(0) { -// Default constructor +/// Default constructor } //------------------------------------------- -AliMUONChamberTrigger::AliMUONChamberTrigger(const AliMUONChamberTrigger& right) - : AliMUONChamber(right) -{ -/// Protected copy constructor (not implemented) - - AliFatal("Copy constructor not provided."); +AliMUONChamberTrigger:: ~AliMUONChamberTrigger() +{ +/// Destructor } //------------------------------------------- @@ -62,121 +60,7 @@ AliMUONChamberTrigger::AliMUONChamberTrigger(Int_t id, : AliMUONChamber(id), fkGeomTransformer(kGeometryTransformer) { -// Constructor using chamber id -} - -//------------------------------------------- -AliMUONChamberTrigger& -AliMUONChamberTrigger::operator=(const AliMUONChamberTrigger& right) -{ -/// Protected assignement operator (not implemented) - - // check assignement to self - if (this == &right) return *this; - - AliFatal("Assignement operator not provided."); - - return *this; -} - -//------------------------------------------- -void AliMUONChamberTrigger::DisIntegration(AliMUONHit* hit, - Int_t& nnew, - Float_t newclust[6][500]) -{ -// -// Generates pad hits (simulated cluster) -// using the segmentation and the response model - - - Float_t tof = hit->Age(); - Float_t xhit = hit->X(); - Float_t yhit = hit->Y(); - Float_t zhit = hit->Z(); - Int_t id = hit->DetElemId(); - - Int_t twentyNano; - if (tof<75*TMath::Power(10,-9)) { - twentyNano=1; - } else { - twentyNano=100; - } - - Float_t qp; - nnew=0; - for (Int_t i = 1; i <= 2; i++) { - - AliMUONGeometrySegmentation* segmentation= - fMUON->GetSegmentation()->GetModuleSegmentation(fId, i-1); - - -// Find the module & strip Id. which has fired - Int_t ix(-1); - Int_t iy(-1); - segmentation->GetPadI(id,xhit,yhit,0,ix,iy); -// treatment of GEANT hits w/o corresponding strip (due to the fact that -// geometry & segmentation are computed in a very slightly different way) - if ( ix<0 || iy<0 ) - { - Float_t lx,ly,lz; - fkGeomTransformer->Global2Local(id,xhit,yhit,0,lx,ly,lz); - AliWarning(Form("AliMUONChamberTrigger hit w/o strip %i-%d %e %e " - "local %e %e %e ix,iy=%d,%d\n",id,i-1,xhit,yhit,lx,ly,lz,ix,iy)); - } else - { - segmentation->SetPad(id,ix,iy); - if (xhit<0) ix = -ix; - // printf(" fId id fnsec xhit yhit zhit ix iy %i %i %i %f %f %f %i %i \n",fId,i,id,xhit,yhit,zhit,ix,iy); - // if (ix < 0 || ix > 10000) return; - // if (iy < 0 || iy > 10000) return; - - // --- store signal information for this strip - newclust[0][nnew]=1.; // total charge - newclust[1][nnew]=ix; // ix-position of pad - newclust[2][nnew]=iy; // iy-position of pad - newclust[3][nnew]=twentyNano; // time of flight - newclust[4][nnew]=segmentation->ISector(); // sector id - newclust[5][nnew]=(Float_t) i; // counter - nnew++; - - // cluster-size if AliMUONResponseTriggerV1, nothing if AliMUONResponseTrigger - if (((AliMUONResponseTrigger*) fResponse)->SetGenerCluster()) { - - // set hits - segmentation->SetHit(id,xhit,yhit,zhit); - // get the list of nearest neighbours - Int_t nList, xList[10], yList[10]; - segmentation->Neighbours(id,ix,iy,&nList,xList,yList); - - qp = 0; - for (Int_t j=0; jGetPadC(id,xList[j],yList[j],x,y,z); - // set pad (fx fy & fix fiy are the current pad coord. & Id.) - segmentation->SetPad(id,xList[j],yList[j]); - // get the chamber (i.e. current strip) response - qp=fResponse->IntXY(id,segmentation); - - if (qp > 0.5) { - // --- store signal information for neighbours - newclust[0][nnew]=qp; // total charge - newclust[1][nnew]=segmentation->Ix(); // ix-pos. of pad - newclust[2][nnew]=segmentation->Iy(); // iy-pos. of pad - newclust[3][nnew]=twentyNano; // time of flight - newclust[4][nnew]=segmentation->ISector(); // sector id - newclust[5][nnew]=(Float_t) i; // counter - nnew++; - } // qp > 0.5 - } // built-up cluster-size - } // existing neighbour - } // loop over neighbours - } // endif hit w/o strip - } // loop over planes - } // if AliMUONResponseTriggerV1 +/// Constructor using chamber id }