HI Hajime, Thanks for reporting this issue. A fix for the original problem will be upload soon. This mean that you will be able to use TTree::Draw and TTree::Scan on the member declared as int *aa[3]; //[n] Implementing support for int (*aa)[3]; //[n] is more complex. Due to the fact that there are several viable alternative (int *aa[3]; //[n] or an std::vector of std::vector or event int *a; //[n3] (where n3 is another variable is set by the user to n*3)) This implementation will not have precedence on several other improvements (new I/O for other stl containers, member-wise saving of stl containers, etc.). If this is a problem, please let me know. Cheers, Philippe. -----Original Message----- From: Hajime Nanjyo [mailto:nanjyo@icepp.s.u-tokyo.ac.jp] Sent: Monday, July 26, 2004 1:58 AM To: Rene.Brun@cern.ch; pcanal@fnal.gov Cc: roottalk@pcroot.cern.ch Subject: Re: [ROOT] variable size two dimensional array Dear Rene and Philippe, This is the similar mail to the mail sent about 3 weeks before. I am still wating your help. (I understand you are busy.) Is it possible to make a variable size two dimensional array for ROOT I/O and to draw it in ROOT session with 'TTree::Draw();'? A small example was attached to indicate the problem. I used the ROOT at /afs/cern.ch/sw/root/v4.00.08/rh73_gcc32/root under Red Hat Linux 7.3 with gcc version 3.2. Best Regards, Hajime P.S In a case of variable size one dimensional array, program codes like below succeed. ----------------------------------------------------------------- A.h | A.C | in ROOT session ----------------------------------------------------------------- int *a; //[n] | a = new int[n]; | tree->Draw("a[]"); ----------------------------------------------------------------- If a syntax 'int (*aa)[3];//[n]' is supported in rootcint, similar codes as follows will probably be possible. ----------------------------------------------------------------- A.h | A.C | in ROOT session ----------------------------------------------------------------- int (*aa)[3];//[n] | aa = new int[n][3]; | tree->Draw("aa[][]"); ----------------------------------------------------------------- Could you implement this if possible?
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:09 MET