k4SimGeant4
Loading...
Searching...
No Matches
SimG4CrossingAngleBoost.h
Go to the documentation of this file.
1#ifndef SIMG4COMPONENTS_CROSSINGANGLEBOOST_H
2#define SIMG4COMPONENTS_CROSSINGANGLEBOOST_H
3
4// Gaudi
5#include "Gaudi/Algorithm.h"
6
7// FCCSW
8#include "k4FWCore/DataHandle.h"
9
10// datamodel
11namespace edm4hep {
12class MCParticleCollection;
13}
14
22class SimG4CrossingAngleBoost : public Gaudi::Algorithm {
23public:
24 SimG4CrossingAngleBoost(const std::string& aName, ISvcLocator* svcLoc);
28 StatusCode initialize();
32 StatusCode finalize();
38 StatusCode execute(const EventContext&) const;
39
40private:
42 mutable k4FWCore::DataHandle<edm4hep::MCParticleCollection> m_inParticles{"InParticles", Gaudi::DataHandle::Reader,
43 this};
45 mutable k4FWCore::DataHandle<edm4hep::MCParticleCollection> m_outParticles{"OutParticles", Gaudi::DataHandle::Writer,
46 this};
48 Gaudi::Property<double> m_alpha{this, "CrossingAngle", 0., "Crossing angle (alpha) in radians"};
49};
50
51#endif /* SIMG4COMPONENTS_CROSSINGANGLEBOOST_H */
Boost 'generated' particles according the crossing angle.
Definition SimG4CrossingAngleBoost.h:22
SimG4CrossingAngleBoost(const std::string &aName, ISvcLocator *svcLoc)
Definition SimG4CrossingAngleBoost.cpp:11
StatusCode initialize()
Initialize.
Definition SimG4CrossingAngleBoost.cpp:17
k4FWCore::DataHandle< edm4hep::MCParticleCollection > m_outParticles
Handle for the particles to be written.
Definition SimG4CrossingAngleBoost.h:45
k4FWCore::DataHandle< edm4hep::MCParticleCollection > m_inParticles
Handle for the particles to be read.
Definition SimG4CrossingAngleBoost.h:42
Gaudi::Property< double > m_alpha
Value of the crossing angle in radians.
Definition SimG4CrossingAngleBoost.h:48
StatusCode execute(const EventContext &) const
Save the data output.
Definition SimG4CrossingAngleBoost.cpp:31
StatusCode finalize()
Finalize.
Definition SimG4CrossingAngleBoost.cpp:100
Definition EventInformation.h:10