LCOV - code coverage report
Current view: top level - MUON/MUONmapping - AliMpUID.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 9 11.1 %
Date: 2016-06-14 17:26:59 Functions: 1 17 5.9 %

          Line data    Source code
       1             : #ifndef ALIMPUID_H
       2             : #define ALIMPUID_H
       3             : 
       4             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       5             : * See cxx source for full Copyright notice                               */
       6             : 
       7             : // $Id$
       8             : 
       9             : /// \ingroup management
      10             : /// \class AliMpUID
      11             : /// \brief Global (string-eable) ID of a tracker channel
      12             : /// 
      13             : //  Author Laurent Aphecetche, Subatech
      14             : 
      15             : #ifndef ROOT_TObject
      16             : #  include "TObject.h"
      17             : #endif
      18             : #ifndef ROOT_TString
      19             : #  include "TString.h"
      20             : #endif
      21             : #ifndef ALI_MP_CATHOD_TYPE_H
      22             : #  include "AliMpCathodType.h"
      23             : #endif
      24             : 
      25           0 : class AliMpUID : public TObject
      26             : {
      27             : public:
      28             :   AliMpUID();
      29             :   AliMpUID(AliMp::CathodType cathodeType, Int_t station, Int_t chamber=-1, Int_t de=-1, 
      30             :             Int_t bp=-1, Int_t manu=-1, Int_t pcb=-1);
      31             :   AliMpUID(AliMp::CathodType cathodeType, const AliMpUID& b);
      32             :   AliMpUID(AliMp::CathodType cathodeType, const char* pathname);
      33             :   AliMpUID(const char* pathname);
      34             :   
      35             :   /// dtor
      36           0 :   virtual ~AliMpUID() {}
      37             :   
      38             :   TString Name() const;
      39             :   TString PathName() const;
      40             :   TString BaseName() const;
      41             :   TString DirName() const;
      42             :   
      43             :   Bool_t IsStation() const;
      44             :   Bool_t IsChamber() const;
      45             :   Bool_t IsDetectionElement() const;
      46             :   Bool_t IsBusPatch() const;
      47             :   Bool_t IsManu() const;
      48             :   Bool_t IsPCB() const;
      49             :   Bool_t IsValid() const;
      50             :   
      51             :   AliMp::CathodType CathodeId() const;
      52             :   /// Return station Id
      53           0 :   Int_t StationId() const { return fStationId; }
      54             :   /// Return chamber Id
      55           0 :   Int_t ChamberId() const { return fChamberId; }
      56             :   /// Return detection element Id
      57           0 :   Int_t DetElemId() const { return fDetElemId; }
      58             :   /// Return bus patch Id
      59           0 :   Int_t BusPatchId() const { return fBusPatchId; }
      60             :   /// Return manu Id
      61           0 :   Int_t ManuId() const { return fManuId; }
      62             :   /// Return PCB Id
      63           0 :   Int_t PCBId() const { return fPCBId; }
      64             :   
      65             :   virtual void Print(Option_t* opt="") const;
      66             : 
      67             :   /// Return our type (e.g. PCB, Chamber, DE, MANU, etc...)
      68             :   TString Type() const;
      69             : 
      70             : private:
      71             :   
      72             :   Bool_t CheckTemplate(const char* name, const char* templateName, Int_t& value);
      73             :   TString StripCathode(const char* name) const;
      74             :   
      75             : private:
      76             :   Int_t fCathodeId; ///< Cathode number
      77             :   Int_t fStationId; ///< Station id
      78             :   Int_t fChamberId; ///< Chamber id
      79             :   Int_t fDetElemId; ///< Detection element id
      80             :   Int_t fBusPatchId;///< Bus patch id
      81             :   Int_t fManuId;    ///< Manu id
      82             :   Int_t fPCBId;     ///< PCB id
      83             :   
      84          18 :   ClassDef(AliMpUID,1) // UID of a tracker channel 
      85             : };
      86             : 
      87             : #endif

Generated by: LCOV version 1.11