1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
5 // Revision of includes 07/05/2004
8 /// \class AliMUONGeometryConstituent
9 /// \brief Helper class for definititon of an assembly of volumes.
11 /// \author Ivana Hrivnacova, IPN Orsay
13 #ifndef ALI_MUON_GEOMETRY_CONSTITUENT_H
14 #define ALI_MUON_GEOMETRY_CONSTITUENT_H
18 class TGeoTranslation;
23 class AliMUONGeometryConstituent : public TNamed
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(const TString& name, Int_t copyNo,
36 const TGeoCombiTrans& transform,
37 Int_t npar, Double_t* param);
38 AliMUONGeometryConstituent();
39 virtual ~AliMUONGeometryConstituent();
42 Int_t GetCopyNo() const;
43 Int_t GetNpar() const;
44 Double_t* GetParam() const;
45 const TGeoCombiTrans* GetTransformation() const;
48 AliMUONGeometryConstituent(const AliMUONGeometryConstituent& rhs);
49 AliMUONGeometryConstituent& operator = (const AliMUONGeometryConstituent& rhs);
52 Int_t fCopyNo; ///< copy number
53 Int_t fNpar; ///< number of shape parameters
56 Double_t* fParam; //[fNpar] shape parameters
58 TGeoCombiTrans* fTransformation;///< \brief the constituent transformation
59 /// wrt to the envelope
61 ClassDef(AliMUONGeometryConstituent,1) // MUON chamber geometry base class
66 /// Return copy number
67 inline Int_t AliMUONGeometryConstituent::GetCopyNo() const
70 /// Return number of shape parameters
71 inline Int_t AliMUONGeometryConstituent::GetNpar() const
74 /// Return the array of shape parameters
75 inline Double_t* AliMUONGeometryConstituent::GetParam() const
78 /// Return the constituent transformation wrt to the envelope
79 inline const TGeoCombiTrans* AliMUONGeometryConstituent::GetTransformation() const
80 { return fTransformation; }
82 #endif //ALI_MUON_GEOMETRY_CONSTITUENT_H