]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONGeometryConstituent.h
ProcessRun() returns Bool_t and new pure virtual StopRun() added
[u/mrichter/AliRoot.git] / MUON / AliMUONGeometryConstituent.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2  * See cxx source for full Copyright notice                               */
3
4 // $Id$
5 // Revision of includes 07/05/2004
6 //
7 // Class AliMUONGeometryConstituent
8 // --------------------------------
9 // Helper class for definititon of an assembly of volumes.
10 //
11 // Author: Ivana Hrivnacova, IPN Orsay
12
13 #ifndef ALI_MUON_GEOMETRY_CONSTITUENT_H
14 #define ALI_MUON_GEOMETRY_CONSTITUENT_H
15
16 #include <TNamed.h>
17
18 class TGeoTranslation;
19 class TGeoRotation;
20 class TGeoCombiTrans;
21 class TObjArray;
22
23 class AliMUONGeometryConstituent : public TNamed
24 {
25   public:
26     AliMUONGeometryConstituent(const TString& name, Int_t copyNo, 
27                          Int_t npar, Double_t* param); 
28     AliMUONGeometryConstituent(const TString& name, Int_t copyNo, 
29                          const TGeoTranslation& translation,
30                          Int_t npar, Double_t* param); 
31     AliMUONGeometryConstituent(const TString& name, Int_t copyNo, 
32                          const TGeoTranslation& translation, 
33                          const TGeoRotation& rotation,
34                          Int_t npar, Double_t* param);
35     AliMUONGeometryConstituent();
36     virtual ~AliMUONGeometryConstituent();
37
38     // get methods
39     Int_t                  GetCopyNo() const;  
40     Int_t                  GetNpar() const;
41     Double_t*              GetParam() const;
42     const TGeoCombiTrans*  GetTransformation() const;
43
44   protected:
45     AliMUONGeometryConstituent(const AliMUONGeometryConstituent& rhs);
46
47     // operators  
48     AliMUONGeometryConstituent& operator = (const AliMUONGeometryConstituent& rhs);
49
50   private:
51     Int_t            fCopyNo;        // copy number
52     Int_t            fNpar;          // number of shape parameters
53     Double_t*        fParam;         //[fNpar] shape parameters
54     TGeoCombiTrans*  fTransformation;// the constituent transformation wrt to the
55                                      // envelope
56  
57   ClassDef(AliMUONGeometryConstituent,1) // MUON chamber geometry base class
58 };
59
60 // inline functions
61
62 inline Int_t AliMUONGeometryConstituent::GetCopyNo() const
63 { return fCopyNo; }  
64
65 inline Int_t AliMUONGeometryConstituent::GetNpar() const
66 { return fNpar; }
67
68 inline Double_t* AliMUONGeometryConstituent::GetParam() const
69 { return fParam; }
70
71 inline const TGeoCombiTrans* AliMUONGeometryConstituent::GetTransformation() const 
72 { return fTransformation; }
73
74 #endif //ALI_MUON_GEOMETRY_CONSTITUENT_H