LCOV - code coverage report
Current view: top level - MUON/MUONmapping - AliMpMotifMap.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 1 100.0 %
Date: 2016-06-14 17:26:59 Functions: 2 5 40.0 %

          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: AliMpMotifMap.h,v 1.14 2006/05/24 13:58:18 ivana Exp $
       6             : 
       7             : /// \ingroup motif
       8             : /// \class AliMpMotifMap
       9             : /// \brief Motif map containers
      10             : ///
      11             : /// The class defines:
      12             : /// - map of motif objects to their string IDs
      13             : /// - map of motif type objects to their string IDs
      14             : /// - map of motif position objects to their string IDs
      15             : /// - map of motif position objects to their global indices
      16             : ///
      17             : /// \author David Guez, Ivana Hrivnacova; IPN Orsay
      18             : 
      19             : #ifndef ALI_MP_MOTIF_MAP_H
      20             : #define ALI_MP_MOTIF_MAP_H
      21             : 
      22             : #include <TObject.h>
      23             : 
      24             : #include "AliMpExMap.h"
      25             : 
      26             : class AliMpVMotif;
      27             : class AliMpMotifType;
      28             : class AliMpMotifPosition;
      29             : class AliMpMotifMap;
      30             : 
      31             : class TArrayI;
      32             : class TString;
      33             : 
      34             : class AliMpMotifMap : public TObject
      35             : {
      36             :   public:
      37             :     AliMpMotifMap();
      38             :     AliMpMotifMap(TRootIOCtor* ioCtor);
      39             :     virtual ~AliMpMotifMap();
      40             :     
      41             :     // methods
      42             :     Bool_t  AddMotif(AliMpVMotif* motif, Bool_t warn = true);
      43             :     Bool_t  AddMotifType(AliMpMotifType* motifType, Bool_t warn = true);
      44             :     Bool_t  AddMotifPosition(AliMpMotifPosition* motifType, Bool_t warn = true);
      45             :     void   FillMotifPositionMap2();
      46             :     virtual void Print(const char* option = "ALL") const;
      47             :     void   PrintGlobalIndices(const char* fileName) const;
      48             :     void   UpdateGlobalIndices(const char* fileName);
      49             :    
      50             :     // find methods
      51             :     AliMpVMotif*  FindMotif(const TString& motifID) const;
      52             :     AliMpVMotif*  FindMotif(const TString& motifID, const TString& motifTypeID, 
      53             :                             Double_t padDimensionX, Double_t padDimensionY) const;
      54             :     AliMpMotifType*      FindMotifType(const TString& motifTypeID) const;
      55             :     AliMpMotifPosition*  FindMotifPosition(Int_t motifPositionID) const;
      56             : 
      57             :     /// Find all motifPositionsIDs (=electronicCardNumbers) handled by this map
      58             :     void    GetAllMotifPositionsIDs(TArrayI& enc) const;
      59             :     UInt_t  GetNofMotifPositions() const;
      60             :     AliMpMotifPosition* GetMotifPosition(UInt_t index) const;
      61             : 
      62             :     /// Calculate total number of pads defined in the map
      63             :     Int_t CalculateNofPads() const;
      64             :      
      65             :   private:
      66             :     /// Not implemented
      67             :     AliMpMotifMap(const AliMpMotifMap& rhs);
      68             :     /// Not implemented
      69             :     AliMpMotifMap& operator=(const AliMpMotifMap& rhs);
      70             :   
      71             :     // methods
      72             :     void  PrintMotif(const AliMpVMotif* motif) const;
      73             :     void  PrintMotifType(const AliMpMotifType* motifType) const;
      74             :     void  PrintMotifPosition(const AliMpMotifPosition* motifPosition) const;
      75             :     void  PrintMotifPosition2(const AliMpMotifPosition* motifPosition) const;
      76             :     void  PrintMotifs() const;
      77             :     void  PrintMotifTypes() const;
      78             :     void  PrintMotifPositions() const;
      79             :     void  PrintMotifPositions2() const;
      80             :  
      81             :     // data members
      82             :     AliMpExMap   fMotifs;         ///< motifs map
      83             :     AliMpExMap   fMotifTypes;     ///< motifs types map
      84             :     AliMpExMap   fMotifPositions; ///< motifs positions map
      85             :     AliMpExMap   fMotifPositions2;///< motifs positions map
      86             : 
      87       28626 :   ClassDef(AliMpMotifMap,1)  // motif map
      88             : };
      89             : 
      90             : #endif //ALI_MP_MOTIF_MAP_H

Generated by: LCOV version 1.11