1 #ifndef BASEPROTONTRANSPORT 2 #define BASEPROTONTRANSPORT 5 #include "HepMC/GenEvent.h" 12 #include "TLorentzVector.h" 15 class HepRandomEngine;
std::string beam1Filename_
virtual void process(const HepMC::GenEvent *ev, const edm::EventSetup &es, CLHEP::HepRandomEngine *engine)=0
BaseProtonTransport(const edm::ParameterSet &iConfig)
double fCrossingAngleY_45_
std::string beam2Filename_
bool produceHitsRelativeToBeam_
std::vector< LHCTransportLink > & getCorrespondenceMap()
bool useBeamPositionFromLHCInfo_
double fCrossingAngleX_56_
virtual ~BaseProtonTransport()
void setBeamParameters(double stx, double sty, double sx, double sy, double se)
double fCrossingAngleX_45_
double fPPSRegionStart_56_
CLHEP::HepRandomEngine * engine_
void setCrossingAngles(double cx45, double cx56, double cy45, double cy56)
void setBeamFileNames(const std::string &nam1, const std::string &nam2)
std::map< unsigned int, double > m_xAtTrPoint
void ApplyBeamCorrection(HepMC::GenParticle *p)
std::map< unsigned int, TLorentzVector > m_beamPart
double fPPSRegionStart_45_
std::map< unsigned int, double > m_yAtTrPoint
double fCrossingAngleY_56_
std::vector< LHCTransportLink > m_CorrespondenceMap
void addPartToHepMC(const HepMC::GenEvent *, HepMC::GenEvent *)