]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONSegFactoryV2.h
Updated comment line only (ingroup directive)
[u/mrichter/AliRoot.git] / MUON / AliMUONSegFactoryV2.h
CommitLineData
a4dc60c5 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3
4/* $Id$ */
5
6/// \ingroup sim
7/// \class AliMUONSegFactoryV2
8/// \brief Factory for muon segmentations
9///
10/// New class separated from AliMUONFactoryV2 in order to get
11/// building of segmentations independent from AliMUON and AliMUONChamber
12/// objects
13
14#ifndef ALI_MUON_SEG_FACTORY_V2_H
15#define ALI_MUON_SEG_FACTORY_V2_H
16
17#include <TNamed.h>
18
19class AliMUONSegmentation;
20class AliMUONGeometryTransformer;
21
22class AliMUONSegFactoryV2 : public TNamed {
23
24 public:
25 AliMUONSegFactoryV2(const char* name);
26 AliMUONSegFactoryV2();
27 virtual ~AliMUONSegFactoryV2();
28
29 // Build methods
30 void Build(const AliMUONGeometryTransformer* geometry);
31 void BuildStation(const AliMUONGeometryTransformer*, Int_t stationNumber);
32
33 // Access method
34 AliMUONSegmentation* GetSegmentation() const;
35
36 protected:
37 AliMUONSegFactoryV2(const AliMUONSegFactoryV2& rhs);
38 AliMUONSegFactoryV2& operator=(const AliMUONSegFactoryV2& rhs);
39
40 private:
41 Bool_t IsGeometryDefined(Int_t ichamber);
42
43 void BuildStation1();
44 void BuildStation2();
45 void BuildStation3();
46 void BuildStation4();
47 void BuildStation5();
48 void BuildStation6();
49
50 // data members
51 AliMUONSegmentation* fSegmentation; // Segmentation container
52 const AliMUONGeometryTransformer* fkGeomTransformer; // Geometry parametrisation
53
54 ClassDef(AliMUONSegFactoryV2,0) // MUON Factory for Chambers and Segmentation
55};
56
57// inline functions
58
59inline AliMUONSegmentation* AliMUONSegFactoryV2::GetSegmentation() const
60{ return fSegmentation; }
61
62
63#endif //ALI_MUON_SEG_FACTORY_V3_H
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78