Open fdplacido opened 2 years ago
With this, if two or more LCFIplus processors are used in the same event, LCIOStorer::SetEvent
would be called more than once: clearing the objects and relations, and doing the conversions.
Instead of using a static
object, or setting the event multiple times, one could also store the LCIOStorer
object per event, and retrieve it in the following LCFIplus processors.
Sorry for not reviewing for very long time...
I don't know how multiple LCIOStorers work while the Event (and EventStore) is still a singleton. Would you explain how you consider to run multi-threading? Processing a same event in parallel or treating completely different events at the same time? If it's the first case maybe it's better to implement some signaling function to assure one event is loaded and all processors are finished before going to the next event (need some work). On the latter case everything needs to be duplicated, which may be possible but need careful consideration. At least Event class (and EventStore) should be kept one per thread and we need to ensure this.
@andresailer
BEGINRELEASENOTES
LCIOStorer
to be able to run various LCFIplus processors concurrently or in parallel.ENDRELEASENOTES