PlasmaMLPALLAS
Loading...
Searching...
No Matches
Public Member Functions | List of all members
PlasmaMLPALLASPrimaryGeneratorMessenger Class Reference

Provides UI commands to configure the primary generator. More...

#include <PlasmaMLPALLASPrimaryGeneratorMessenger.hh>

Inheritance diagram for PlasmaMLPALLASPrimaryGeneratorMessenger:
Inheritance graph
[legend]
Collaboration diagram for PlasmaMLPALLASPrimaryGeneratorMessenger:
Collaboration graph
[legend]

Public Member Functions

 PlasmaMLPALLASPrimaryGeneratorMessenger (PlasmaMLPALLASPrimaryGeneratorAction *primaryGenerator)
 Constructor.
 
 ~PlasmaMLPALLASPrimaryGeneratorMessenger ()
 Destructor.
 
virtual void SetNewValue (G4UIcommand *command, G4String newValue) final
 Executes a command with a new value.
 
virtual G4String GetCurrentValue (G4UIcommand *command) final
 Retrieves the current value of a command.
 

Detailed Description

Provides UI commands to configure the primary generator.

Author
Arnaud HUBER huber.nosp@m.@lp2.nosp@m.ib.in.nosp@m.2p3..nosp@m.fr - Alexei SYTOV sytov.nosp@m.@inf.nosp@m.n.it
Date
2025

This class allows the user to set various parameters of the primary particle generator, including ONNX model usage, particle type, laser focus, and plasma parameters via the Geant4 UI.

Constructor & Destructor Documentation

◆ PlasmaMLPALLASPrimaryGeneratorMessenger()

PlasmaMLPALLASPrimaryGeneratorMessenger::PlasmaMLPALLASPrimaryGeneratorMessenger ( PlasmaMLPALLASPrimaryGeneratorAction aGun)

Constructor.

Parameters
primaryGeneratorPointer to the associated primary generator action

Sets up UI commands and directories for controlling the primary generator.

Parameters
aGunPointer to the primary generator action.

Creates UI directories and commands for both the particle gun and the laser parameters.

Command to enable or disable ONNX feature for the gun.

Parameter: StatusONNX (0 or 1)

  • 0: Disable ONNX
  • 1: Enable ONNX

Command to set the particle name for the gun.

Parameter: ParticleName (string)

Command to set the offset of the laser focus.

Parameter: OffsetLaserFocus (double)

Command to set the normalized vector potential of the laser.

Parameter: NormVecPotential (double)

Command to set the fraction of dopant in the target chamber.

Parameter: FracDopTargChamber (double)

Command to set the gaz chamber pressure.

Parameter: Pressure (double)

◆ ~PlasmaMLPALLASPrimaryGeneratorMessenger()

PlasmaMLPALLASPrimaryGeneratorMessenger::~PlasmaMLPALLASPrimaryGeneratorMessenger ( )

Destructor.

Deletes all UI commands to free memory.

Member Function Documentation

◆ GetCurrentValue()

G4String PlasmaMLPALLASPrimaryGeneratorMessenger::GetCurrentValue ( G4UIcommand *  aCommand)
finalvirtual

Retrieves the current value of a command.

Get the current value of a UI command.

Parameters
commandPointer to the command
Returns
String representing the current value
Parameters
aCommandPointer to the UI command.
Returns
Current value of the command as a string.

Retrieves the current value from the primary generator action and converts it to a string for display in the UI.

◆ SetNewValue()

void PlasmaMLPALLASPrimaryGeneratorMessenger::SetNewValue ( G4UIcommand *  aCommand,
G4String  aNewValue 
)
finalvirtual

Executes a command with a new value.

Apply a new value from the UI command.

Parameters
commandPointer to the issued command
newValueString representation of the new value

Calls the appropriate method in the primary generator based on the command.

Parameters
aCommandPointer to the UI command used.
aNewValueNew value as string from the UI.

Converts the string to the appropriate type and sets it in the primary generator action.


The documentation for this class was generated from the following files: