47 char S[128], mS[32], *
name;
49 if( Z == NULL )
return( NULL );
51 if( im != 0 )
return( NULL );
52 sprintf( S,
"%s_natural", Z ); }
54 sprintf( S,
"%s%d", Z, iA );
56 sprintf( mS,
"_m%d", im );
60 name = (
char *)
smr_malloc2( NULL, strlen( S ) + 1, 0,
"name" );
61 if( name != NULL ) strcpy( name, S );
69 int Z1, A1, m1, Z2, A2,
m2, level1, level2;
81 int G4GIDI_Misc_channelProductsCompare( tpia_channel *channel,
int nProducts,
char **productNames ) {
84 tpia_product *product;
86 if( channel->decayChannel.numberOfProducts != nProducts )
return( 0 );
87 for( product = tpia_channel_getFirstProduct( channel ), i = 0; product != NULL; product = tpia_decayChannel_getNextProduct( product ), i++ ) {
88 if( strcmp( product->productID->name, productNames[i] ) )
return( 0 );
98 vector<string> *listOfTargets = (vector<string> *) userData;
99 vector<string>::iterator iter;
102 for( iter = listOfTargets->begin( ); iter != listOfTargets->end( ); iter++ ) {
103 if( entry->
targetName == iter->c_str( ) )
return( 0 );
105 listOfTargets->push_back( entry->
targetName );
const char * MCGIDI_misc_ZToSymbol(int iZ)
char * G4GIDI_Misc_Z_A_m_ToName(int iZ, int iA, int im=0)
#define smr_malloc2(smr, size, zero, forItem)
int MCGIDI_miscNameToZAm(statusMessageReporting *smr, const char *name, int *Z, int *A, int *m, int *level)
enum MCGIDI_mapEntry_type type
int getNamesOfAvailableTargets_walker(GIDI::MCGIDI_mapEntry *entry, int level, void *userData)
static constexpr double m2
char * G4GIDI_Misc_channelCompound(char *particle1, char *particle2)