Hi Christoph,
Seems you really looked deep into setting up event structures.
Since I have only started with this (from a physics analysis point of
view) it might be that my info to you is only of limited use.
However, let's give it a try.
In setting up some 'event' structures for data analysis for the WA93/WA98
and as a development exercise for ALICE I have put together some classes
like Track, Jet (for track analysis), Invmass (for invariant mass studies)
and Calorimeter, Module, Cluster (to handle calorimeter signals).
Currently I am working on a Vertex class in relation with track reconstr.
and fitting procedures.
Clearly a Calorimeter cluster (e.g. photon) one might want to specify
as a track to enable all 'track analysis tools' for photons as well.
So obviously there are some 'inter-relational' actions needed for the
above classes.
Indeed I started out with the ideas you mentioned above, but then I
realised that it is better to define the 'relations' of all these objects
with eachother in the classes themselves.
In this way it works perfectly well to make TClonesArrays for each
class type, since all 'inter-relational' stuff is handled by the classes
(member functions) themselves.
For the moment this construction works satisfactory for me, but maybe
once I get to a more detailed level it might break down.
For the moment I can't judge on this, so here is the point where I
can't help you any further and if someone else can provide some more info on
this, please speak up so that the whole ROOT user community can profit from
it.
Cheers,
_/_/ _/ _/ _/_/_/_/ _/ _/
_/ _/ _/ _/ _/ _/ _/
_/ _/ _/ _/ _/ _/_/
_/ _/_/ _/ _/ _/ _/
_/ _/ _/ _/_/_/_/ _/ _/
*----------------------------------------------------------------------*
Dr. Nick van Eijndhoven Department of Subatomic Physics
email : nick@fys.ruu.nl Utrecht University / NIKHEF
tel. +31-30-2532331 (direct) P.O. Box 80.000
tel. +31-30-2531492 (secr.) NL-3508 TA Utrecht
fax. +31-30-2518689 The Netherlands
WWW : http://www.fys.ruu.nl/~nick Office : Ornstein lab. 172
----------------------------------------------------------------------
tel. +41-22-7679751 (direct) CERN PPE Division / ALICE exp.
tel. +41-22-7675857 (secr.) CH-1211 Geneva 23
fax. +41-22-7679480 Switzerland
CERN beep : 13+7294 Office : B 160 1-012
*----------------------------------------------------------------------*