Geant4  10.01.p03
tpia_product.cc File Reference
#include <string.h>
#include <ctype.h>
#include <gString.h>
#include <tpia_target.h>
#include <tpia_misc.h>
+ Include dependency graph for tpia_product.cc:

Go to the source code of this file.

Functions

static int _tpia_product_getProductOutgoingData (statusMessageReporting *smr, xData_element *productElement, tpia_product *product)
 
static int _tpia_product_checkRequiredData (statusMessageReporting *smr, int allowMany, int m, xData_element *productElement, tpia_product *product, char *str)
 
static int _tpia_product_getDepositionEnergy (statusMessageReporting *smr, xData_element *depositionEnergy, tpia_product *product)
 
static int _tpia_product_getMultiplicityFromElement (statusMessageReporting *smr, xData_element *data, tpia_product *product)
 
tpia_product * tpia_product_create (statusMessageReporting *smr)
 
int tpia_product_initialize (statusMessageReporting *smr, tpia_product *product)
 
tpia_product * tpia_product_createGetFromElement (statusMessageReporting *smr, tpia_channel *channel, tpia_product *parentProduct, xData_element *productElement)
 
tpia_product * tpia_product_free (statusMessageReporting *smr, tpia_product *product)
 
int tpia_product_release (statusMessageReporting *smr, tpia_product *product)
 
int tpia_product_getFromElement (statusMessageReporting *smr, tpia_channel *channel, tpia_product *parentProduct, xData_element *productElement, tpia_product *product)
 
int tpia_product_getDecayChannelFromElement (statusMessageReporting *smr, xData_element *parentElement, tpia_channel *channel, tpia_product *parentProduct, tpia_product **priorProductNext)
 
long tpia_product_dataRequired (statusMessageReporting *, tpia_product *product)
 
tpia_product * tpia_product_getFirstProduct (tpia_product *product)
 
tpia_product * tpia_product_getProductByIndex (statusMessageReporting *, tpia_product *product, int index)
 
int tpia_product_doesDecay (statusMessageReporting *, tpia_product *product)
 
int tpia_product_numberOfProducts (statusMessageReporting *, tpia_product *product)
 
int tpia_product_isDataPresent (statusMessageReporting *, tpia_product *product, int b_data)
 
int tpia_product_sampleMultiplicity (statusMessageReporting *, tpia_product *product, double e_in, double r)
 

Variables

static const int tpia_b_twoBody_angular = tpia_m_angular
 
static const int tpia_b_twoBody_formFactor = 0
 
static const int tpia_b_NBody_Legendre = tpia_m_Legendre
 
static const int tpia_b_NBody_angular_energy = tpia_m_angular | tpia_m_angular_energy
 
static const int tpia_b_NBody_uncorrelate_Legendre = tpia_m_angular | tpia_m_Legendre
 
static const int tpia_b_NBody_pairProduction = 0
 
const char * tpia_productGenre_unknown = "unknown"
 
const char * tpia_productGenre_twoBody_angular = "twoBody_angular"
 
const char * tpia_productGenre_twoBody_formFactor = "twoBody_formFactor"
 
const char * tpia_productGenre_NBody_Legendre = "NBody_Legendre"
 
const char * tpia_productGenre_NBody_angular_energy = "NBody_angular_energy"
 
const char * tpia_productGenre_NBody_uncorrelate_Legendre = "NBody_uncorrelate_Legendre"
 
const char * tpia_productGenre_NBody_pairProduction = "NBody_pairProduction"
 

Function Documentation

static int _tpia_product_checkRequiredData ( statusMessageReporting *  smr,
int  allowMany,
int  m,
xData_element *  productElement,
tpia_product *  product,
char *  str 
)
static

Definition at line 251 of file tpia_product.cc.

References m, and tpia_misc_setMessageError_Element().

Referenced by _tpia_product_getProductOutgoingData().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int _tpia_product_getDepositionEnergy ( statusMessageReporting *  smr,
xData_element *  depositionEnergy,
tpia_product *  product 
)
static

Definition at line 300 of file tpia_product.cc.

References tpia_misc_get2d_xShared_yHistogram_data_Grouped(), tpia_misc_setMessageError_Element(), xData_addToAccessed(), xData_getFirstElement(), and xData_getNextElement().

Referenced by _tpia_product_getProductOutgoingData().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int _tpia_product_getMultiplicityFromElement ( statusMessageReporting *  smr,
xData_element *  data,
tpia_product *  product 
)
static

Definition at line 318 of file tpia_product.cc.

References tpia_misc_setMessageError_Element(), tpia_multiplicity_createGetFromElement(), and tpia_multiplicity_getTimeScaleFromElement().

Referenced by _tpia_product_getProductOutgoingData().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static int _tpia_product_getProductOutgoingData ( statusMessageReporting *  smr,
xData_element *  productElement,
tpia_product *  product 
)
static

Definition at line 197 of file tpia_product.cc.

References _tpia_product_checkRequiredData(), _tpia_product_getDepositionEnergy(), _tpia_product_getMultiplicityFromElement(), gString_addTo(), gString_initialize(), gString_release(), gString_string(), tpia_angular_getFromElement(), tpia_angularEnergy_getFromElement(), tpia_Legendre_getFromElement(), tpia_misc_setMessageError_Element(), tpia_product_getDecayChannelFromElement(), xData_addToAccessed(), xData_getFirstElement(), and xData_getNextElement().

Referenced by tpia_product_getFromElement().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

tpia_product* tpia_product_create ( statusMessageReporting *  smr)

Definition at line 72 of file tpia_product.cc.

References tpia_product_free(), and tpia_product_initialize().

Referenced by tpia_product_createGetFromElement().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

tpia_product* tpia_product_createGetFromElement ( statusMessageReporting *  smr,
tpia_channel *  channel,
tpia_product *  parentProduct,
xData_element *  productElement 
)

Definition at line 94 of file tpia_product.cc.

References tpia_product_create(), tpia_product_free(), and tpia_product_getFromElement().

Referenced by tpia_product_getDecayChannelFromElement().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

long tpia_product_dataRequired ( statusMessageReporting *  ,
tpia_product *  product 
)

Definition at line 360 of file tpia_product.cc.

int tpia_product_doesDecay ( statusMessageReporting *  ,
tpia_product *  product 
)

Definition at line 388 of file tpia_product.cc.

tpia_product* tpia_product_free ( statusMessageReporting *  smr,
tpia_product *  product 
)

Definition at line 106 of file tpia_product.cc.

References tpia_product_release(), and xData_free().

Referenced by tpia_channel_release(), tpia_product_create(), tpia_product_createGetFromElement(), and tpia_product_release().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int tpia_product_getDecayChannelFromElement ( statusMessageReporting *  smr,
xData_element *  parentElement,
tpia_channel *  channel,
tpia_product *  parentProduct,
tpia_product **  priorProductNext 
)

Definition at line 269 of file tpia_product.cc.

References tpia_product_createGetFromElement(), xData_freeElementList(), and xData_getElementsByTagName().

Referenced by _tpia_channel_getProductData(), and _tpia_product_getProductOutgoingData().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

tpia_product* tpia_product_getFirstProduct ( tpia_product *  product)

Definition at line 367 of file tpia_product.cc.

References tpia_decayChannel_getFirstProduct().

Referenced by tpia_product_getProductByIndex().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int tpia_product_getFromElement ( statusMessageReporting *  smr,
tpia_channel *  channel,
tpia_product *  parentProduct,
xData_element *  productElement,
tpia_product *  product 
)
tpia_product* tpia_product_getProductByIndex ( statusMessageReporting *  ,
tpia_product *  product,
int  index 
)

Definition at line 375 of file tpia_product.cc.

References tpia_decayChannel_getNextProduct(), and tpia_product_getFirstProduct().

+ Here is the call graph for this function:

int tpia_product_initialize ( statusMessageReporting *  smr,
tpia_product *  product 
)

Definition at line 84 of file tpia_product.cc.

References tpia_angular_initialize(), and tpia_Legendre_initialize().

Referenced by tpia_product_create().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int tpia_product_isDataPresent ( statusMessageReporting *  ,
tpia_product *  product,
int  b_data 
)

Definition at line 404 of file tpia_product.cc.

int tpia_product_numberOfProducts ( statusMessageReporting *  ,
tpia_product *  product 
)

Definition at line 396 of file tpia_product.cc.

int tpia_product_release ( statusMessageReporting *  smr,
tpia_product *  product 
)

Definition at line 115 of file tpia_product.cc.

References tpia_angular_release(), tpia_angularEnergy_release(), tpia_Legendre_release(), tpia_multiplicity_free(), tpia_product_free(), xData_free(), and xData_releaseAttributionList().

Referenced by tpia_product_free().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int tpia_product_sampleMultiplicity ( statusMessageReporting *  ,
tpia_product *  product,
double  e_in,
double  r 
)

Definition at line 412 of file tpia_product.cc.

Referenced by tpia_decayChannel_sampleProductsAtE().

+ Here is the caller graph for this function:

Variable Documentation

const int tpia_b_NBody_angular_energy = tpia_m_angular | tpia_m_angular_energy
static

Definition at line 53 of file tpia_product.cc.

Referenced by tpia_product_getFromElement().

const int tpia_b_NBody_Legendre = tpia_m_Legendre
static

Definition at line 52 of file tpia_product.cc.

Referenced by tpia_product_getFromElement().

const int tpia_b_NBody_pairProduction = 0
static

Definition at line 55 of file tpia_product.cc.

Referenced by tpia_product_getFromElement().

const int tpia_b_NBody_uncorrelate_Legendre = tpia_m_angular | tpia_m_Legendre
static

Definition at line 54 of file tpia_product.cc.

Referenced by tpia_product_getFromElement().

const int tpia_b_twoBody_angular = tpia_m_angular
static

Definition at line 50 of file tpia_product.cc.

Referenced by tpia_product_getFromElement().

const int tpia_b_twoBody_formFactor = 0
static

Definition at line 51 of file tpia_product.cc.

Referenced by tpia_product_getFromElement().

const char * tpia_productGenre_NBody_angular_energy = "NBody_angular_energy"

Definition at line 61 of file tpia_product.cc.

Referenced by tpia_product_getFromElement().

const char * tpia_productGenre_NBody_Legendre = "NBody_Legendre"

Definition at line 60 of file tpia_product.cc.

Referenced by tpia_product_getFromElement().

const char * tpia_productGenre_NBody_pairProduction = "NBody_pairProduction"

Definition at line 63 of file tpia_product.cc.

Referenced by tpia_product_getFromElement().

const char * tpia_productGenre_NBody_uncorrelate_Legendre = "NBody_uncorrelate_Legendre"

Definition at line 62 of file tpia_product.cc.

Referenced by tpia_product_getFromElement().

const char * tpia_productGenre_twoBody_angular = "twoBody_angular"

Definition at line 58 of file tpia_product.cc.

Referenced by tpia_product_getFromElement().

const char * tpia_productGenre_twoBody_formFactor = "twoBody_formFactor"

Definition at line 59 of file tpia_product.cc.

Referenced by tpia_product_getFromElement().

const char* tpia_productGenre_unknown = "unknown"

Definition at line 57 of file tpia_product.cc.

Referenced by tpia_product_getFromElement().