7#ifndef FRAMEWORK_CONDITIONS_H_
8#define FRAMEWORK_CONDITIONS_H_
14#include "Framework/Exception/Exception.h"
20#include "Framework/Configure/Parameters.h"
21#include "Framework/Logger.h"
37class ConditionsObject;
114 const std::string& classname,
const std::string& instancename,
137 std::map<std::string, CacheEntry>
cache_;
Interval-of-validity object for conditions information.
be configured to load conditions objects from CSV files.
Class which defines the run/event/type range for which a given condition is valid,...
Base class for all providers of conditions objects.
Base class for all conditions objects, very simple.
Container and cache for conditions and conditions providers.
const T & getCondition(const std::string &condition_name)
Primary request action for a conditions object If the object is in the cache and still valid (IOV),...
Process & process_
Handle to the Process.
std::map< std::string, CacheEntry > cache_
Conditions cache.
std::map< std::string, ConditionsObjectProvider * > providerMap_
Map of who provides which condition.
const ConditionsObject * getConditionPtr(const std::string &condition_name)
Primary request action for a conditions object If the object is in the cache and still valid (IOV),...
void onProcessEnd()
Calls onProcessEnd for all ConditionsObjectProviders.
ConditionsIOV getConditionIOV(const std::string &condition_name) const
Access the IOV for the given condition.
~Conditions()
Class destructor.
void onProcessStart()
Calls onProcessStart for all ConditionsObjectProviders.
void onNewRun(ldmx::RunHeader &)
Calls onNewRun for all ConditionsObjectProviders.
void createConditionsObjectProvider(const std::string &classname, const std::string &instancename, const std::string &tagname, const framework::config::Parameters ¶ms)
Create a ConditionsObjectProvider given the information.
Class which represents the process under execution.
Class encapsulating parameters for configuring a processor.
All classes in the ldmx-sw project use this namespace.
An entry to store an already loaded conditions object.
ConditionsObjectProvider * provider
Provider that gave us the conditions object.
const ConditionsObject * obj
Const pointer to the retrieved conditions object.
ConditionsIOV iov
Interval Of Validity for this entry in the cache.