Import Geant4 11.1.0 source tree

This commit is contained in:
Gabriele Cosmo
2022-12-09 14:43:28 +01:00
parent c07cea1fe0
commit 9f34590941
3810 changed files with 200490 additions and 182326 deletions
@@ -23,10 +23,7 @@
// * acceptance of all terms of the Geant4 Software license. *
// ********************************************************************
//
/*
# <<BEGIN-copyright>>
# <<END-copyright>>
*/
#include <iostream>
#include "G4GIDI.hh"
@@ -37,7 +34,7 @@ using namespace GIDI;
/*
***************************************************************
*/
G4GIDI::G4GIDI( int ip, string &dataDirectory ) {
G4GIDI::G4GIDI( G4int ip, string &dataDirectory ) {
init( ip );
addDataDirectory( dataDirectory );
@@ -45,12 +42,11 @@ G4GIDI::G4GIDI( int ip, string &dataDirectory ) {
/*
***************************************************************
*/
G4GIDI::G4GIDI( int ip, list<string> &dataDirectoryList ) {
list<string>::iterator iter;
G4GIDI::G4GIDI( G4int ip, list<string> &dataDirectoryList ) {
init( ip );
for( iter = dataDirectoryList.begin( ); iter != dataDirectoryList.end( ); ++iter ) addDataDirectory( *iter );
for( auto iter = dataDirectoryList.begin( ); iter != dataDirectoryList.end( ); ++iter )
addDataDirectory( *iter );
}
/*
***************************************************************
@@ -58,7 +54,7 @@ G4GIDI::G4GIDI( int ip, list<string> &dataDirectoryList ) {
G4GIDI::~G4GIDI( void ) {
G4GIDI_target *target;
list<G4GIDI_map *>::iterator iter;
auto iter = dataDirectories.cbegin();
while( targets.size( ) > 0 ) {
target = targets.back( );
@@ -66,7 +62,7 @@ G4GIDI::~G4GIDI( void ) {
delete target;
} // Loop checking, 11.06.2015, T. Koi
while( ( iter = dataDirectories.begin( ) ) != dataDirectories.end( ) ) {
while( iter != dataDirectories.cend() ) {
delete *iter;
dataDirectories.pop_front( );
}// Loop checking, 11.06.2015, T. Koi
@@ -74,7 +70,7 @@ G4GIDI::~G4GIDI( void ) {
/*
***************************************************************
*/
int G4GIDI::init( int ip ) {
G4int G4GIDI::init( G4int ip ) {
projectileID = ip;
if( ip == 0 ) {
@@ -100,18 +96,16 @@ int G4GIDI::init( int ip ) {
/*
***************************************************************
*/
int G4GIDI::numberOfDataDirectories( void ) {
G4int G4GIDI::numberOfDataDirectories( void ) {
return( dataDirectories.size( ) );
return (G4int)dataDirectories.size( );
}
/*
***************************************************************
*/
int G4GIDI::addDataDirectory( string &dataDirectory ) {
G4int G4GIDI::addDataDirectory( string &dataDirectory ) {
list<G4GIDI_map *>::iterator iter;
for( iter = dataDirectories.begin( ); iter != dataDirectories.end( ); iter++ ) {
for( auto iter = dataDirectories.cbegin( ); iter != dataDirectories.cend( ); ++iter ) {
if( (*iter)->path( ) == dataDirectory ) return( 0 );
}
@@ -123,11 +117,9 @@ int G4GIDI::addDataDirectory( string &dataDirectory ) {
/*
***************************************************************
*/
int G4GIDI::removeDataDirectory( string &dataDirectory ) {
G4int G4GIDI::removeDataDirectory( string &dataDirectory ) {
list<G4GIDI_map *>::iterator iter;
for( iter = dataDirectories.begin( ); iter != dataDirectories.end( ); iter++ ) {
for( auto iter = dataDirectories.cbegin( ); iter != dataDirectories.cend( ); ++iter ) {
if( dataDirectory == (*iter)->path( ) ) {
}
@@ -137,16 +129,14 @@ int G4GIDI::removeDataDirectory( string &dataDirectory ) {
/*
***************************************************************
*/
string G4GIDI::getDataDirectoryAtIndex( int index ) {
string G4GIDI::getDataDirectoryAtIndex( G4int index ) {
list<G4GIDI_map *>::iterator iter;
unsigned i = (unsigned) index;
if( index >= 0 ) {
if( i >= dataDirectories.size( ) ) return( "" );
for( iter = dataDirectories.begin( ); iter != dataDirectories.end( ); iter++, index-- ) {
if( index == 0 ) return( (*iter)->fileName( ) );
}
for( auto iter = dataDirectories.cbegin( ); iter != dataDirectories.cend( ); ++iter, --index )
if( index == 0 ) return( (*iter)->fileName( ) );
}
return( "" );
@@ -156,22 +146,22 @@ string G4GIDI::getDataDirectoryAtIndex( int index ) {
*/
vector<string> *G4GIDI::getDataDirectories( void ) {
int i = 0;
list<G4GIDI_map *>::iterator iter;
std::size_t i = 0;
vector<string> *v = new vector<string>( numberOfDataDirectories( ) );
for( iter = dataDirectories.begin( ); iter != dataDirectories.end( ); iter++, i++ ) (*v)[i] = string( (*iter)->fileName( ) );
for( auto iter = dataDirectories.cbegin( ); iter != dataDirectories.cend( ); ++iter, ++i )
(*v)[i] = string( (*iter)->fileName( ) );
return( v );
}
/*
***************************************************************
*/
bool G4GIDI::isThisDataAvailable( string &lib_name, int iZ, int iA, int iM ) {
G4bool G4GIDI::isThisDataAvailable( string &lib_name, G4int iZ, G4int iA, G4int iM ) {
bool b;
G4bool b;
char *targetName = G4GIDI_Misc_Z_A_m_ToName( iZ, iA, iM );
if( targetName == NULL ) return( false );
if( targetName == nullptr ) return( false );
string targetSymbol( targetName );
b = isThisDataAvailable( lib_name, targetSymbol );
smr_freeMemory( (void **) &targetName );
@@ -180,11 +170,11 @@ bool G4GIDI::isThisDataAvailable( string &lib_name, int iZ, int iA, int iM ) {
/*
***************************************************************
*/
bool G4GIDI::isThisDataAvailable( string &lib_name, string &targetName ) {
G4bool G4GIDI::isThisDataAvailable( string &lib_name, string &targetName ) {
char *path = dataFilename( lib_name, targetName );
if( path != NULL ) {
if( path != nullptr ) {
smr_freeMemory( (void **) &path );
return( true );
}
@@ -193,11 +183,11 @@ bool G4GIDI::isThisDataAvailable( string &lib_name, string &targetName ) {
/*
***************************************************************
*/
char *G4GIDI::dataFilename( string &lib_name, int iZ, int iA, int iM ) {
char *G4GIDI::dataFilename( string &lib_name, G4int iZ, G4int iA, G4int iM ) {
char *targetName = G4GIDI_Misc_Z_A_m_ToName( iZ, iA, iM ), *fileName;
if( targetName == NULL ) return( NULL );
if( targetName == nullptr ) return( nullptr );
string targetSymbol( targetName );
fileName = dataFilename( lib_name, targetSymbol );
smr_freeMemory( (void **) &targetName );
@@ -208,38 +198,23 @@ char *G4GIDI::dataFilename( string &lib_name, int iZ, int iA, int iM ) {
*/
char *G4GIDI::dataFilename( string &lib_name, string &targetSymbol ) {
/*
char *path;
list<G4GIDI_map *>::iterator iter;
for( iter = dataDirectories.begin( ); iter != dataDirectories.end( ); iter++ ) {
if( ( path = MCGIDI_map_findTarget( &((*iter)->smr), (*iter)->map, lib_name.c_str( ), projectile.c_str( ), targetSymbol.c_str( ) ) ) != NULL ) {
return( path );
}
}
return( NULL );
*/
//150121
//
char *path;
list<G4GIDI_map *>::iterator iter;
for( iter = dataDirectories.begin( ); iter != dataDirectories.end( ); iter++ ) {
if( ( path = MCGIDI_map_findTarget( NULL, (*iter)->map, lib_name.c_str(), projectile.c_str( ), targetSymbol.c_str( ) ) ) != NULL ) {
for( auto iter = dataDirectories.cbegin( ); iter != dataDirectories.cend( ); ++iter )
if( ( path = MCGIDI_map_findTarget( nullptr, (*iter)->map, lib_name.c_str(), projectile.c_str( ), targetSymbol.c_str( ) ) ) != nullptr )
return( path );
}
}
return( NULL );
return( nullptr );
}
/*
***************************************************************
*/
vector<string> *G4GIDI::getNamesOfAvailableLibraries( int iZ, int iA, int iM ) {
vector<string> *G4GIDI::getNamesOfAvailableLibraries( G4int iZ, G4int iA, G4int iM ) {
char *targetName = G4GIDI_Misc_Z_A_m_ToName( iZ, iA, iM );
vector<string> *listOfLibraries;
if( targetName == NULL ) return( new vector<string>( ) );
if( targetName == nullptr ) return( new vector<string>( ) );
string targetSymbol( targetName );
listOfLibraries = getNamesOfAvailableLibraries( targetSymbol );
smr_freeMemory( (void **) &targetName );
@@ -250,18 +225,17 @@ vector<string> *G4GIDI::getNamesOfAvailableLibraries( int iZ, int iA, int iM ) {
*/
vector<string> *G4GIDI::getNamesOfAvailableLibraries( string &targetName ) {
list<G4GIDI_map *>::iterator iter;
vector<string> *listOfLibraries = new vector<string>( );
MCGIDI_map *map;
MCGIDI_mapEntry *entry;
for( iter = dataDirectories.begin( ); iter != dataDirectories.end( ); iter++ ) {
for( auto iter = dataDirectories.cbegin( ); iter != dataDirectories.cend( ); ++iter ) {
map = MCGIDI_map_findAllOfTarget( &((*iter)->smr), (*iter)->map, projectile.c_str( ), targetName.c_str( ) );
for( entry = MCGIDI_map_getFirstEntry( map ); entry != NULL; entry = MCGIDI_map_getNextEntry( entry ) ) {
for( entry = MCGIDI_map_getFirstEntry( map ); entry != nullptr; entry = MCGIDI_map_getNextEntry( entry ) ) {
listOfLibraries->push_back( entry->evaluation );
}
MCGIDI_map_free( NULL, map );
MCGIDI_map_free( nullptr, map );
}
return( listOfLibraries );
}
@@ -271,14 +245,13 @@ vector<string> *G4GIDI::getNamesOfAvailableLibraries( string &targetName ) {
vector<string> *G4GIDI::getNamesOfAvailableTargets( void ) {
vector<string> *listOfTargets;
list<G4GIDI_map *>::iterator iter_map;
listOfTargets = new vector<string>( );
if( listOfTargets == NULL ) return( NULL );
for( iter_map = dataDirectories.begin( ); iter_map != dataDirectories.end( ); iter_map++ ) {
if( MCGIDI_map_walkTree( NULL, (*iter_map)->map, getNamesOfAvailableTargets_walker, (void *) listOfTargets ) != 0 ) {
if( listOfTargets == nullptr ) return( nullptr );
for( auto iter_map = dataDirectories.cbegin( ); iter_map != dataDirectories.cend( ); ++iter_map ) {
if( MCGIDI_map_walkTree( nullptr, (*iter_map)->map, getNamesOfAvailableTargets_walker, (void *) listOfTargets ) != 0 ) {
delete listOfTargets;
return( NULL );
return( nullptr );
}
}
return( listOfTargets );
@@ -286,12 +259,12 @@ vector<string> *G4GIDI::getNamesOfAvailableTargets( void ) {
/*
***************************************************************
*/
G4GIDI_target *G4GIDI::readTarget( string &lib_name, int iZ, int iA, int iM, bool bind ) {
G4GIDI_target *G4GIDI::readTarget( string &lib_name, G4int iZ, G4int iA, G4int iM, G4bool bind ) {
char *targetName = G4GIDI_Misc_Z_A_m_ToName( iZ, iA, iM );
G4GIDI_target *target;
if( targetName == NULL ) return( NULL );
if( targetName == nullptr ) return( nullptr );
string targetSymbol( targetName );
target = readTarget( lib_name, targetSymbol, bind );
smr_freeMemory( (void **) &targetName );
@@ -300,15 +273,13 @@ G4GIDI_target *G4GIDI::readTarget( string &lib_name, int iZ, int iA, int iM, boo
/*
***************************************************************
*/
G4GIDI_target *G4GIDI::readTarget( string &lib_name, string &targetName, bool bind ) {
G4GIDI_target *G4GIDI::readTarget( string &lib_name, string &targetName, G4bool bind ) {
vector<G4GIDI_target *>::iterator iter_targets;
for( iter_targets = targets.begin( ); iter_targets != targets.end( ); iter_targets++ ) {
if( (*iter_targets)->name == targetName ) return( NULL );
for( auto iter_targets = targets.cbegin( ); iter_targets != targets.cend( ); ++iter_targets ) {
if( (*iter_targets)->name == targetName ) return( nullptr );
}
char *path = dataFilename( lib_name, targetName );
if( path == NULL ) return( NULL );
if( path == nullptr ) return( nullptr );
G4GIDI_target *target = new G4GIDI_target( path );
if( bind ) targets.push_back( target );
@@ -318,12 +289,12 @@ G4GIDI_target *G4GIDI::readTarget( string &lib_name, string &targetName, bool bi
/*
***************************************************************
*/
G4GIDI_target *G4GIDI::getAlreadyReadTarget( int iZ, int iA, int iM ) {
G4GIDI_target *G4GIDI::getAlreadyReadTarget( G4int iZ, G4int iA, G4int iM ) {
char *targetName = G4GIDI_Misc_Z_A_m_ToName( iZ, iA, iM );
G4GIDI_target *target;
if( targetName == NULL ) return( NULL );
if( targetName == nullptr ) return( nullptr );
string targetSymbol( targetName );
target = getAlreadyReadTarget( targetSymbol );
smr_freeMemory( (void **) &targetName );
@@ -334,21 +305,17 @@ G4GIDI_target *G4GIDI::getAlreadyReadTarget( int iZ, int iA, int iM ) {
*/
G4GIDI_target *G4GIDI::getAlreadyReadTarget( string &targetSymbol ) {
vector<G4GIDI_target *>::iterator iter_targets;
for( iter_targets = targets.begin( ); iter_targets != targets.end( ); iter_targets++ ) {
for( auto iter_targets = targets.cbegin( ); iter_targets != targets.cend( ); ++iter_targets ) {
if( ( (*iter_targets)->name == targetSymbol ) ) return( *iter_targets );
}
return( NULL );
return( nullptr );
}
/*
***************************************************************
*/
int G4GIDI::freeTarget( G4GIDI_target *target ) {
G4int G4GIDI::freeTarget( G4GIDI_target *target ) {
vector<G4GIDI_target *>::iterator iter_targets;
for( iter_targets = targets.begin( ); iter_targets != targets.end( ); iter_targets++ ) {
for( auto iter_targets = targets.cbegin( ); iter_targets != targets.cend( ); ++iter_targets ) {
if( *iter_targets == target ) {
targets.erase( iter_targets );
delete target;
@@ -360,12 +327,12 @@ int G4GIDI::freeTarget( G4GIDI_target *target ) {
/*
***************************************************************
*/
int G4GIDI::freeTarget( int iZ, int iA, int iM ) {
G4int G4GIDI::freeTarget( G4int iZ, G4int iA, G4int iM ) {
int status;
G4int status;
char *targetName = G4GIDI_Misc_Z_A_m_ToName( iZ, iA, iM );
if( targetName == NULL ) return( 1 );
if( targetName == nullptr ) return( 1 );
string targetSymbol( targetName );
status = freeTarget( targetSymbol );
smr_freeMemory( (void **) &targetName );
@@ -374,11 +341,9 @@ int G4GIDI::freeTarget( int iZ, int iA, int iM ) {
/*
***************************************************************
*/
int G4GIDI::freeTarget( string &targetSymbol ) {
G4int G4GIDI::freeTarget( string &targetSymbol ) {
vector<G4GIDI_target *>::iterator iter_targets;
for( iter_targets = targets.begin( ); iter_targets != targets.end( ); iter_targets++ ) {
for( auto iter_targets = targets.cbegin( ); iter_targets != targets.cend( ); ++iter_targets ) {
if( (*iter_targets)->name == targetSymbol ) return( freeTarget( *iter_targets ) );
}
return( 1 );
@@ -388,12 +353,11 @@ int G4GIDI::freeTarget( string &targetSymbol ) {
*/
vector<string> *G4GIDI::getListOfReadTargetsNames( void ) {
vector<G4GIDI_target *>::iterator iter_targets;
vector<string> *listOfTargets;
listOfTargets = new vector<string>( );
if( listOfTargets == NULL ) return( NULL );
for( iter_targets = targets.begin( ); iter_targets != targets.end( ); iter_targets++ ) {
if( listOfTargets == nullptr ) return( nullptr );
for( auto iter_targets = targets.cbegin( ); iter_targets != targets.cend( ); ++iter_targets ) {
listOfTargets->push_back( *(*iter_targets)->getName( ) );
}
return( listOfTargets );
@@ -49,14 +49,14 @@ char *G4GIDI_Misc_Z_A_m_ToName( int iZ, int iA, int im ) {
if( Z == NULL ) return( NULL );
if( iA == 0 ) {
if( im != 0 ) return( NULL );
sprintf( S, "%s_natural", Z ); }
snprintf( S, sizeof S, "%s_natural", Z ); }
else {
sprintf( S, "%s%d", Z, iA );
snprintf( S, sizeof S, "%s%d", Z, iA );
if( im != 0 ) {
//sprintf( mS, "_m%d", im );
//snprintf( mS, sizeof mS, "_m%d", im );
//TK 170509
//Fix inconsistency of name of excited isomer between data and code
sprintf( mS, "m%d", im );
snprintf( mS, sizeof mS, "m%d", im );
strcat( S, mS );
}
}
@@ -55,10 +55,10 @@ G4bool G4LENDCrossSection::IsIsoApplicable( const G4DynamicParticle* dp, G4int i
if ( element != NULL ) {
if ( element->GetNumberOfIsotopes() != 0 ) {
std::vector< const G4Isotope*> vIsotope;
for ( size_t i = 0 ; i != element->GetNumberOfIsotopes() ; i++ ) {
for ( G4int i = 0 ; i != (G4int)element->GetNumberOfIsotopes() ; ++i ) {
if ( element->GetIsotope( i )->GetN() == iA ) vIsotope.push_back( element->GetIsotope( i ) );
}
for ( size_t i = 0 ; i != vIsotope.size() ; i++ ) {
for ( std::size_t i = 0 ; i != vIsotope.size() ; ++i ) {
G4int iM = vIsotope[i]->Getm();
if ( get_target_from_map( lend_manager->GetNucleusEncoding( iZ , iA , iM ) ) != NULL ) return true;
}
@@ -312,14 +312,14 @@ void G4LENDCrossSection::create_used_target_map()
lend_manager->RequestChangeOfVerboseLevel( verboseLevel );
size_t numberOfElements = G4Element::GetNumberOfElements();
std::size_t numberOfElements = G4Element::GetNumberOfElements();
static const G4ElementTable* theElementTable = G4Element::GetElementTable();
for ( size_t i = 0 ; i < numberOfElements ; ++i )
for ( std::size_t i = 0 ; i < numberOfElements ; ++i )
{
const G4Element* anElement = (*theElementTable)[i];
G4int numberOfIsotope = anElement->GetNumberOfIsotopes();
G4int numberOfIsotope = (G4int)anElement->GetNumberOfIsotopes();
if ( numberOfIsotope > 0 )
{
@@ -97,19 +97,19 @@ void G4LENDModel::create_used_target_map()
lend_manager->RequestChangeOfVerboseLevel( verboseLevel );
size_t numberOfElements = G4Element::GetNumberOfElements();
std::size_t numberOfElements = G4Element::GetNumberOfElements();
static const G4ElementTable* theElementTable = G4Element::GetElementTable();
for ( size_t i = 0 ; i < numberOfElements ; ++i )
for ( std::size_t i = 0 ; i < numberOfElements ; ++i )
{
const G4Element* anElement = (*theElementTable)[i];
G4int numberOfIsotope = anElement->GetNumberOfIsotopes();
G4int numberOfIsotope = (G4int)anElement->GetNumberOfIsotopes();
if ( numberOfIsotope > 0 )
{
// User Defined Abundances
for ( G4int i_iso = 0 ; i_iso < numberOfIsotope ; i_iso++ )
for ( G4int i_iso = 0 ; i_iso < numberOfIsotope ; ++i_iso )
{
G4int iZ = anElement->GetIsotope( i_iso )->GetZ();
G4int iA = anElement->GetIsotope( i_iso )->GetN();
@@ -81,7 +81,7 @@ void GIDI_settings_flux_order::print( int valuesPerLine ) const {
for( int iE = 0; iE < nE; ++iE ) {
if( printIndent ) std::cout << " ";
printIndent = false;
sprintf( buffer, " %15.8e %15.8e", mEnergies[iE], mFluxes[iE] );
snprintf( buffer, sizeof buffer, " %15.8e %15.8e", mEnergies[iE], mFluxes[iE] );
std::cout << buffer;
if( ( ( iE + 1 ) % valuesPerLine ) == 0 ) {
std::cout << std::endl;
@@ -209,7 +209,7 @@ void GIDI_settings_fluxes_from_bdfls::initialize2( cbdfls_file const *bdfls, dou
nf = cbdflsFIDs( (cbdfls_file *) bdfls, &fids );
for( int if1 = 0; if1 < nf; ++if1 ) {
sprintf( label, "LLNL_fid_%.3d", fids[if1] );
snprintf( label, sizeof label, "LLNL_fid_%.3d", fids[if1] );
GIDI_settings_flux flux = GIDI_settings_flux( label, temperature_MeV );
order = cbdflsGetFluxOrder( (cbdfls_file *) bdfls, fids[if1] );
for( int io = 0; io <= order; ++io ) {
@@ -234,7 +234,7 @@ GIDI_settings_flux GIDI_settings_fluxes_from_bdfls::getViaFID( int fid ) {
char label[100];
sprintf( label, "LLNL_fid_%.3d", fid );
snprintf( label, sizeof label, "LLNL_fid_%.3d", fid );
for( int if1 = 0; if1 < (int) mFluxes.size( ); ++if1 ) {
if( mFluxes[if1].isLabel( label ) ) return( mFluxes[if1] );
}
@@ -105,7 +105,7 @@ void GIDI_settings_group::print( bool outline, int valuesPerLine ) const {
std::cout << "GROUP: label = '" << mLabel << "': length = " << nbs << std::endl;
if( outline ) return;
for( int ib = 0; ib < nbs; ib++ ) {
sprintf( buffer, "%16.8e", mBoundaries[ib] );
snprintf( buffer, sizeof buffer, "%16.8e", mBoundaries[ib] );
std::cout << buffer;
if( ( ( ib + 1 ) % valuesPerLine ) == 0 ) std::cout << std::endl;
}
@@ -160,7 +160,7 @@ void GIDI_settings_groups_from_bdfls::initialize2( cbdfls_file const *bdfls ) {
ng = cbdflsGIDs( (cbdfls_file *) bdfls, &gids );
for( int ig = 0; ig < ng; ++ig ) {
ngbs = cbdflsGetGroup( (cbdfls_file *) bdfls, gids[ig], &boundaries );
sprintf( cLabel, "LLNL_gid_%.3d", gids[ig] );
snprintf( cLabel, sizeof xLabel, "LLNL_gid_%.3d", gids[ig] );
label = cLabel;
mGroups.push_back( GIDI_settings_group( label, ngbs, boundaries ) );
}
@@ -179,7 +179,7 @@ GIDI_settings_group GIDI_settings_groups_from_bdfls::getViaGID( int gid ) const
std::string label( "" );
char cLabel[100];
sprintf( cLabel, "LLNL_gid_%.3d", gid );
snprintf( cLabel, sizeof cLabel, "LLNL_gid_%.3d", gid );
label = cLabel;
for( int ig = 0; ig < (int) mGroups.size( ); ++ig ) {
if( mGroups[ig].isLabel( label ) ) return( mGroups[ig] );
@@ -12,7 +12,7 @@
#define PATH_MAX 4096
#endif
#ifdef WIN32
#if defined(WIN32) || defined(__MINGW32__)
#include <windows.h>
#define realpath( a, b ) GetFullPathName( a, PATH_MAX, b, NULL )
#endif
@@ -533,10 +533,10 @@ char *MCGIDI_map_toXMLString( statusMessageReporting *smr, MCGIDI_map *map ) {
for( entry = map->mapEntries; entry != NULL; entry = entry->next ) {
switch( entry->type ) {
case MCGIDI_mapEntry_type_target :
sprintf( p, targetFormat, entry->schema, entry->evaluation, entry->projectile, entry->targetName, entry->path );
snprintf( p, sizeof start, targetFormat, entry->schema, entry->evaluation, entry->projectile, entry->targetName, entry->path );
break;
case MCGIDI_mapEntry_type_path :
sprintf( p, pathFormat, entry->projectile, entry->path );
snprintf( p, sizeof start, pathFormat, entry->projectile, entry->path );
break;
}
while( *p ) p++; // Loop checking, 11.06.2015, T. Koi
@@ -12,7 +12,7 @@ static char versionStr[64] = "";
*/
const char *MCGIDI_version( void ) {
if( versionStr[0] == 0 ) sprintf( versionStr, "MCGIDI version %d.%d.%d", MCGIDI_VERSION_MAJOR, MCGIDI_VERSION_MINOR, MCGIDI_VERSION_PATCHLEVEL );
if( versionStr[0] == 0 ) snprintf( versionStr, sizeof versionStr, "MCGIDI version %d.%d.%d", MCGIDI_VERSION_MAJOR, MCGIDI_VERSION_MINOR, MCGIDI_VERSION_PATCHLEVEL );
return( versionStr );
}
/*
@@ -58,7 +58,7 @@ static int unitsDB_release( void );
*/
const char *PoPs_version( void ) {
if( versionStr[0] == 0 ) sprintf( versionStr, "PoPs version %d.%d.%d", POPS_VERSION_MAJOR, POPS_VERSION_MINOR, POPS_VERSION_PATCHLEVEL );
if( versionStr[0] == 0 ) snprintf( versionStr, sizeof versionStr, "PoPs version %d.%d.%d", POPS_VERSION_MAJOR, POPS_VERSION_MINOR, POPS_VERSION_PATCHLEVEL );
return( versionStr );
}
/*
@@ -43,7 +43,7 @@ int PoPs_particleReadDatabase( statusMessageReporting *smr, char const * /*name*
if( ( pop = PoPs_particleCreateLoadInfo( smr, PoPDatas[i1].name ) ) == NULL ) return( 1 );
if( PoPs_addParticleIfNeeded( smr, pop ) == pop ) {
if( ( pop->genre == PoPs_genre_atom ) && ( pop->Z < 110 ) ) {
sprintf( ZAName, "%d%.3d", pop->Z, pop->A );
snprintf( ZAName, sizeof ZAName, "%d%.3d", pop->Z, pop->A );
if( lPoPs_addParticleIfNeeded( smr, ZAName, "LLNL" ) < 0 ) return( 1 );
} }
else {
@@ -96,7 +96,7 @@ int lPoPs_addParticleIfNeeded( statusMessageReporting *smr, char const *name, ch
ispecial = 1; }
else if( Z == 99 ) {
if( ( 120 <= A ) && ( A < 126 ) ) {
sprintf( name_, "FissionProductENDL99%d", A );
snprintf( name_, sizeof name_, "FissionProductENDL99%d", A );
/* genre = PoPs_genre_atom; */
ispecial = 1;
}
@@ -108,13 +108,13 @@ int lPoPs_addParticleIfNeeded( statusMessageReporting *smr, char const *name, ch
else if( A == 0 ) {
strcpy( AStr, "_natural" ); }
else {
sprintf( AStr, "%d", A );
snprintf( AStr, sizeof AStr, "%d", A );
}
if( ( ZStr = lPoPs_ZSymbol( Z ) ) == NULL ) {
smr_setReportError2( smr, PoPs_smr_ID, PoPs_errorToken_badName, "string '%s' not a value ZA; Z = %d is not supported", name, Z );
return( -1 );
}
sprintf( name_, "%s%s", ZStr, AStr );
snprintf( name_, sizeof name_, "%s%s", ZStr, AStr );
/* genre = PoPs_genre_atom; */
/* if( ZA == 1 ) genre = PoPs_genre_baryon; */
} }
@@ -72,8 +72,8 @@ char *nf_floatToShortestString( double value, int significantDigits, int favorEF
if( flags & nf_floatToShortestString_includeSign ) sign = "+";
if( !isfinite( value ) ) {
sprintf( Fmt, "%%%sf", sign );
sprintf( Str_e, Fmt, value );
snprintf( Fmt, sizeof Fmt, "%%%sf", sign );
snprintf( Str_e, sizeof Str_e, Fmt, value );
return( strdup( Str_e ) );
}
@@ -81,8 +81,8 @@ char *nf_floatToShortestString( double value, int significantDigits, int favorEF
if( significantDigits < 0 ) significantDigits = 0;
if( significantDigits > 24 ) significantDigits = 24;
sprintf( Fmt, "%%%s.%de", sign, significantDigits );
sprintf( Str_e, Fmt, value );
snprintf( Fmt, sizeof Fmt, "%%%s.%de", sign, significantDigits );
snprintf( Str_e, sizeof Str_e, Fmt, value );
e1 = strchr( Str_e, 'e' );
if( significantDigits == 0 ) {
@@ -107,14 +107,14 @@ char *nf_floatToShortestString( double value, int significantDigits, int favorEF
exponent = (int) strtol( e1, &e2, 10 );
if( exponent != 0 ) { /* If 0, the exponent was "e+00". */
for( e1 = Str_e; *e1 != 0; e1++ ) ;
sprintf( e1, "e%d", exponent );
snprintf( e1, sizeof Str_e, "e%d", exponent );
digitsRightOfPeriod_f = significantDigits - exponent;
if( ( digitsRightOfPeriod_f > 25 ) || ( exponent > 50 ) ) return( strdup( Str_r ) );
if( digitsRightOfPeriod_f < 0 ) digitsRightOfPeriod_f = 0;
sprintf( Fmt, "%%%s.%df", sign, digitsRightOfPeriod_f );
sprintf( Str_f, Fmt, value );
snprintf( Fmt, sizeof Fmt, "%%%s.%df", sign, digitsRightOfPeriod_f );
snprintf( Str_f, sizeof Str_f, Fmt, value );
ne = (int) strlen( Str_e );
nf = (int) strlen( Str_f );
@@ -11,7 +11,7 @@
#include <fcntl.h>
#include <errno.h>
#ifdef WIN32
#if defined(WIN32) || defined(__MINGW32__)
#include <windows.h>
#define realpath( a, b ) GetFullPathName( a, PATH_MAX, b, NULL )
#define strtoll _strtoi64
@@ -11,7 +11,7 @@
#include <fcntl.h>
#include <errno.h>
#ifdef WIN32
#if defined(WIN32) || defined(__MINGW32__)
#include <BaseTsd.h>
#include <io.h>
#include <windows.h>