1
/*******************************************************************************
3
* phaseP.h -- Nirvana Phase Space Event Display (private include file) *
5
* Copyright (c) 1991 Universities Research Association, Inc. *
6
* All rights reserved. *
8
* This material resulted from work developed under a Government Contract and *
9
* is subject to the following license: The Government retains a paid-up, *
10
* nonexclusive, irrevocable worldwide license to reproduce, prepare derivative *
11
* works, perform publicly and display publicly by or for the Government, *
12
* including the right to distribute to other Government contractors. Neither *
13
* the United States nor the United States Department of Energy, nor any of *
14
* their employees, makes any warrenty, express or implied, or assumes any *
15
* legal liability or responsibility for the accuracy, completeness, or *
16
* usefulness of any information, apparatus, product, or process disclosed, or *
17
* represents that its use would not infringe privately owned rights. *
19
* Fermilab Nirvana GUI Library *
22
* Written by Mark Edel *
24
*******************************************************************************/
25
/* SCCS ID: phaseP.h 1.1 4/6/92 */
28
#define NATIVE_STDHEP 0 /* Std Hep file, native binary format */
29
#define ZEBRA_STDHEP 1 /* Std Hep file, Zebra FZ, exchange format */
30
#define XDR_STDHEP 2 /* Std Hep file, xdr binary format */
32
#define CHARSET (XmStringCharSet)XmSTRING_DEFAULT_CHARSET
34
#define MKSTRING(string) \
35
XmStringCreateLtoR(string, XmSTRING_DEFAULT_CHARSET)
37
#define SET_ONE_RSRC(widget, name, newValue) \
39
static Arg args[1] = {{name, (XtArgVal)0}}; \
40
args[0].value = (XtArgVal)newValue; \
41
XtSetValues(widget, args, 1); \
44
#define GET_ONE_RSRC(widget, name, valueAddr) \
46
static Arg args[1] = {{name, (XtArgVal)0}}; \
47
args[0].value = (XtArgVal)valueAddr; \
48
XtGetValues(widget, args, 1); \
51
#define SQR(n) ((n)*(n))
53
typedef struct SpaceWindow {
54
struct _SpaceWindow *next;
58
Widget eventSelectorLabel;
62
Widget trackWindowShell;
63
Widget trackWindowLabel;
64
Widget vectorLengthPanel;
65
Widget momtospaceSlider;
69
Widget momToSpaceSlider;
70
Widget longToTrSlider;
71
Widget btnRotationPanel;
72
Widget absRotationPanel;
73
Widget absRotationLabel;
74
Widget absRotFields[3];
75
Widget eventTreeButton;
76
Widget colorCodeButton;
80
Widget nodeWindowShell;
81
Widget colorWindowShell;
82
Widget dtreecolorcode;
83
Widget streecolorcode;
85
int *treehead; /* too complicate to load the nodehep struct here */
86
int *treeheadcolorcode;
98
double buttonRotateDegrees;
100
PhaseEvent colorcode;
103
PhaseEvent *(*getEventProc)();
110
char stable, unstable;
111
char electrons, muons, gammas, neutrinos, quarks, hadrons, wz;
114
extern PhaseWindow *WindowList;
115
extern Display *TheDisplay;