13 #define TRG_SHORT_NAMES
14 #define TRGCDC_SHORT_NAMES
17 #include "trg/cdc/Cell.h"
18 #include "trg/cdc/Layer.h"
41 TRGCDCLayer::TRGCDCLayer(
unsigned id,
42 unsigned superLayerId,
43 unsigned localLayerId,
44 unsigned axialStereoLayerId,
45 unsigned axialStereoSuperLayerId,
54 _superLayerId(superLayerId),
55 _localLayerId(localLayerId),
56 _axialStereoLayerId(axialStereoLayerId),
57 _axialStereoSuperLayerId(axialStereoSuperLayerId),
62 _innerRadius(innerRadius),
63 _outerRadius(outerRadius)
70 _superLayerId(w.superLayerId()),
72 _axialStereoLayerId(0),
73 _axialStereoSuperLayerId(0),
74 _offset(w.layer().offset()),
75 _nShifts(w.layer().nShifts()),
76 _cellSize(w.cellSize()),
77 _nCells(w.layer().nCells()),
91 cout <<
"layer " <<
_id;
95 if (
axial()) cout <<
", axial ";
96 else cout <<
", stereo ";
98 if (
axial()) cout <<
", axial super ";
99 else cout <<
", stereo super ";
101 cout <<
", " <<
_nCells <<
" wires";
110 cout <<
"TRGCDCLayer !!! This has no cell member : " <<
name() << endl;
121 return * (* this)[
id];
A class to represent a wire in CDC.
A class to represent a cell layer.
const unsigned _id
ID in whole CDC.
const unsigned _axialStereoLayerId
ID in whole CDC counting only axial or stereo.
const unsigned _nCells
# of cells
const unsigned _superLayerId
Super layer ID.
const unsigned _localLayerId
ID in a super layer.
const unsigned _axialStereoSuperLayerId
Super layer ID counting only axial or stereo.
virtual ~TRGCDCLayer()
Destructor.
void dump(const std::string &message=std::string(""), const std::string &prefix=std::string("")) const
dumps debug information.
TRGCDCLayer(unsigned id, unsigned superLayerId, unsigned localLayerId, unsigned axialStereoLayerId, unsigned axialStereoSuperLayerId, float offset, int nShifts, float cellSize, unsigned nCells, float innerRadius, float outerRadius)
Constructor.
unsigned id(void) const
returns id.
const TRGCDCLayer * TRGCDCUndefinedLayer
TRGCDCUndefinedLayer declaration.
const std::string & name(void) const
return name.
const std::string stereoType(void) const
returns "A" or "U" or "V" depending on stereo type.
const TRGCDCCell & cell(int id) const
returns a pointer to a cell. 'id' can be negative or 'id' can be greater than 'nCells()'.
bool axial(void) const
returns true if this is an axial layer.
Abstract base class for different kinds of events.