]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - AliGeant4/AliSteppingActionMessenger.cxx
Bugfix in AliPoints2Memory
[u/mrichter/AliRoot.git] / AliGeant4 / AliSteppingActionMessenger.cxx
index 70a3f544c29797fa6d642497cefede2e0d0f46be..28c3054061152126caa25cc66c69bf6c6c277fad 100644 (file)
@@ -1,15 +1,19 @@
 // $Id$
 // Category: event
 //
+// Author: I. Hrivnacova
+//
+// Class AliSteppingActionMessenger
+// --------------------------------
 // See the class description in the header file.
 
 #include "AliSteppingActionMessenger.h"
 #include "AliSteppingAction.h"
 #include "AliGlobals.h"
 
-#include <G4UIdirectory.hh>
 #include <G4UIcmdWithAnInteger.hh>
 
+//_____________________________________________________________________________
 AliSteppingActionMessenger::AliSteppingActionMessenger(
                               AliSteppingAction* trackingAction)
   :fSteppingAction(trackingAction)
@@ -22,12 +26,21 @@ AliSteppingActionMessenger::AliSteppingActionMessenger(
   fLoopVerboseCmd->SetDefaultValue(1);
   fLoopVerboseCmd->SetRange("LoopVerboseLevel >= 0 && LoopVerboseLevel <= 5");
   fLoopVerboseCmd->AvailableForStates(Idle);
+
+  fMaxNofStepsCmd = new G4UIcmdWithAnInteger("/aliTracking/maxNofSteps", this);
+  fMaxNofStepsCmd
+    ->SetGuidance("Set maximum number of steps allowed.");
+  fMaxNofStepsCmd->SetParameterName("MaxNofSteps", false);
+  fMaxNofStepsCmd->SetRange("MaxNofSteps >= 0");
+  fMaxNofStepsCmd->AvailableForStates(Idle);
 }
 
+//_____________________________________________________________________________
 AliSteppingActionMessenger::AliSteppingActionMessenger() {
 //
 }
 
+//_____________________________________________________________________________
 AliSteppingActionMessenger::AliSteppingActionMessenger(
                                  const AliSteppingActionMessenger& right) {
 //                              
@@ -35,13 +48,16 @@ AliSteppingActionMessenger::AliSteppingActionMessenger(
     "AliSteppingActionMessenger is protected from copying.");
 }
 
+//_____________________________________________________________________________
 AliSteppingActionMessenger::~AliSteppingActionMessenger() {
 //
   delete fLoopVerboseCmd;
+  delete fMaxNofStepsCmd;
 }
 
 // operators
 
+//_____________________________________________________________________________
 AliSteppingActionMessenger& 
 AliSteppingActionMessenger::operator=(const AliSteppingActionMessenger &right)
 {
@@ -56,6 +72,7 @@ AliSteppingActionMessenger::operator=(const AliSteppingActionMessenger &right)
 
 // public methods
 
+//_____________________________________________________________________________
 void AliSteppingActionMessenger::SetNewValue(G4UIcommand* command, 
        G4String newValue)
 { 
@@ -66,4 +83,8 @@ void AliSteppingActionMessenger::SetNewValue(G4UIcommand* command,
     fSteppingAction
       ->SetLoopVerboseLevel(fLoopVerboseCmd->GetNewIntValue(newValue)); 
   }   
+  else if(command == fMaxNofStepsCmd) { 
+    fSteppingAction
+      ->SetMaxNofSteps(fMaxNofStepsCmd->GetNewIntValue(newValue)); 
+  }   
 }