14 #include <HepMC/GenEvent.h>
28 enum {DSTNODE, RUNNODE, LAST};
30 const char *NName[] = {
36 for (
int i=0; i<LAST; i++)
41 cout <<
PHWHERE << NName[i] <<
" node is missing, no point in continuing exiting now" << endl;
49 outNode[DSTNODE]->
addNode(newNode);
54 outNode[RUNNODE]->
addNode(FlagSaveNode);
61 HepMC::GenEvent *hepmcevt = findNode::getClass<HepMC::GenEvent>(topNode,
"HEPMC");
62 PHG4EventHeader *evtheader = findNode::getClass<PHG4EventHeader>(topNode,
"EventHeader");
66 evtseq = hepmcevt->event_number();
67 HepMC::HeavyIon *hi = hepmcevt->heavy_ion();
70 evtheader->set_ImpactParameter(hi->impact_parameter());
71 evtheader->set_EventPlaneAngle(hi->event_plane_angle());
74 evtheader->set_EvtSequence(evtseq);
77 evtheader->identify();
int verbosity
The verbosity level. 0 means not verbose at all.
int process_event(PHCompositeNode *topNode)
PHNode * findFirst(const std::string &, const std::string &)
PHBoolean addNode(PHNode *)
int Init(PHCompositeNode *topNode)
PHG4HeadReco(const std::string &name="PHG4HeadReco")