55 if (
m_rwoption.value() != std::string(
"READ")) {
56 ATH_MSG_FATAL(
"Called configureReadBranches() when ROOT file was not opened in READ mode.");
57 return StatusCode::FAILURE;
64 if (!m_EventTree->GetListOfBranches()->FindObject(branchName.c_str())) {
65 ATH_MSG_FATAL(
"Configured input branch: " << branchName <<
" not found!");
66 return StatusCode::FAILURE;
68 TBranch *branchIn = m_EventTree->GetBranch(branchName.c_str());
69 branchIn->SetAddress(&(m_eventInputHeaders.at(i)));
70 m_EventTree->SetBranchStatus(branchName.c_str(), 1);
76 if (!m_EventTree->GetListOfBranches()->FindObject(branchName.c_str())) {
77 ATH_MSG_FATAL(
"Configured output branch: " << branchName <<
" not found!");
78 return StatusCode::FAILURE;
80 TBranch *branchIn = m_EventTree->GetBranch(branchName.c_str());
81 branchIn->SetAddress(&(m_eventOutputHeaders.at(i)));
82 m_EventTree->SetBranchStatus(branchName.c_str(), 1);
85 return StatusCode::SUCCESS;
182 if (
m_rwoption.value() == std::string(
"READ")) {
184 return StatusCode::SUCCESS;
202 for (
unsigned i = 0; i < m_eventInputHeaders.size(); i++) {
205 for (
unsigned i = 0; i < m_eventOutputHeaders.size(); i++) {
207 ATH_MSG_DEBUG(
"n.roads_1st = " << m_eventOutputHeaders.at(i)->nFPGATrackSimRoads_1st());
208 ATH_MSG_DEBUG(
"n.roads_2nd = " << m_eventOutputHeaders.at(i)->nFPGATrackSimRoads_2nd());
209 ATH_MSG_DEBUG(
"n.tracks_1st = " << m_eventOutputHeaders.at(i)->nFPGATrackSimTracks_1st());
210 ATH_MSG_DEBUG(
"n.tracks_2nd = " << m_eventOutputHeaders.at(i)->nFPGATrackSimTracks_2nd());
215 for (
unsigned i = 0; i < m_eventInputHeaders.size(); i++) {
216 m_eventInputHeaders.at(i)->reset();
220 for (
unsigned i = 0; i < m_eventOutputHeaders.size(); i++) {
221 m_eventOutputHeaders.at(i)->reset();
225 if (m_eventInputHeaders.size() == 0 and m_eventOutputHeaders.size() == 0) {
226 ATH_MSG_ERROR(
"Tried to fill output ROOT file with no configured input or output headers.");
227 return StatusCode::FAILURE;
230 return StatusCode::SUCCESS;
238 if (
m_rwoption.value() != std::string(
"READ")) {
240 return StatusCode::SUCCESS;
243 for (
auto*
header : m_eventInputHeaders) {
247 for (
auto*
header : m_eventOutputHeaders) {
253 if (
m_event >=
static_cast<unsigned>(m_EventTree->GetEntries())) {
255 if (
m_event >=
static_cast<unsigned>(m_EventTree->GetEntries())) {
256 unsigned current_file =
m_file++;
257 if (current_file <
m_inpath.value().size()) {
264 return StatusCode::SUCCESS;
274 int statIn = m_EventTree->GetBranch(branchName.c_str())->GetEntry(
m_event);
275 if (statIn <= 0)
ATH_MSG_WARNING(
"Error in reading from branch " << branchName);
279 int statOut = m_EventTree->GetBranch(branchName.c_str())->GetEntry(
m_event);
280 if (statOut <= 0)
ATH_MSG_WARNING(
"Error in reading from branch " << branchName);
288 return StatusCode::SUCCESS;