8 #if defined __cplusplus    24     if( particle == NULL ) 
return( NULL );
    45         if( *p == particle ) {
    51     if( particle == particleListEnd ) particleListEnd = particle->
prior;
    52     if( particle == particleList ) particleList = particle->
next;
    81     int i, iCmp, 
min, mid, 
max, 
Z, 
A, 
m, level;
    89         mid = ( min + 
max ) / 2;
    90         iCmp = strcmp( name, particleSortedList[mid]->name );
    91         if( iCmp == 0 ) 
return( particleSortedList[mid] );
    94             if( mid == 0 ) max = 0; }
    97             if( min > max ) min = 
max;
   101     if( numberOfParticles > 0 ) {
   102         iCmp = strcmp( name, particleSortedList[mid]->name );
   103         if( iCmp == 0 ) 
return( particleSortedList[mid] );
   104         if( ( iCmp < 0 ) && ( mid != 0 ) ) {
   106             iCmp = strcmp( name, particleSortedList[mid]->name );
   111     if( ( particle->
name = 
smr_allocateCopyString( smr, name, 
"particle->name", __FILE__, __LINE__, __func__ ) ) == NULL ) 
goto err;
   113     particle->
prior = NULL;
   114     particle->
next = NULL;
   132             "particleSortedList" ) ) == NULL ) 
goto err;
   135     if( particleList == NULL ) {
   137         particleListEnd = particleList = particle; }
   139         particle->
ordinal = particleListEnd->ordinal + 1;
   141         particleListEnd->
next = particle;
   142         particleListEnd = particle;
   145     if( ( mid != 0 ) || ( iCmp > 0 ) ) mid++;
   146     for( i = numberOfParticles; i > mid; i-- ) particleSortedList[i] = particleSortedList[i-1];
   147     particleSortedList[mid] = particle;
   167 #if defined __cplusplus MCGIDI_particle * MCGIDI_particle_getInternalID(statusMessageReporting *smr, const char *const name, MCGIDI_POPs *pops)
 
static int numberOfParticles
 
double MCGIDI_particleMass_AMU(statusMessageReporting *smr, const char *name)
 
static MCGIDI_particle * particleListEnd
 
static int initialSizeOfList
 
MCGIDI_POP * MCGIDI_POPs_findParticle(MCGIDI_POPs *pops, char const *name)
 
int MCGIDI_particle_printInternalSortedList(statusMessageReporting *)
 
printf("%d Experimental points found\, nlines)
 
static MCGIDI_particle ** particleSortedList
 
static int sizeOfParticleSortedList
 
static MCGIDI_particle * particleList
 
double A(double temperature)
 
#define smr_malloc2(smr, size, zero, forItem)
 
int MCGIDI_particle_freeInternalList(statusMessageReporting *smr)
 
int smr_isOk(statusMessageReporting *smr)
 
char * smr_allocateCopyString(statusMessageReporting *smr, char const *s, char const *forItem, char const *file, int line, char const *function)
 
int MCGIDI_miscNameToZAm(statusMessageReporting *smr, const char *name, int *Z, int *A, int *m, int *level)
 
void * smr_freeMemory(void **p)
 
static int incrementalSizeOfList
 
int MCGIDI_particle_initialize(statusMessageReporting *, MCGIDI_particle *particle)
 
MCGIDI_particle * MCGIDI_particle_free(statusMessageReporting *smr, MCGIDI_particle *particle)
 
#define smr_realloc2(smr, old, size, forItem)
 
MCGIDI_particle * MCGIDI_particle_new(statusMessageReporting *smr)
 
int MCGIDI_particle_release(statusMessageReporting *, MCGIDI_particle *particle)