CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
DTTMax::InfoLayer Struct Reference

#include <DTTMax.h>

Public Member Functions

 InfoLayer (const DTRecHit1D &rh_, const DTSuperLayer &isl, GlobalVector dir, GlobalPoint pos, const DTTTrigBaseSync &sync)
 

Public Attributes

DTWireId idWire
 
DTEnums::DTCellSide lr
 
DTRecHit1D rh
 
float time
 
float wireX
 

Detailed Description

Definition at line 64 of file DTTMax.h.

Constructor & Destructor Documentation

◆ InfoLayer()

DTTMax::InfoLayer::InfoLayer ( const DTRecHit1D rh_,
const DTSuperLayer isl,
GlobalVector  dir,
GlobalPoint  pos,
const DTTTrigBaseSync sync 
)

Definition at line 21 of file DTTMax.cc.

23  : rh(rh_), idWire(rh.wireId()), lr(rh.lrSide()) {
24  const DTLayer* layer = isl.layer(idWire.layerId());
25  LocalPoint wirePosInLayer(layer->specificTopology().wirePosition(idWire.wire()), 0, 0);
26  LocalPoint wirePosInSL = isl.toLocal(layer->toGlobal(wirePosInLayer));
27  wireX = wirePosInSL.x();
28 
29  //-- Correction for signal propagation along wire, t0 subtraction,
30  LocalVector segDir = layer->toLocal(dir);
31  LocalPoint segPos = layer->toLocal(pos);
32  LocalPoint segPosAtLayer = segPos + segDir * (-segPos.z()) / cos(segDir.theta());
33  LocalPoint hitPos(rh.localPosition().x(), segPosAtLayer.y(), 0.);
34  time = rh.digiTime() - sync.offset(layer, idWire, layer->toGlobal(hitPos));
35 
36  if (time < 0. || time > 415.) {
37  // FIXME introduce time window to reject "out-of-time" digis
38  cout << " *** WARNING time = " << time << endl;
39  }
40 }

References funct::cos(), gather_cfg::cout, DTRecHit1D::digiTime(), DeadROC_duringRun::dir, idWire, DTSuperLayer::layer(), DTWireId::layerId(), DTRecHit1D::localPosition(), DTTTrigBaseSync::offset(), rh, DTLayer::specificTopology(), PV3DBase< T, PVType, FrameType >::theta(), time, GeomDet::toGlobal(), GeomDet::toLocal(), DTWireId::wire(), DTTopology::wirePosition(), wireX, PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().

Member Data Documentation

◆ idWire

DTWireId DTTMax::InfoLayer::idWire

Definition at line 68 of file DTTMax.h.

Referenced by DTTMax::DTTMax(), and InfoLayer().

◆ lr

DTEnums::DTCellSide DTTMax::InfoLayer::lr

Definition at line 69 of file DTTMax.h.

◆ rh

DTRecHit1D DTTMax::InfoLayer::rh

Definition at line 67 of file DTTMax.h.

Referenced by InfoLayer().

◆ time

float DTTMax::InfoLayer::time

◆ wireX

float DTTMax::InfoLayer::wireX

Definition at line 70 of file DTTMax.h.

Referenced by DTTMax::DTTMax(), and InfoLayer().

Vector3DBase< float, LocalTag >
DTWireId::wire
int wire() const
Return the wire number.
Definition: DTWireId.h:42
PV3DBase::x
T x() const
Definition: PV3DBase.h:59
DTRecHit1D::lrSide
DTEnums::DTCellSide lrSide() const
The side of the cell.
Definition: DTRecHit1D.h:61
PV3DBase::theta
Geom::Theta< T > theta() const
Definition: PV3DBase.h:72
gather_cfg.cout
cout
Definition: gather_cfg.py:144
pos
Definition: PixelAliasList.h:18
DTTMax::InfoLayer::wireX
float wireX
Definition: DTTMax.h:70
DTTMax::InfoLayer::rh
DTRecHit1D rh
Definition: DTTMax.h:67
PV3DBase::z
T z() const
Definition: PV3DBase.h:61
DTTMax::InfoLayer::time
float time
Definition: DTTMax.h:71
DTTopology::wirePosition
float wirePosition(int wireNumber) const
Returns the x position in the layer of a given wire number.
Definition: DTTopology.cc:59
DTRecHit1D::wireId
DTWireId wireId() const
Return the wireId.
Definition: DTRecHit1D.h:76
funct::cos
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
Point3DBase< float, LocalTag >
GeomDet::toLocal
LocalPoint toLocal(const GlobalPoint &gp) const
Conversion to the R.F. of the GeomDet.
Definition: GeomDet.h:58
DTTMax::InfoLayer::lr
DTEnums::DTCellSide lr
Definition: DTTMax.h:69
DTRecHit1D::localPosition
LocalPoint localPosition() const override
Return the 3-dimensional local position.
Definition: DTRecHit1D.h:47
GeomDet::toGlobal
GlobalPoint toGlobal(const Local2DPoint &lp) const
Conversion to the global R.F. from the R.F. of the GeomDet.
Definition: GeomDet.h:49
PV3DBase::y
T y() const
Definition: PV3DBase.h:60
DTLayer
Definition: DTLayer.h:25
DTRecHit1D::digiTime
float digiTime() const
Return the time (ns) of the digi used to build the rechit.
Definition: DTRecHit1D.h:79
DTTTrigBaseSync::offset
double offset(const DTLayer *layer, const DTWireId &wireId, const GlobalPoint &globalPos) const
Definition: DTTTrigBaseSync.cc:13
DTTMax::InfoLayer::idWire
DTWireId idWire
Definition: DTTMax.h:68
DTSuperLayer::layer
const DTLayer * layer(const DTLayerId &id) const
Return the layer corresponding to the given id.
Definition: DTSuperLayer.cc:54
DTLayer::specificTopology
const DTTopology & specificTopology() const
Definition: DTLayer.cc:37
DTWireId::layerId
DTLayerId layerId() const
Return the corresponding LayerId.
Definition: DTWireId.h:45
DeadROC_duringRun.dir
dir
Definition: DeadROC_duringRun.py:23