6 printProvenanceInfo(
false), nRawGenPart(0),
7 G4VtxSrc_(iPSet.getParameter<edm::InputTag>(
"G4VtxSrc")),
8 G4TrkSrc_(iPSet.getParameter<edm::InputTag>(
"G4TrkSrc")),
9 config_(iPSet),
count(0)
18 m_Prov.getUntrackedParameter<
bool>(
"GetAllProvenances");
20 m_Prov.getUntrackedParameter<
bool>(
"PrintProvenanceInfo");
42 produces<PTrackerSimHit>(
label);
47 <<
"\n===============================\n"
48 <<
"Initialized as EDProducer with parameter values:\n"
49 <<
" Name =" <<
fName <<
"\n"
50 <<
" Verbosity =" << verbosity <<
"\n"
51 <<
" Label =" << label <<
"\n"
52 <<
" GetProv =" << getAllProvenances <<
"\n"
53 <<
" PrintProv =" << printProvenanceInfo <<
"\n"
54 <<
" PxlBrlLowSrc = " << PxlBrlLowSrc_.label()
55 <<
":" << PxlBrlLowSrc_.instance() <<
"\n"
56 <<
" PxlBrlHighSrc = " << PxlBrlHighSrc_.
label()
57 <<
":" << PxlBrlHighSrc_.
instance() <<
"\n"
58 <<
" PxlFwdLowSrc = " << PxlFwdLowSrc_.
label()
59 <<
":" << PxlBrlLowSrc_.instance() <<
"\n"
60 <<
" PxlFwdHighSrc = " << PxlFwdHighSrc_.
label()
61 <<
":" << PxlBrlHighSrc_.
instance() <<
"\n"
62 <<
" SiTIBLowSrc = " << SiTIBLowSrc_.
label()
63 <<
":" << SiTIBLowSrc_.
instance() <<
"\n"
64 <<
" SiTIBHighSrc = " << SiTIBHighSrc_.
label()
65 <<
":" << SiTIBHighSrc_.
instance() <<
"\n"
66 <<
" SiTOBLowSrc = " << SiTOBLowSrc_.
label()
67 <<
":" << SiTOBLowSrc_.
instance() <<
"\n"
68 <<
" SiTOBHighSrc = " << SiTOBHighSrc_.
label()
69 <<
":" << SiTOBHighSrc_.
instance() <<
"\n"
70 <<
" SiTIDLowSrc = " << SiTIDLowSrc_.
label()
71 <<
":" << SiTIDLowSrc_.
instance() <<
"\n"
72 <<
" SiTIDHighSrc = " << SiTIDHighSrc_.
label()
73 <<
":" << SiTIDHighSrc_.
instance() <<
"\n"
74 <<
" SiTECLowSrc = " << SiTECLowSrc_.
label()
75 <<
":" << SiTECLowSrc_.
instance() <<
"\n"
76 <<
" SiTECHighSrc = " << SiTECHighSrc_.
label()
77 <<
":" << SiTECHighSrc_.
instance() <<
"\n"
78 <<
"===============================\n"; }
89 <<
"Starting the job...";
98 <<
"Terminating having processed" <<
count <<
"events.";
109 int nrun = iEvent.
id().
run();
118 <<
"Processing run" << nrun <<
"," <<
"event " <<
nevt;
127 std::vector<const edm::Provenance*> AllProv;
132 <<
"Number of Provenances =" << AllProv.size();
135 TString eventout(
"\nProvenance info:\n");
137 for (
unsigned int i = 0;
i < AllProv.size(); ++
i) {
138 eventout +=
"\n ******************************";
139 eventout +=
"\n Module : ";
140 eventout += AllProv[
i]->moduleLabel();
141 eventout +=
"\n ProductID process index: ";
142 eventout += AllProv[
i]->productID().processIndex();
143 eventout +=
"\n ProductID product index: ";
144 eventout += AllProv[
i]->productID().productIndex();
145 eventout +=
"\n ClassName : ";
146 eventout += AllProv[
i]->className();
147 eventout +=
"\n InstanceName : ";
148 eventout += AllProv[
i]->productInstanceName();
149 eventout +=
"\n BranchName : ";
150 eventout += AllProv[
i]->branchName();
152 eventout +=
" ******************************\n";
153 edm::LogInfo(
"TrackerHitProducer::produce") << eventout;
165 <<
"Done gathering data from event.";
172 <<
"Saving event contents:";
192 eventout =
"\nGathering info:";
200 iEvent.
getByLabel(HepMClabel, HepMCinstance ,HepMCEvt);
203 <<
"Unable to find HepMCProduct in event!";
206 const HepMC::GenEvent* MCEvt = HepMCEvt->GetEvent();
210 eventout +=
"\n Number of Raw Particles collected: ";
219 if (!G4VtxContainer.
isValid()) {
221 <<
"Unable to find SimVertex in event!";
225 edm::SimVertexContainer::const_iterator itVtx;
226 for (itVtx = G4VtxContainer->begin(); itVtx != G4VtxContainer->end();
231 const CLHEP::HepLorentzVector& G4Vtx = CLHEP::HepLorentzVector(itVtx->position().x(),
232 itVtx->position().y(),
233 itVtx->position().z(),
234 itVtx->position().e());
235 G4VtxX.push_back(G4Vtx[0]/micrometer);
236 G4VtxY.push_back(G4Vtx[1]/micrometer);
237 G4VtxZ.push_back(G4Vtx[2]/millimeter);
241 eventout +=
"\n Number of G4Vertices collected: ";
250 if (!G4TrkContainer.
isValid()) {
252 <<
"Unable to find SimTrack in event!";
256 edm::SimTrackContainer::const_iterator itTrk;
257 for (itTrk = G4TrkContainer->begin(); itTrk != G4TrkContainer->end();
262 double etaInit =0, phiInit =0, pInit =0;
263 const CLHEP::HepLorentzVector& G4Trk = CLHEP::HepLorentzVector(itTrk->momentum().x(),
264 itTrk->momentum().y(),
265 itTrk->momentum().z(),
266 itTrk->momentum().e());
267 pInit =
sqrt(G4Trk[0]*G4Trk[0]+G4Trk[1]*G4Trk[1]+G4Trk[2]*G4Trk[2]);
270 <<
"TrackerTest::INFO: Primary has p = 0 ";
272 double costheta = G4Trk[2]/pInit;
274 etaInit = -
log(
tan(theta/2));
276 if ( G4Trk[0] != 0 || G4Trk[1] != 0)
277 phiInit = atan2(G4Trk[1],G4Trk[0]);
279 G4TrkPt.push_back(
sqrt(G4Trk[0]*G4Trk[0]+G4Trk[1]*G4Trk[1]));
280 G4TrkE.push_back(G4Trk[3]);
286 eventout +=
"\n Number of G4Tracks collected: ";
291 edm::LogInfo(
"TrackerHitProducer::fillG4MC") << eventout;
300 TString eventout(
"\nnRawGenPart = ");
302 eventout +=
"\n nG4Vtx = ";
303 eventout +=
G4VtxX.size();
304 for (
unsigned int i = 0;
i <
G4VtxX.size(); ++
i) {
305 eventout +=
"\n (x,y,z) = (";
313 eventout +=
"\n nG4Trk = ";
315 for (
unsigned int i = 0;
i <
G4TrkPt.size(); ++
i) {
316 eventout +=
"\n (pt,e,eta,phi) = (";
326 edm::LogInfo(
"TrackerHitProducer::storeG4MC") << eventout;
342 eventout =
"\nGathering info:";
345 edm::PSimHitContainer::const_iterator itHit;
356 if (!PxlBrlLowContainer.
isValid()) {
358 <<
"Unable to find TrackerHitsPixelBarrelLowTof in event!";
368 for (itHit = PxlBrlLowContainer->begin(); itHit != PxlBrlLowContainer->end(); ++itHit) {
374 HitsDuID.push_back(itHit->detUnitId());
375 HitsTkID.push_back(itHit->trackId());
376 HitsProT.push_back(itHit->processType());
377 HitsParT.push_back(itHit->particleType());
378 HitsP.push_back(itHit->pabs());
380 HitsLpX.push_back(itHit->localPosition().x());
381 HitsLpY.push_back(itHit->localPosition().y());
382 HitsLpZ.push_back(itHit->localPosition().z());
384 HitsLdX.push_back(itHit->localDirection().x());
385 HitsLdY.push_back(itHit->localDirection().y());
386 HitsLdZ.push_back(itHit->localDirection().z());
387 HitsLdTheta.push_back(itHit->localDirection().theta());
388 HitsLdPhi.push_back(itHit->localDirection().phi());
390 HitsExPx.push_back(itHit->exitPoint().x());
391 HitsExPy.push_back(itHit->exitPoint().y());
392 HitsExPz.push_back(itHit->exitPoint().z());
394 HitsEnPx.push_back(itHit->entryPoint().x());
395 HitsEnPy.push_back(itHit->entryPoint().y());
396 HitsEnPz.push_back(itHit->entryPoint().z());
398 HitsEloss.push_back(itHit->energyLoss());
399 HitsToF.push_back(itHit->tof());
404 eventout +=
"\n Number of Pixel Barrel Low TOF Hits collected: ";
414 if (!PxlBrlHighContainer.
isValid()) {
416 <<
"Unable to find TrackerHitsPixelBarrelHighTof in event!";
423 for (itHit = PxlBrlHighContainer->begin(); itHit != PxlBrlHighContainer->end(); ++itHit) {
428 HitsDuID.push_back(itHit->detUnitId());
429 HitsTkID.push_back(itHit->trackId());
430 HitsProT.push_back(itHit->processType());
431 HitsParT.push_back(itHit->particleType());
432 HitsP.push_back(itHit->pabs());
434 HitsLpX.push_back(itHit->localPosition().x());
435 HitsLpY.push_back(itHit->localPosition().y());
436 HitsLpZ.push_back(itHit->localPosition().z());
438 HitsLdX.push_back(itHit->localDirection().x());
439 HitsLdY.push_back(itHit->localDirection().y());
440 HitsLdZ.push_back(itHit->localDirection().z());
441 HitsLdTheta.push_back(itHit->localDirection().theta());
442 HitsLdPhi.push_back(itHit->localDirection().phi());
444 HitsExPx.push_back(itHit->exitPoint().x());
445 HitsExPy.push_back(itHit->exitPoint().y());
446 HitsExPz.push_back(itHit->exitPoint().z());
448 HitsEnPx.push_back(itHit->entryPoint().x());
449 HitsEnPy.push_back(itHit->entryPoint().y());
450 HitsEnPz.push_back(itHit->entryPoint().z());
452 HitsEloss.push_back(itHit->energyLoss());
453 HitsToF.push_back(itHit->tof());
458 eventout +=
"\n Number of Pixel Barrel High TOF Hits collected: ";
470 if (!PxlFwdLowContainer.
isValid()) {
472 <<
"Unable to find TrackerHitsPixelEndcapLowTof in event!";
478 for (itHit = PxlFwdLowContainer->begin(); itHit != PxlFwdLowContainer->end(); ++itHit) {
483 HitsDuID.push_back(itHit->detUnitId());
484 HitsTkID.push_back(itHit->trackId());
485 HitsProT.push_back(itHit->processType());
486 HitsParT.push_back(itHit->particleType());
487 HitsP.push_back(itHit->pabs());
489 HitsLpX.push_back(itHit->localPosition().x());
490 HitsLpY.push_back(itHit->localPosition().y());
491 HitsLpZ.push_back(itHit->localPosition().z());
493 HitsLdX.push_back(itHit->localDirection().x());
494 HitsLdY.push_back(itHit->localDirection().y());
495 HitsLdZ.push_back(itHit->localDirection().z());
496 HitsLdTheta.push_back(itHit->localDirection().theta());
497 HitsLdPhi.push_back(itHit->localDirection().phi());
499 HitsExPx.push_back(itHit->exitPoint().x());
500 HitsExPy.push_back(itHit->exitPoint().y());
501 HitsExPz.push_back(itHit->exitPoint().z());
503 HitsEnPx.push_back(itHit->entryPoint().x());
504 HitsEnPy.push_back(itHit->entryPoint().y());
505 HitsEnPz.push_back(itHit->entryPoint().z());
507 HitsEloss.push_back(itHit->energyLoss());
508 HitsToF.push_back(itHit->tof());
513 eventout +=
"\n Number of Pixel Forward Low TOF Hits collected: ";
522 if (!PxlFwdHighContainer.
isValid()) {
524 <<
"Unable to find TrackerHitsPixelEndcapHighTof in event!";
530 for (itHit = PxlFwdHighContainer->begin(); itHit != PxlFwdHighContainer->end(); ++itHit) {
535 HitsDuID.push_back(itHit->detUnitId());
536 HitsTkID.push_back(itHit->trackId());
537 HitsProT.push_back(itHit->processType());
538 HitsParT.push_back(itHit->particleType());
539 HitsP.push_back(itHit->pabs());
541 HitsLpX.push_back(itHit->localPosition().x());
542 HitsLpY.push_back(itHit->localPosition().y());
543 HitsLpZ.push_back(itHit->localPosition().z());
545 HitsLdX.push_back(itHit->localDirection().x());
546 HitsLdY.push_back(itHit->localDirection().y());
547 HitsLdZ.push_back(itHit->localDirection().z());
548 HitsLdTheta.push_back(itHit->localDirection().theta());
549 HitsLdPhi.push_back(itHit->localDirection().phi());
551 HitsExPx.push_back(itHit->exitPoint().x());
552 HitsExPy.push_back(itHit->exitPoint().y());
553 HitsExPz.push_back(itHit->exitPoint().z());
555 HitsEnPx.push_back(itHit->entryPoint().x());
556 HitsEnPy.push_back(itHit->entryPoint().y());
557 HitsEnPz.push_back(itHit->entryPoint().z());
559 HitsEloss.push_back(itHit->energyLoss());
560 HitsToF.push_back(itHit->tof());
565 eventout +=
"\n Number of Pixel Forward High TOF Hits collected: ";
577 if (!SiTIBLowContainer.
isValid()) {
579 <<
"Unable to find TrackerHitsTIBLowTof in event!";
585 for (itHit = SiTIBLowContainer->begin(); itHit != SiTIBLowContainer->end(); ++itHit) {
590 HitsDuID.push_back(itHit->detUnitId());
591 HitsTkID.push_back(itHit->trackId());
592 HitsProT.push_back(itHit->processType());
593 HitsParT.push_back(itHit->particleType());
594 HitsP.push_back(itHit->pabs());
596 HitsLpX.push_back(itHit->localPosition().x());
597 HitsLpY.push_back(itHit->localPosition().y());
598 HitsLpZ.push_back(itHit->localPosition().z());
600 HitsLdX.push_back(itHit->localDirection().x());
601 HitsLdY.push_back(itHit->localDirection().y());
602 HitsLdZ.push_back(itHit->localDirection().z());
603 HitsLdTheta.push_back(itHit->localDirection().theta());
604 HitsLdPhi.push_back(itHit->localDirection().phi());
606 HitsExPx.push_back(itHit->exitPoint().x());
607 HitsExPy.push_back(itHit->exitPoint().y());
608 HitsExPz.push_back(itHit->exitPoint().z());
610 HitsEnPx.push_back(itHit->entryPoint().x());
611 HitsEnPy.push_back(itHit->entryPoint().y());
612 HitsEnPz.push_back(itHit->entryPoint().z());
614 HitsEloss.push_back(itHit->energyLoss());
615 HitsToF.push_back(itHit->tof());
620 eventout +=
"\n Number of TIB low TOF Hits collected: ";
629 if (!SiTIBHighContainer.
isValid()) {
631 <<
"Unable to find TrackerHitsTIBHighTof in event!";
637 for (itHit = SiTIBHighContainer->begin(); itHit != SiTIBHighContainer->end(); ++itHit) {
642 HitsDuID.push_back(itHit->detUnitId());
643 HitsTkID.push_back(itHit->trackId());
644 HitsProT.push_back(itHit->processType());
645 HitsParT.push_back(itHit->particleType());
646 HitsP.push_back(itHit->pabs());
648 HitsLpX.push_back(itHit->localPosition().x());
649 HitsLpY.push_back(itHit->localPosition().y());
650 HitsLpZ.push_back(itHit->localPosition().z());
652 HitsLdX.push_back(itHit->localDirection().x());
653 HitsLdY.push_back(itHit->localDirection().y());
654 HitsLdZ.push_back(itHit->localDirection().z());
655 HitsLdTheta.push_back(itHit->localDirection().theta());
656 HitsLdPhi.push_back(itHit->localDirection().phi());
658 HitsExPx.push_back(itHit->exitPoint().x());
659 HitsExPy.push_back(itHit->exitPoint().y());
660 HitsExPz.push_back(itHit->exitPoint().z());
662 HitsEnPx.push_back(itHit->entryPoint().x());
663 HitsEnPy.push_back(itHit->entryPoint().y());
664 HitsEnPz.push_back(itHit->entryPoint().z());
666 HitsEloss.push_back(itHit->energyLoss());
667 HitsToF.push_back(itHit->tof());
672 eventout +=
"\n Number of TIB high TOF Hits collected: ";
683 if (!SiTOBLowContainer.
isValid()) {
685 <<
"Unable to find TrackerHitsTOBLowTof in event!";
691 for (itHit = SiTOBLowContainer->begin(); itHit != SiTOBLowContainer->end(); ++itHit) {
696 HitsDuID.push_back(itHit->detUnitId());
697 HitsTkID.push_back(itHit->trackId());
698 HitsProT.push_back(itHit->processType());
699 HitsParT.push_back(itHit->particleType());
700 HitsP.push_back(itHit->pabs());
702 HitsLpX.push_back(itHit->localPosition().x());
703 HitsLpY.push_back(itHit->localPosition().y());
704 HitsLpZ.push_back(itHit->localPosition().z());
706 HitsLdX.push_back(itHit->localDirection().x());
707 HitsLdY.push_back(itHit->localDirection().y());
708 HitsLdZ.push_back(itHit->localDirection().z());
709 HitsLdTheta.push_back(itHit->localDirection().theta());
710 HitsLdPhi.push_back(itHit->localDirection().phi());
712 HitsExPx.push_back(itHit->exitPoint().x());
713 HitsExPy.push_back(itHit->exitPoint().y());
714 HitsExPz.push_back(itHit->exitPoint().z());
716 HitsEnPx.push_back(itHit->entryPoint().x());
717 HitsEnPy.push_back(itHit->entryPoint().y());
718 HitsEnPz.push_back(itHit->entryPoint().z());
720 HitsEloss.push_back(itHit->energyLoss());
721 HitsToF.push_back(itHit->tof());
726 eventout +=
"\n Number of TOB low TOF Hits collected: ";
734 if (!SiTOBHighContainer.
isValid()) {
736 <<
"Unable to find TrackerHitsTOBHighTof in event!";
742 for (itHit = SiTOBHighContainer->begin(); itHit != SiTOBHighContainer->end(); ++itHit) {
747 HitsDuID.push_back(itHit->detUnitId());
748 HitsTkID.push_back(itHit->trackId());
749 HitsProT.push_back(itHit->processType());
750 HitsParT.push_back(itHit->particleType());
751 HitsP.push_back(itHit->pabs());
753 HitsLpX.push_back(itHit->localPosition().x());
754 HitsLpY.push_back(itHit->localPosition().y());
755 HitsLpZ.push_back(itHit->localPosition().z());
757 HitsLdX.push_back(itHit->localDirection().x());
758 HitsLdY.push_back(itHit->localDirection().y());
759 HitsLdZ.push_back(itHit->localDirection().z());
760 HitsLdTheta.push_back(itHit->localDirection().theta());
761 HitsLdPhi.push_back(itHit->localDirection().phi());
763 HitsExPx.push_back(itHit->exitPoint().x());
764 HitsExPy.push_back(itHit->exitPoint().y());
765 HitsExPz.push_back(itHit->exitPoint().z());
767 HitsEnPx.push_back(itHit->entryPoint().x());
768 HitsEnPy.push_back(itHit->entryPoint().y());
769 HitsEnPz.push_back(itHit->entryPoint().z());
771 HitsEloss.push_back(itHit->energyLoss());
772 HitsToF.push_back(itHit->tof());
777 eventout +=
"\n Number of TOB high TOF Hits collected: ";
788 if (!SiTIDLowContainer.
isValid()) {
790 <<
"Unable to find TrackerHitsTIDLowTof in event!";
796 for (itHit = SiTIDLowContainer->begin(); itHit != SiTIDLowContainer->end(); ++itHit) {
801 HitsDuID.push_back(itHit->detUnitId());
802 HitsTkID.push_back(itHit->trackId());
803 HitsProT.push_back(itHit->processType());
804 HitsParT.push_back(itHit->particleType());
805 HitsP.push_back(itHit->pabs());
807 HitsLpX.push_back(itHit->localPosition().x());
808 HitsLpY.push_back(itHit->localPosition().y());
809 HitsLpZ.push_back(itHit->localPosition().z());
811 HitsLdX.push_back(itHit->localDirection().x());
812 HitsLdY.push_back(itHit->localDirection().y());
813 HitsLdZ.push_back(itHit->localDirection().z());
814 HitsLdTheta.push_back(itHit->localDirection().theta());
815 HitsLdPhi.push_back(itHit->localDirection().phi());
817 HitsExPx.push_back(itHit->exitPoint().x());
818 HitsExPy.push_back(itHit->exitPoint().y());
819 HitsExPz.push_back(itHit->exitPoint().z());
821 HitsEnPx.push_back(itHit->entryPoint().x());
822 HitsEnPy.push_back(itHit->entryPoint().y());
823 HitsEnPz.push_back(itHit->entryPoint().z());
825 HitsEloss.push_back(itHit->energyLoss());
826 HitsToF.push_back(itHit->tof());
831 eventout +=
"\n Number of TID low TOF Hits collected: ";
839 if (!SiTIDHighContainer.
isValid()) {
841 <<
"Unable to find TrackerHitsTIDHighTof in event!";
847 for (itHit = SiTIDHighContainer->begin(); itHit != SiTIDHighContainer->end(); ++itHit) {
852 HitsDuID.push_back(itHit->detUnitId());
853 HitsTkID.push_back(itHit->trackId());
854 HitsProT.push_back(itHit->processType());
855 HitsParT.push_back(itHit->particleType());
856 HitsP.push_back(itHit->pabs());
858 HitsLpX.push_back(itHit->localPosition().x());
859 HitsLpY.push_back(itHit->localPosition().y());
860 HitsLpZ.push_back(itHit->localPosition().z());
862 HitsLdX.push_back(itHit->localDirection().x());
863 HitsLdY.push_back(itHit->localDirection().y());
864 HitsLdZ.push_back(itHit->localDirection().z());
865 HitsLdTheta.push_back(itHit->localDirection().theta());
866 HitsLdPhi.push_back(itHit->localDirection().phi());
868 HitsExPx.push_back(itHit->exitPoint().x());
869 HitsExPy.push_back(itHit->exitPoint().y());
870 HitsExPz.push_back(itHit->exitPoint().z());
872 HitsEnPx.push_back(itHit->entryPoint().x());
873 HitsEnPy.push_back(itHit->entryPoint().y());
874 HitsEnPz.push_back(itHit->entryPoint().z());
876 HitsEloss.push_back(itHit->energyLoss());
877 HitsToF.push_back(itHit->tof());
882 eventout +=
"\n Number of TID high TOF Hits collected: ";
893 if (!SiTECLowContainer.
isValid()) {
895 <<
"Unable to find TrackerHitsTECLowTof in event!";
901 for (itHit = SiTECLowContainer->begin(); itHit != SiTECLowContainer->end(); ++itHit) {
906 HitsDuID.push_back(itHit->detUnitId());
907 HitsTkID.push_back(itHit->trackId());
908 HitsProT.push_back(itHit->processType());
909 HitsParT.push_back(itHit->particleType());
910 HitsP.push_back(itHit->pabs());
912 HitsLpX.push_back(itHit->localPosition().x());
913 HitsLpY.push_back(itHit->localPosition().y());
914 HitsLpZ.push_back(itHit->localPosition().z());
916 HitsLdX.push_back(itHit->localDirection().x());
917 HitsLdY.push_back(itHit->localDirection().y());
918 HitsLdZ.push_back(itHit->localDirection().z());
919 HitsLdTheta.push_back(itHit->localDirection().theta());
920 HitsLdPhi.push_back(itHit->localDirection().phi());
922 HitsExPx.push_back(itHit->exitPoint().x());
923 HitsExPy.push_back(itHit->exitPoint().y());
924 HitsExPz.push_back(itHit->exitPoint().z());
926 HitsEnPx.push_back(itHit->entryPoint().x());
927 HitsEnPy.push_back(itHit->entryPoint().y());
928 HitsEnPz.push_back(itHit->entryPoint().z());
930 HitsEloss.push_back(itHit->energyLoss());
931 HitsToF.push_back(itHit->tof());
936 eventout +=
"\n Number of TEC low TOF Hits collected: ";
945 if (!SiTECHighContainer.
isValid()) {
947 <<
"Unable to find TrackerHitsTECHighTof in event!";
952 for (itHit = SiTECHighContainer->begin(); itHit != SiTECHighContainer->end(); ++itHit) {
957 HitsDuID.push_back(itHit->detUnitId());
958 HitsTkID.push_back(itHit->trackId());
959 HitsProT.push_back(itHit->processType());
960 HitsParT.push_back(itHit->particleType());
961 HitsP.push_back(itHit->pabs());
963 HitsLpX.push_back(itHit->localPosition().x());
964 HitsLpY.push_back(itHit->localPosition().y());
965 HitsLpZ.push_back(itHit->localPosition().z());
967 HitsLdX.push_back(itHit->localDirection().x());
968 HitsLdY.push_back(itHit->localDirection().y());
969 HitsLdZ.push_back(itHit->localDirection().z());
970 HitsLdTheta.push_back(itHit->localDirection().theta());
971 HitsLdPhi.push_back(itHit->localDirection().phi());
973 HitsExPx.push_back(itHit->exitPoint().x());
974 HitsExPy.push_back(itHit->exitPoint().y());
975 HitsExPz.push_back(itHit->exitPoint().z());
977 HitsEnPx.push_back(itHit->entryPoint().x());
978 HitsEnPy.push_back(itHit->entryPoint().y());
979 HitsEnPz.push_back(itHit->entryPoint().z());
981 HitsEloss.push_back(itHit->energyLoss());
982 HitsToF.push_back(itHit->tof());
987 eventout +=
"\n Number of TEC high TOF Hits collected: ";
992 edm::LogInfo(
"TrackerHitProducer::fillTrk") << eventout;
1071 <<
"Clearing event holders";
void fillG4MC(edm::Event &)
void storeTrk(PTrackerSimHit &)
T getParameter(std::string const &) const
EventNumber_t event() const
edm::InputTag SiTIBHighSrc_
T getUntrackedParameter(std::string const &, T const &) const
void getAllProvenance(std::vector< Provenance const * > &provenances) const
edm::InputTag PxlFwdHighSrc_
void storeG4MC(PTrackerSimHit &)
#define DEFINE_FWK_MODULE(type)
void putRawGenPart(int n)
Geom::Theta< T > theta() const
edm::InputTag PxlBrlHighSrc_
void putHits(const std::vector< int > &_sysID, const std::vector< float > &_detUnitId, const std::vector< float > &_trackId, const std::vector< float > &_processType, const std::vector< float > &_particleType, const std::vector< float > &_pabs, const std::vector< float > &_lpx, const std::vector< float > &_lpy, const std::vector< float > &_lpz, const std::vector< float > &_ldx, const std::vector< float > &_ldy, const std::vector< float > &_ldz, const std::vector< float > &_ldtheta, const std::vector< float > &_ldphi, const std::vector< float > &_exx, const std::vector< float > &_exy, const std::vector< float > &_exz, const std::vector< float > &_enx, const std::vector< float > &_eny, const std::vector< float > &_enz, const std::vector< float > &_eloss, const std::vector< float > &_tof)
virtual void produce(edm::Event &, const edm::EventSetup &)
edm::InputTag SiTIDHighSrc_
TrackerHitProducer(const edm::ParameterSet &)
virtual ~TrackerHitProducer()
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
edm::InputTag PxlFwdLowSrc_
edm::InputTag SiTOBLowSrc_
Tan< T >::type tan(const T &t)
edm::InputTag SiTECHighSrc_
void putG4Vtx(const std::vector< float > &x, const std::vector< float > &y, const std::vector< float > &z)
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
edm::InputTag PxlBrlLowSrc_
edm::InputTag SiTECLowSrc_
edm::ParameterSet config_
edm::InputTag SiTIDLowSrc_
void putG4Trk(const std::vector< float > &pt, const std::vector< float > &e, const std::vector< float > &eta, const std::vector< float > &phi)
void fillTrk(edm::Event &, const edm::EventSetup &)
edm::InputTag SiTOBHighSrc_
edm::InputTag SiTIBLowSrc_