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;
49 AliMUONGeometryConstituent(const AliMUONGeometryConstituent& rhs);
51 AliMUONGeometryConstituent& operator = (const AliMUONGeometryConstituent& rhs);
54 Int_t fCopyNo; ///< copy number
55 Int_t fNpar; ///< number of shape parameters
58 Double_t* fParam; //[fNpar] shape parameters
60 TGeoCombiTrans* fTransformation;///< \brief the constituent transformation
61 /// wrt to the envelope
63 ClassDef(AliMUONGeometryConstituent,1) // MUON chamber geometry base class
68 /// Return copy number
69 inline Int_t AliMUONGeometryConstituent::GetCopyNo() const
72 /// Return number of shape parameters
73 inline Int_t AliMUONGeometryConstituent::GetNpar() const
76 /// Return the array of shape parameters
77 inline Double_t* AliMUONGeometryConstituent::GetParam() const
80 /// Return the constituent transformation wrt to the envelope
81 inline const TGeoCombiTrans* AliMUONGeometryConstituent::GetTransformation() const
82 { return fTransformation; }
84 #endif //ALI_MUON_GEOMETRY_CONSTITUENT_H