ROOT logo
// @(#)root/eve:$Id$
// Author: Matevz Tadel 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 ALIEVECASCADELISTEDITOR_H
#define ALIEVECASCADELISTEDITOR_H

//------------------------------------------------------------------------------
// This code defines the List Editor coming with the visualisation of cascades,
// within AliEVE
//
// Origin :   Boris Hippolyte, IPHC (hippolyt@in2p3.fr)
// Modified : Antonin Maire, April 2009, IPHC (antonin.maire@cern.ch)
//------------------------------------------------------------------------------


//class TGButton;
//class TGCheckButton;
//class TGNumberEntry;
//class TGColorSelect;
class TEveGDoubleValuator;
class TGComboBox;

class AliEveCascadeList;

#include "TGedFrame.h"

//______________________________________________________________________________
// Short description of AliEveCascadeListEditor
//

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

  virtual void SetModel(TObject* obj);

  // Declare callback/slot methods
  void DoMinMaxRCut();
  void DoMinMaxDaughterDCA();
  void DoMinMaxPt();
  
  void DoSelectInvMassHyp(Int_t rInvMassHyp);
  void DoMinMaxInvariantMass();

protected:
  AliEveCascadeList    *fM; //! Model object.

  // Declare widgets
  // TGSomeWidget*   fXYZZ;
  TGComboBox*          fCascadeSpecies;		//! Box meant to choose the mass hyp. to be applied : Xi or Omega ?
  
  TEveGDoubleValuator* fMinMaxRCut;		//! Transverse radius range targeted by the user
  TEveGDoubleValuator* fMinMaxDaughterDCA;	//! DCA (between Xi daughters) range targeted by the user
  TEveGDoubleValuator* fMinMaxPt;		//! Pt range targeted by the user
  TEveGDoubleValuator* fMinMaxInvariantMass;	//! Inv Mass range targeted by the user

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

  ClassDef(AliEveCascadeListEditor, 1); // GUI editor for AliEveCascadeList.
};

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