ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
ECCE @ EIC Software
Deprecated List
Modules
Namespaces
Classes
Files
File List
acts
analysis
coresoftware
Doxygen_Assist
ecce-detectors
fun4all_eicdetectors
geant4
tree
geant4-10.6-release
config
environments
examples
source
analysis
digits_hits
error_propagation
event
externals
g3tog4
geometry
global
graphics_reps
intercoms
interfaces
materials
parameterisations
particles
persistency
physics_lists
processes
biasing
cuts
decay
electromagnetic
hadronic
cross_sections
management
models
abla
abrasion
binary_cascade
cascade
coherent_elastic
de_excitation
em_dissociation
fission
gamma_nuclear
im_r_matrix
inclxx
lend
include
src
G4GIDI.cc
G4GIDI_map.cc
G4GIDI_mass.cc
G4GIDI_Misc.cc
G4GIDI_target.cc
G4LENDCapture.cc
G4LENDCaptureCrossSection.cc
G4LENDCombinedCrossSection.cc
G4LENDCombinedModel.cc
G4LENDCrossSection.cc
G4LENDElastic.cc
G4LENDElasticCrossSection.cc
G4LENDFission.cc
G4LENDFissionCrossSection.cc
G4LENDGammaCrossSection.cc
G4LENDGammaModel.cc
G4LENDInelastic.cc
G4LENDInelasticCrossSection.cc
G4LENDManager.cc
G4LENDModel.cc
G4LENDUsedTarget.cc
GIDI_settings.cc
GIDI_settings_flux.cc
GIDI_settings_group.cc
GIDI_settings_particle.cc
lPoPs.cc
MCGIDI_angular.cc
MCGIDI_angularEnergy.cc
MCGIDI_distribution.cc
MCGIDI_energy.cc
MCGIDI_energyAngular.cc
MCGIDI_fromTOM.cc
MCGIDI_KalbachMann.cc
MCGIDI_kinetics.cc
MCGIDI_LLNLAngular_angularEnergy.cc
MCGIDI_map.cc
MCGIDI_mass.cc
MCGIDI_misc.cc
MCGIDI_outputChannel.cc
MCGIDI_particle.cc
MCGIDI_pop.cc
MCGIDI_product.cc
MCGIDI_quantitiesLookupMode.cc
MCGIDI_reaction.cc
MCGIDI_sampling.cc
MCGIDI_samplingSettings.cc
MCGIDI_target.cc
MCGIDI_target_heated.cc
MCGIDI_uncorrelated.cc
MCGIDI_version.cc
nf_angularMomentumCoupling.cc
nf_exponentialIntegral.cc
nf_gammaFunctions.cc
nf_GnG_adaptiveQuadrature.cc
nf_incompleteGammaFunctions.cc
nf_Legendre.cc
nf_Legendre_GaussianQuadrature.cc
nf_polevl.cc
nf_stringToDoubles.cc
nf_stringToDoubles_main.cc
nf_utilities.cc
PoPs.cc
PoPs_Bcast.cc
PoPs_data.cc
PoPs_mass.cc
ptwX_core.cc
ptwX_misc.cc
ptwXY_binaryOperators.cc
ptwXY_convenient.cc
ptwXY_core.cc
ptwXY_functions.cc
ptwXY_integration.cc
ptwXY_interpolation.cc
ptwXY_methods.cc
ptwXY_misc.cc
ptwXY_unitaryOperators.cc
statusMessageReporting.cc
xDataTOM.cc
xDataTOM_axes.cc
xDataTOM_importXML.cc
xDataTOM_importXML_axes.cc
xDataTOM_importXML_KalbachMann.cc
xDataTOM_importXML_polynomial.cc
xDataTOM_importXML_regionsW_XYs_LegendreSeries.cc
xDataTOM_importXML_regionsXYs.cc
xDataTOM_importXML_V_W_XYs.cc
xDataTOM_importXML_V_W_XYs_LegendreSeries.cc
xDataTOM_importXML_W_XYs.cc
xDataTOM_importXML_W_XYs_LegendreSeries.cc
xDataTOM_importXML_XYs.cc
xDataTOM_interpolation.cc
xDataTOM_KalbachMann.cc
xDataTOM_LegendreSeries.cc
xDataTOM_Misc.cc
xDataTOM_polynomial.cc
xDataTOM_regionsW_XYs_LegendreSeries.cc
xDataTOM_regionsXYs.cc
xDataTOM_V_W_XYs.cc
xDataTOM_V_W_XYs_LegendreSeries.cc
xDataTOM_W_XYs.cc
xDataTOM_W_XYs_LegendreSeries.cc
xDataTOM_XYs.cc
lepto_nuclear
management
particle_hp
parton_string
pre_equilibrium
qmd
quasi_elastic
radioactive_decay
rpg
theo_high_energy
util
processes
stopping
util
management
optical
parameterisation
scoring
solidstate
transportation
readout
run
track
tracking
visualization
macros
online_distribution
tutorials
doxygen_mainpage.h
File Members
External Links
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
xDataTOM_importXML_W_XYs_LegendreSeries.cc
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file xDataTOM_importXML_W_XYs_LegendreSeries.cc
1
/*
2
# <<BEGIN-copyright>>
3
# <<END-copyright>>
4
*/
5
#include <stdlib.h>
6
#include <string.h>
7
#include <limits.h>
8
#include <ctype.h>
9
10
#include "
xDataTOM_importXML_private.h
"
11
12
#if defined __cplusplus
13
namespace
GIDI {
14
using namespace
GIDI;
15
#endif
16
17
static
int
xDataXML_LegendreSeriesDataToTOM
(
statusMessageReporting
*smr,
xDataXML_element
*XE,
xDataTOM_LegendreSeries
*LegendreSeries,
18
int
index,
int
length
,
double
value
);
19
/*
20
************************************************************
21
*/
22
int
xDataXML_W_XYs_LegendreSeriesToTOM
(
statusMessageReporting
*smr,
xDataXML_element
*XE,
xDataTOM_element
*TE ) {
23
24
int
index,
length
;
25
xDataTOM_xDataInfo
*xDI = &(TE->
xDataInfo
);
26
xDataXML_element
*XMLChild;
27
char
const
*wLabel;
28
xDataTOM_W_XYs_LegendreSeries
*W_XYs_LegendreSeries = NULL;
29
30
if
( ( xDI->
data
=
xDataXML_initializeData
( smr, XE, TE,
xDataTOM_W_XYs_LegendreSeries_ID
,
sizeof
(
xDataTOM_W_XYs_LegendreSeries
) ) ) == NULL )
31
return
( 1 );
32
W_XYs_LegendreSeries = (
xDataTOM_W_XYs_LegendreSeries
*) xDI->
data
;
33
if
( ( wLabel =
xDataTOM_axes_getLabel
( smr, &(xDI->
axes
), 0 ) ) == NULL )
goto
err
;
34
length =
xDataXML_numberOfElementsByTagName
( smr, XE, wLabel );
35
if
(
xDataTOM_W_XYs_LegendreSeries_initialize
( smr, W_XYs_LegendreSeries, 0, length, 0.,
xDataTOM_subAxesType_proxy
, &(xDI->
axes
), NULL ) != 0 )
goto
err
;
36
37
for
( XMLChild =
xDataXML_getFirstElement
( XE ), index = 0; XMLChild != NULL; XMLChild =
xDataXML_getNextElement
( XMLChild ) ) {
38
if
( strcmp(
"axes"
, XMLChild->
name
) == 0 ) {
39
continue
; }
40
else
if
( strcmp( wLabel, XMLChild->
name
) == 0 ) {
41
if
(
xDataXML_W_XYs_LegendreSeries_LegendreSeriesToTOM
( smr, XMLChild, &(W_XYs_LegendreSeries->
LegendreSeries
[index]) ) != 0 )
goto
err
;
42
index++; }
43
else
{
44
smr_setReportError3
( smr,
xDataXML_get_smrUserInterfaceFromElement
( XE ),
xDataTOM_smrLibraryID
, -1,
45
"invalid element '%s' in xData = 'W_XYs_LegendreSeries'"
, XMLChild->
name
);
46
goto
err
;
47
}
48
}
49
50
return
( 0 );
51
52
err
:
53
return
( 1 );
54
}
55
/*
56
************************************************************
57
*/
58
int
xDataXML_W_XYs_LegendreSeries_LegendreSeriesToTOM
(
statusMessageReporting
*smr,
xDataXML_element
*XE,
xDataTOM_LegendreSeries
*LegendreSeries ) {
59
60
int
index,
length
;
61
double
value
;
62
63
if
(
xDataXML_convertAttributeTo_xDataTOM_Int
( smr, XE,
"index"
, &index, 1 ) != 0 )
return
( 1 );
64
if
(
xDataXML_convertAttributeTo_xDataTOM_Int
( smr, XE,
"length"
, &length, 1 ) != 0 )
return
( 1 );
65
if
(
xDataXML_convertAttributeToDouble
( smr, XE,
"value"
, &value, 1 ) != 0 )
return
( 1 );
66
return
(
xDataXML_LegendreSeriesDataToTOM
( smr, XE, LegendreSeries, index, length, value ) );
67
}
68
/*
69
************************************************************
70
*/
71
static
int
xDataXML_LegendreSeriesDataToTOM
(
statusMessageReporting
*smr,
xDataXML_element
*XE,
xDataTOM_LegendreSeries
*LegendreSeries,
72
int
index,
int
length
,
double
value
) {
73
74
if
(
xDataTOM_LegendreSeries_initialize
( smr, LegendreSeries, index, length, value ) != 0 )
return
( 1 );
75
if
(
xDataXML_stringToDoubles
( smr, XE, XE->
text
.
text
, length, LegendreSeries->
LegendreSeries
) == 0 )
return
( 0 );
76
xDataTOM_LegendreSeries_release
( LegendreSeries );
77
return
( 1 );
78
}
79
80
#if defined __cplusplus
81
}
82
#endif
geant4
tree
geant4-10.6-release
source
processes
hadronic
models
lend
src
xDataTOM_importXML_W_XYs_LegendreSeries.cc
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:25:47
using
1.8.2 with
ECCE GitHub integration