LCOV - code coverage report
Current view: top level - TPC/TPCcalib - AliTPCCalPadRegion.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 8 12.5 %
Date: 2016-06-14 17:26:59 Functions: 1 14 7.1 %

          Line data    Source code
       1             : #ifndef ALITPCCALPADREGION_H
       2             : #define ALITPCCALPADREGION_H
       3             : 
       4             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       5             :  * See cxx source for full Copyright notice                               */
       6             : 
       7             : #include <TNamed.h>
       8             : #include <TString.h>
       9             : #include <TObjArray.h>
      10             : #include <TIterator.h>
      11             : 
      12             : class AliTPCCalPadRegion: public TNamed {
      13             : public:
      14             :    AliTPCCalPadRegion();
      15             :    AliTPCCalPadRegion(const AliTPCCalPadRegion& obj);
      16             :    AliTPCCalPadRegion(const char *name, const char *title);
      17             :    //AliTPCCalPadRegion(const TString &name, const TString &title) : TNamed(name, title) { }
      18           0 :    virtual ~AliTPCCalPadRegion() { delete fObjects; }
      19             :    AliTPCCalPadRegion& operator=(const AliTPCCalPadRegion& rhs);
      20             :    
      21             :   virtual TObject*   GetObject(UInt_t segment, UInt_t padType);
      22             :   virtual void       SetObject(TObject* obj, UInt_t segment, UInt_t padType);
      23           0 :   virtual void       Delete(Option_t* option = "") { if (fObjects) fObjects->Delete(option); }
      24           0 :    virtual TIterator* MakeIterator(Bool_t direction = kIterForward) const { return fObjects->MakeIterator(direction); }
      25           0 :    static  UInt_t     GetNSegments() { return fgkNSegments; }
      26           0 :    static  UInt_t     GetNPadTypes() { return fgkNPadTypes; }
      27             :    static  void       GetPadRegionCenterLocal(UInt_t padType, Double_t* xy);
      28             : //   static  UInt_t     GetStartRow(UInt_t padType);
      29             : //   static  UInt_t     GetEndRow(UInt_t padType);
      30             :     
      31             : protected:
      32             :    virtual Bool_t BoundsOk(const char* where, UInt_t segment, UInt_t padType) const
      33           0 :       { return (segment >= fgkNSegments || padType >= fgkNPadTypes) ? OutOfBoundsError(where, segment, padType) : kTRUE; }
      34             :    virtual Bool_t OutOfBoundsError(const char* where, UInt_t segment, UInt_t padType) const
      35           0 :       { Error(where, "Index out of bounds (trying to access segment %d, pad type %d).", segment, padType); return kFALSE; }
      36             : 
      37             :    TObjArray* fObjects;     // array containing an object for each pad region
      38             : 
      39             :    static const UInt_t fgkNSegments = 36;    // number of TPC sectors, 0-17: A side, 18-35: C side (IROC and OROC are treated as one sector)
      40             :    static const UInt_t fgkNPadTypes = 3;     // number of pad types, 0: short pads, 1: medium pads, 2: long pads
      41             : 
      42           6 :    ClassDef(AliTPCCalPadRegion, 1)
      43             : };
      44             : 
      45             : 
      46             : #endif

Generated by: LCOV version 1.11