Warning, file /include/Geant4/G4GIDI.hh was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027 #ifndef G4GIDI_h_included
0028 #define G4GIDI_h_included 1
0029
0030 #include <string>
0031 #include <list>
0032 #include <vector>
0033
0034
0035 #include "G4Types.hh"
0036 #include "G4GIDI_Misc.hh"
0037 #include "G4GIDI_map.hh"
0038 #include "G4GIDI_target.hh"
0039 #include "G4GIDI_mass.hh"
0040
0041 class G4GIDI {
0042
0043 private:
0044 G4int projectileID;
0045 std::string projectile;
0046 std::list<G4GIDI_map *> dataDirectories;
0047 std::vector<G4GIDI_target *> targets;
0048
0049 G4int init( G4int ip );
0050
0051 public:
0052 G4GIDI( G4int ip, std::string &dataDirectory );
0053 G4GIDI( G4int ip, std::list<std::string> &dataDirectory );
0054 ~G4GIDI( );
0055
0056 G4int numberOfDataDirectories( void );
0057 G4int addDataDirectory( std::string &dataDirectory );
0058 G4int removeDataDirectory( std::string &dataDirectory );
0059 std::string getDataDirectoryAtIndex( G4int index );
0060 std::vector<std::string> *getDataDirectories( void );
0061
0062 G4bool isThisDataAvailable( std::string &lib_name, G4int iZ, G4int iA, G4int iM = 0 );
0063 G4bool isThisDataAvailable( std::string &lib_name, std::string &targetName );
0064
0065 char *dataFilename( std::string &lib_name, G4int iZ, G4int iA, G4int iM = 0 );
0066 char *dataFilename( std::string &lib_name, std::string &targetName );
0067
0068 std::vector<std::string> *getNamesOfAvailableLibraries( G4int iZ, G4int iA, G4int iM = 0 );
0069 std::vector<std::string> *getNamesOfAvailableLibraries( std::string &targetName );
0070
0071 std::vector<std::string> *getNamesOfAvailableTargets( void );
0072
0073 G4GIDI_target *readTarget( std::string &lib_name, G4int iZ, G4int iA, G4int iM = 0, G4bool bind = true );
0074 G4GIDI_target *readTarget( std::string &lib_name, std::string &targetName, G4bool bind = true );
0075
0076 G4GIDI_target *getAlreadyReadTarget( G4int iZ, G4int iA, G4int iM = 0 );
0077 G4GIDI_target *getAlreadyReadTarget( std::string &targetName );
0078
0079 G4int freeTarget( G4int iZ, G4int iA, G4int iM = 0 );
0080 G4int freeTarget( std::string &targetSymbol );
0081 G4int freeTarget( G4GIDI_target *target );
0082
0083 std::vector<std::string> *getListOfReadTargetsNames( void );
0084 };
0085
0086 #endif