CMS 3D CMS Logo

PFBlockElementBrem.cc
Go to the documentation of this file.
6 
7 #include <iomanip>
8 
9 using namespace reco;
10 using namespace std;
11 
13  const double DeltaP,
14  const double SigmaDeltaP,
15  const unsigned int indTrajPoint)
16  : PFBlockElement(BREM),
17  GsftrackRefPF_(gsfref),
18  GsftrackRef_(gsfref->gsfTrackRef()),
19  deltaP_(DeltaP),
20  sigmadeltaP_(SigmaDeltaP),
21  indPoint_(indTrajPoint) {
22  const reco::PFTrajectoryPoint& atECAL =
23  ((*GsftrackRefPF()).PFRecBrem()[(indPoint_ - 2)]).extrapolatedPoint(reco::PFTrajectoryPoint::ECALEntrance);
24  if (atECAL.isValid())
25  positionAtECALEntrance_.SetCoordinates(atECAL.position().x(), atECAL.position().y(), atECAL.position().z());
26 }
27 
28 void PFBlockElementBrem::Dump(ostream& out, const char* tab) const {
29  if (!out)
30  return;
31 
32  if (!GsftrackRefPF_.isNull()) {
33  double charge = 0.;
34  double dp = deltaP_;
35  double sigmadp = sigmadeltaP_;
36  int indextrj = (indPoint_ - 2);
37  out << setprecision(0);
38  out << tab << setw(7) << "charge=" << setw(3) << charge;
39  out << setprecision(3);
40  out << setiosflags(ios::right);
41  out << setiosflags(ios::fixed);
42  out << ", DeltaP= " << dp;
43  out << ", SigmaDeltaP= " << sigmadp;
44  out << ", Traj Point= " << indextrj;
45  out << resetiosflags(ios::right | ios::fixed);
46  }
47 }
alignBH_cfg.fixed
fixed
Definition: alignBH_cfg.py:54
reco::PFBlockElementBrem::positionAtECALEntrance_
math::XYZPointF positionAtECALEntrance_
Definition: PFBlockElementBrem.h:53
reco::PFBlockElementBrem::GsftrackRefPF
const GsfPFRecTrackRef & GsftrackRefPF() const
Definition: PFBlockElementBrem.h:29
edm::Ref::isNull
bool isNull() const
Checks for null.
Definition: Ref.h:235
reco::PFBlockElementBrem::sigmadeltaP_
double sigmadeltaP_
Definition: PFBlockElementBrem.h:51
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
PFBlockElementBrem.h
reco::PFBlockElementBrem::PFBlockElementBrem
PFBlockElementBrem()
Definition: PFBlockElementBrem.h:19
edm::Ref< GsfPFRecTrackCollection >
Track.h
Calorimetry_cff.dp
dp
Definition: Calorimetry_cff.py:158
ALCARECOTkAlJpsiMuMu_cff.charge
charge
Definition: ALCARECOTkAlJpsiMuMu_cff.py:47
reco::PFBlockElementBrem::GsftrackRefPF_
GsfPFRecTrackRef GsftrackRefPF_
reference to the corresponding track (transient)
Definition: PFBlockElementBrem.h:45
reco::PFBlockElementBrem::indPoint_
unsigned int indPoint_
Definition: PFBlockElementBrem.h:52
reco::PFTrajectoryPoint::position
const math::XYZPoint & position() const
cartesian position (x, y, z)
Definition: PFTrajectoryPoint.h:100
reco::PFBlockElementBrem::deltaP_
double deltaP_
Definition: PFBlockElementBrem.h:50
PFRecTrack.h
reco::PFTrajectoryPoint::isValid
bool isValid() const
is this point valid ?
Definition: PFTrajectoryPoint.h:84
reco::PFBlockElement
Abstract base class for a PFBlock element (track, cluster...)
Definition: PFBlockElement.h:26
reco::PFTrajectoryPoint::ECALEntrance
ECAL front face.
Definition: PFTrajectoryPoint.h:43
std
Definition: JetResolutionObject.h:76
Ref.h
reco::PFTrajectoryPoint
A PFTrack holds several trajectory points, which basically contain the position and momentum of a tra...
Definition: PFTrajectoryPoint.h:26
reco::PFBlockElementBrem::Dump
void Dump(std::ostream &out=std::cout, const char *tab=" ") const override
print the object inside the element
Definition: PFBlockElementBrem.cc:28
MillePedeFileConverter_cfg.out
out
Definition: MillePedeFileConverter_cfg.py:31
PFTrajectoryPoint.h