ROOT Future1 Some views on the ROOT future ROOT Workshop 2001 June 13 FNAL Ren é Brun CERN Interesting to look at our programme of work 16 months ago.

Slides:



Advertisements
Similar presentations
Physicist Interfaces Project an overview Physicist Interfaces Project an overview Jakub T. Moscicki CERN June 2003.
Advertisements

Using VB with MS Applications R. Juhl, Delta College.
Why ROOT?. ROOT ROOT: is an object_oriented frame work aimed at solving the data analysis challenges of high energy physics Object _oriented: by encapsulation,
Blueprint RTAGs1 Coherent Software Framework a Proposal LCG meeting CERN- 11 June Ren é Brun ftp://root.cern.ch/root/blueprint.ppt.
O. Stézowski IPN Lyon AGATA Week September 2003 Legnaro Data Analysis – Team #3 ROOT as a framework for AGATA.
George Blank University Lecturer. CS 602 Java and the Web Object Oriented Software Development Using Java Chapter 4.
Copyright 2003 The McGraw-Hill Companies, Inc CHAPTER Application Software computing ESSENTIALS    
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
Microsoft Visual Basic 2005 ENRICHMENT CHAPTER Visual Studio Tools for Office.
Introduction to Object-oriented Programming CSIS 3701: Advanced Object Oriented Programming.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Sept 11, 2003ROOT Day1, Suzanne Panacek39 ROOT An object oriented HEP analysis framework. Day 1.
ROOT An object oriented HEP analysis framework.. Computing in Physics Physics = experimental science =>Experiments (e.g. at CERN) Planning phase Physics.
XML I/O in ROOT S. Linev, R. Brun, H.G. Essel CHEP 2004.
Software All parts of the computer people can NOT touch, such as programs, files, documents and any other data.
ROOT Graphics Release planning – June 2006 See also the Graphics Work Package Program of Work on the web.Graphics Work Package Program of Work.
- Circle markers produced by TAsimage: They do not match was is produced on screen. The line width is too thick. Some other markers need to be tune a bit.
ROOT Tutorials - Session 51 ROOT Tutorials – Session 8 GUI, Signal/Slots, Image Processing, Carrot Fons Rademakers.
Zubanov Alexei, 2006 Aug 07 – Sep 28 QtROOT package extension with Coin3D lib.
Review C++ exception handling mechanism Try-throw-catch block How does it work What is exception specification? What if a exception is not caught?
M.Frank CERN/LHCb - Persistency Workshop, Dec.2004 Agenda: 2 separate talks! Don’t mangle together what does not belong together 1.Schema Evolution Tests.
Bertrand Bellenot ROOT Users Workshop Mar ROOT GUI Builder Status & Plans ROOT & External GUI World MFC, FOX, Qt, PVSS… Snapshot of the Future.
Programming with Alice Computing Institute for K-12 Teachers Summer 2011 Workshop.
Introduction to Matlab & Data Analysis
G.Barrand, LAL-Orsay OpenScientist Status (v11) Relationship with AIDA
Data Structure & File Systems Hun Myoung Park, Ph.D., Public Management and Policy Analysis Program Graduate School of International Relations International.
Guide to Programming with Python Chapter One Getting Started: The Game Over Program.
Chep 2006, Mumbai, IndiaPhilippe Canal (FNAL)1 Recent Developments in the ROOT I/O and TTrees CANAL, Philippe (FERMILAB) BRUN, Rene (CERN) FRANK, Markus.
1 Marek BiskupACAT2005PROO F Parallel Interactive and Batch HEP-Data Analysis with PROOF Maarten Ballintijn*, Marek Biskup**, Rene Brun**, Philippe Canal***,
Acat OctoberRene Brun1 Future of Analysis Environments Personal views Rene Brun CERN.
“Paper” output Root Graphics Workshop 16/07/2010.
ROOT Future1 Some views on the ROOT future ROOT Workshop 2001 June 13 FNAL Ren é Brun CERN.
OnX & ROOT1 OnX & ROOT on behalf of Guy Barrand ROOT Workshop 2001 June 13 FNAL Ren é Brun CERN.
LC Software Workshop, May 2009, CERN P. Mato /CERN.
H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev CHEP 2003 GSI Online Offline Object Oriented Go4.
Java Beans. Definitions A reusable software component that can be manipulated visually in a ‘builder tool’. (from JavaBean Specification) The JavaBeans.
Graphics Work Package ROOT release 5.28 Review Root meeting 11/06/2010.
06/13/2001Dmitry Litvintsev CDF Event Display Dmitry Litvintsev, Fermilab CDF Collaboration Introduction Elements of CDF Run II Event.
Feedback from LHC Experiments on using CLHEP Lorenzo Moneta CLHEP workshop 28 January 2003.
H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev ROOT 2002 GSI Online Offline Object Oriented Go4.
ROOT Users Workshop September 2005 Ilka Antcheva GUI Status and Development.
TTree::Draw What is it trying to be? Where is it going?
 2002 Prentice Hall. All rights reserved. 1 Chapter 2 – Introduction to the Visual Studio.NET IDE Outline 2.1Introduction 2.2Visual Studio.NET Integrated.
Graphics Editor in ROOT I l ka Antcheva*, René Brun, Fons Rademakers CERN, Geneva, Switzerland CERN, Geneva, Switzerland * funded by PPARK, Swindon, UK.
9/28/2005Philippe Canal, ROOT Workshop TTree / SQL Philippe Canal (FNAL) 2005 Root Workshop.
Postgraduate Computing Lectures PAW 1 PAW: Physicist Analysis Workstation What is PAW? –A tool to display and manipulate data. Learning PAW –See ref. in.
Giulio Eulisse, Northeastern University CHEP’04, Interlaken, 27th Sep - 1st Oct, 2004 CHEP’04 IGUANA Interactive Graphics Project:
Overview, Major Developments, Directions1 ROOT Project Status Major developments Directions NSS05 Conference 25 October Ren é Brun CERN Based on my presentation.
ROOT Workshop M.Frank LHCb/CERN Improvements in the I/O Area (*)  General I/O related improvements  Tree related issues  Plans (*) I present.
S.Linev: Go4 - J.Adamczewski, H.G.Essel, S.Linev ROOT 2005 New development in Go4.
Trees: New Developments1 Trees: New Developments Folders and Tasks ROOT Workshop 2001 June 13 FNAL Ren é Brun CERN
ROOT-CORE Team 1 Philippe Canal Markus Frank I/O Basic I/O, RDBMS interfaces, Trees.
ROOT Based CMS Framework Bill Tanenbaum US-CMS/Fermilab 14/October/2002.
GLAST 1 Event Display VRVS meeting Glast software collaboration Pisa experience with ROOT N Lumb and G Spandre INFN-Pisa.
Geant4 User Workshop 15, 2002 Lassi A. Tuura, Northeastern University IGUANA Overview Lassi A. Tuura Northeastern University,
CHEP06, Mumbai, India February 2006 General Status of ROOT GUI Ilka Antcheva, Bertrand Bellenot, René Brun, Valeriy Onuchin *, Fons Rademakers CERN,
1 G4UIRoot Isidro González ALICE ROOT /10/2002.
IE 411/511: Visual Programming for Industrial Applications Lecture Notes #2 Introduction to the Visual Basic Express 2010 Integrated Development Environment.
Fireworks : A Physics Event Display for CMS Christopher Jones Bertrand Bellenot, Alja Mrak-Tadel, Matevz Tadel Lothar Bauerdick Dmytro Kovalskyi Johannes.
ROOT Graphical User Interface The Graphical User Interface (GUI) design is an important component of the ROOT framework. Two sets of classes, recently.
LCG AA Meeting 30 June 2004 Ilka Antcheva Graphics User Interface in ROOT.
Follow-up to SFT Review (2009/2010) Priorities and Organization for 2011 and 2012.
2001 ROOT Workshop The Summary. Content Most Requested Request already satisfied Build and Distribution Web Page Information and Documentation.
POOL Historical Notes POOL has been the most advanced and the most used AA project. Currently, excellent teamwork with experiments on new features and.
LCG AA Internal Review 30 March 2005 ROOT Graphical User Interface Ilka Antcheva, Bertrand Bellenot, Valeri Fine, Valeriy Onuchin, Fons Rademakers.
Ideas for ROOT in the future
Information Communication and Technology Services
Chapter 2 – Introduction to the Visual Studio .NET IDE
Recent Developments in ROOT I/O Support for foreign classes
ROOT Support and Developments at FNAL
Presentation transcript:

ROOT Future1 Some views on the ROOT future ROOT Workshop 2001 June 13 FNAL Ren é Brun CERN Interesting to look at our programme of work 16 months ago

ROOT2001 Rene BrunROOT Future2 General remarks In 1995, we had planned less than 50% of ROOT 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.

ROOT2001 Rene BrunROOT Future3 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 computing 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

ROOT2001 Rene BrunROOT Future4 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

ROOT2001 Rene BrunROOT Future5 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 …… ???

ROOT2001 Rene BrunROOT Future6 Short Term (coming 6 to 8 months) Replace current Attribute widgets 2003

ROOT2001 Rene BrunROOT Future7 Short Term (coming 6 to 8 months) Split TPad in 3 classes TPad: pad management TPadBasicGraphics with interfaces to TVirtualX TVirtualPS TGraphicsEditor 2003

ROOT2001 Rene BrunROOT Future8 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

ROOT2001 Rene BrunROOT Future9 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

ROOT2001 Rene BrunROOT Future10 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) 2003

ROOT2001 Rene BrunROOT Future11 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) 2003

ROOT2001 Rene BrunROOT Future12 Long Term ( >) 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 2003

ROOT2001 Rene BrunROOT Future13 Long Term ( >) 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 ?) 2003

ROOT2001 Rene BrunROOT Future14 Long Term ( >)

ROOT2001 Rene BrunROOT Future15 List from Philippe (1) rootcint: 1. move to NOT link class by default 2. Enable the dictionary generation for template member functions TTree::Draw implement 1. calling CINT function (or macro file) 2. allow arguments if function calls 3. int Index$(variable,dimension) 4. Add an interfact to pass the histogram by address rather than name TTree::Draw fix the non working: 1. T->Draw("((TH1F*)(fWebHistogram.GetObject())).GetRMS()") 2. Handling of variable size array that happens to be of size With fTracks a TClonesArray of TTrack and fPoints an array of double inside TTrack: tree->Draw("fTracks.fPoints - fTracks.fPoints[][fTracks.fAvgPoints]"); 4. a few odd problem with strings. TTree::Scan 1. Update it to print at least N elements of the arrays inside an entry

ROOT2001 Rene BrunROOT Future16 List from Philippe (2) I/O implement: 1. Add the ability to connect a hand-coded streamer to a class. 2. myNonTObject **myVarArr; //[index] [waiting to see what Viktor has designed] 3. Shadow class of nested types (need CINT upgrade) 4. Upgrade the 'Inspect' mechanism to allow for browsing of non-TObject classes 5. Add a default constructor for the shadow class where the non-instrumented class does not have a default ctor (see TPadOpenGLView.h) 6. Pursue the issue of TClonesArray as an embedded data member vs a pointer 7. Ability to set a data member from another one during the I/O 8. Update the TClass containers in TROOT and TClassTable for efficiency 9. Fix problem of TStreamer and templates CINT 1. upgrade CINT/ROOT so that cintdlls work on all platforms? MakeProject 1. upgrade to work with namespace and templates. TabCom Make it work for nested class and for function result. DrawTest: 1. get better statistics 2. add more test

ROOT2001 Rene BrunROOT Future17 Ilka Antcheva GUI Documentation new chapter in Users Guide SavePrimitive for all GUI classes to save a GUI like with SaveAs canvas.C Make GUI classes persistent capable to save a TGMainFrame in a Root file GUI Editor/Builder Redesign Attribute widgets Redesign graphics editor (a la Powerpoint)

ROOT2001 Rene BrunROOT Future18 Olivier Couet True Type Fonts 2 work well advanced better fonts can be rotated better GetTextExtent (good for TLatex) 3-d graphics plan to work with E.Tchernaev algorithms for the geometry also for lego-plots visible in X3D/OpenGL Revisit many 2-d graphics classes

ROOT2001 Rene BrunROOT Future19 Valeriy Onuchin Win32GDK work with the Threads problem reported by Bertrand make win32GDK operational TBrowser optimisations for navigation in containers with many objects Carrot support and development

ROOT2001 Rene BrunROOT Future20 Fons Basic infrastucture support and development Build system System classes GUI development and Supervision PROOF with Maarten GRID support and interfaces

ROOT2001 Rene BrunROOT Future21 Rene Try to coordinate the activities Implement HELP system root_help.root file generated by THtml opportunity to improve the doc