File tree Expand file tree Collapse file tree 3 files changed +23
-7
lines changed
simulation/include/EMCALSimulation Expand file tree Collapse file tree 3 files changed +23
-7
lines changed Original file line number Diff line number Diff line change @@ -72,6 +72,7 @@ class Digitizer : public TObject
7272 double getEventTime () const { return mDigits .getEventTime (); }
7373 bool isLive (double t) const { return mDigits .isLive (t); }
7474 bool isLive () const { return mDigits .isLive (); }
75+ bool isCurrentEventTriggered () const { return mDigits .isCurrentEventTriggered (); }
7576
7677 void setDebugStreaming (bool doStreaming) { mEnableDebugStreaming = doStreaming; }
7778
Original file line number Diff line number Diff line change @@ -60,8 +60,21 @@ class DigitsWriteoutBuffer
6060
6161 double getTriggerTime () const { return mTriggerTime ; }
6262 double getEventTime () const { return mLastEventTime ; }
63- bool isLive (double t) const { return ((t - mTriggerTime ) < mLiveTime || (t - mTriggerTime ) >= (mLiveTime + mBusyTime - mPreTriggerTime )); }
64- bool isLive () const { return ((mLastEventTime - mTriggerTime ) < mLiveTime || (mLastEventTime - mTriggerTime ) >= (mLiveTime + mBusyTime - mPreTriggerTime )); }
63+ bool isLive (double t) const
64+ {
65+ return ((t - mTriggerTime ) < mLiveTime || (t - mTriggerTime ) >= (mLiveTime + mBusyTime - mPreTriggerTime ));
66+ }
67+ bool isLive () const
68+ {
69+ return ((mLastEventTime - mTriggerTime ) < (mLiveTime - mPreTriggerTime ) || (mLastEventTime - mTriggerTime ) >= (mLiveTime + mBusyTime - mPreTriggerTime ));
70+ }
71+
72+ // / Check if current collision was triggered
73+ // / \return true if event was triggered
74+ bool isCurrentEventTriggered () const
75+ {
76+ return mLastEventTime == mTriggerTime ;
77+ }
6578
6679 // function returns true if the collision occurs 600ns before the readout window is open
6780 // Look here for more details https://alice.its.cern.ch/jira/browse/EMCAL-681
Original file line number Diff line number Diff line change @@ -332,15 +332,17 @@ void DigitizerSpec::run(framework::ProcessingContext& ctx)
332332 if (!trigger.any ()) {
333333 continue ;
334334 }
335- // Trigger sim: Prepare CTP input digit
336- acceptedTriggers.push_back (std::make_tuple (timesview[collID], trigger));
337- LOG (debug) << " EMCAL TRU simulation: Sending trg = " << trigger << " to CTP" ;
338335
339336 mDigitizer .setEventTime (timesview[collID], trigger.any ());
340-
341- if (! mDigitizer . isLive ()) {
337+ if (! mDigitizer . isCurrentEventTriggered ()) {
338+ LOG (debug) << " reject collision " ;
342339 continue ;
343340 }
341+ LOG (debug) << " accept collision" ;
342+
343+ // Trigger sim: Prepare CTP input digit
344+ acceptedTriggers.push_back (std::make_tuple (timesview[collID], trigger));
345+ LOG (debug) << " EMCAL TRU simulation: Sending trg = " << trigger << " to CTP" ;
344346
345347 // for each collision, loop over the constituents event and source IDs
346348 // (background signal merging is basically taking place here)
You can’t perform that action at this time.
0 commit comments