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 {
23 public:
24 SimG4CrossingAngleBoost(const std::string& aName, ISvcLocator* svcLoc);
28 StatusCode initialize();
32 StatusCode finalize();
38 StatusCode execute(const EventContext&) const;
39
40 private:
42 mutable DataHandle<edm4hep::MCParticleCollection> m_inParticles{"InParticles", Gaudi::DataHandle::Reader, this};
44 mutable DataHandle<edm4hep::MCParticleCollection> m_outParticles{"OutParticles", Gaudi::DataHandle::Writer, this};
46 Gaudi::Property<double> m_alpha{this, "CrossingAngle", 0., "Crossing angle (alpha) in radians"};
47};
48
49#endif /* SIMG4COMPONENTS_CROSSINGANGLEBOOST_H */
Boost 'generated' particles according the crossing angle.
Definition SimG4CrossingAngleBoost.h:22
DataHandle< edm4hep::MCParticleCollection > m_inParticles
Handle for the particles to be read.
Definition SimG4CrossingAngleBoost.h:42
SimG4CrossingAngleBoost(const std::string &aName, ISvcLocator *svcLoc)
Definition SimG4CrossingAngleBoost.cpp:13
StatusCode initialize()
Initialize.
Definition SimG4CrossingAngleBoost.cpp:23
Gaudi::Property< double > m_alpha
Value of the crossing angle in radians.
Definition SimG4CrossingAngleBoost.h:46
StatusCode execute(const EventContext &) const
Save the data output.
Definition SimG4CrossingAngleBoost.cpp:39
DataHandle< edm4hep::MCParticleCollection > m_outParticles
Handle for the particles to be written.
Definition SimG4CrossingAngleBoost.h:44
StatusCode finalize()
Finalize.
Definition SimG4CrossingAngleBoost.cpp:116
Definition EventInformation.h:10