GSI Object Oriented Online Offline (Go4)  GO4-6.2.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Classes | Typedefs | Enumerations
TGo4AbstractInterface.h File Reference
#include "TObject.h"
#include "TString.h"
#include "TList.h"
#include <ostream>

Go to the source code of this file.


class  TGo4AbstractInterface


typedef void * ViewPanelHandle


enum  EGo4ViewPanelMode { Go4_hidden = -1, Go4_minimized = 0, Go4_normal = 1, Go4_maximized = 2 }

Typedef Documentation

typedef void* ViewPanelHandle

Definition at line 28 of file TGo4AbstractInterface.h.

Enumeration Type Documentation

Generic interface to GUI functionality.

Provide methods like open file, request object from analysis and so on.

Methods of that class can be used in arbitrary ROOT script inside/outside Go4 GUI. To access these methods, one should use "go4" variable, which is exported to CINT global variable space when instance of implementation of TGo4AbstractInterface class is created. One can also access such instance also via TGo4AbstractInterface::Instance() static method.

There are two implementations of TGo4AbstractInterface class: TGo4Script - used together with Go4 GUI, created automatically when GUI started TGo4Interface - can be used in non GUI mode, must be created once by user As long as these are two implementation of the same interface, macro, which uses internally only go4 instance, should work similarly in both GUI and non GUI mode.

Typically one should use interface, provided by that class, in macro, executed inside GUI. Simple example of such macro: { go4->OpenFile("example.root"); go4->DrawItem("example.root/hist1"); } Here one open file from disk and displays one histogram from that file.

Most of the action with objects are going via object manager, where each object (item) has unique name, which includes full path to that object in objects structures. In our example item name is "example.root/hist1". To locate object of known name in objects structure, one can use FindItem() method. In that case example will look like: { go4->OpenFile("example.root"); go4->DrawItem(go4->FindItem("hist1")); }

There are several examples of GUI macros, which can be found in $GO4SYS/macros directory. Description of each method can be seen further in this document. Hot start feature of go4 was implemented with usage of that class, therefore one can produce hotstart files in Go4 GUI and take some generated code from it directly. For instance, displaying of complex viewpanels or starting and configuring of analysis.


Definition at line 76 of file TGo4AbstractInterface.h.