EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HiMain1.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file HiMain1.h
1 
2 #ifndef HiMain1_h
3 #define HiMain1_h
4 
5 extern "C" { void* himain1_address_(void); }
13 class HiMain1 {
14 public:
15  HiMain1();
16  ~HiMain1();
17 
18  int& natt (void);
19  float& eatt (void);
20  int& jatt (void);
21  int& nt (void);
22  int& np (void);
23  int& n0 (void);
24  int& n01 (void);
25  int& n10 (void);
26  int& n11 (void);
27 
28  //+++BAC
29  //
30  // Added error status variable to HIMAIN1
31  //
32  //---BAC
33  int& ierrstat(void);
34 
35  void init (void);
36 
37 private:
38 
39  struct HIMAIN1;
40  friend struct HIMAIN1;
41 
42  struct HIMAIN1
43  {
44  int natt;
45  float eatt;
46  int jatt;
47  int nt;
48  int np;
49  int n0;
50  int n01;
51  int n10;
52  int n11;
53 
54  //+++BAC
55  //
56  // Added error status variable to HIMAIN1
57  //
58  //---BAC
59 
60  int ierrstat;
61  };
62 
63  static HIMAIN1* _himain1;
64 };
65 
66 // set pointer to zero at start
68 
69 inline void
71 { if (!_himain1) _himain1 = static_cast<HIMAIN1*>(himain1_address_()); }
72 
73 // Constructor
74 inline
76 {}
77 
78 // Destructor
79 inline
81 {}
82 
83 inline int&
85 {
86  init();
87  return _himain1->natt;
88 }
89 
90 inline float&
92 {
93  init();
94  return _himain1->eatt;
95 }
96 
97 inline int&
99 {
100  init();
101  return _himain1->jatt;
102 }
103 
104 inline int&
106 {
107  init();
108  return _himain1->nt;
109 }
110 
111 inline int&
113 {
114  init();
115  return _himain1->np;
116 }
117 
118 inline int&
120 {
121  init();
122  return _himain1->n0;
123 }
124 
125 inline int&
127 {
128  init();
129  return _himain1->n01;
130 }
131 
132 inline int&
134 {
135  init();
136  return _himain1->n10;
137 }
138 
139 inline int&
141 {
142  init();
143  return _himain1->n11;
144 }
145 
146 inline int&
148 {
149  init();
150  return _himain1->ierrstat;
151 }
152 
153 #endif