]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/mapping/AliMpVPadRowSegment.cxx
Implemented write and read methods (with real mapping for tracker chamber) (Christian)
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpVPadRowSegment.cxx
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16 // $Id$
17 // $MpId: AliMpVPadRowSegment.cxx,v 1.5 2005/08/26 15:43:36 ivana Exp $
18 // Category: sector
19 //
20 // Class AliMpVPadRowSegment
21 // --------------------
22 // The abstract base class for a pad row segment composed of the 
23 // the identic pads.
24 // Included in AliRoot: 2003/05/02
25 // Authors: David Guez, Ivana Hrivnacova; IPN Orsay
26
27 #include <TError.h>
28
29 #include "AliMpVPadRowSegment.h"
30 #include "AliMpPadRow.h"
31 #include "AliMpMotif.h"
32 #include "AliMpMotifType.h"
33
34 ClassImp(AliMpVPadRowSegment)
35
36 //_____________________________________________________________________________
37 AliMpVPadRowSegment::AliMpVPadRowSegment(AliMpPadRow* padRow, AliMpMotif* motif, 
38                                        Int_t motifPositionId, Int_t nofPads)
39   : TObject(),
40     fNofPads(nofPads),
41     fOffsetX(0.),
42     fPadRow(padRow),
43     fMotif(motif),
44     fMotifPositionId(motifPositionId)
45 {
46 /// Standard contructor 
47 }
48
49 //_____________________________________________________________________________
50 AliMpVPadRowSegment::AliMpVPadRowSegment() 
51   : TObject(),
52     fNofPads(0),
53     fOffsetX(0.),
54     fPadRow(0),
55     fMotif(0),
56     fMotifPositionId(0)
57 {
58 /// Default contructor 
59 }
60
61 //_____________________________________________________________________________
62 AliMpVPadRowSegment::AliMpVPadRowSegment(const AliMpVPadRowSegment& right) 
63   : TObject(right) 
64 {
65 /// Protected copy constructor (not provided) 
66
67   Fatal("AliMpVPadRowSegment", "Copy constructor not provided.");
68 }
69
70 //_____________________________________________________________________________
71 AliMpVPadRowSegment::~AliMpVPadRowSegment() 
72 {
73 /// Destructor   
74 }
75
76 //
77 // operators
78 //
79
80 //_____________________________________________________________________________
81 AliMpVPadRowSegment& 
82 AliMpVPadRowSegment::operator=(const AliMpVPadRowSegment& right)
83 {
84 /// Protected assignment operator (not provided)
85
86   // check assignment to self
87   if (this == &right) return *this;
88
89   Fatal("operator =", "Assignment operator not provided.");
90     
91   return *this;  
92 }    
93
94 //
95 // public methods  
96 //
97
98 //_____________________________________________________________________________
99 Double_t  AliMpVPadRowSegment::HalfSizeY() const
100 {
101 /// Return the size in y of this row segment.
102
103   return fMotif->GetPadDimensions().Y();
104 }
105
106 //_____________________________________________________________________________
107 AliMpPadRow*  AliMpVPadRowSegment::GetPadRow() const
108 {
109 /// Return the pad row.which this pad row segment belongs to.
110
111   return fPadRow;
112 }  
113
114 //_____________________________________________________________________________
115 AliMpMotif*  AliMpVPadRowSegment::GetMotif() const
116 {
117 /// Return the motif of this pad row segment. 
118
119   return fMotif;
120 }  
121
122 //_____________________________________________________________________________
123 Int_t  AliMpVPadRowSegment::GetMotifPositionId() const
124 {
125 /// Return the motif of this pad row segment. 
126
127   return fMotifPositionId;
128 }  
129
130 //_____________________________________________________________________________
131 void  AliMpVPadRowSegment::SetOffsetX(Double_t offsetX)
132 {
133 /// Set the x offset.
134
135   fOffsetX = offsetX;
136 }    
137