89 std::ios::fmtflags f( cout.flags() );
90 cout <<
"GenVertex (" << vertex <<
"):";
92 if (vertex->position().x() != 0.0 && vertex->position().y() != 0.0 && vertex->position().z() != 0.0) {
101 cout.setf(std::ios::scientific, std::ios::floatfield);
102 cout.setf(std::ios_base::showpos);
103 cout << vertex->position().x() <<
",";
106 cout << vertex->position().y() <<
",";
109 cout << vertex->position().z() <<
",";
112 cout << vertex->position().t();
113 cout.setf(std::ios::fmtflags(0), std::ios::floatfield);
114 cout.unsetf(std::ios_base::showpos);
121 cout << vertex->id();
122 cout <<
" (X,cT): 0";
129 if (vertex->position().x() != 0.0 && vertex->position().y() != 0.0 && vertex->position().z() != 0.0) {
133 cout << vertex->id();
137 cout.setf(std::ios::scientific, std::ios::floatfield);
138 cout.setf(std::ios_base::showpos);
139 cout << vertex->position().x();
142 cout << vertex->position().y();
145 cout << vertex->position().z();
148 cout << vertex->position().t();
149 cout.setf(std::ios::fmtflags(0), std::ios::floatfield);
150 cout.unsetf(std::ios_base::showpos);
156 cout << vertex->id();
164 for (
const auto& iPIn: vertex->particles_in()) {
165 if ( iPIn == vertex->particles_in().front() ) {
168 cout << vertex->particles_in().size();
172 for (
const auto& iPOut: vertex->particles_out()) {
173 if ( iPOut == vertex->particles_out().front()) {
176 cout << vertex->particles_out().size();
181 for (HepMC::GenVertex::particles_in_const_iterator iPIn = vertex->particles_in_const_begin();
182 iPIn != vertex->particles_in_const_end(); ++iPIn) {
183 if ( iPIn == vertex->particles_in_const_begin() ) {
186 cout << vertex->particles_in_size();
190 for (HepMC::GenVertex::particles_out_const_iterator iPOut = vertex->particles_out_const_begin();
191 iPOut != vertex->particles_out_const_end(); ++iPOut) {
192 if ( iPOut == vertex->particles_out_const_begin() ) {
195 cout << vertex->particles_out_size();
207 if (!particle)
return;
208 std::ios::fmtflags f( cout.flags() );
213 cout << particle->pdg_id() <<
" ";
216 cout.setf(std::ios::scientific, std::ios::floatfield);
217 cout.setf(std::ios_base::showpos);
218 if (do4momPtEtaPhi) cout << particle->momentum().perp() <<
",";
219 else cout << particle->momentum().px() <<
",";
222 if (do4momPtEtaPhi) cout << particle->momentum().pseudoRapidity() <<
",";
223 else cout << particle->momentum().py() <<
",";
226 if (do4momPtEtaPhi) cout << particle->momentum().phi() <<
",";
227 else cout << particle->momentum().pz() <<
",";
230 cout << particle->momentum().e() <<
" ";
231 cout.setf(std::ios::fmtflags(0), std::ios::floatfield);
232 cout.unsetf(std::ios_base::showpos);
236 cout << particle->status() <<
" ";
242 cout << particle->status();