diff --git a/src/OutputFile.cc b/src/OutputFile.cc index 0136227a22640f2391cacc02effe9e3cb52bbadf..4f683d858cf3d3cf6c13150fdcac5b8f0ace0136 100644 --- a/src/OutputFile.cc +++ b/src/OutputFile.cc @@ -31,10 +31,6 @@ void Detail::LumisectionMetadata::AddFileMetadata(FileMetadata&& fmd) { num_files++; } -bool Detail::LumisectionMetadata::IsLastIndex(int index) const { - return index == static_cast<int>(max_index); -} - std::string Detail::LumisectionMetadata::MakeFooter(uint32_t run_number) const { std::stringstream footer; footer << "{\n \"data\":[\""; diff --git a/src/OutputFile.h b/src/OutputFile.h index db4c13b355c14b88b5ab69b04ce37f57bf974be5..143bba3458f6587f266928cf8769f5814d8a0cff 100644 --- a/src/OutputFile.h +++ b/src/OutputFile.h @@ -52,15 +52,17 @@ struct LumisectionMetadata { : max_index(max_index_per_ls) {} void UpdateIndex(uint32_t global_index) { - std::cout << "Lumisection = " << lumisection << ", index = " << index_in_lumisection - << std::endl; - std::cout << "New LS = " << (global_index / (max_index + 1) + 1) << ", global index = " << global_index << std::endl; - assert(lumisection == 0 || lumisection == (global_index / (max_index + 1) + 1)); - lumisection = global_index / (max_index + 1) + 1; - index_in_lumisection = global_index % (max_index + 1); + auto new_ls = (global_index / (max_index + 1) + 1); + auto new_idx = global_index % (max_index + 1); + LOG(TRACE) << "Lumisection = " << lumisection << " ==> " << new_ls; + LOG(TRACE) << "Index in LS = " << index_in_lumisection << " ==> " << new_idx; + // Lumisection should only ever change after structure has been reset + assert(lumisection == 0 || lumisection == new_ls); + lumisection = new_ls; + index_in_lumisection = new_idx; } - bool IsLastIndex(int index) const; + auto IsLastIndex() const { return index_in_lumisection == max_index; } void AddFileMetadata(FileMetadata&& fmd); std::string MakeFooter(uint32_t run_number) const; }; diff --git a/src/OutputFileHandler.cc b/src/OutputFileHandler.cc index b046bd4ad68ae57677ee1094ff86175527869a87..afe0abafded15e75cf3152bf8d611be4bbdfd297 100644 --- a/src/OutputFileHandler.cc +++ b/src/OutputFileHandler.cc @@ -40,7 +40,7 @@ void OutputFileHandler::UpdateRunInfo(uint32_t run, uint32_t index) { void OutputFileHandler::CommitFile(uint32_t run, uint32_t index) { ls_->AddFileMetadata(outputFile_.GetMetadata()); - if (ls_->IsLastIndex(current_index_) && IsMainPipeline() && HasCmsswHeaders()) { + if (ls_->IsLastIndex() && IsMainPipeline() && HasCmsswHeaders()) { // If last in lumisection and using CMSSW header and is the main pipeline LOG(TRACE) << "Last file in lumisection; handing over LS metadata footer"; outputFile_.SetLumisectionFooter(std::move(ls_));