LCOV - code coverage report
Current view: top level - TOF/TOFsim - AliTOF.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 3 14 21.4 %
Date: 2016-06-14 17:26:59 Functions: 4 18 22.2 %

          Line data    Source code
       1             : #ifndef ALITOF_H
       2             : #define ALITOF_H
       3             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       4             :  * See cxx source for full Copyright notice                               */
       5             : 
       6             : /* $Id$ */
       7             : 
       8             : ////////////////////////////////////////////////
       9             : //                                            //
      10             : //  Manager class for TOF                     //
      11             : //  Interface :                               //
      12             : //  AliTOF                                    //
      13             : //  Associations between TOF related objects  //
      14             : //  are defined here                          //
      15             : // -- Authors: Pierella, Seganti, Vicinanza   //
      16             : //    (Bologna and Salerno University)        //
      17             : //                                            //
      18             : ////////////////////////////////////////////////
      19             : 
      20             : #include "AliDetector.h"
      21             : 
      22             : #include "AliTOFTrigger.h"
      23             : #include "AliTOFDDLRawData.h"
      24             : 
      25             : class TDirectory;
      26             : class TFile;
      27             : class TFolder ;
      28             : class TString ;  
      29             : 
      30             : class AliTOFGeometry;
      31             : 
      32             : class AliTOF : public AliDetector {
      33             : public:
      34             :   AliTOF(); 
      35             :   AliTOF(const char *name, const char *title, Option_t *option="noTimeZero");
      36             : 
      37             :   virtual ~AliTOF() ;
      38             : // getters for AliTOF object status
      39             :   //Float_t GetTimeRes() const {return fTimeRes;};
      40             :   //Float_t GetChrgRes() const {return fChrgRes;};
      41             : 
      42             :   virtual void    SetTreeAddress();
      43             :   virtual void    AddHit(Int_t track, Int_t* vol, Float_t* hits);
      44             :   virtual void    AddT0Hit(Int_t track, Int_t* vol, Float_t* hits);
      45           0 :   virtual void    AddDigit(Int_t* /*tracks*/, Int_t* /*vol*/) {};
      46             :   virtual void    AddDigit(Int_t* tracks, Int_t* vol, Int_t* digits);
      47             :   virtual void    AddSDigit(Int_t tracknum, Int_t* vol, Int_t* digits);
      48             :   virtual void    CreateGeometry();
      49           0 :   virtual void    CreateMaterials(){};
      50             :   virtual void    Init();
      51             :   //virtual void    MakeBranch(Option_t* option, const char *file=0);
      52             :   virtual void    MakeBranch(Option_t *opt=" ");
      53             :   virtual void    Makehits(Bool_t hits=1);
      54             :   virtual void    FinishEvent();
      55             :   virtual Int_t   IsVersion() const =0;
      56             :   virtual void    StepManager()=0;
      57             :   virtual void    TOFpc(Float_t /*xtof*/, Float_t /*ytof*/, Float_t /*zlenC*/,
      58           0 :                         Float_t /*zlenB*/, Float_t /*zlenA*/, Float_t /*ztof0*/){};
      59             :   virtual void    TOFpc(Float_t /*xtof*/,  Float_t /*ytof*/, Float_t /*zlenA*/,
      60           0 :                         Float_t /*zlenB*/){};
      61           0 :   virtual void    TOFpc(Float_t /*xtof*/,  Float_t /*ytof*/, Float_t /*zlenA*/){};
      62             :           void    CreateTOFFolders();
      63             :   Bool_t    CheckOverlap(const Int_t * const vol, Int_t* digit, Int_t Track);
      64             :   //virtual void    Hits2Digits();   
      65             :   virtual void    Hits2SDigits();
      66             :   virtual void    Hits2SDigits(Int_t evNumber1, Int_t evNumber2);
      67             :   virtual AliDigitizer* CreateDigitizer(AliDigitizationInput* digInput) const; 
      68           0 :   virtual void    Digits2Reco () {};
      69             :           void    Digits2Raw  ();
      70           0 :           void    Raw2Digits  () {};
      71             :           void    Raw2Digits  (AliRawReader* rawReader);
      72             :           Bool_t  Raw2SDigits (AliRawReader* rawReader);
      73             :   virtual void    ResetHits   ();
      74             :   virtual void    ResetDigits ();
      75             :   virtual void    ResetSDigits();
      76          24 :   TClonesArray *SDigits() const {return fSDigits;}
      77           0 :   TClonesArray *ReconParticles() const {return fReconParticles;}
      78             :   void RecreateSDigitsArray();
      79             :   void CreateSDigitsArray();
      80             :   virtual void   SetTOFSectors(Int_t * const sectors);
      81             :   virtual void   GetTOFSectors(Int_t *sectors) const;
      82           0 :   virtual void   SetTOFHoles(Bool_t holes) { fTOFHoles = holes; };
      83           0 :   virtual Bool_t GetTOFHoles() const { return fTOFHoles; };
      84           0 :   AliTOFGeometry *GetGeometry() const { return fTOFGeometry; }; 
      85             : 
      86             :   // Trigger
      87             :   virtual AliTriggerDetector* CreateTriggerDetector() const
      88          12 :         {return new AliTOFTrigger();}
      89             : 
      90             : protected:
      91             :   TFolder* fFGeom ;       //  Folder that holds the Geometry definition
      92             :   TClonesArray* fSDigits; //! List of summable digits
      93             :   Int_t   fNSDigits;      //! Number of sdigits
      94             :   TClonesArray* fReconParticles; // List of reconstructed particles
      95             : 
      96             :   //Float_t fGapA;     //  Gap beetween tilted strip in A-type plate
      97             :   //Float_t fGapB;     //  Gap beetween tilted strip in B-type plate
      98             : 
      99             :   //Float_t fTimeRes;  //  Time resolution of the TOF
     100             :   //Float_t fChrgRes;  //  Charge resolution of ADC
     101             : 
     102             :   Int_t   fIdSens;     // The unique identifier for sensitive volume FPAD 
     103             : 
     104             :   Bool_t  fTZero;      // Flag indicating if T0 is used
     105             :   Int_t fTOFSectors[18]; // Selecting TOF Sectors to be simulated
     106             :   Bool_t fTOFHoles; // Selecting geometry with and w/o holes
     107             :   AliTOFGeometry *fTOFGeometry; //The TOF Geometry parameters
     108             : 
     109             :   AliTOFDDLRawData fTOFRawWriter; // AliTOFDDLRawData variable
     110             :  
     111             : private:
     112             :   AliTOF(const AliTOF &source); // copy constructor
     113             :   AliTOF& operator=(const AliTOF &source); // ass. op.
     114             : 
     115          34 :   ClassDef(AliTOF,12)  // Time Of Flight base class
     116             : };
     117             :  
     118             : #endif /* ALITOF_H */

Generated by: LCOV version 1.11