# Presentation: 509623

## Some views on the ROOT future

- ROOT Workshop 2001
- June 13 FNAL
- René Brun
- CERN

- CERN School of Computing

## General remarks

- In 1995, we had planned less than 50% of ROOT 2001.
-  - importance of dictionary, RTTI
-  - Automatic Schema Evolution
-  - effort in GUI
-  - Online requirements (Threads, Timers, Sockets, etc)
- Development of a system is driven by:
-   - ideas from authors
-   - ideas from users
-   - new ideas and techniques in computing
-   - OS development. In 1995, push for Windows, Linux not here
-   - language developments (eg template support, exception handling, Java)
-   - cooperation with other systems (ex Objy, Oracle, Corba, Qt, etc)
-   - manpower (see next)

- Users expect stable and working systems. Quality of a system should
- improve with time. Often in contradiction with major developments.

- CERN School of Computing

- 17 - 30 Sept. 2000

## General remarks

- Authors spend more than 50 % of time in maintenance, trivial improvements, documentation, user support.
- Manpower situation and support for ROOT at CERN
- Support for ROOT requested by the CERN Computing Review
- New Computing Organization (LHC compution project) being decided now.
- Fons : more stable position within Alice
- Hoping to get at least one or two more persons.
- Excellent relationship CERN<-->FNAL
- Very good cooperation with major labs
- More prospects for cooperation between developers following HEPVIS2001 in Boston

- CERN School of Computing

- 17 - 30 Sept. 2000

## Current Ideas

- Short Term (2001)
- Medium Term (2002)
- Long term

- Not a commitment !

- Items may be moved from Short to Long term and vice-versa

- CERN School of Computing

- 17 - 30 Sept. 2000

## Short Term (coming 6 to 8 months)

- Reimplement TTree::Draw to use the new TSelector machinery
- New classes TTreeDrawSelector & TTreeDrawSelectorPROOF
- This point is urgent. It blocks the development of PROOF.
- Automatic folders when connecting Trees created from Folders
- Geant4 classes with rootcint
- Support for foreign classes not instrumented with ClassDef
- Improvements in ROOT + CINT + STL (eliminate side-effects)
- First operational PROOF working on Trees
- TreeViewer developments
- TTreeFormula improvements .........

- CERN School of Computing

- 17 - 30 Sept. 2000

## Short Term (coming 6 to 8 months)

- GUI on Windows
- Reduce number of WIN32 specific classes
- Replace current Attribute widgets, DrawPanel, FitPanel.

- CERN School of Computing

- 17 - 30 Sept. 2000

## Short Term (coming 6 to 8 months)

- Replace current Attribute widgets

- CERN School of Computing

- 17 - 30 Sept. 2000

## Short Term (coming 6 to 8 months)

- Split TPad in 3 classes
- TPad: pad management
- TPadBasicGraphics with interfaces to
- TVirtualX
- TVirtualPS
- TGraphicsEditor

- CERN School of Computing

- 17 - 30 Sept. 2000

## Short Term (coming 6 to 8 months)

- Separate g3d in two categories
-  geometry
-  3-d graphics primitives
- Collaboration with Guy Barrand,etc on 2-d/3-d interfaces
- OpenInventor picking
- Lego/Surface plots in 3-D
- Change color palette logic for 2-d graphics options
- Zoom algorithm on TGraph x axis
- String histograms TH1Str

- CERN School of Computing

- 17 - 30 Sept. 2000

## Medium Term (2002)

- Must have a geometry package with:
- support for G3/G4 like modelling
- boolean operations
- Visualisation (2-D, 3-D, cuts, picking)
- Where Am I.  Distance to boundary
- import/export to geom data base
- export to G3/G4 modellers

- CERN School of Computing

- 17 - 30 Sept. 2000

## Medium Term (2002)

- Abstract interface for Tree branches
- Recovery mechanism for Trees when the Tree header has not been written to the file.
- TTreeFormula-like class for C++ Event structures that could be used to simplify interactive selections in event displays.
- Integrated HELP (from common source)
- Integration with GRID middleware
- support large files (> 2Gb)
- Atlas MDC0/1.
- Alice Data Challenge 4
- support split mode for STL vectors (like TClonesArray)

- CERN School of Computing

- 17 - 30 Sept. 2000

## Medium Term (2002)

- MessageHandler: Could exploit this class much more.
- Event Generators interface: Possible convergence (HepMC, HEPPDT, etc)
- Math Library; GSL?, matrix package. Please help here
- Better support for Windows
- Reingeneering of, TStyle TGraph, TGaxis and like
- TF3 graphics
- Stacked lego plots in several systems
- Add Image processing classes
- Interfaces to Algebraic manipulation systems (eg gTyBalt)

- CERN School of Computing

- 17 - 30 Sept. 2000

## Long Term ( 2003-->)

- Extend the development model
- with more people taking responsabilities for major sub-systems
- with more people discussing design/redesign issues
- Hoping CINT in C++
- Redesign TMinuit with extensions
- probably time to extend Trees with support for more container types
- LHC data Challenges
- more and more GRID stuff. Logical Data Sets (Catalog in RDBMS),
- Use GRID services
- Huge effort in PROOF

- CERN School of Computing

- 17 - 30 Sept. 2000

## Long Term ( 2003-->)

- Major improvements in the graphics look and feel.
- More graphics classes
- More support for Event displays
- Graphics in WANs
- Probably major GUI developments; Root GUI, Qt, etc)
- Drag and drop objects between applications.
- More cluster analysis classes.
- Support for Exceptions , Namespaces?
- Root with efficient Web interfaces (TApache follow-on)
- Follow C++ development (hoping for a native RTTI)
- Root and Java (native Root classes in Java?) (coop with JAS ?)
- May be a new language (Microsoft ?)

- CERN School of Computing

- 17 - 30 Sept. 2000

## Long Term ( 2003-->)

- CERN School of Computing

- 17 - 30 Sept. 2000