Presentation is loading. Please wait.

Presentation is loading. Please wait.

17.01.06 Go4 v3 - J.Adamczewski, H.G.Essel, S.Linev IT/EE Palaver Go4 version 3.

Similar presentations


Presentation on theme: "17.01.06 Go4 v3 - J.Adamczewski, H.G.Essel, S.Linev IT/EE Palaver Go4 version 3."— Presentation transcript:

1 17.01.06 Go4 v3 - http://go4.gsi.de1 J.Adamczewski, H.G.Essel, S.Linev IT/EE Palaver Go4 version 3

2 17.01.06 Go4 v3 - http://go4.gsi.de2 Go4 v3 Go4 features Status of usage Analysis framework review New developments for v.3.0

3 17.01.06 Go4 v3 - http://go4.gsi.de3 Framework for many kinds of experiments (Atomic & Nuclear Physics) The analysis is written by the user (unlimited ROOT) Services and interfaces for analysis Batch mode (CINT or compiled, on/off-line) Interactive mode (on/off-line): A non blocking GUI controls and steers the analysis Analysis runs independently and can update graphics asynchronously ROOT object transport between analysis and GUI task Qt based GUI interfaces ROOT and Qt graphics User defined GUI supported (Qt designer) The Go4 features

4 17.01.06 Go4 v3 - http://go4.gsi.de4 Go4 Package Layers Go4 Analysis User Analysis Go4 Event ROOT Go4 GUI Go4 Framework Qt Library Interface Go4TaskHandler Go4ThreadManager MBS

5 17.01.06 Go4 v3 - http://go4.gsi.de5 Screenshot of Go4 v3

6 17.01.06 Go4 v3 - http://go4.gsi.de6 Go4 history and status Development start:April 1999 Go4 v.1.0 May 2002 Go4 v.2.0 November 2002 Go4 v.2.9 April 2005 (stable?) Go4 v.3.0 (and “final” v2.10) December 2005 Users: – At GSI: FRS, SHIP, AP, ESR, Rising, HypHi, HADES online,... –Outside: TU Darmstadt, Uni Mainz, Uni Giessen, INFN Milano, Weizman institute, IMPCAS,...

7 17.01.06 Go4 v3 - http://go4.gsi.de7 Analysis framework TGo4Analysis baseclass: Analysis setup (chain of analysis steps) Object organization, dynamic histograms Implicit / explicit event loop Virtual methods to be defined in user analysis subclass TGo4AnalysisStep: defines one stage of the analysis, implements event classes User may design own subclass of TGo4Analysis

8 17.01.06 Go4 v3 - http://go4.gsi.de8 Event Base classes TGo4EventElement: Event structure (input and output event) TGo4EventSource: Fills event structure with data TGo4EventStore: Stores event structure TGo4EventProcessor: Converts input event into output event; subclass of TGo4EventSource TGo4EventFactory: Defines the user implementations of all the above at initialization

9 17.01.06 Go4 v3 - http://go4.gsi.de9 Analysis steps TUserAnalysis TGo4Analysis Step Input Process Output Step Input Process Output Step Input Process Output TObjArray Factory1 Init. Factory2 Init. FactoryN Init. Steps definition and control Framework User Code

10 17.01.06 Go4 v3 - http://go4.gsi.de10 Analysis steps input output process input output process input output process Chain of analysis steps processed sequentially Each step can be en/disabled (framework) Input/output can be switched (framework) Each processor has access to all inputs! Each processor has access to all parameters

11 17.01.06 Go4 v3 - http://go4.gsi.de11 Analysis Setup from GUI Step selection Event input Event output Object persistency Load/save config

12 17.01.06 Go4 v3 - http://go4.gsi.de12 GSI standard DAQ (Mbs) TGo4MbsEvent, TGo4MbsSubEvent (format 10,1) TGo4MbsFile (read from *.lmd) TGo4MbsEventServer, TGo4MbsStream, TGo4MbsTransport (connect to Mbs) TGo4RevServ (connect to remote event server mrevserv) Complex event structures „toolbox“: TGo4CompositeEvent Root I/O : TGo4FileSource, TGo4FileStore : wraps 1 TTree in 1 TFile TGo4BackStore : 1 TTree in memory only ( <- online TTree::Draw() ) Implemented Services

13 17.01.06 Go4 v3 - http://go4.gsi.de13 Analysis event loop UserPreLoop ProcessAnalysisStepsProcessDynamicListUserEventFunc UserPostLoop Step1StepN histograming online TTree::Draw() init objects reset objects TTree registry dynamic histograming

14 17.01.06 Go4 v3 - http://go4.gsi.de14 Developments for v.3 Inter-task communication redesign: multiple viewers at one analysis server New Object manager for GUI organization: decoupling of functionality and surface Redesign of GUI elements: browser, viewpanel, editors, new MBS monitor,... ROOT session (macro) may be controlled by Go4 GUI ROOT session (TBrowser) may control Go4 analysis Go4 distribution for Windows XP (without Qt!)

15 17.01.06 Go4 v3 - http://go4.gsi.de15 Improved communication mechanism TSocket (3x) CLIENT Task Go4 GUI Object manager CLIENT Task Go4 GUI Object manager CLIENT Task Go4 GUI Object manager N Observer processes Analysis process Event IO: - DAQ - Server - Files - User Auto save file SERVER Task ANALYSIS loop Object manager Login port Commands Objects connect request CLIENT Task Go4 GUI Object manager 1 Controller process

16 17.01.06 Go4 v3 - http://go4.gsi.de16 New concept for objects organization Requirements: –central registry for all data –naming like “Analysis/Histograms/His1” –common API to browse and access data from different sources like TFolder, TDirectory, remote analysis and so on –decouple functionality and graphical surface –possibility of interactive interface

17 17.01.06 Go4 v3 - http://go4.gsi.de17 Proxy approach Instead of direct objects hierarchy (like TFolder) mediator proxies are used. Proxy functionality: –Holds object pointer (with or without ownership) –Provides iterator over object structure –Provides metainformation about contained data –Via the names gives an access to object data –Correctly store/restore object to file –Delivers messages, when object is inserted, modified or deleted

18 17.01.06 Go4 v3 - http://go4.gsi.de18 GUI object manager GUI OM data sources file.root Analysis browser file.root histo1 histo2 Analysis histo3 Parameter1 widgets Qt browser view panel 1 parameter editor hierarchical structure of containers special proxies for different data sources single iterator for looping over complete structure message passing between different branches for notification purposes ROOT cleanup mechanism Supported data sources: TFolder TDirectory (TFile) TTree TCanvas Remote Go4 analysis GSI histogram server TSocket connection

19 17.01.06 Go4 v3 - http://go4.gsi.de19 New Go4 browser Implemented as special OM proxy functionality independent from graphical surface One browser for all data sources (analysis, file, histogram server, memory,...) Full control by context menu Properties displayed in definable columns Monitoring is set as object property Object filter tool by state (monitored, fetched, all) Local memory workspace with user subdirectories copy & paste, drag’n drop, create subdir, rename

20 17.01.06 Go4 v3 - http://go4.gsi.de20 New Go4 browser browser column popup

21 17.01.06 Go4 v3 - http://go4.gsi.de21 New Go4 browser context menu monitor and filter tool

22 17.01.06 Go4 v3 - http://go4.gsi.de22 View panel View management done by object manager Show same histogram in different views (ranges, line and fill colors) Improved marker editor, may also edit conditions Info on time/date and full object path

23 17.01.06 Go4 v3 - http://go4.gsi.de23 Condition editor 2D polygon 1D limits

24 17.01.06 Go4 v3 - http://go4.gsi.de24 Parameter editor Remote editing of object (data structure) contents

25 17.01.06 Go4 v3 - http://go4.gsi.de25 Dynamic list editor Histogramming “on the fly”

26 17.01.06 Go4 v3 - http://go4.gsi.de26 New Mbs status monitor Online event ratemeters, trending, remotely inspect status and setup

27 17.01.06 Go4 v3 - http://go4.gsi.de27 Remote dispatching of ROOT macro Go4 GUI hsimplego4.C ROOT run control browser rate monitor object monitor

28 17.01.06 Go4 v3 - http://go4.gsi.de28 Remote dispatching of ROOT macro Use regular ROOT session Init script to loads Go4 libraries and starts up analysis server task [root].x go4Init.C All methods of TGo4Analysis::Instance() available in CINT via go4->...(), Register Root objects in CINT / analysis script: go4RegisterAll() (all histograms in root memory), or go4->AddHistogram(TH1*), go4->AddObject(TNamed*),... Optional run control methods for macro: go4->WaitForStart() - suspend macro until start button pressed go4->Process() - break eventloop when stop button pressed

29 17.01.06 Go4 v3 - http://go4.gsi.de29 ROOT (TBrowser) for Go4 control ROOT object monitor Go4 menu run control hsimplego4.C Go4 folders Go4 analysis

30 17.01.06 Go4 v3 - http://go4.gsi.de30 ROOT for remote analysis control Use regular ROOT session Instantiate TGo4Interface instance [root] TGo4Interface::Instance() Connect to running analysis [root] go4->ConnectAnalysis(“host.domain”, 5000, 2); Create TBrowser instance: [root] new TBrowser ROOT TBrowser will contain “go4” folder, where all objects in analysis will be displayed CINT API ( go4->... ) for remote control LaunchAnalysis(..), ConnectAnalysis(..), SubmitAnalysisConfig(), StartAnalysis(), StopAnalysis(), ExecuteLine(....),...

31 17.01.06 Go4 v3 - http://go4.gsi.de31 Conclusions Go4 well established as GSI “standard” analysis framework v2.10: development finished, used in production new v.3.0: – First internal redesign stage (OM, communication) – GUI layout and functionality improved – Other graphical surfaces than Qt? possible now! – ROOT session can control Go4 analysis – ROOT macros can be controlled from Go4 GUI – Port to other OS than Linux? WindowsXP partially done; MacOS(?) v3.0 to do: – Testing, bug fixes, user interface improvements – Replace analysis object management with new OM – Redesign of analysis framework? Backward compatibility! Go4 v3.0 released and available at http://go4.gsi.dehttp://go4.gsi.de


Download ppt "17.01.06 Go4 v3 - J.Adamczewski, H.G.Essel, S.Linev IT/EE Palaver Go4 version 3."

Similar presentations


Ads by Google