removed obsolete AliMUONAlignmentRecord classes (AliMillePedeRecord is now used,...
[u/mrichter/AliRoot.git] / MUON / AliMUONGeometryConstituent.h
CommitLineData
30178c30 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3
d1cd2474 4// $Id$
30178c30 5// Revision of includes 07/05/2004
d1cd2474 6//
692de412 7/// \ingroup geometry
8/// \class AliMUONGeometryConstituent
9/// \brief Helper class for definititon of an assembly of volumes.
10///
a9aad96e 11/// \author Ivana Hrivnacova, IPN Orsay
d1cd2474 12
13#ifndef ALI_MUON_GEOMETRY_CONSTITUENT_H
14#define ALI_MUON_GEOMETRY_CONSTITUENT_H
15
16#include <TNamed.h>
17
18class TGeoTranslation;
19class TGeoRotation;
20class TGeoCombiTrans;
21class TObjArray;
22
23class 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);
c5354052 35 AliMUONGeometryConstituent(const TString& name, Int_t copyNo,
36 const TGeoCombiTrans& transform,
37 Int_t npar, Double_t* param);
38 AliMUONGeometryConstituent();
d1cd2474 39 virtual ~AliMUONGeometryConstituent();
40
d1cd2474 41 // get methods
42 Int_t GetCopyNo() const;
43 Int_t GetNpar() const;
44 Double_t* GetParam() const;
45 const TGeoCombiTrans* GetTransformation() const;
46
30178c30 47 protected:
71a2d3aa 48 /// Not implemented
30178c30 49 AliMUONGeometryConstituent(const AliMUONGeometryConstituent& rhs);
71a2d3aa 50 /// Not implemented
30178c30 51 AliMUONGeometryConstituent& operator = (const AliMUONGeometryConstituent& rhs);
52
d1cd2474 53 private:
829425a5 54 Int_t fCopyNo; ///< copy number
55 Int_t fNpar; ///< number of shape parameters
56
57 /// shape parameters
d1cd2474 58 Double_t* fParam; //[fNpar] shape parameters
829425a5 59
60 TGeoCombiTrans* fTransformation;///< \brief the constituent transformation
61 /// wrt to the envelope
d1cd2474 62
63 ClassDef(AliMUONGeometryConstituent,1) // MUON chamber geometry base class
64};
65
66// inline functions
67
a9aad96e 68/// Return copy number
d1cd2474 69inline Int_t AliMUONGeometryConstituent::GetCopyNo() const
70{ return fCopyNo; }
71
a9aad96e 72/// Return number of shape parameters
d1cd2474 73inline Int_t AliMUONGeometryConstituent::GetNpar() const
74{ return fNpar; }
75
a9aad96e 76/// Return the array of shape parameters
d1cd2474 77inline Double_t* AliMUONGeometryConstituent::GetParam() const
78{ return fParam; }
79
a9aad96e 80/// Return the constituent transformation wrt to the envelope
d1cd2474 81inline const TGeoCombiTrans* AliMUONGeometryConstituent::GetTransformation() const
82{ return fTransformation; }
83
84#endif //ALI_MUON_GEOMETRY_CONSTITUENT_H