4 // See the class description in the header file.
6 #include "AliSteppingActionMessenger.h"
7 #include "AliSteppingAction.h"
8 #include "AliGlobals.h"
10 #include <G4UIdirectory.hh>
11 #include <G4UIcmdWithAnInteger.hh>
13 AliSteppingActionMessenger::AliSteppingActionMessenger(
14 AliSteppingAction* trackingAction)
15 :fSteppingAction(trackingAction)
18 fLoopVerboseCmd = new G4UIcmdWithAnInteger("/aliTracking/loopVerbose", this);
20 ->SetGuidance("Set tracking verbose level for detected looping tracks.");
21 fLoopVerboseCmd->SetParameterName("LoopVerboseLevel", true);
22 fLoopVerboseCmd->SetDefaultValue(1);
23 fLoopVerboseCmd->SetRange("LoopVerboseLevel >= 0 && LoopVerboseLevel <= 5");
24 fLoopVerboseCmd->AvailableForStates(Idle);
27 AliSteppingActionMessenger::AliSteppingActionMessenger() {
31 AliSteppingActionMessenger::AliSteppingActionMessenger(
32 const AliSteppingActionMessenger& right) {
34 AliGlobals::Exception(
35 "AliSteppingActionMessenger is protected from copying.");
38 AliSteppingActionMessenger::~AliSteppingActionMessenger() {
40 delete fLoopVerboseCmd;
45 AliSteppingActionMessenger&
46 AliSteppingActionMessenger::operator=(const AliSteppingActionMessenger &right)
48 // check assignement to self
49 if (this == &right) return *this;
51 AliGlobals::Exception(
52 "AliSteppingActionMessenger is protected from assigning.");
59 void AliSteppingActionMessenger::SetNewValue(G4UIcommand* command,
62 // Applies command to the associated object.
65 if(command == fLoopVerboseCmd) {
67 ->SetLoopVerboseLevel(fLoopVerboseCmd->GetNewIntValue(newValue));