9#include <hlt/softwaretrigger/calculations/SoftwareTriggerCalculation.h>
11#include <framework/logging/Logger.h>
18 namespace SoftwareTrigger {
23 const std::string& identifier = identifierWithValue.first;
24 double& value = identifierWithValue.second;
26 debugOutputTTree->Branch(identifier.c_str(), &value);
31 debugOutputTTree->Fill();
37 const std::string& identifier = identifierWithValue.first;
38 const double value = identifierWithValue.second;
40 storeObject->append(prefix +
"_" + identifier, value);
51 ") than there were before (" << sizeBeforeCheck <<
"). Probably something strange is going on!");
SoftwareTriggerObject m_calculationResult
Internal storage of the result of the calculation.
virtual void doCalculation(SoftwareTriggerObject &m_calculationResult)=0
Override this function to implement your calculation.
void addDebugOutput(const StoreObjPtr< SoftwareTriggerVariables > &storeObject, const std::string &prefix)
Function to write out debug output into the given StoreObject.
bool m_debugPrepared
Flag to not add the branches twice to the TTree.
void writeDebugOutput(const std::unique_ptr< TTree > &debugOutputTTree)
Function to write out debug output into the given TTree.
const SoftwareTriggerObject & fillInCalculations()
Main function of this class: calculate the needed variables using the overwritten doCalculation funct...
Type-safe access to single objects in the data store.
Abstract base class for different kinds of events.