LCOV - code coverage report
Current view: top level - MUON/MUONbase - AliMUONTriggerCircuit.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 3 33.3 %
Date: 2016-06-14 17:26:59 Functions: 1 7 14.3 %

          Line data    Source code
       1             : #ifndef ALIMUONTRIGGERCIRCUIT_H
       2             : #define ALIMUONTRIGGERCIRCUIT_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             : // Revision of includes 07/05/2004
       8             : //
       9             : /// \ingroup base
      10             : /// \class AliMUONTriggerCircuit
      11             : /// \brief MUON Trigger circuit
      12             : ///
      13             : //  Author Philippe Crochet (LPCCFd)
      14             : 
      15             : #include <TObject.h>
      16             : #include <TArrayF.h>
      17             : 
      18             : class AliMpLocalBoard;
      19             : class AliMUONGeometryTransformer;
      20             : class AliMpPad;
      21             : class AliMpVSegmentation;
      22             : 
      23             : class AliMUONTriggerCircuit : public TObject 
      24             : {
      25             : public: 
      26             :   AliMUONTriggerCircuit(const AliMUONGeometryTransformer* transformer);  
      27             :   virtual ~AliMUONTriggerCircuit();
      28             :      // copy constructor
      29             :   AliMUONTriggerCircuit(const AliMUONTriggerCircuit& AliMUONTriggerCircuit); 
      30             :   // assignment operator
      31             :   AliMUONTriggerCircuit& operator=(const AliMUONTriggerCircuit& AliMUONTriggerCircuit); 
      32             : 
      33             :   //--- methods which return member data related info
      34             :   Float_t GetX11Pos(Int_t localBoardId, Int_t istrip) const;
      35             :   Float_t GetY11Pos(Int_t localBoardId, Int_t istrip) const;
      36             :   Float_t GetY21Pos(Int_t localBoardId, Int_t istrip) const;
      37             :   Float_t GetZ11Pos(Int_t localBoardId, Int_t istrip) const;
      38             :   Float_t GetZ21Pos(Int_t localBoardId, Int_t istrip) const;
      39             :   Float_t GetX11Width(Int_t localBoardId, Int_t istrip) const;
      40             :   Float_t GetY11Width(Int_t localBoardId, Int_t istrip) const;
      41             :   Float_t GetY21Width(Int_t localBoardId, Int_t istrip) const;
      42             : 
      43             :   //  void Print(Option_t* opt="") const;
      44             :   //  void dump(const char* what, const Float_t* array, Int_t size);
      45             :   //  void dump(const char* what, const Int_t* array, Int_t size);
      46             :   
      47             :   /// Set pointer to transformations
      48           0 :   void  SetTransformer(const AliMUONGeometryTransformer* transformer) {fkTransformer = transformer;}
      49             :   /// Get pointer to transformations
      50           0 :   const AliMUONGeometryTransformer* GetTransformer() const {return fkTransformer;}
      51             :   Float_t PtCal(Int_t localBoardId, Int_t istripX, Int_t idev, Int_t istripY) const;
      52             :   
      53             : private:
      54             : 
      55             :   void LoadYPos(AliMpLocalBoard* const localBoard);
      56             :   void LoadXPos(AliMpLocalBoard* const localBoard);
      57             : 
      58             :   Int_t FirstStrip(AliMpLocalBoard* localBoard);
      59             : 
      60             :   void FillXstrips(const Int_t icol, 
      61             :                    const Int_t iFirstStrip, const Int_t iLastStrip,
      62             :                    Int_t liStripCircuit, const Bool_t is11);
      63             :   
      64             :   void FillYstrips(const Int_t iFirstStrip,
      65             :                    const Int_t iLastStrip, Int_t liStripCircuit,
      66             :                    const Bool_t doubling);
      67             : 
      68             :   void XYGlobal(const AliMpPad& pad,
      69             :                 Double_t* xyGlobal);    
      70             :   
      71             : 
      72             : private:    
      73             :   TArrayF fXpos11[235];         ///< X position of Y strips in MC11
      74             :   TArrayF fYpos11[235];         ///< Y position of X strips in MC11
      75             :   TArrayF fYpos21[235];         ///< Y position of X strips in MC21
      76             :   TArrayF fZpos11[235];         ///< Z position of X strips in MC11
      77             :   TArrayF fZpos21[235];         ///< Z position of X strips in MC21
      78             :   TArrayF fXwidth11[235];         ///< width of Y strips in MC11
      79             :   TArrayF fYwidth11[235];         ///< width of X strips in MC11
      80             :   TArrayF fYwidth21[235];         ///< width of X strips in MC21
      81             : 
      82             :   const AliMUONGeometryTransformer* fkTransformer; //!<! pointer to transformation
      83             :   const AliMpVSegmentation* fkCurrentSeg;          //!<! current segmentation
      84             : 
      85             :   Int_t fCurrentDetElem;                          //!<! current detection elt id
      86             :   Int_t fCurrentLocalBoard;                       //!<! current local board id
      87             : 
      88          18 :   ClassDef(AliMUONTriggerCircuit,2) // Trigger Circuit class
      89             : };
      90             : #endif

Generated by: LCOV version 1.11