Presentation is loading. Please wait.

Presentation is loading. Please wait.

24.3.03H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev CHEP 2003 GSI Online Offline Object Oriented Go4.

Similar presentations


Presentation on theme: "24.3.03H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev CHEP 2003 GSI Online Offline Object Oriented Go4."— Presentation transcript:

1 24.3.03H.G.Essel: Go4 - http://go4.gsi.de1 J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev CHEP 2003 GSI Online Offline Object Oriented Go4 v2.2 Status & Overview

2 24.3.03H.G.Essel: Go4 - http://go4.gsi.de2 Package Layers Go4 v2.2 ROOT Framework TThread Go4 GUI Go4 Analysis Qt Library QtROOT Go4TaskHandler Go4ThreadManager

3 24.3.03H.G.Essel: Go4 - http://go4.gsi.de3 Features of Go4 Framework for many experiments (AP & NP) The analysis is written by the user (unlimited ROOT) A GUI controls and steers the analysis The GUI is never blocked by analysis The analysis may run permanently (e.g. on-line), is never blocked by GUI An analysis may update graphics asynchronously The GUI provides efficient interactivity The analysis may run without change in batch mode

4 24.3.03H.G.Essel: Go4 - http://go4.gsi.de4 How One Can Use Go4 Use Go4 GUI as ROOT-file browser / viewer - Histograms - Trees - Fitter Connect your ROOT analysis to GUI - little efford to adapt - dynamic tree draw - Example: HADES online analysis Develop analysis with Go4 framework - Event classes (composite) - Event IO (any input, trees, branches) - Analysis steps - Parameters, conditions + editors - Dynamic histogramming

5 24.3.03H.G.Essel: Go4 - http://go4.gsi.de5 GUI: Stand Alone Features Program written in standard ROOT & Qt Uses GSI´s QtROOT interface Qt and ROOT widgets work Developed with Qt designer Extended browser (ROOT files) Extended tree viewer (unlimited levels for Go4 events) Fit (GUI for stand alone fit package) Set/save/restore layout

6 24.3.03H.G.Essel: Go4 - http://go4.gsi.de6 Root File Browser

7 24.3.03H.G.Essel: Go4 - http://go4.gsi.de7 Tree Viewer drag&drop

8 24.3.03H.G.Essel: Go4 - http://go4.gsi.de8 Fitting automatic find&fit

9 24.3.03H.G.Essel: Go4 - http://go4.gsi.de9 Fitting Peak finders Results

10 24.3.03H.G.Essel: Go4 - http://go4.gsi.de10 Fitting Double fit Fit library independent of Go4!

11 24.3.03H.G.Essel: Go4 - http://go4.gsi.de11 How to Use Go4 cont. Use GUI as ROOT-file browser / viewer - Histograms - Trees - Fitter Connect your ROOT analysis to GUI - little efford to adapt - dynamic tree draw - Example: HADES online analysis (+ GUI) Develop analysis with Go4 framework - Event classes (composite) - Event IO (any input, trees, branches) - Analysis steps - Parameters, conditions + editors - Dynamic histogramming

12 24.3.03H.G.Essel: Go4 - http://go4.gsi.de12 Use GUI as ROOT-file browser / viewer - Histograms - Trees - Fitter Connect your ROOT analysis to GUI - little efford to adapt - dynamic tree draw - Example: HADES online analysis Develop analysis with Go4 framework - Event classes (composite) - Event IO (any input, trees, branches) - Analysis steps - Parameters, conditions + editors - Dynamic histogramming How to Use Go4 cont.

13 24.3.03H.G.Essel: Go4 - http://go4.gsi.de13 Go4 Tasks: GUI - QApplication - TApplication Go4 GUI ROOT files GSI histogram API GUI

14 24.3.03H.G.Essel: Go4 - http://go4.gsi.de14 Go4 Tasks: GUI - QApplication - TApplication Go4 GUI User GUI Preferences ROOT files GSI histogram API GUI

15 24.3.03H.G.Essel: Go4 - http://go4.gsi.de15 Go4 Tasks: GUI & Analysis - QApplication - TApplication socket threads Go4 GUI User GUI Preferences - Commands - Objects ROOT files GSI histogram API Analysis GUI

16 24.3.03H.G.Essel: Go4 - http://go4.gsi.de16 Go4 Tasks: GUI & Analysis User event loop - QApplication - TApplication socket threads Autosave Event IO: - DAQ - Server - Files - User Go4 GUI User GUI Preferences - Commands - Objects ROOT files Analysis GUI Preferences

17 24.3.03H.G.Essel: Go4 - http://go4.gsi.de17 Go4 Tasks: GUI & Analysis User event loop - QApplication - TApplication socket threads Histogram server Event IO: - DAQ - Server - Files - User Histogram clients: - Go4 - Origin - LeA Go4 GUI User GUI Preferences - Commands - Objects Histogram client Histogram servers: - Go4 - LeA - MBS DAQ - GOOSY ROOT files GSI histogram API Analysis GUI Preferences Auto-save file

18 24.3.03H.G.Essel: Go4 - http://go4.gsi.de18 Analysis User written (main program) Runs in CINT, line mode (batch) or GUI controlled Analysis step factory

19 24.3.03H.G.Essel: Go4 - http://go4.gsi.de19 Analysis Steps (Event Loop) Factory step 1 input1 process1 output1 input input2 = output1 process2 output2 file2 Factory step 2

20 24.3.03H.G.Essel: Go4 - http://go4.gsi.de20 Analysis Steps (Event Loop) Factory step 1 input1 process1 output1 file1 input input2 = output1 process2 output2 file2 Factory step 2

21 24.3.03H.G.Essel: Go4 - http://go4.gsi.de21 Analysis cont. User written (main program) Runs in CINT, line mode (batch) or GUI controlled Analysis step factory Composite event classes

22 24.3.03H.G.Essel: Go4 - http://go4.gsi.de22 Build complex event structure out of simple data object components Treats single data objects and composition of data objects uniformly Easy data store/retrieval to/from file Use standard ROOT class for IO mechanism (No changes in TTree or TBranchElement)  Recursive method to synchronize the composite structure with TTree To retrieve user data, no need for : TTree::MakeCode() TTree::MakeClass() Go4 composite event

23 24.3.03H.G.Essel: Go4 - http://go4.gsi.de23 Structural organization of secondary data. Represents the natural experimental setup (geometry, detectors, …) Fast direct access of components (by index) Full or partial IO: map the event object into a ROOT TTree. Use standard ROOT classes for IO mechanism  Recursive method to synchronize the composite structure with TTree at run time General design to fit to different needs Use TClonesArray, TObjectArray Top_evt Head_2 Header Det_2Det_1 Dets Raw_2 Cal_2 Det_3 ContainerComposite Elementary data object Go4 composite event

24 24.3.03H.G.Essel: Go4 - http://go4.gsi.de24 { // Event structure modeling // second composite CEvent2->addElement(head2); CEvent2->addElement(st2); // first composite CEvent1->addElement(head1); CEvent1->addElement(st1); CEvent1->addElement(CEvent2); // add in top composite event CEvent0->addElement(head0); CEvent0->addElement(CEvent1); // set top level branch TBranch*b = T->Branch(“top”, ”CompositeEvent”,&CEvent0); //compose tree structure CEvent0->makeBranch(b,split); } CEvent0 CEvent1Head0 Head1 Head2 CEvent2 St1 St2 Go4 composite event

25 24.3.03H.G.Essel: Go4 - http://go4.gsi.de25 Analysis cont. User written (main program) Runs in CINT, line mode (batch) or GUI controlled Analysis step factory Composite event classes Event IO (GSI sources, others) Analysis control from GUI

26 24.3.03H.G.Essel: Go4 - http://go4.gsi.de26 Analysis control (start, stop,...) Analysis step control (built from analysis) Visualize analysis status (from analysis) Remote browser (objects from analysis) Remote tree draw (tree from memory of analysis) Condition editing (window, polygon from analysis) Object editing (from analysis) Adding user GUIs Event displays (user), can be initiated from analysis GUI for Analysis

27 24.3.03H.G.Essel: Go4 - http://go4.gsi.de27 Analysis started

28 24.3.03H.G.Essel: Go4 - http://go4.gsi.de28 Analysis cont. User written (main program) Runs in CINT, line mode (batch) or GUI controlled Analysis step factory Composite event classes Event IO (GSI sources, others) Analysis control Conditions (windows, polygons) Parameter editor Dynamic histogramming Persistency through autosave

29 24.3.03H.G.Essel: Go4 - http://go4.gsi.de29 Condition editor

30 24.3.03H.G.Essel: Go4 - http://go4.gsi.de30 Parameter editor

31 24.3.03H.G.Essel: Go4 - http://go4.gsi.de31 Dynamic list editor drag&drop

32 24.3.03H.G.Essel: Go4 - http://go4.gsi.de32 User GUI (Qt) On-line monitoring of HADES processing data objects sent periodically from analysis Courtesy HADES coll.

33 24.3.03H.G.Essel: Go4 - http://go4.gsi.de33 Summary Use Go4 GUI as ROOT-file browser / viewer - Histograms - Trees - Fitter Connect your ROOT analysis to GUI - little efford to adapt - dynamic tree draw - GUI and analysis in two tasks Develop analysis with Go4 framework - Event classes (composite) - Event IO (any input, trees, branches) - Analysis steps - Parameters, conditions + editors - Dynamic histogramming - GUI and analysis in two tasks

34 24.3.03H.G.Essel: Go4 - http://go4.gsi.de34 J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev GSI Online Offline Object Oriented The End Go4 v2.2 free download http://go4.gsi.de tested with Debian 3.0, RedHat 8.0, Suse 8.1 gcc 2.95-x, gcc 2.96-x, gcc 3.2, icc 7.0


Download ppt "24.3.03H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev CHEP 2003 GSI Online Offline Object Oriented Go4."

Similar presentations


Ads by Google