ROOT logo
#ifndef __DGFEditModICSRPanel_h__
#define __DGFEditModICSRPanel_h__

//_________________________________________________[C++ CLASS DEFINITION FILE]
//////////////////////////////////////////////////////////////////////////////
// Name:           DGFEditModICSRPanel.h
// Purpose:        Class defs for the XIA DGF-4C GUI
// Class:          DGFEditModICSRPanel
// Description:    A GUI to operate a XIA DGF-4C
// Author:         R. Lutter
// Revision:       $Id: DGFEditModICSRPanel.h,v 1.7 2008-12-29 13:48:24 Rudolf.Lutter Exp $       
// Date:           
// URL:            
// Keywords:       
//////////////////////////////////////////////////////////////////////////////

#include "TList.h"

#include "TGWindow.h"
#include "TGFrame.h"
#include "TGButton.h"
#include "TGTextEntry.h"

#include "TMrbLofNamedX.h"
#include "TMrbDGF.h"

#include "TGMrbTextButton.h"
#include "TGMrbRadioButton.h"

#include "DGFControlCommon.h"

//______________________________________________________[C++ CLASS DEFINITION]
//////////////////////////////////////////////////////////////////////////////
// Name:           DGFEditModICSRPanel
// Purpose:        Main frame to edit the ICS reg
// Constructors:   
// Methods:        ProcessMessage   -- process widget events
// Description:    A dialog window to modify the module ICSR
// Keywords:       
//////////////////////////////////////////////////////////////////////////////

class DGFEditModICSRPanel : public TGMainFrame {

	public:

		// cmd ids to dispatch over X events in this panel
		enum EDGFEditModICSRCmdId 	{	kDGFEditModICSRButtonApply,			//		apply
										kDGFEditModICSRButtonReset,			//		reset
										kDGFEditModICSRButtonClose,			//		close
									};

		// geometry settings
		enum					{	kFrameWidth 			= 350					};
		enum					{	kFrameHeight 			= 450					};

		enum					{	kLEWidth				= kAutoWidth			};
		enum					{	kEntryWidth				= 400					};
		enum					{	kLEHeight				= 20					};

		enum					{	kButtonWidth			= kAutoWidth			};
		enum					{	kButtonHeight			= 20					};

	public:
		DGFEditModICSRPanel(const TGWindow * Parent, TGTextEntry * Entry,
											UInt_t Width, UInt_t Height, UInt_t Options = kMainFrame | kVerticalFrame);
		virtual ~DGFEditModICSRPanel() { fHeap.Delete(); };

		void PerformAction(Int_t FrameId, Int_t Selection); 	// slot method

	protected:
		TList fHeap;								//! list of objects created on heap
		TGGroupFrame * fICSRFrame;
		TGMrbRadioButtonGroup * fDSPTriggerFrame; 	// bits to be edited (DSP trigger)
		TGMrbRadioButtonGroup * fFastTriggerFrame; 	// bits to be edited (fast trigger)
		TGMrbTextButtonList * fButtonFrame; 		// buttons: apply/close

		TGTextEntry * fEntry;						// entry to be editied

		TMrbLofNamedX fLofDSPTriggerBits;			// dsp trigger chain
		TMrbLofNamedX fLofFastTriggerBits;			// fast trigger chain
		TMrbLofNamedX fLofButtons;					// list of buttons

	ClassDef(DGFEditModICSRPanel, 0)		// [DGFControl] Edit switch register (ICSR) settings
};

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