GSI Forum
GSI Helmholtzzentrum für Schwerionenforschung

Home » PANDA » PandaRoot » General » Question about Tasks
icon5.gif  Question about Tasks [message #4642] Wed, 11 July 2007 12:04 Go to next message
Felix Boehmer is currently offline  Felix Boehmer
Messages: 149
Registered: May 2007
Location: Munich
first-grade participant

From: *natpool.mwn.de
Hello there,

I have a question about the structure of (Cbm-)Tasks. Currently I am adding a small new Task that simulates a laser calibration system for the tpc.
Since this Task is independent of the MC track creation and thus of the number of events in the simulation run, I use Init() to let it do what it should do...

My problem now is this: The output of this new task are straight tracks in the tpc, TClonesArrays. They are independent of the real MC events as I said, but of course they should be treated like real tracks after their creation. So I want to create them at the beginning of the digitization macro and then put them into the same "early" tree branch where the "real" tracks are in. How can I do this? I did not see a function of the CbmRootManager that allows this.

Is this even possible, since the tree structure depends on the number of events? Or do I have to write that into the tree manually somehow?

Thanks in advance

Felix
Re: Question about Tasks [message #4644 is a reply to message #4642] Wed, 11 July 2007 12:16 Go to previous messageGo to next message
StefanoSpataro is currently offline  StefanoSpataro
Messages: 2736
Registered: June 2005
Location: Torino
first-grade participant

From: *physik.uni-giessen.de
Hi,
It is not clear to my mind what exactly does your task. Could you please be more explicit?

I suppose you create something inside some event, if you do not have event you cannot launch analysis tasks.
Maybe it could be better to create what you creates inside the first event, thus inside the Exec function. From this event you can run whatever task/macro you want.
If you do what you want in the Init I fear that you will miss something, I do not think that you can write in the tree at that stage of the program.

I don't know if I was clear enough, maybe if you describe with more details what you want to do, it could be easier to find the solution.
Bye

Ste
Re: Question about Tasks [message #4647 is a reply to message #4642] Wed, 11 July 2007 13:23 Go to previous messageGo to next message
Felix Boehmer is currently offline  Felix Boehmer
Messages: 149
Registered: May 2007
Location: Munich
first-grade participant

From: *natpool.mwn.de
Mhm, I am going to do it differenty now, forget my question Smile

But for your understanding, let my try to describe it better.

Suppose we have a task that analyses MC events and creates data containers, for example TClonesArrays of Points. This is done in a digitalization macro for a given number of MC events.
Would it be possible to have a task that, for example, creates another array of points, independently of the MC events that are processed in the macro? That means, we don't want it to be executed for every event with Exec(), we just want to execute it once, but still allow it to create additional data in the output tree...

Consider this a general question now please, because my specific problem was solved by sudden appearance of wisdom.
Re: Question about Tasks [message #4648 is a reply to message #4642] Wed, 11 July 2007 13:39 Go to previous messageGo to next message
Ralf Kliemt is currently offline  Ralf Kliemt
Messages: 507
Registered: May 2007
Location: GSI, Darmstadt
first-grade participant

From: 141.30.85*
Hi Felix,

I would write a method in my task that is called inside the Init(), preferably as last step.

Ralf.
Re: Question about Tasks [message #4649 is a reply to message #4648] Wed, 11 July 2007 13:51 Go to previous message
Felix Boehmer is currently offline  Felix Boehmer
Messages: 149
Registered: May 2007
Location: Munich
first-grade participant

From: *natpool.mwn.de
Yes, sure.

I mean something different, but the longer I think of a proper way to describe it, the more I think it is probably the best idea to let it go now Smile

Suppose we have a run with 10 events. Imagine someone (me), who wants to have a digitization task create an 11th event in the output tree that is independent of the real events, that is then passed to all the remaining digitization tasks to be treated like the 10 real events.

Is that even possible.... in theory?

Previous Topic: List of PandaRoot contact persons
Next Topic: Computing Wiki
Goto Forum:
  


Current Time: Sun Dec 01 00:11:15 CET 2024

Total time taken to generate the page: 0.01051 seconds