ROOT logo
/**************************************************************************
 * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
 * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for          *
 * full copyright notice.                                                 *
 **************************************************************************/

////////////////////////////////////////////////////////////////////////////
//
//  AliEveEventSelectorWindow class
//  GUI for setting event and trigger selections
//
//  origin: Mikolaj Krzewicki, Nikhef, Mikolaj.Krzewicki@cern.ch
//
////////////////////////////////////////////////////////////////////////////


#ifndef AliEveEventSelectorWindow_H
#define AliEveEventSelectorWindow_H

#include "TGedFrame.h"
#include "TGComboBox.h"
#include <TObjString.h>

class AliEveEventManager;
class AliEveEventSelector;
class TGTextEntry;
class TGNumberEntry;
class TGCheckButton;
class TGComboBox;
class TRootEmbeddedCanvas;

//==============================================================================
// AliEveEventSelectorWindow
//==============================================================================

//______________________________________________________________________________
// Short description of AliEveEventSelectorWindow
//

class AliEveEventSelectorWindow : public TGMainFrame
{
public:
  AliEveEventSelectorWindow(const TGWindow *p, UInt_t w, UInt_t h, AliEveEventSelector* sel);
  virtual ~AliEveEventSelectorWindow();
  void SetEventSelector(AliEveEventSelector* sel) {fPSelector = sel;}
  void DoSetSelectionString();
  void DoSetTriggerSelectionString();
  void DoHandleTriggerFromComboBox(const char* str);
  void DoSetMultiplicityRange();
  void DoDrawHistogram();
  void SetupTriggerSelect();

protected:

private:
  AliEveEventSelector* fPSelector; //event selector
  TRootEmbeddedCanvas* fPCanvas;   //the canvas for histograms

  TGTextEntry*   fPDrawFormula;           //test draw input field
  TGTextEntry*   fPEntryFormula;          //selectin formula field
  TGNumberEntry* fPEntryLowerBound;       //lower boung for the formula
  TGNumberEntry* fPEntryHigherBound;      //higher bound for the formula
  TGTextButton*  fPButtonTextDone;        //done button for selection formula
  
  TGComboBox*    fPComboBoxTrigger;       //trigger selection box
  TGTextEntry*   fPEntryTriggerSelection; //trigger selection formula entry field
  TGCheckButton* fPCheckTriggerSimple;    //use simple trigger select
  TGCheckButton* fPCheckTriggerString;    //use trigger select formula
  TGNumberEntry* fPEntryMultHigh;         //lowest allowed multiplicity field
  TGNumberEntry* fPEntryMultLow;          //higest allowed multiplicity field

  AliEveEventSelectorWindow(const AliEveEventSelectorWindow&);
  AliEveEventSelectorWindow& operator=(const AliEveEventSelectorWindow&);
  
  ClassDef(AliEveEventSelectorWindow, 1); // GUI window for AliEveEventSelector
};

#endif
 AliEveEventSelectorWindow.h:1
 AliEveEventSelectorWindow.h:2
 AliEveEventSelectorWindow.h:3
 AliEveEventSelectorWindow.h:4
 AliEveEventSelectorWindow.h:5
 AliEveEventSelectorWindow.h:6
 AliEveEventSelectorWindow.h:7
 AliEveEventSelectorWindow.h:8
 AliEveEventSelectorWindow.h:9
 AliEveEventSelectorWindow.h:10
 AliEveEventSelectorWindow.h:11
 AliEveEventSelectorWindow.h:12
 AliEveEventSelectorWindow.h:13
 AliEveEventSelectorWindow.h:14
 AliEveEventSelectorWindow.h:15
 AliEveEventSelectorWindow.h:16
 AliEveEventSelectorWindow.h:17
 AliEveEventSelectorWindow.h:18
 AliEveEventSelectorWindow.h:19
 AliEveEventSelectorWindow.h:20
 AliEveEventSelectorWindow.h:21
 AliEveEventSelectorWindow.h:22
 AliEveEventSelectorWindow.h:23
 AliEveEventSelectorWindow.h:24
 AliEveEventSelectorWindow.h:25
 AliEveEventSelectorWindow.h:26
 AliEveEventSelectorWindow.h:27
 AliEveEventSelectorWindow.h:28
 AliEveEventSelectorWindow.h:29
 AliEveEventSelectorWindow.h:30
 AliEveEventSelectorWindow.h:31
 AliEveEventSelectorWindow.h:32
 AliEveEventSelectorWindow.h:33
 AliEveEventSelectorWindow.h:34
 AliEveEventSelectorWindow.h:35
 AliEveEventSelectorWindow.h:36
 AliEveEventSelectorWindow.h:37
 AliEveEventSelectorWindow.h:38
 AliEveEventSelectorWindow.h:39
 AliEveEventSelectorWindow.h:40
 AliEveEventSelectorWindow.h:41
 AliEveEventSelectorWindow.h:42
 AliEveEventSelectorWindow.h:43
 AliEveEventSelectorWindow.h:44
 AliEveEventSelectorWindow.h:45
 AliEveEventSelectorWindow.h:46
 AliEveEventSelectorWindow.h:47
 AliEveEventSelectorWindow.h:48
 AliEveEventSelectorWindow.h:49
 AliEveEventSelectorWindow.h:50
 AliEveEventSelectorWindow.h:51
 AliEveEventSelectorWindow.h:52
 AliEveEventSelectorWindow.h:53
 AliEveEventSelectorWindow.h:54
 AliEveEventSelectorWindow.h:55
 AliEveEventSelectorWindow.h:56
 AliEveEventSelectorWindow.h:57
 AliEveEventSelectorWindow.h:58
 AliEveEventSelectorWindow.h:59
 AliEveEventSelectorWindow.h:60
 AliEveEventSelectorWindow.h:61
 AliEveEventSelectorWindow.h:62
 AliEveEventSelectorWindow.h:63
 AliEveEventSelectorWindow.h:64
 AliEveEventSelectorWindow.h:65
 AliEveEventSelectorWindow.h:66
 AliEveEventSelectorWindow.h:67
 AliEveEventSelectorWindow.h:68
 AliEveEventSelectorWindow.h:69
 AliEveEventSelectorWindow.h:70
 AliEveEventSelectorWindow.h:71
 AliEveEventSelectorWindow.h:72
 AliEveEventSelectorWindow.h:73
 AliEveEventSelectorWindow.h:74
 AliEveEventSelectorWindow.h:75
 AliEveEventSelectorWindow.h:76
 AliEveEventSelectorWindow.h:77
 AliEveEventSelectorWindow.h:78