padsley / k600analyser

Code for the K600 analyser including plugin codes for silicon, clover and HAGAR data
1 stars 4 forks source link

PR254 Experiment - master gives no silicon events #106

Closed padsley closed 8 years ago

padsley commented 8 years ago

Master could try giving Dobby a sock...

if(!si->TestEvent()); si->ClearEvent(); //If the event fails for some reason, we void it and clear it here. The number of these should be logged and, ideally, should be zero. A VOIDED EVENT IS ONE IN WHICH ALL SILICON DATA ARE THROWN AWAY BECAUSE THE RESULT IS WRONG. There are more energy hits than theta hits, for example. IT THEY ARE HAPPENING, THEN YOU'VE DONE IT WRONG.

This is from MMM.c.

Note: if(!si->TestEvent());

So, this was functionally testing the event and then, having done so, clearing the event as the 'si->ClearEvent(); wasn't within the 'if' statement. However SiliconHits was set to be something +ve. Hence my confusion.

I have now changed this in the master (as it was a problem in there as well) and uncommented the print statement in 'SiliconData::ClearEvent()'. We should:

1) Check to see that this doesn't happen elsewhere, and

2) Make sure that the ClearEvent for an invalid event has a way of notifying the user of that eventuality.

padsley commented 8 years ago

Oh. I made this change in the master and all manner of thing is now well. Soo... called it closed.