LCOV - code coverage report
Current view: top level - PHOS/PHOSbase - AliPHOSSurvey.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 1 100.0 %
Date: 2016-06-14 17:26:59 Functions: 1 5 20.0 %

          Line data    Source code
       1             : #ifndef ALIPHOSSURVEY_H
       2             : #define ALIPHOSSURVEY_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             : /* History of cvs commits:
      10             :  *
      11             :  * $Log$
      12             :  * Revision 1.3  2007/07/10 12:41:38  kharlov
      13             :  * Added a new class AliPHOSSurvet1 which read survey data from EDMS files
      14             :  *
      15             :  * Revision 1.2  2007/05/17 17:13:32  kharlov
      16             :  * Coding convensions satisfied (T.Pocheptsov)
      17             :  *
      18             :  * Revision 1.1  2007/04/19 15:47:20  kharlov
      19             :  * Add misalignment of strip units with AliPHOSSurvey class
      20             :  *
      21             :  */
      22             : 
      23             : #include <TObject.h>
      24             : #include <Rtypes.h>
      25             : 
      26             : class TClonesArray;
      27             : class TString;
      28             : 
      29             : class AliPHOSGeometry;
      30             : 
      31             : /*
      32             :   Objects of this class read txt file with survey (photogrammetry) data
      33             :   and convert the data into AliAlignObjParams of alignable PHOS volumes.
      34             :   It can be used as a base class, you need to override GetStripTransformation.
      35             :   AliPHOSSurvey inherits TObject only to use AliLog "functions".
      36             : */
      37             : 
      38             : class AliPHOSSurvey : public TObject {
      39             : public:
      40             :   AliPHOSSurvey();
      41             :   AliPHOSSurvey(const TString &txtFileName);
      42             : 
      43             :   virtual ~AliPHOSSurvey();
      44             : 
      45             :   //Create AliAlignObjParams for strips.
      46             :   void CreateAliAlignObjParams(TClonesArray &array);
      47             :   //Create AliAlignObjParams with null shifts and rotations.
      48             :   void CreateNullObjects(TClonesArray &alObj, const AliPHOSGeometry *geom)const;
      49             : 
      50             : protected:
      51             : 
      52             :   struct AliPHOSStripDelta {
      53             :     Float_t fXShift; //x shift
      54             :     Float_t fYShift; //y shift
      55             :     Float_t fZShift; //z shift
      56             :     Float_t fPsi;    //psi
      57             :     Float_t fTheta;  //theta
      58             :     Float_t fPhi;    //phi
      59             :   };
      60             : 
      61             :   Int_t                    fStrNum; // Number of strips.
      62             :   AliPHOSStripDelta *fStripData; // Strip unit transformation data
      63             : 
      64             :   void InitStripData(const Double_t *xReal, const Double_t *zReal);
      65             : 
      66             : private:
      67             :   //Calculate shifts and rotations for strip number stripIndex in a module moduleIndex.
      68             :   virtual AliPHOSStripDelta GetStripTransformation(Int_t stripIndex, Int_t moduleIndex)const;
      69             : 
      70             :   AliPHOSSurvey(const AliPHOSSurvey &);
      71             :   AliPHOSSurvey &operator = (const AliPHOSSurvey &);
      72             : 
      73          22 :   ClassDef(AliPHOSSurvey, 1) //Survey data reader
      74             : };
      75             : 
      76             : #endif

Generated by: LCOV version 1.11