ROOT logo
 // $Id$
// Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007

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

#ifndef AliEveHLTEventManagerEditor_H
#define AliEveHLTEventManagerEditor_H

#include <TGedFrame.h>

class TGCheckButton;
class TGTextButton;
class TGNumberEntry;
class TGColorSelect;
class TGPictureButton;
class TGComboBox;
class AliEveHLTEventManager;

class AliEveHLTEventManagerEditor : public TGedFrame
{
public:
  AliEveHLTEventManagerEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30, 
			   UInt_t options = kChildFrame, Pixel_t back=GetDefaultFrameBackground());
  virtual ~AliEveHLTEventManagerEditor() {}

  virtual void SetModel(TObject* obj);

  // Declare callback/slot methods
  void ConnectToHLT();
  void NextEvent();
  void EventLoop();

  void NavigateBack();
  void NavigateFwd();
  void SetTriggerString(int id);
  void WriteBlockListToFile();
  void PrintScreens();
  void PollEvents();

protected:

  AliEveHLTEventManager  *fM; // Model object.
  
  TGTextButton     *fButtonConnect; // Button to connect to HOMER.
  TGTextButton     *fButtonWriteToFile; // Button to write block list to file
  TGTextButton     *fButtonNextEvent; // Button to call next Even
  TGTextButton     *fButtonNavigateBack; // Button to navigate back
  TGTextButton     *fButtonNavigateFwd;  // Button to navigate fwd
  TGTextButton     *fButtonPrintScreens;  // Button to print viewers
  //TGComboBox       *fBoxTriggerSelector; // Drop down menu to select trigger criteria.
  TGTextButton     *fButtonEventLoopText; //Text button to start / stop event loop.
  TGTextButton    *fButtonUpdateEvents;
  //TGComboBox       *fBoxEventLoopSpeed; // Drop down menu to set the speed of the loop.
  TGPictureButton  *fButtonEventLoop; // Picture button to start/stop event loop, HLT LOGO.
  

private:
  AliEveHLTEventManagerEditor(const AliEveHLTEventManagerEditor&);            // Not implemented
  AliEveHLTEventManagerEditor& operator=(const AliEveHLTEventManagerEditor&); // Not implemented

  Bool_t fEventLoopStarted;
  Bool_t fBufferLoopStarted;

  ClassDef(AliEveHLTEventManagerEditor, 0); // Editor for AliEveHLTEventManager
};

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