CMS 3D CMS Logo

GenParticleInfoExtractor.cc
Go to the documentation of this file.
3 
4 #include "G4PrimaryParticle.hh"
5 
6 const GenParticleInfo &GenParticleInfoExtractor::operator()(const G4PrimaryParticle *p) const {
7  G4VUserPrimaryParticleInformation *up = p->GetUserInformation();
8  if (up == nullptr)
9  throw SimG4Exception("GenParticleInfoExtractor: G4PrimaryParticle has no user information");
10  GenParticleInfo *gpi = dynamic_cast<GenParticleInfo *>(up);
11  if (gpi == nullptr)
12  throw SimG4Exception("User information in G4PrimaryParticle is not of GenParticleInfo type");
13  return *gpi;
14 }
SimG4Exception
Definition: SimG4Exception.h:13
GenParticleInfoExtractor::operator()
const GenParticleInfo & operator()(const G4PrimaryParticle *p) const
Definition: GenParticleInfoExtractor.cc:6
GenParticleInfoExtractor.h
SimG4Exception.h
AlCaHLTBitMon_ParallelJobs.p
def p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
GenParticleInfo
Definition: GenParticleInfo.h:6
up
Definition: BitonicSort.h:7