GSI Forum
GSI Helmholtzzentrum für Schwerionenforschung

Home » PANDA » PandaRoot » Meetings » PandaRoot meeting, Wednesday 21th of October, 10:00, EVO
Re: PandaRoot meeting, Wednesday 21th of October, 10:00, EVO [message #9588 is a reply to message #9587] Tue, 20 October 2009 20:44 Go to previous messageGo to previous message
Mohammad Al-Turany is currently offline  Mohammad Al-Turany
Messages: 518
Registered: April 2004
Location: GSI, Germany
first-grade participant
From: *

Unfortunately I will not be able to participate in the meeting tomorrow, but any way I have some remarks and questions about the talk above:

  1. There is no initialization in root macros! You only specify where your parameters should be initialized from, ASCII, ROOT or Oracle.
  2. Hardcoded parameters is something which the subsystem developers should avoid
  3. Global initialization task containing the individual subsystem  initializations :
    • The Runtimedb is such a thing
  4. Initialization task for the individual subsystems
    • In each subsystem there is a parameter container factory that is a sub-class of FairContFact where the parameter containers have to be created for this sub system.
    • Each sub-system can implement his parameters as a sub-class of FairParGenericSet, with this the I/O for the parameters is already implemented for ASCII, ROOT and Oracle. Or it can implements directly the FairParSet and deliver themselves the I/O
  5. The Idea behind Init and Re-Init is to be a defined place to initialize or re-initialize a task, moreover tasks can be added in any order or as subtasks of each other, that is why it is important that each task know how to initialize it self, and all tasks has access to the static runtime data base and with get or find container they can access the containers they need and then the parameter themselves.

  1. What do you mean by dictionary in this context? what does it have more than parameter definitions and values? How different is it from PndEmcDigiPar for example?
  2. Where do you need to set a branch address? Usually this is hidden from the user? some people hardcore the branch name of the input for there task in the task init, and if the task can only analyze or work with this specific input then it is not that bad! others make the branch name as argument of the task ctor and then they pass it to the GetObject. So is that what you are speaking about here or something else?
  3. Which data base you are speaking about here?it is not clear for me, if you mean our run time data base and the oracle behind or something else?
  4. Event time stamp as key to query database! How do you think this should be implemented? And which parameters are changing event by event? Normally some parameters could change within a run and this is usually detected and trigger a re-init of the runtimedb and the reconstruction or analysis tasks.

The most important thing in parameter handling is the version management system, what ever you use for the parameter handling or parameter I/O you need a realistic version management even if you have oracle or MySQL as I/O.



Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: EMC Software Meeting, 28 Oct., 10 hrs
Next Topic: Tracking Software Meeting at GSI Dec. '09
Goto Forum:

Current Time: Tue Mar 05 02:41:58 CET 2024

Total time taken to generate the page: 0.01003 seconds