PandaRoot
Tkey Class Reference

#include <PndLmdDim.h>

Public Member Functions

bool operator< (const Tkey &comp) const
 
bool operator== (const Tkey &comp) const
 
 Tkey (const Tkey &copy)
 
 Tkey (int ihalf, int iplane, int imodule, int iside, int idie, int isensor)
 
 Tkey (string key)
 
 Tkey ()
 

Public Attributes

signed char half
 
signed char plane
 
signed char module
 
signed char side
 
signed char die
 
signed char sensor
 

Detailed Description

Definition at line 131 of file PndLmdDim.h.

Constructor & Destructor Documentation

◆ Tkey() [1/4]

Tkey::Tkey ( const Tkey copy)
inline

Definition at line 173 of file PndLmdDim.h.

References die, half, module, plane, sensor, and side.

174  {
175  half = copy.half;
176  plane = copy.plane;
177  module = copy.module;
178  side = copy.side;
179  die = copy.die;
180  sensor = copy.sensor;
181  }
signed char die
Definition: PndLmdDim.h:137
signed char sensor
Definition: PndLmdDim.h:138
signed char module
Definition: PndLmdDim.h:135
signed char plane
Definition: PndLmdDim.h:134
signed char side
Definition: PndLmdDim.h:136
signed char half
Definition: PndLmdDim.h:133

◆ Tkey() [2/4]

Tkey::Tkey ( int  ihalf,
int  iplane,
int  imodule,
int  iside,
int  idie,
int  isensor 
)
inline

Definition at line 183 of file PndLmdDim.h.

184  {
185  half = ihalf;
186  plane = iplane;
187  module = imodule;
188  side = iside;
189  die = idie;
190  sensor = isensor;
191  }
signed char die
Definition: PndLmdDim.h:137
signed char sensor
Definition: PndLmdDim.h:138
signed char module
Definition: PndLmdDim.h:135
signed char plane
Definition: PndLmdDim.h:134
signed char side
Definition: PndLmdDim.h:136
signed char half
Definition: PndLmdDim.h:133

◆ Tkey() [3/4]

Tkey::Tkey ( string  key)
inline

Definition at line 193 of file PndLmdDim.h.

References sign().

194  {
195  int sign(1);
196  int ikey(0); // 0,1,2,3,4,5 = ihalf, iplane, imodule, iside, idie, isensor
197  int number;
198  for (unsigned int ichar = 0; ichar < key.size(); ichar++) {
199  if (key[ichar] == '-') {
200  sign = -1;
201  }
202  if (isdigit(key[ichar])) {
203  number = (key[ichar] - '0') * sign;
204  sign = 1;
205  if (ikey == 0)
206  half = number;
207  if (ikey == 1)
208  plane = number;
209  if (ikey == 2)
210  module = number;
211  if (ikey == 3)
212  side = number;
213  if (ikey == 4)
214  die = number;
215  if (ikey == 5)
216  sensor = number;
217  ikey++;
218  }
219  }
220  if (ikey != 6)
221  cout << " Error in Generate_Tkey: key string " << key << " is not valid " << endl;
222  }
signed char die
Definition: PndLmdDim.h:137
signed char sensor
Definition: PndLmdDim.h:138
signed char module
Definition: PndLmdDim.h:135
int sign(T val)
Definition: PndCADef.h:49
signed char plane
Definition: PndLmdDim.h:134
signed char side
Definition: PndLmdDim.h:136
signed char half
Definition: PndLmdDim.h:133

◆ Tkey() [4/4]

Tkey::Tkey ( )
inline

Definition at line 223 of file PndLmdDim.h.

223 {}

Member Function Documentation

◆ operator<()

bool Tkey::operator< ( const Tkey comp) const
inline

Definition at line 139 of file PndLmdDim.h.

References die, half, module, plane, sensor, and side.

140  {
141  if (half < comp.half)
142  return true;
143  if (half > comp.half)
144  return false;
145  if (plane < comp.plane)
146  return true;
147  if (plane > comp.plane)
148  return false;
149  if (module < comp.module)
150  return true;
151  if (module > comp.module)
152  return false;
153  if (side < comp.side)
154  return true;
155  if (side > comp.side)
156  return false;
157  if (die < comp.die)
158  return true;
159  if (die > comp.die)
160  return false;
161  if (sensor < comp.sensor)
162  return true;
163  if (sensor >= comp.sensor)
164  return false;
165  return false;
166  }
signed char die
Definition: PndLmdDim.h:137
signed char sensor
Definition: PndLmdDim.h:138
signed char module
Definition: PndLmdDim.h:135
signed char plane
Definition: PndLmdDim.h:134
signed char side
Definition: PndLmdDim.h:136
signed char half
Definition: PndLmdDim.h:133

◆ operator==()

bool Tkey::operator== ( const Tkey comp) const
inline

Definition at line 168 of file PndLmdDim.h.

References die, half, module, plane, sensor, and side.

169  {
170  return (half == comp.half) && (plane == comp.plane) && (module == comp.module) && (side == comp.side) && (die == comp.die) && (sensor == comp.sensor);
171  }
signed char die
Definition: PndLmdDim.h:137
signed char sensor
Definition: PndLmdDim.h:138
signed char module
Definition: PndLmdDim.h:135
signed char plane
Definition: PndLmdDim.h:134
signed char side
Definition: PndLmdDim.h:136
signed char half
Definition: PndLmdDim.h:133

Member Data Documentation

◆ die

signed char Tkey::die

Definition at line 137 of file PndLmdDim.h.

Referenced by operator<(), operator==(), and Tkey().

◆ half

signed char Tkey::half

Definition at line 133 of file PndLmdDim.h.

Referenced by operator<(), operator==(), and Tkey().

◆ module

signed char Tkey::module

Definition at line 135 of file PndLmdDim.h.

Referenced by operator<(), operator==(), and Tkey().

◆ plane

signed char Tkey::plane

Definition at line 134 of file PndLmdDim.h.

Referenced by operator<(), operator==(), and Tkey().

◆ sensor

signed char Tkey::sensor

Definition at line 138 of file PndLmdDim.h.

Referenced by operator<(), operator==(), and Tkey().

◆ side

signed char Tkey::side

Definition at line 136 of file PndLmdDim.h.

Referenced by operator<(), operator==(), and Tkey().


The documentation for this class was generated from the following file: