12 declareInterface<IAFPProtonTransportTool>(
this);
18 ATH_MSG_INFO(
"AFPProtonTransportTool::initialize Initializing transport tool");
20 return StatusCode::SUCCESS;
29 if (!
file.is_open())
return StatusCode::FAILURE;
31 std::unique_ptr<AFPProtonTransportPolynomial> pol[4][8];
33 while (
file.peek() ==
'#') {
39 if (name ==
"m_xPositionInitIP") {
44 else if (name ==
"m_yPositionInitIP") {
49 else if (name ==
"m_zPositionInitIP") {
54 else if (name ==
"m_xSlopeInitIP") {
59 else if (name ==
"m_ySlopeInitIP") {
64 else if (name ==
"m_detectorPosition") {
69 else if (name ==
"m_nominalEnergy") {
75 file.ignore(1000,
'\n');
79 for (
int iEqu = 0; iEqu < 4; iEqu++) {
80 file.ignore(1000,
'\n');
81 for (
int iPoly = 0; iPoly < 8; iPoly++) {
85 for (
int i = 0; i < 10; i++) {
86 if (i <= N)
file >> ch[i];
89 file.ignore(1000,
'\n');
93 std::make_unique<AFPProtonTransportPolynomial>(N, ch[0], ch[1], ch[2], ch[3], ch[4], ch[5], ch[6], ch[7], ch[8], ch[9]);
104 return StatusCode::SUCCESS;