11#include <framework/core/Module.h>
12#include <top/dbobjects/TOPSampleTimes.h>
13#include <top/dbobjects/TOPCalTimebase.h>
14#include <framework/database/DBObjPtr.h>
59 virtual void event()
override;
65 virtual void endRun()
override;
90 const std::string& name,
91 const std::string& title,
92 const std::string& xTitle =
"",
93 const std::string& yTitle =
"")
const;
Class for accessing objects in the database.
Generator of double calibration pulses Output to TOPDigits.
double m_timeDifference
time difference between first and second pulse
std::vector< unsigned > m_asicChannels
ASIC calibration channels.
std::vector< double > m_sampleTimeIntervals
sample time intervals
DBObjPtr< TOPCalTimebase > * m_timebase
sample times from database
unsigned m_storageWindows
number of storage windows
std::vector< int > m_moduleIDs
slot ID's to generate for
bool m_useDatabase
if true, use sample times from database
int m_sampleDivisions
number of sample divisions (from NominalTDC)
double m_timeResolution
sigma of time difference
std::string m_outputFileName
if given, store sample times as root histograms
TOPSampleTimes m_sampleTimes
sample times from steering input
Calibration constants of a singe ASIC channel: time axis (sample times)
virtual void initialize() override
Initialize the Module.
virtual void event() override
Event processor.
virtual void endRun() override
End-of-run action.
virtual void terminate() override
Termination action.
TOPDoublePulseGeneratorModule()
Constructor.
void storeSampleTimes(std::string fileName)
Optionally store sample times used by the generator as root histograms fileName root output file name...
virtual void beginRun() override
Called when entering a new run.
virtual ~TOPDoublePulseGeneratorModule()
Destructor.
void saveAsHistogram(const std::vector< double > &vec, const std::string &name, const std::string &title, const std::string &xTitle="", const std::string &yTitle="") const
Save vector to histogram and write it out.
Abstract base class for different kinds of events.