65 #include <tpia_target.h>
66 #include <tpia_misc.h>
79 char S[128], mS[32], *
name;
81 if( Z == NULL )
return( NULL );
83 if( im != 0 )
return( NULL );
84 sprintf( S,
"%s_natural", Z ); }
86 sprintf( S,
"%s_%d", Z, iA );
88 sprintf( mS,
"_m%d", im );
92 name = (
char *) xData_malloc2( NULL, strlen( S ) + 1, 0,
"name" );
93 if( name != NULL ) strcpy( name, S );
101 int Z1, A1, m1, Z2, A2,
m2;
105 if( A1 == 0 ) A2 = 0;
106 if( A2 == 0 ) A1 = 0;
115 tpia_product *product;
117 if( channel->decayChannel.numberOfProducts != nProducts )
return( 0 );
119 if( strcmp( product->productID->name, productNames[i] ) )
return( 0 );
129 vector<string> *listOfTargets = (vector<string> *) userData;
130 vector<string>::iterator iter;
132 if( entry->type != tpia_mapEntry_type_target )
return( 0 );
133 for( iter = listOfTargets->begin( ); iter != listOfTargets->end( ); iter++ ) {
134 if( entry->targetName == iter->c_str( ) )
return( 0 );
136 listOfTargets->push_back( entry->targetName );
char * G4GIDI_Misc_Z_A_m_ToName(int iZ, int iA, int im)
tpia_product * tpia_decayChannel_getNextProduct(tpia_product *product)
char * G4GIDI_Misc_channelCompound(char *particle1, char *particle2)
int tpia_miscNameToZAm(statusMessageReporting *smr, const char *name, int *Z, int *A, int *m)
const char * tpia_misc_ZToSymbol(int iZ)
int G4GIDI_Misc_channelProductsCompare(tpia_channel *channel, int nProducts, char **productNames)
int getNamesOfAvailableTargets_walker(tpia_mapEntry *entry, int, void *userData)
tpia_product * tpia_channel_getFirstProduct(tpia_channel *channel)