You can do this either with TTree or TTable. With TTable approach create the class derived from TTable and apply TTableSorter as many times as you need to get all your mappings. (I fact this is the canonical approach that works with ROOT I/O). http://root.cern.ch/root/htmldoc/TTable.html#TTable:description I'd like to call your attention the class TTableSorter doesn't change the table it is applied agaist of. Neither it copies that table data. Since TTable class allocates the continuous memory block internally this block can be mapped to some hardware registries and populated by "electronics" directly or by parallel process via "real" share memory (Just in case); #include "TTable.h" typedef struct detector_t { int BoardID; /* Board ID */ int ModuleID; /* Module ID */ int ChannelID; /* Channel ID */ int WireNumber; /* Wire number */ int WireType; /* Wire type */ }; class TDetector : public TTable { public: ClassDefTable(TDetector,detector_t) ClassDef(TDetector,2) //C++ wrapper for <dst_track> StAF table }; #endif At the moment the TTable object can be stored with "root" I/O, MySQL, XDF (Corba-like) and ASCII( via SavePrimitive) formats. I wonder if you need further exaplanations. Let me know. Best regrads, Valeri ----- Original Message ----- From: "Jacek M. Holeczek" <holeczek@us.edu.pl> To: "roottalk" <roottalk@pcroot.cern.ch> Sent: Friday, June 22, 2001 7:35 PM Subject: [ROOT] detector mapping in root > Hi, > Assume one has a set of numbers (describing the wire mapping) in form : > BoardID ModuleID ChannelID WireNumber WireType > ... > 34 12 0 121 4 > 34 12 1 126 1 > ... > 55 15 7 121 4 > 55 37 288 5878 2 > ... > Now I would like to have functions like : > GetWireID(BoardID,ModuleID,ChannelID) > GetBoardID(WireNumber,WireType) > The canonical approach would be to create a "database", feed it with this > table, and then make queries. But ... I would like to do this without any > database connection. Just "pure" root. > I can't seem to have any good idea how to do this (mapping in both > directions between "electronic" channels and detector wires). > Any help appreciated. > Thanks in advance, > Jacek. > >
This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:50 MET