Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:59:16

0001 //
0002 // ********************************************************************
0003 // * License and Disclaimer                                           *
0004 // *                                                                  *
0005 // * The  Geant4 software  is  copyright of the Copyright Holders  of *
0006 // * the Geant4 Collaboration.  It is provided  under  the terms  and *
0007 // * conditions of the Geant4 Software License,  included in the file *
0008 // * LICENSE and available at  http://cern.ch/geant4/license .  These *
0009 // * include a list of copyright holders.                             *
0010 // *                                                                  *
0011 // * Neither the authors of this software system, nor their employing *
0012 // * institutes,nor the agencies providing financial support for this *
0013 // * work  make  any representation or  warranty, express or implied, *
0014 // * regarding  this  software system or assume any liability for its *
0015 // * use.  Please see the license in the file  LICENSE  and URL above *
0016 // * for the full disclaimer and the limitation of liability.         *
0017 // *                                                                  *
0018 // * This  code  implementation is the result of  the  scientific and *
0019 // * technical work of the GEANT4 collaboration.                      *
0020 // * By using,  copying,  modifying or  distributing the software (or *
0021 // * any work based  on the software)  you  agree  to acknowledge its *
0022 // * use  in  resulting  scientific  publications,  and indicate your *
0023 // * acceptance of all terms of the Geant4 Software license.          *
0024 // ********************************************************************
0025 //
0026 #ifndef G4UIcmdWithNucleusLimits_h
0027 #define G4UIcmdWithNucleusLimits_h 1
0028 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0029 //
0030 // MODULE:              G4UIcmdWithNucleusAndUnit.hh
0031 //
0032 // Version:             0.b.4
0033 // Date:                14/04/00
0034 // Author:              F Lei & P R Truscott
0035 // Organisation:        DERA UK
0036 // Customer:            ESA/ESTEC, NOORDWIJK
0037 // Contract:            12115/96/JG/NL Work Order No. 3
0038 //
0039 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0040 //
0041 // Class Description
0042 //
0043 // The G4UIcmdWithNucleusLimits permits input of the range of nuclides
0044 // that will be treated in the G4RadioactiveDecay Class.  Input is expected in
0045 // the form:
0046 //
0047 //          AMin  AMax  ZMin  ZMax
0048 //
0049 // where AMin, AMax, ZMin, ZMax are respectively the upper and lower limits
0050 // in A (atomic mass), and the upper and lower limits in Z (atomic number)
0051 // which define the range of nuclides treated by the G4RadioactiveDecay.
0052 //
0053 // Class Description - end:
0054 //
0055 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0056 //
0057 // CHANGE HISTORY
0058 // --------------
0059 //
0060 // 29 February 2000, P R Truscott, DERA UK
0061 // 0.b.3 release.
0062 //
0063 // 
0064 // 13 April 2000, F Lei, DERA UK
0065 // 0.b.4 release. No change to this file        
0066 //
0067 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0068 ////////////////////////////////////////////////////////////////////////////////
0069 //
0070 #include "G4UIcommand.hh"
0071 #include "globals.hh"
0072 
0073 #include "G4NucleusLimits.hh"
0074 ////////////////////////////////////////////////////////////////////////////////
0075 //
0076 class G4UIcmdWithNucleusLimits : public G4UIcommand
0077 {
0078 public: // With description
0079     G4UIcmdWithNucleusLimits
0080     (const char * theCommandPath,G4UImessenger * theMessenger);
0081   //    Constructor identifying the command path in the User Interface and the
0082   //    associated G4UImessenger which will use this G4UIcommand object.
0083   //
0084   ~G4UIcmdWithNucleusLimits();
0085   //  Destructor
0086   //
0087     G4NucleusLimits GetNewNucleusLimitsValue(G4String paramString);
0088   //    Extracts the values aMin, aMax, zMin, zMax from paramString.
0089   //    Values returned have aMin, aMax, zMin, and zMax (within the
0090   //    G4NucleusLimits variable).
0091     G4String ConvertToString(G4NucleusLimits nuclimit);
0092   //    Converts the G4NucleusLimits defined by vec into a G4String.
0093     void SetParameterName(const char * theNameAMin,const char * theNameAMax,
0094                           const char * theNameZMin, const char * theNameZMax,
0095                           G4bool omittable, G4bool currentAsDefault=true);
0096   //    Identifies the parameter names associated with each of the G4doubles
0097   //    used to define the G4NucleusLimits variable.
0098     void SetDefaultValue(G4NucleusLimits defVal);
0099   //    Sets the default G4NucleusLimits if the command is invoked without any
0100   //    parameters.
0101 };
0102 ////////////////////////////////////////////////////////////////////////////////
0103 #endif
0104