Line data Source code
1 : #ifndef AliMFTHalfDiskSegmentation_H
2 : #define AliMFTHalfDiskSegmentation_H
3 :
4 : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 : * See cxx source for full Copyright notice */
6 :
7 : // $Id$
8 :
9 : /// \ingroup MFTbase
10 : /// \class AliMFTHalfDiskSegmentation
11 : /// \brief Class for the description of the structure a Half-Disk
12 : ///
13 : /// \author Raphael Tieulent <raphael.tieulent@cern.ch>
14 : /// \date June 9th, 2015
15 :
16 : #include "TXMLEngine.h"
17 :
18 : #include "AliMFTLadderSegmentation.h"
19 : #include "AliMFTVSegmentation.h"
20 :
21 : class TClonesArray;
22 :
23 : //====================================================================================================================================================
24 :
25 0 : class AliMFTHalfDiskSegmentation : public AliMFTVSegmentation {
26 :
27 : public:
28 :
29 : AliMFTHalfDiskSegmentation();
30 : AliMFTHalfDiskSegmentation(UInt_t uniqueID);
31 : AliMFTHalfDiskSegmentation(const AliMFTHalfDiskSegmentation& pt);
32 :
33 : virtual ~AliMFTHalfDiskSegmentation();
34 :
35 : virtual void Clear(const Option_t* /*opt*/);
36 :
37 : virtual void Print(Option_t* opt="");
38 :
39 : void CreateLadders(TXMLEngine* xml, XMLNodePointer_t node);
40 :
41 : /// \brief Get the number of Ladder on the Half-Disk really constructed
42 0 : Int_t GetNLaddersBuild() const {return fLadders->GetEntriesFast();};
43 :
44 : /// \brief Get the number of Ladder on the Half-Disk
45 0 : Int_t GetNLadders() const {return fNLadders;};
46 :
47 : /// \brief Set the number of Ladder on the Half-Disk
48 0 : void SetNLadders(Int_t val) {fNLadders = val;};
49 :
50 :
51 : /// \brief Returns pointer to the ladder segmentation object
52 : /// \param iLadder Int_t : ladder number on the Half-Disk
53 0 : AliMFTLadderSegmentation* GetLadder(Int_t iLadder) { return ( (iLadder>=0 && iLadder<GetNLadders()) ? (AliMFTLadderSegmentation*) fLadders->At(iLadder) : NULL ) ; }
54 :
55 : /// \brief Returns the Z position of the half-disk
56 0 : Double_t GetZ() const {const Double_t *pos = GetTransformation()->GetTranslation(); return pos[2];};
57 :
58 : Int_t GetNChips();
59 :
60 : private:
61 :
62 : Int_t fNLadders; ///< \brief Number of ladder holded by the half-disk
63 :
64 : TClonesArray *fLadders; ///< \brief Array of pointer to AliMFTLadderSegmentation
65 :
66 : /// \cond CLASSIMP
67 14 : ClassDef(AliMFTHalfDiskSegmentation, 1);
68 : /// \endcond
69 :
70 : };
71 :
72 : //====================================================================================================================================================
73 :
74 : #endif
75 :
|