Warning, file /npsim/src/plugins/include/npdet/EICInteractionVertexSmear.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 #ifndef DD4HEP_DDG4_EICInteractionVertexSmear_H
0002 #define DD4HEP_DDG4_EICInteractionVertexSmear_H
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #include "DDG4/Geant4GeneratorAction.h"
0015
0016
0017 #include "Math/Vector4D.h"
0018
0019 namespace npdet {
0020 namespace sim {
0021
0022 using namespace dd4hep::sim;
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034 class EICInteractionVertexSmear: public Geant4GeneratorAction {
0035 public:
0036
0037 using Interaction = Geant4PrimaryInteraction;
0038
0039 protected:
0040
0041 ROOT::Math::PxPyPzEVector m_offset = {0, 0, 0, 0};
0042
0043 ROOT::Math::PxPyPzEVector m_sigma_Ion = {0.000103, 0.000195, 0.0, 0.0};
0044 ROOT::Math::PxPyPzEVector m_sigma_Electron = {0.000215, 0.000156, 0.0, 0.0};
0045
0046 int m_mask;
0047
0048
0049 void smear(Interaction* interaction) const;
0050
0051 public:
0052
0053 EICInteractionVertexSmear() = delete;
0054
0055 EICInteractionVertexSmear(const EICInteractionVertexSmear& copy) = delete;
0056
0057 EICInteractionVertexSmear(Geant4Context* context, const std::string& name);
0058
0059 virtual ~EICInteractionVertexSmear();
0060
0061 virtual void operator()(G4Event* event);
0062 };
0063 }
0064 }
0065
0066
0067
0068
0069 #endif