KaliVeda  1.12/06
Heavy-Ion Analysis Toolkit
KVDBSystemDialog.h
Go to the documentation of this file.
1 /*
2 $Id: KVDBSystemDialog.h,v 1.7 2007/05/03 15:49:02 franklan Exp $
3 $Revision: 1.7 $
4 $Date: 2007/05/03 15:49:02 $
5 */
6 
9 
10 #ifndef __KVDBSYSTEMDIALOG_H
11 #define __KVDBSYSTEMDIALOG_H
12 
13 #include "TGButton.h"
14 #include "RQ_OBJECT.h"
15 #include "KVNumberList.h"
16 #include "KVDatedFileManager.h"
17 #include "Riostream.h"
18 class TGTransientFrame;
19 class TGComboBox;
20 class TGTextEntry;
21 class TGListBox;
22 class TGLabel;
23 class TGNumberEntry;
24 class KVDBSystem;
25 class KVList;
26 class KVTarget;
27 class KVMaterial;
28 
36 
37  RQ_OBJECT("KVDBSystemDialog")
38 
40 
42 
48 
64 
66 
69 
72 
74  void SetNeedSave(Bool_t k = kTRUE)
75  {
76  fNeedSave = k;
78  };
79  Bool_t NeedSave() const
80  {
81  return fNeedSave;
82  };
83 
84 public:
85 
86  KVDBSystemDialog(const TGWindow* p, const TGWindow* main, KVDBSystem* init_sys, const KVNumberList& runs,
87  UInt_t w = 1, UInt_t h = 1);
88  virtual ~KVDBSystemDialog();
89 
90  void DoClose();
91  void CloseWindow();
92 
93  void CreateMainWindow(const TGWindow* p, const TGWindow* main,
94  UInt_t w, UInt_t h);
95  void FillSystemList();
96  void SelectSystem(Int_t);
97  void DeleteSystem();
98 
101  void UpdateTargetProperties();
103 
105 
110 
111  void AddNewTargetLayer();
112  void RemoveTargetLayer();
113 
117 
118  void CreateNewSystem();
119  void SetRuns();
120  void Undo();
121 
124  {
125  Emit("UpdateRunlist()"); // *SIGNAL*
126  }
127 
129  {
130  return fCheckButton1376->IsOn();
131  };
133  {
134  return (fTarget != 0);
135  };
136 
137  void SaveSystems();
138 
139  ClassDef(KVDBSystemDialog, 0) //Dialog box for setting system parameters associated to runs
140 };
141 
142 #endif
int Int_t
unsigned int UInt_t
long Long_t
#define RQ_OBJECT(sender_class)
bool Bool_t
#define ClassDef(name, id)
Dialog box for setting system parameters associated to runs.
void DeleteSystem()
Delete the currently selected system.
KVNumberList fRuns
runs selected by user
void TargetAngleChanged(Long_t)
Called when target angle is changed.
KVDatedFileManager * fUndo
allows to undo changes to Systems.dat
TGLabel * fLabel1530
units for thickness
void ProjectileZChanged(Long_t)
TGComboBox * fComboBox1515
layers in current target
void SetNeedSave(Bool_t k=kTRUE)
TGComboBox * fComboBox1542
list of materials for creating target layers
TGTextButton * fTextButton1553
add new layer to target
void RemoveAll(TGComboBox *)
KVString fCurrentSystemsFile
name (including timestamp) of currently used Systems.dat
KVTarget * fTarget
current target
void ProjectileEChanged(Long_t)
void UpdateSystemProperties()
Update displayed system properties, e.g. when a new system is selected in fComboBox1476.
void UpdateTargetLayerProperties(Int_t)
TGNumberEntry * fNumberEntry1493
Z of projectile.
TGTextButton * fSetRuns
associate runs with selected system
KVMaterial * fLayer
current target layer
TGTextEntry * fTextEntry1490
symbol of projectile
TGNumberEntry * fNumberEntry1499
A of projectile.
TGNumberEntry * fNumberEntry1537
atomic mass of current layer
KVDBSystem * fSystem
currently selected system in combo box fComboBox1476
Bool_t IsProjectileDefined()
TGNumberEntry * fNumberEntry1509
E/A of projectile.
TGNumberEntry * fNumberEntry1526
thickness of current layer
TGComboBox * fComboBox1476
combo box displaying list of systems for current dataset
void CreateMainWindow(const TGWindow *p, const TGWindow *main, UInt_t w, UInt_t h)
Creates main window and displays it.
TGTransientFrame * fMainFrame1475
the main window
void TargetLayerAChanged(Long_t)
Called when target layer A is changed.
virtual ~KVDBSystemDialog()
Destructor.
void TargetLayerThicknessChanged(Long_t)
TGTextButton * fCreateSystem
button to create new system
KVDBSystemDialog(const TGWindow *p, const TGWindow *main, KVDBSystem *init_sys, const KVNumberList &runs, UInt_t w=1, UInt_t h=1)
unique_ptr< TObjArray > fMaterialsList
list of all available materials
TGTextButton * fSaveButton
save changes
void UpdateRunlist()
Signal emitted to tell KVINDRARunSheetGUI to update the runlist.
TGTextButton * fTextButton1554
remove current layer from target
void SelectSystem(Int_t)
Called when a new system is selected in fComboBox1476.
Bool_t NeedSave() const
void ProjectileAChanged(Long_t)
void EnableProjectileProperties(Bool_t)
Called when "Projectile" check box is checked (on=kTRUE) or unchecked (on=kFALSE)
TGNumberEntry * fNumberEntry1532
target angle to beam
TGCheckButton * fCheckButton1376
check button to define projectile
Database class used to store information on different colliding systems studied during an experiment.
Definition: KVDBSystem.h:51
Handles a set of different versions of files with the same base name and a timestamp.
Extended TList class which owns its objects by default.
Definition: KVList.h:27
Description of physical materials used to construct detectors; interface to range tables.
Definition: KVMaterial.h:41
Strings used to represent a set of ranges of values.
Definition: KVNumberList.h:83
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
Definition: KVString.h:72
Calculation/correction of energy losses of particles through an experimental target.
Definition: KVTarget.h:126
virtual void SetEnabled(Bool_t e=kTRUE)
virtual Bool_t IsOn() const
Bool_t IsEnabled() const
int main(int argc, char **argv)