10 #include "FairMQLogger.h"
23 for (
int channelNr = 0; channelNr < data.size(); channelNr++){
25 fInputData[channelNr].insert(
fInputData[channelNr].end(), data[channelNr].begin(), data[channelNr].end());
31 vector<vector<PndSdsHit> > result;
41 for (
int channelIter = 0; channelIter <
fInputData.size(); channelIter++){
53 vector<PndSdsHit> result;
69 vector<vector<PndSdsHit> > firstDataInChannels;
71 for (
int channelNr = 0; channelNr <
fInputData.size(); channelNr++){
74 firstDataInChannels[channelNr] =
fInputData[channelNr][0];
88 int nSensorsInEvent = 0;
90 for (
auto inEvent : channelInEvent){
92 nSensorsInEvent += inEvent;
95 if (nSensorsInEvent > 0)
99 for(
int channelNr = 0; channelNr <
fNChannels; channelNr++){
100 if (channelInEvent[channelNr] ==
true){
102 result.insert(result.end(), firstDataInChannels[channelNr].begin(), firstDataInChannels[channelNr].end());
123 if (firstChannel > -1){
124 double firstTimeStamp = eventData[firstChannel][0].GetTimeStamp();
125 double lastTimeStamp = eventData[firstChannel].rbegin()->GetTimeStamp() +
offset;
126 result[firstChannel] =
true;
128 for (
int channelNr = 0; channelNr < eventData.size(); channelNr++){
129 if (channelNr != firstChannel){
130 double actualFirstTS = eventData[channelNr].begin()->GetTimeStamp();
131 double actualLastTS = eventData[channelNr].rbegin()->GetTimeStamp();
132 if (actualFirstTS == firstTimeStamp)
133 result[channelNr] =
true;
134 if (actualFirstTS < firstTimeStamp){
135 if (actualLastTS >= firstTimeStamp){
136 result[channelNr] =
true;
138 }
else if (actualFirstTS <= lastTimeStamp) {
139 result[channelNr] =
true;
150 double oldTimeStamp = -1;
151 for (
int channelNr = 0; channelNr < eventData.size(); channelNr++){
152 double actualTimeStamp = eventData[channelNr].front().GetTimeStamp();
153 if (actualTimeStamp < oldTimeStamp || oldTimeStamp < 0){
155 oldTimeStamp = actualTimeStamp;
void AddData(vector< vector< vector< PndSdsHit > > > &data)
vector< int > fSensorsInEvent
vector< vector< vector< PndSdsHit > > > fInputData
vector< bool > GetChannelsInEvent(vector< vector< PndSdsHit > > &eventData)
vector< vector< PndSdsHit > > GetEvents()
int FindFirstChannel(vector< vector< PndSdsHit > > &eventData)
channel which has the oldest data
vector< PndSdsHit > GetNextEvent()
PndMQHitsEventBuilder(int nChannels=4)
virtual ~PndMQHitsEventBuilder()