1. Added functions for writing detection element transformations and sensitive volume...
[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//
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
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();
d1cd2474 36 virtual ~AliMUONGeometryConstituent();
37
d1cd2474 38 // get methods
39 Int_t GetCopyNo() const;
40 Int_t GetNpar() const;
41 Double_t* GetParam() const;
42 const TGeoCombiTrans* GetTransformation() const;
43
30178c30 44 protected:
45 AliMUONGeometryConstituent(const AliMUONGeometryConstituent& rhs);
46
47 // operators
48 AliMUONGeometryConstituent& operator = (const AliMUONGeometryConstituent& rhs);
49
d1cd2474 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
62inline Int_t AliMUONGeometryConstituent::GetCopyNo() const
63{ return fCopyNo; }
64
65inline Int_t AliMUONGeometryConstituent::GetNpar() const
66{ return fNpar; }
67
68inline Double_t* AliMUONGeometryConstituent::GetParam() const
69{ return fParam; }
70
71inline const TGeoCombiTrans* AliMUONGeometryConstituent::GetTransformation() const
72{ return fTransformation; }
73
74#endif //ALI_MUON_GEOMETRY_CONSTITUENT_H