]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - MUON/AliMUONGeometryConstituent.h
Improved FILE_PATTERNS, EXCLUDE;
[u/mrichter/AliRoot.git] / MUON / AliMUONGeometryConstituent.h
... / ...
CommitLineData
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/// \ingroup geometry
8/// \class AliMUONGeometryConstituent
9/// \brief 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
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);
35 AliMUONGeometryConstituent(const TString& name, Int_t copyNo,
36 const TGeoCombiTrans& transform,
37 Int_t npar, Double_t* param);
38 AliMUONGeometryConstituent();
39 virtual ~AliMUONGeometryConstituent();
40
41 // get methods
42 Int_t GetCopyNo() const;
43 Int_t GetNpar() const;
44 Double_t* GetParam() const;
45 const TGeoCombiTrans* GetTransformation() const;
46
47 protected:
48 /// Not implemented
49 AliMUONGeometryConstituent(const AliMUONGeometryConstituent& rhs);
50 /// Not implemented
51 AliMUONGeometryConstituent& operator = (const AliMUONGeometryConstituent& rhs);
52
53 private:
54 Int_t fCopyNo; ///< copy number
55 Int_t fNpar; ///< number of shape parameters
56
57 /// shape parameters
58 Double_t* fParam; //[fNpar] shape parameters
59
60 TGeoCombiTrans* fTransformation;///< \brief the constituent transformation
61 /// wrt to the envelope
62
63 ClassDef(AliMUONGeometryConstituent,1) // MUON chamber geometry base class
64};
65
66// inline functions
67
68/// Return copy number
69inline Int_t AliMUONGeometryConstituent::GetCopyNo() const
70{ return fCopyNo; }
71
72/// Return number of shape parameters
73inline Int_t AliMUONGeometryConstituent::GetNpar() const
74{ return fNpar; }
75
76/// Return the array of shape parameters
77inline Double_t* AliMUONGeometryConstituent::GetParam() const
78{ return fParam; }
79
80/// Return the constituent transformation wrt to the envelope
81inline const TGeoCombiTrans* AliMUONGeometryConstituent::GetTransformation() const
82{ return fTransformation; }
83
84#endif //ALI_MUON_GEOMETRY_CONSTITUENT_H