LCOV - code coverage report
Current view: top level - ITSMFT/MFT/MFTrec - AliMFTCARoad.cxx (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 71 1.4 %
Date: 2016-06-14 17:26:59 Functions: 1 10 10.0 %

          Line data    Source code
       1             : 
       2             : #include "TClonesArray.h"
       3             : 
       4             : #include "AliMFTCARoad.h"
       5             : 
       6          12 : ClassImp(AliMFTCARoad)
       7             : 
       8             : //___________________________________________________________________________
       9             : AliMFTCARoad::AliMFTCARoad() :
      10           0 : TObject(),
      11           0 : fID(-1),
      12           0 : fNhits(0),
      13           0 : fNHitSta(0),
      14           0 : fLength(0),
      15           0 : fIsGood(kFALSE),
      16           0 : fNhitsInLayer(),
      17           0 : fLayer1(-1),
      18           0 : fLayer2(-1),
      19           0 : fNcellsInLayer()
      20           0 : {
      21             :   
      22           0 :   for (Int_t i = 0; i < fNDetMax; i++) {
      23           0 :     fHitsInLayer[i] = new TClonesArray("AliMFTCAHit",100);
      24           0 :     fNhitsInLayer[i] = 0;
      25           0 :     fCellsInLayer[i] = new TClonesArray("AliMFTCACell",10);
      26           0 :     fNcellsInLayer[i] = 0;
      27             :   }
      28             :   
      29           0 : }
      30             : 
      31             : //___________________________________________________________________________
      32             : AliMFTCARoad::AliMFTCARoad(const AliMFTCARoad &road) :
      33           0 : TObject(road),
      34           0 : fNhits(road.fNhits),
      35           0 : fNHitSta(road.fNHitSta),
      36           0 : fLength(road.fLength),
      37           0 : fIsGood(road.fIsGood),
      38           0 : fLayer1(road.fLayer1),
      39           0 : fLayer2(road.fLayer2)
      40           0 : {
      41             : 
      42             :   // copy constructor
      43             :   
      44           0 :   for (Int_t i = 0; i < fNDetMax; i++) {
      45           0 :     fHitsInLayer[i] = new TClonesArray("AliMFTCAHit",100);
      46           0 :     fNhitsInLayer[i] = 0;
      47           0 :     fCellsInLayer[i] = new TClonesArray("AliMFTCACell",10);
      48           0 :     fNcellsInLayer[i] = 0;
      49             :   }
      50             : 
      51           0 : }
      52             : 
      53             : //___________________________________________________________________________
      54             : AliMFTCARoad& AliMFTCARoad::operator=(const AliMFTCARoad& road) 
      55             : {
      56             : 
      57             :   // assignment operator
      58             : 
      59             :   // check assignement to self
      60           0 :   if (this == &road) return *this;
      61             : 
      62           0 :   TObject::operator=(road);
      63             : 
      64           0 :   fNhits = road.fNhits;
      65           0 :   fNHitSta = road.fNHitSta;
      66           0 :   fLength = road.fLength;
      67           0 :   fIsGood = road.fIsGood;
      68           0 :   fLayer1 = road.fLayer1;
      69           0 :   fLayer2 = road.fLayer2;
      70             : 
      71           0 :   for (Int_t i = 0; i < fNDetMax; i++) {
      72           0 :     fHitsInLayer[i] = new TClonesArray("AliMFTCAHit",100);
      73           0 :     fNhitsInLayer[i] = 0;
      74           0 :     fCellsInLayer[i] = new TClonesArray("AliMFTCACell",10);
      75           0 :     fNcellsInLayer[i] = 0;
      76             :   }
      77             : 
      78           0 : }
      79             : 
      80             : //___________________________________________________________________________
      81             : void AliMFTCARoad::Clear(const Option_t *)
      82             : {
      83             :   
      84           0 :   for (Int_t i = 0; i < fNDetMax; i++) {
      85           0 :     if (fHitsInLayer[i]) fHitsInLayer[i]->Clear("C");
      86           0 :     if (fCellsInLayer[i]) fCellsInLayer[i]->Clear("C");
      87           0 :     fNhitsInLayer[i] = 0;
      88           0 :     fNcellsInLayer[i] = 0;
      89             :   }
      90             :   
      91           0 :   fNhits   = 0;
      92           0 :   fNHitSta = 0;
      93           0 :   fLength  = 0;
      94           0 :   fIsGood  = kFALSE;
      95           0 :   fLayer1 = -1;
      96           0 :   fLayer2 = -1;
      97             :   
      98           0 : }
      99             : 
     100             : //___________________________________________________________________________
     101             : void AliMFTCARoad::AddHit(AliMFTCAHit *hit)
     102             : {
     103             :   
     104           0 :   fNhits++;
     105           0 :   Int_t layer = hit->GetLayer();
     106           0 :   new ((*fHitsInLayer[layer])[fNhitsInLayer[layer]++]) AliMFTCAHit(*hit);
     107             :   
     108           0 : }
     109             : 
     110             : //___________________________________________________________________________
     111             : void AliMFTCARoad::AddCell(AliMFTCACell *cell) {
     112             :   
     113           0 :   Int_t layer = cell->GetLayers()[0];
     114           0 :   new ((*fCellsInLayer[layer])[fNcellsInLayer[layer]++]) AliMFTCACell(*cell);
     115             :   
     116           0 : }
     117             : //___________________________________________________________________________
     118             : AliMFTCACell *AliMFTCARoad::GetCellByGID(Int_t gid) {
     119             :   
     120             :   AliMFTCACell *cell;
     121             :   
     122           0 :   for (Int_t iL = 0; iL < (fNDetMax-1); iL++) {
     123           0 :     for (Int_t iC = 0; iC < GetNcellsInLayer(iL); iC++) {
     124           0 :       cell = GetCellInLayer(iL,iC);
     125           0 :       if (gid == cell->GetGID()) return cell;
     126             :     }
     127             :   }
     128             :   
     129           0 :   return 0;
     130             :   
     131           0 : }

Generated by: LCOV version 1.11