LCOV - code coverage report
Current view: top level - MUON/MUONmapping - AliMpVMotif.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 3 3 100.0 %
Date: 2016-06-14 17:26:59 Functions: 3 7 42.9 %

          Line data    Source code
       1             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       2             :  * See cxx source for full Copyright notice                               */
       3             : 
       4             : // $Id$
       5             : // $MpId: AliMpVMotif.h,v 1.8 2006/05/24 13:58:18 ivana Exp $
       6             : 
       7             : /// \ingroup motif
       8             : /// \class AliMpVMotif
       9             : /// \brief Abstract base class for a motif with its unique ID and the motif type.
      10             : ///
      11             : /// \author David Guez, Ivana Hrivnacova; IPN Orsay
      12             : 
      13             : #ifndef ALI_MP_V_MOTIF_H
      14             : #define ALI_MP_V_MOTIF_H
      15             : 
      16             : #include "AliMpEncodePair.h"
      17             : 
      18             : #include <TObject.h>
      19             : #include <TString.h>
      20             : 
      21             : class AliMpMotifType;
      22             : class AliMpConnection;
      23             : 
      24             : class AliMpVMotif : public TObject
      25             : {
      26             :  public:
      27             :   AliMpVMotif(const TString &id, AliMpMotifType *motifType);
      28             :   AliMpVMotif();
      29             :   virtual ~AliMpVMotif();
      30             : 
      31             :   // Access methods
      32             :   AliMpMotifType  *GetMotifType() const;
      33             :   TString          GetID() const;
      34             : 
      35             :                    /// Return the number of pad dimensions
      36             :   virtual Int_t    GetNofPadDimensions() const=0;
      37             :                    /// Return the i-th pad x dimension
      38             :   virtual Double_t GetPadDimensionX(Int_t i) const=0;
      39             :                    /// Return the i-th pad y dimension
      40             :   virtual Double_t GetPadDimensionY(Int_t i) const=0;
      41             : 
      42             :                    /// Return the dimensions of the pad specified by localIndices
      43             :   virtual void GetPadDimensionsByIndices(MpPair_t localIndices,
      44             :                    Double_t& dx, Double_t& dy) const=0;
      45             :                    /// Return the dimensions of the pad specified by localIndices
      46             :   virtual void GetPadDimensionsByIndices(Int_t ixLocal, Int_t iyLocal,
      47             :                    Double_t& dx, Double_t& dy) const=0;
      48             : 
      49             :   // Geometry
      50             :                    /// Return x dimensions
      51             :   virtual Double_t DimensionX() const=0;
      52             :                    /// Return y dimensions
      53             :   virtual Double_t DimensionY() const=0;
      54             : 
      55             :   // Other methods
      56             :                    /// Fill local position of the pad specified by local indices
      57             :   virtual void PadPositionLocal(MpPair_t localIndices,
      58             :                       Double_t& posx, Double_t& posy  ) const=0;
      59             :                    /// Fill local position of the pad specified by local indices
      60             :   virtual void PadPositionLocal(Int_t ixLocal, Int_t iyLocal,
      61             :                       Double_t& posx, Double_t& posy  ) const=0;
      62             : 
      63             :   AliMpConnection *FindConnectionByLocalPos(
      64             :                       Double_t localPosX, Double_t localPosY) const;
      65             : 
      66             :                    /// Return local indices of the pad specified by local position
      67             :   virtual MpPair_t PadIndicesLocal(Double_t localPosX, Double_t localPosY) const=0;
      68             : 
      69             :   virtual void Print(Option_t *option) const;
      70             : 
      71             :  private:
      72             :   /// Not implemented
      73             :   AliMpVMotif(const AliMpVMotif& right);
      74             :   /// Not implemented
      75             :   AliMpVMotif&  operator = (const AliMpVMotif& right);
      76             : 
      77             :   // data members 
      78             :   TString         fID;        ///< identifier
      79             :   AliMpMotifType *fMotifType; ///< the motif type
      80             : 
      81          18 :   ClassDef(AliMpVMotif,1) // A motif with its ID
      82             : };
      83             : 
      84             : // inline functions
      85             : 
      86             : /// Return the motif type
      87    48406242 : inline  AliMpMotifType* AliMpVMotif::GetMotifType() const {return fMotifType;}
      88             : 
      89             : /// Return the motif identifier
      90        3336 : inline  TString  AliMpVMotif::GetID() const {return fID;}
      91             : 
      92             : #endif //ALI_MP_V_MOTIF_H

Generated by: LCOV version 1.11