43 #if defined __cplusplus 
   48 static const int tpia_b_unknown = 0,
 
   50                  tpia_b_twoBody_formFactor = 0,                                       
 
   54                  tpia_b_NBody_pairProduction = 0;                                     
 
  125         multiplicity_next = multiplicity->
next;
 
  131     for( decayProduct = product->
decayChannel.
products; decayProduct != NULL; decayProduct = nextProduct ) {
 
  132         nextProduct = decayProduct->
next;
 
  145     char const *productGenre;
 
  146     char *
name, *multiplicity, *
e;
 
  156         if( multiplicity != NULL ) {
 
  157             if( strcmp( multiplicity, 
"energyDependent" ) && strcmp( multiplicity, 
"partialProduction" ) ) {    
 
  159                 while( isspace( *e ) ) e++;
 
  189         if( 
smr_isOk( smr ) ) _tpia_product_getProductOutgoingData( smr, productElement, product );
 
  202         if( strcmp( data->
name, 
"depositionEnergy" ) == 0 ) {
 
  204             if( _tpia_product_checkRequiredData( smr, allowMany, 
tpia_m_depositionEnergy, productElement, product, (
char*)
"deposition energy" ) ) 
return( 1 );
 
  205             if( _tpia_product_getDepositionEnergy( smr, data, product ) != 0 ) 
return( 1 ); }
 
  206         else if( strcmp( data->
name, 
"multiplicity" ) == 0 ) {
 
  209             if( _tpia_product_checkRequiredData( smr, allowMany, 
tpia_m_multiplicity, productElement, product, (
char*) 
"multiplicity" ) ) 
return( 1 );
 
  210             if( _tpia_product_getMultiplicityFromElement( smr, data, product ) != 0 ) 
return( 1 ); }
 
  211         else if( strcmp( data->
name, 
"angular" ) == 0 ) {
 
  213             if( _tpia_product_checkRequiredData( smr, allowMany, 
tpia_m_angular, productElement, product, (
char*) 
"angular" ) ) 
return( 1 );
 
  215         else if( strcmp( data->
name, 
"Legendre" ) == 0 ) {
 
  217             if( _tpia_product_checkRequiredData( smr, allowMany, 
tpia_m_Legendre, productElement, product, (
char*) 
"Legendre" ) ) 
return( 1 );
 
  219         else if( strcmp( data->
name, 
"angularEnergy" ) == 0 ) {
 
  220             if( _tpia_product_checkRequiredData( smr, allowMany, 
tpia_m_angular_energy, productElement, product, (
char*) 
"angularEnergy" ) ) 
return( 1 );
 
  222         else if( strcmp( data->
name, 
"decayChannel" ) == 0 ) {
 
  232         char const *str = 
"";
 
  276     for( i = 0; i < list->
n; i++ ) {
 
  281         if( parentProduct == NULL ) {
 
  290         *priorProductNext = product;
 
  291         priorProductNext = &(product->
next);
 
  305         if( strcmp( data->
name, 
"grouped" ) == 0 ) {
 
  320     const char *timeScale;
 
  321     int isDelayedNeutrons;
 
  330     if( isDelayedNeutrons == 0 ) {
 
  341                     current = current->
next ) {
 
  343                         multiplicity->
next = current;
 
  344                         prior->
next = multiplicity;
 
  349                 if( current == NULL ) prior->
next = multiplicity;
 
  379     if( index < 0 ) 
return( NULL );
 
  415     double *
p = multiplicityVsEnergy->
pointwise, dMult;
 
  422         for( i = 0; i < multiplicityVsEnergy->
numberOfPointwise - 1; i++, p += 2 ) 
if( e_in < p[2] ) 
break;
 
  423         dMult = ( e_in - p[0] ) / ( p[2] - p[0] );
 
  424         dMult = dMult * p[3] + ( 1. - dMult ) * p[1];
 
  426     multiplicity = (
int) dMult;
 
  427     if( r < ( dMult - multiplicity ) ) multiplicity++;
 
  429     return( multiplicity );
 
  432 #if defined __cplusplus