emitter representation

This commit is contained in:
AndreaRigoni
2026-03-19 13:57:10 +00:00
parent ca5f576b99
commit 1e6e3ae4f4
9 changed files with 261 additions and 9 deletions

View File

@@ -4,7 +4,13 @@
#include "G4VUserPrimaryGeneratorAction.hh"
#include "globals.hh"
namespace uLib {
class QuadMesh;
}
#include "Math/QuadMesh.h"
#include "Core/Object.h"
#include "Math/Transform.h"
#include <vector> // Added for std::vector
class G4ParticleGun;
@@ -13,7 +19,7 @@ class G4Event;
namespace uLib {
namespace Geant {
class EmitterPrimary : public G4VUserPrimaryGeneratorAction
class EmitterPrimary : public G4VUserPrimaryGeneratorAction, public Object, public AffineTransform
{
public:
EmitterPrimary();
@@ -22,11 +28,14 @@ class EmitterPrimary : public G4VUserPrimaryGeneratorAction
// Metodo principale chiamato all'inizio di ogni evento
virtual void GeneratePrimaries(G4Event*);
virtual void Updated() override { ULIB_SIGNAL_EMIT(EmitterPrimary::Updated); }
protected:
G4ParticleGun* fParticleGun; // Puntatore al cannone di particelle
};
class QuadMeshEmitterPrimary : public EmitterPrimary
{
public: