24 std::vector<std::string> def;
25 def.push_back(
"DAQ@Pulse");
28 std::string owner =
"CreateSidePulseByPulseSplitting_";
32 eva.
Get<
QPulse>(owner.c_str(),label.
name.c_str()).SetIsJustAdded();
57 sMaster = pulseInfo.GetMasterSample();
59 sPulseInfo.Validate();
67 size_t newSize = samples.Size()/2;
69 if(newSize % 2 != 0) {
74 for(
size_t i = 0; i < newSize; i++) samplesA[i] = samples[i+offset];
76 for(
size_t i = 0; i < newSize; i++) samplesB[i] = samples[i+samples.Size()/2];
83 std::string owner =
"CreateSidePulseByPulseSplitting_";
86 evaA.Get<
QPulse>(owner.c_str(),label.
name.c_str()) = pulseA;
87 evaB.Get<
QPulse>(owner.c_str(),label.
name.c_str()) = pulseB;
89 if(p == 0) pulseLength = samples.Size()/2;
95 Long64_t triggerTime = sHeader.
GetTime().GetFromStartRunNs()+pulseLength;
96 sHeader.
GetTime().SetFromStartRunNs(triggerTime);
101 evaB.Get<
QBool>(
"Reader",
"GeneratedEvent")=
true;
104 list.
Push(evaB.GetEvent());
106 list.
Push(evaA.GetEvent());
#define Q_BEGIN_NAMESPACE
std::vector< std::string > GetVectorString(const std::string &parname, std::vector< std::string > defVal, bool warnCfg=true) const
Get a vector<string> parameter from config file ( see GetVectorDouble() )
bool wrapped into a QObject
void Push(const QEvent &obj)
void Init(const QReader &reader, QEventAssembler &eva)
QCreateSidePulseByPulseSplitting()
void FillList(const QEvent &ev, QCachedEventList &list)
std::vector< std::string > fPulseLabels
Visitor class of QEvent that provides full handling of QEvent.
QEvent & GetEvent()
Get the QEvent.
void Get(const char *owner, WriteHandle< Q > &handle)
Get QObject from the event in write mode. This method has to be called in the event loop,...
void Assign(const QEvent &ev)
copies the underlying QEvent (calls QEvent::operator=)
void Add(const char *owner, WriteHandle< Q > &handle)
Add QObject to the event. This method has to be called before the event loop, e.g....
label for QObject in the QEvent
std::string owner
owner of the QObject
std::string name
name of the QObject
const Q & GetByLabel(const QEventLabel &label) const
Get a QObject in read mode by label.
void RequireByLabel(const QEventLabel &label) const
notify the QEvent that we need a QObject, if not found an exception is thrown
void Get(const char *owner, ReadHandle< Q > &handle) const
Get a QObject Handle in read mode.
Raw event: bolometer channel, trigger positions and types.
const QSampleInfo & GetMasterSample() const
Get MasterSample.
void SetChannelId(const int &channelId)
Set ChannelId.
Raw event: sampled waveform.
const Diana::QVectorI & GetSamplesADC() const
Get Samples acquired from ADC. Beware that fSamplesADC may by empty if fFiller is valid
void SetSamplesADC(const Diana::QVectorI &samples)
Set Samples acquired from ADC.
Base class for diana event readers.
contains information on flagged samples
void SetIsSide()
Set event type to Side.
Interface for raw daq vectors in Diana.