Mantid
Loading...
Searching...
No Matches
isisraw.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2018 ISIS Rutherford Appleton Laboratory UKRI,
4// NScD Oak Ridge National Laboratory, European Spallation Source,
5// Institut Laue - Langevin & CSNS, Institute of High Energy Physics, CAS
6// SPDX - License - Identifier: GPL - 3.0 +
7#pragma once
8
15struct ISISCRPT_STRUCT;
16#include "MantidKernel/System.h"
17#include "item_struct.h"
18#include <cstdlib>
19#include <cstring>
20
22struct HDR_STRUCT {
23 char inst_abrv[3];
24 char hd_run[5];
25 char hd_user[20];
26 char hd_title[24];
27 char hd_date[12];
28 char hd_time[8];
29 char hd_dur[8];
31 HDR_STRUCT() { memset(this, ' ', sizeof(HDR_STRUCT)); }
32};
33
35struct ADD_STRUCT {
36 int ad_run;
37 int ad_inst;
38 int ad_se;
39 int ad_dae;
40 int ad_tcb;
41 int ad_user;
42 int ad_data;
43 int ad_log;
44 int ad_end;
46 ADD_STRUCT() { memset(this, 0, sizeof(ADD_STRUCT)); }
47};
48
51 char r_user[20];
52 char r_daytel[20];
53 char r_daytel2[20];
54 char r_night[20];
55 char r_instit[20];
56 char unused[3][20];
58 USER_STRUCT() { memset(this, ' ', sizeof(USER_STRUCT)); }
59};
60
62struct RPB_STRUCT {
63 int r_dur;
66 int r_dmp;
69 int r_freq;
79 char r_enddate[12];
80 char r_endtime[8];
81 int r_prop;
82 int spare[10];
84
85 // cppcheck-suppress memsetClassFloat
86 RPB_STRUCT() { memset(this, 0, sizeof(RPB_STRUCT)); }
87};
88
91 float i_chfreq;
92 float freq_c2;
93 float freq_c3;
100 float i_chopsiz;
108 float i_xsect;
109 float i_ysect;
110 int i_posn;
111 int i_mod;
113 float i_l1;
115 float i_renergy;
116 float i_rphase;
119 float i_xcen;
120 float i_ycen;
122 float i_radbest;
123 float i_sddist;
124 float i_foeang;
125 float i_aofi;
126 int spare[29];
128 // cppcheck-suppress memsetClassFloat
129 IVPB_STRUCT() { memset(this, 0, sizeof(IVPB_STRUCT)); }
130};
131
134 int e_posn;
135 int e_type;
136 int e_geom;
137 float e_thick;
138 float e_height;
139 float e_width;
140 float e_omega;
141 float e_chi;
142 float e_phi;
143 float e_scatt;
144 float e_xscatt;
147 float e_dens;
152 float can_nd;
153 char e_name[40];
156 int spare[33];
158 // cppcheck-suppress memsetClassFloat
159 SPB_STRUCT() { memset(this, 0, sizeof(SPB_STRUCT)); }
160};
161
163struct SE_STRUCT {
164 char sep_name[8];
167 char sep_units[8];
182 int sep_cam_vals[12];
184 // cppcheck-suppress memsetClassFloat
185 SE_STRUCT() { memset(this, 0, sizeof(SE_STRUCT)); }
186};
187
190 int a_pars;
214 int a_sync;
215 int a_smp;
216 int ext_vetos[3];
218 // extra bits for new PC DAE
220 int tr_shift[3];
222 int spare[31];
224 DAEP_STRUCT() { memset(this, 0, sizeof(DAEP_STRUCT)); }
225};
226
229 int d_comp;
232 float d_crdata;
233 float d_crfile;
235 int unused[26];
238 // cppcheck-suppress memsetClassFloat
239 memset(this, 0, sizeof(DHDR_STRUCT));
240 d_comp = 1;
241 d_offset = 1 + 32;
242 }
243};
244
247 int nwords;
248 int offset;
251};
252
254struct LOG_LINE {
255 int len;
256 char *data;
258 LOG_LINE() : len(0), data(nullptr) {}
259};
260
263 int ver;
264 int nlines;
267 LOG_STRUCT() : ver(2), nlines(0), lines(nullptr) {}
268};
269
271// isis raw
272class ISISRAW {
273private:
274 ISISCRPT_STRUCT *m_crpt;
278 int addItems();
279
280public:
281 // section 1
286 // section 2
287 int ver2;
289 char r_title[80];
292 // section 3
293 int ver3;
294 char i_inst[8];
296 int i_det;
297 int i_mon;
298 int i_use;
299 // I_TABLES is address of MDET
300 int *mdet;
301 int *monp;
302 int *spec;
303 float *delt;
304 float *len2;
305 int *code;
306 float *tthe;
307 float *ut;
308 // section 4
309 int ver4;
311 int e_nse;
314 // section 5
315 int ver5;
317 // A_TABLES points at CRAT
318 int *crat;
319 int *modn;
320 int *mpos;
321 int *timr;
322 int *udet;
323 // section 6
324 int ver6;
325 int t_ntrg;
326 int t_nfpp;
327 int t_nper;
328 int t_pmap[256];
329 int t_nsp1;
330 int t_ntc1;
331 int t_tcm1[5];
332 float t_tcp1[5][4];
333 int t_pre1;
334 int *t_tcb1;
335 // section 7
336 // write NCHAN = NTC1+1 time channel boundaries
337 int ver7;
338 int u_len;
339 float *u_dat;
340 // section 8
341 int ver8;
343 // D_DATA points at ddes
346 uint32_t *dat1;
348
349public:
350 static int vmstime(char *timbuf, int len, time_t time_value);
351 int size_check();
352 ISISRAW();
353 virtual ~ISISRAW();
354 explicit ISISRAW(ISISCRPT_STRUCT *crpt);
355 ISISRAW(ISISCRPT_STRUCT *crpt, bool doUpdateFromCRPT);
356
357 // Explicitly prevent copying with all the dynamic allocations
358 ISISRAW(const ISISRAW &) = delete;
360
361 int updateFromCRPT();
362
363 virtual int ioRAW(FILE *file, bool from_file, bool read_data = true);
364 int ioRAW(FILE *file, HDR_STRUCT *s, int len, bool from_file);
365 int ioRAW(FILE *file, ADD_STRUCT *s, int len, bool from_file);
366 int ioRAW(FILE *file, USER_STRUCT *s, int len, bool from_file);
367 int ioRAW(FILE *file, RPB_STRUCT *s, int len, bool from_file);
368 int ioRAW(FILE *file, IVPB_STRUCT *s, int len, bool from_file);
369 int ioRAW(FILE *file, SPB_STRUCT *s, int len, bool from_file);
370 int ioRAW(FILE *file, SE_STRUCT *s, int len, bool from_file);
371 int ioRAW(FILE *file, DAEP_STRUCT *s, int len, bool from_file);
372 int ioRAW(FILE *file, DHDR_STRUCT *s, int len, bool from_file);
373 int ioRAW(FILE *file, DDES_STRUCT *s, int len, bool from_file);
374 int ioRAW(FILE *file, LOG_STRUCT *s, int len, bool from_file);
375 int ioRAW(FILE *file, LOG_LINE *s, int len, bool from_file);
376 int ioRAW(FILE *file, char *s, int len, bool from_file);
377 int ioRAW(FILE *file, int *s, int len, bool from_file);
378 int ioRAW(FILE *file, uint32_t *s, int len, bool from_file);
379 int ioRAW(FILE *file, float *s, int len, bool from_file);
380 // allocate
381 int ioRAW(FILE *file, char **s, int len, bool from_file);
382 int ioRAW(FILE *file, int **s, int len, bool from_file);
383 int ioRAW(FILE *file, uint32_t **s, int len, bool from_file);
384 int ioRAW(FILE *file, float **s, int len, bool from_file);
385 int ioRAW(FILE *file, SE_STRUCT **s, int len, bool from_file);
386 int ioRAW(FILE *file, DDES_STRUCT **s, int len, bool from_file);
387 int ioRAW(FILE *file, LOG_LINE **s, int len, bool from_file);
388 int readFromFile(const char *filename, bool read_data = true);
389 int printInfo(std::ostream &os);
390 int getTimeChannels(float *rtcb1, int n);
391};
isis raw file.
Definition: isisraw.h:272
HDR_STRUCT hdr
header block (80 bytes)
Definition: isisraw.h:282
float * ut
nuse UT* user tables (total size NUSE*NDET) ut01=phi
Definition: isisraw.h:307
LOG_STRUCT logsect
log section
Definition: isisraw.h:347
ISISCRPT_STRUCT * m_crpt
CRPT from ICP.
Definition: isisraw.h:274
int t_tcm1[5]
time channel mode
Definition: isisraw.h:331
int i_use
number of user defined UTn tables NUSE
Definition: isisraw.h:298
SPB_STRUCT spb
sample parameter block (64*4 bytes)
Definition: isisraw.h:310
float * delt
hold off table (size NDET)
Definition: isisraw.h:303
int * modn
module number for each detector (size NDET)
Definition: isisraw.h:319
float t_tcp1[5][4]
time channel parameters
Definition: isisraw.h:332
int e_nse
number of controlled SEPs NSEP
Definition: isisraw.h:311
int getTimeChannels(float *rtcb1, int n)
rtcb1 is of size t_ntc1+1
Definition: isisraw.cpp:989
char i_inst[8]
instrument name
Definition: isisraw.h:294
uint32_t * dat1
compressed data for (NTC1+1)*(NSP1+1)*NPER values
Definition: isisraw.h:346
int ver2
run section version number VER2 (=1)
Definition: isisraw.h:287
ISISRAW()
stuff
Definition: isisraw.cpp:23
ISISRAW(const ISISRAW &)=delete
int t_ntrg
number of time regimes (=1)
Definition: isisraw.h:325
int i_det
number of detectors NDET
Definition: isisraw.h:296
DAEP_STRUCT daep
DAE parameter block (size 64*4 bytes)
Definition: isisraw.h:316
DDES_STRUCT * ddes
(NSP1+1)*NPER items, totoal size (NSP1+1)*NPER*2*4 bytes
Definition: isisraw.h:345
int * code
code for UTn tables (size NDET)
Definition: isisraw.h:305
int t_nper
number of periods
Definition: isisraw.h:327
DHDR_STRUCT dhdr
size 32*4 bytes
Definition: isisraw.h:342
int printInfo(std::ostream &os)
stuff
Definition: isisraw.cpp:942
int * t_tcb1
time channel boundaries in clock pulses (size NTC1+1)
Definition: isisraw.h:334
int t_nsp1
number of spectra in time regime 1
Definition: isisraw.h:329
int * mdet
detector number for monitors (size NMON)
Definition: isisraw.h:300
int ver3
instrument section version number (=2)
Definition: isisraw.h:293
static int vmstime(char *timbuf, int len, time_t time_value)
stuff
Definition: isisraw.cpp:901
item_struct< char > m_char_items
dunno
Definition: isisraw.h:275
int readFromFile(const char *filename, bool read_data=true)
stuff
Definition: isisraw.cpp:923
item_struct< float > m_real_items
dunno
Definition: isisraw.h:276
int ver5
DAE section version number (=2)
Definition: isisraw.h:315
int ver7
user version number (=1)
Definition: isisraw.h:337
ISISRAW & operator=(ISISRAW)=delete
int * timr
time regime for each detector (size NDET)
Definition: isisraw.h:321
USER_STRUCT user
user information (8*20 bytes)
Definition: isisraw.h:290
int addItems()
stuff
Definition: isisraw.cpp:131
int updateFromCRPT()
stuff
Definition: isisraw.cpp:189
int i_mon
number of monitors NMON
Definition: isisraw.h:297
int * crat
crate number for each detector (size NDET)
Definition: isisraw.h:318
int size_check()
stuff
Definition: isisraw.cpp:887
virtual int ioRAW(FILE *file, bool from_file, bool read_data=true)
stuff
Definition: isisraw.cpp:401
int ver4
SE section version number (=2)
Definition: isisraw.h:309
int ver8
data version number (=2)
Definition: isisraw.h:341
float * u_dat
user defined data (ULEN, max size 400 words)
Definition: isisraw.h:339
int data_format
data section format (0 = by TC, 1 = by spectrum)
Definition: isisraw.h:285
char r_title[80]
run title
Definition: isisraw.h:289
int r_number
run number
Definition: isisraw.h:288
int * mpos
module position for each detector (size NDET)
Definition: isisraw.h:320
int t_nfpp
number of frames per period
Definition: isisraw.h:326
int ver6
TCB section version number (=1)
Definition: isisraw.h:324
IVPB_STRUCT ivpb
instrument parameter block (64*4 bytes)
Definition: isisraw.h:295
int * udet
user detector number for each detector (size NDET)
Definition: isisraw.h:322
int * monp
prescale value for each monitor (size NMON)
Definition: isisraw.h:301
int u_len
length of user data section
Definition: isisraw.h:338
RPB_STRUCT rpb
run parameter block (32*4 bytes)
Definition: isisraw.h:291
int * spec
spectrum number table (size NDET)
Definition: isisraw.h:302
SE_STRUCT * e_seblock
NSEP SE parameter blocks (total size NSEP*32*4 bytes)
Definition: isisraw.h:313
struct ADD_STRUCT add
9*4 bytes
Definition: isisraw.h:284
virtual ~ISISRAW()
stuff
Definition: isisraw.cpp:963
int t_ntc1
number of time channels in time regime 1
Definition: isisraw.h:330
float * tthe
2theta scattering angle (size NDET)
Definition: isisraw.h:306
float * len2
L2 table (size NDET)
Definition: isisraw.h:304
item_struct< int > m_int_items
dunno
Definition: isisraw.h:277
int t_pre1
prescale for 32MHz clock
Definition: isisraw.h:333
int t_pmap[256]
period number for each basic period
Definition: isisraw.h:328
int frmt_ver_no
format version number VER1 (=2)
Definition: isisraw.h:283
structure to hold a dae item
Definition: item_struct.h:15
address offsets to various sections (9*4 bytes)
Definition: isisraw.h:35
int ad_dae
ad_se + 66 + nse*32
Definition: isisraw.h:39
ADD_STRUCT()
constructor
Definition: isisraw.h:46
int ad_user
ad_tcb + 288 + (ntc1 + 1)
Definition: isisraw.h:41
int ad_data
ad_user + 2 + ulen
Definition: isisraw.h:42
int ad_tcb
ad_dae + 65 + 5*ndet
Definition: isisraw.h:40
int ad_run
32 (1+offset_of(ver2))
Definition: isisraw.h:36
int ad_end
1+end of file
Definition: isisraw.h:44
int ad_inst
ad_run + 94
Definition: isisraw.h:37
int ad_log
ad_data + 33 +
Definition: isisraw.h:43
int ad_se
ad_inst + 70 + 2*nmon+(5+nuse)*ndet
Definition: isisraw.h:38
DAE parameters block (64*4 bytes)
Definition: isisraw.h:189
int neut_raw_high
raw ext. neut tot (high 32 bits)***B
Definition: isisraw.h:199
int mon1_module
module for MON 1 ( 4 bits) ***B
Definition: isisraw.h:204
int neut_gate_t2
ext. neutron gate (t2) (�s) ***B
Definition: isisraw.h:202
DAEP_STRUCT()
Definition: isisraw.h:224
int neut_good_low
good ext. neut tot (low 32 bits)***B
Definition: isisraw.h:198
int neut_raw_low
raw ext. neut tot (low 32 bits)***B
Definition: isisraw.h:200
int spare[31]
0)
Definition: isisraw.h:222
int a_minppp
PPP minimum value ***B.
Definition: isisraw.h:192
int a_pars
Word length in bulk store memory.
Definition: isisraw.h:190
int mon1_mask
mask for MON 1 (c4:m4:d12) ***B
Definition: isisraw.h:206
int neut_good_high
good ext. neut tot (high 32bits)***B
Definition: isisraw.h:197
int tr_shift[3]
set to shift value (us) of each TR if (using_tr_shift >
Definition: isisraw.h:220
int events_good_high
total GOOD EVENTS (high 32 bits)***B
Definition: isisraw.h:211
int ppp_raw_low
raw PPP total (low 32 bits) ***B
Definition: isisraw.h:196
int ext_vetos[3]
External vetoes 0,1,2 (0 dis,1.
Definition: isisraw.h:216
int a_delay
frame synch delay (4�s steps) ***B
Definition: isisraw.h:213
int neut_gate_t1
ext. neutron gate (t1) (�s) ***B
Definition: isisraw.h:201
int mon2_crate
crate for MON 2 ( 4 bits) ***B
Definition: isisraw.h:209
int ppp_good_high
good PPP total (high 32 bits) ***B
Definition: isisraw.h:193
int mon1_crate
crate for MON 1 ( 4 bits) ***B
Definition: isisraw.h:205
int ppp_good_low
good PPP total (low 32 bits) ***B
Definition: isisraw.h:194
int a_sync
frm snch origin(0:none/1:ext/2:int)***B
Definition: isisraw.h:214
int mem_size
Length of bulk store memory (bytes)**A.
Definition: isisraw.h:191
int ppp_raw_high
raw PPP total (high 32 bits) ***B
Definition: isisraw.h:195
int mon2_mask
mask for MON 2 (c4:m4:d12) ***B
Definition: isisraw.h:210
int n_tr_shift
en)
Definition: isisraw.h:219
int mon2_detector
detector for MON 2 (12 bits) ***B
Definition: isisraw.h:207
int events_good_low
total GOOD EVENTS (low 32 bits)***B
Definition: isisraw.h:212
int mon2_module
module for MON 2 ( 4 bits) ***B
Definition: isisraw.h:208
int a_smp
Secondary Master Pulse (0:en,1:dis)
Definition: isisraw.h:215
int mon1_detector
detector for MON 1 (12 bits) ***B
Definition: isisraw.h:203
2*4 bytes
Definition: isisraw.h:246
int nwords
number of compressed words in spectrum
Definition: isisraw.h:247
int offset
offset to compressed spectrum
Definition: isisraw.h:248
DDES_STRUCT()
constructor
Definition: isisraw.h:250
data section header (32*4 bytes)
Definition: isisraw.h:228
int d_offset
offset to spectrum descriptor array
Definition: isisraw.h:231
int d_comp
compression type (0=none, 1 = byte relative)
Definition: isisraw.h:229
float d_crfile
compression ratio for whole file
Definition: isisraw.h:233
DHDR_STRUCT()
constructor
Definition: isisraw.h:237
int unused[26]
to bring size to 32*4 bytes
Definition: isisraw.h:235
float d_crdata
compression ratio for data
Definition: isisraw.h:232
int d_exp_filesize
equivalent version 1 filesize
Definition: isisraw.h:234
int reserved
unused
Definition: isisraw.h:230
Run header (80 bytes)
Definition: isisraw.h:22
char hd_date[12]
start date
Definition: isisraw.h:27
char hd_time[8]
start time
Definition: isisraw.h:28
char inst_abrv[3]
instrument abbreviated name
Definition: isisraw.h:23
HDR_STRUCT()
Definition: isisraw.h:31
char hd_dur[8]
run duration (uA.hour) constructor
Definition: isisraw.h:29
char hd_run[5]
run number
Definition: isisraw.h:24
char hd_user[20]
user name
Definition: isisraw.h:25
char hd_title[24]
short title
Definition: isisraw.h:26
instrument parameter block (64*4 bytes)
Definition: isisraw.h:90
int delay_error_c1
max delay error chopper 1 (us)
Definition: isisraw.h:97
int i_mod
moderator type code
Definition: isisraw.h:111
int delay_c3
delay chopper 3 (us)
Definition: isisraw.h:96
int delay_error_c2
max delay error chopper 2 (us)
Definition: isisraw.h:98
int i_posn
scattering position (1 or 2, for HRPD)
Definition: isisraw.h:110
IVPB_STRUCT()
Definition: isisraw.h:129
int delay_c1
delay chopper 1 (us)
Definition: isisraw.h:94
int i_rslit
slit package (0="unknown",1="L",2="Med",3="Hi") HET
Definition: isisraw.h:117
float i_ycen
LOQ y centre.
Definition: isisraw.h:120
int status_c2
status c2 (run,stopped,stop open)
Definition: isisraw.h:104
float i_xsect
beam aperture horizontal (mm)
Definition: isisraw.h:108
int i_vacuum
detector_tank_vacuum 1 = vacuum on
Definition: isisraw.h:112
float i_chopsiz
dunno
Definition: isisraw.h:100
int i_slowchop
(1=on, 0=off) HET
Definition: isisraw.h:118
float freq_c2
frequency chopper 2 (Hz)
Definition: isisraw.h:92
int i_rfreq
rotor_frequency (HET)
Definition: isisraw.h:114
int delay_c2
delay chopper 2 (us)
Definition: isisraw.h:95
float i_aofi
angle of incidence (CRISP)
Definition: isisraw.h:125
int status_c3
status c3 (run,stopped,stop open)
Definition: isisraw.h:105
int i_thermshut
thermal shutter open = 1
Definition: isisraw.h:107
int i_mainshut
main shutter open = 1
Definition: isisraw.h:106
int status_c1
status c1 (run,stopped,stop open)
Definition: isisraw.h:103
int delay_error_c3
max delay error chopper 3 (us)
Definition: isisraw.h:99
float freq_c3
frequency chopper 3 (Hz)
Definition: isisraw.h:93
int aperture_c2
dunno
Definition: isisraw.h:101
float i_renergy
(HET)
Definition: isisraw.h:115
float i_sddist
source to detector distance (LOQ)
Definition: isisraw.h:123
float i_l1
L1 scattering length.
Definition: isisraw.h:113
float i_chfreq
frequency chopper 1 (Hz)
Definition: isisraw.h:91
float i_xcen
LOQ x centre.
Definition: isisraw.h:119
int aperture_c3
dunno
Definition: isisraw.h:102
float i_ysect
beam aperture vertical (mm)
Definition: isisraw.h:109
int spare[29]
to pad out to 64*4 bytes constructor
Definition: isisraw.h:126
float i_rphase
(HET)
Definition: isisraw.h:116
int i_bestop
beam_stop LOQ
Definition: isisraw.h:121
float i_foeang
foe angle LOQ
Definition: isisraw.h:124
float i_radbest
beam_stop_radius LOQ
Definition: isisraw.h:122
log line entry
Definition: isisraw.h:254
int len
real length of data
Definition: isisraw.h:255
LOG_LINE()
constructor
Definition: isisraw.h:258
char * data
padded to multiple of 4 bytes
Definition: isisraw.h:256
log line entry
Definition: isisraw.h:262
int ver
= 2
Definition: isisraw.h:263
LOG_STRUCT()
constructor
Definition: isisraw.h:267
LOG_LINE * lines
size nlines
Definition: isisraw.h:265
int nlines
number of lines
Definition: isisraw.h:264
Run parameter block (32*4 bytes)
Definition: isisraw.h:62
int r_dur_secs
actual run duration in seconds
Definition: isisraw.h:75
int r_freq
2**k where source frequency = 50 / 2**k
Definition: isisraw.h:69
int r_dur_freq
test interval for above (seconds)
Definition: isisraw.h:65
int r_dmp
dump interval
Definition: isisraw.h:66
int r_mon_sum2
monitor sum 2
Definition: isisraw.h:77
char r_endtime[8]
format HH-MM-SS
Definition: isisraw.h:80
int r_dmp_units
scaler for above
Definition: isisraw.h:67
int spare[10]
to pad out to 32*4 bytes constructor
Definition: isisraw.h:82
char r_enddate[12]
format DD-MMM-YYYY
Definition: isisraw.h:79
int r_goodfrm
good frames
Definition: isisraw.h:72
int r_dur_wanted
requested run duration (units as for "duration" above)
Definition: isisraw.h:74
int r_rawfrm
raw frames
Definition: isisraw.h:73
float r_gd_prtn_chrg
good proton charge (uA.hour)
Definition: isisraw.h:70
int r_durunits
scaler for above (1=seconds)
Definition: isisraw.h:64
int r_mon_sum1
monitor sum 1
Definition: isisraw.h:76
int r_dmp_freq
test interval for above
Definition: isisraw.h:68
int r_mon_sum3
monitor sum 3
Definition: isisraw.h:78
int r_dur
actual run duration
Definition: isisraw.h:63
RPB_STRUCT()
Definition: isisraw.h:86
int r_prop
RB (proposal) number.
Definition: isisraw.h:81
float r_tot_prtn_chrg
total proton charge (uA.hour)
Definition: isisraw.h:71
sample environment block (32*4 bytes)
Definition: isisraw.h:163
int sep_cam_rgrp
camac register group (1 or 2)
Definition: isisraw.h:180
int sep_status
are we in bounds
Definition: isisraw.h:171
int sep_cam_vals[12]
camac values constructor
Definition: isisraw.h:182
int sep_log
logged parameter (true/false)
Definition: isisraw.h:174
float sep_period
monitor repeat period
Definition: isisraw.h:176
int sep_value
dunno
Definition: isisraw.h:165
int sep_control
controlled parameter (true/false)
Definition: isisraw.h:172
char sep_units[8]
units of value
Definition: isisraw.h:167
char sep_name[8]
SE block name.
Definition: isisraw.h:164
float sep_stable
units per sec
Definition: isisraw.h:175
int sep_low_trip
dunno
Definition: isisraw.h:168
int sep_cur_val
dunno
Definition: isisraw.h:170
int sep_run
run control parameter (true/false)
Definition: isisraw.h:173
int sep_cam_sub
camac location A
Definition: isisraw.h:178
int sep_high_trip
dunno
Definition: isisraw.h:169
int sep_offset
CAMAC offset (added to value)
Definition: isisraw.h:179
int sep_pre_proc
pre process routine number
Definition: isisraw.h:181
int sep_exponent
dunno
Definition: isisraw.h:166
int sep_cam_addr
camac location N
Definition: isisraw.h:177
SE_STRUCT()
Definition: isisraw.h:185
sample parameter block (64*4 bytes)
Definition: isisraw.h:133
float e_canxsect
can coherent scattering cross section (barn)
Definition: isisraw.h:149
int e_type
sample type (1=sample+can,2=empty can)
Definition: isisraw.h:135
int e_equip
dunno
Definition: isisraw.h:154
float e_width
sample width (mm)
Definition: isisraw.h:139
float can_nd
can number density (atoms.A-3)
Definition: isisraw.h:152
float e_xscatt
sample coherent scattering cross section (barn)
Definition: isisraw.h:144
float e_phi
phi sample angle (degrees)
Definition: isisraw.h:142
float e_scatt
scattering geometry (1=trans, 2 =reflect)
Definition: isisraw.h:143
float e_omega
omega sample angle (degrees)
Definition: isisraw.h:140
float can_cs_abs
dunno
Definition: isisraw.h:151
int e_geom
sample geometry
Definition: isisraw.h:136
SPB_STRUCT()
Definition: isisraw.h:159
int spare[33]
to bring up to 64*4 bytes constructor
Definition: isisraw.h:156
int e_posn
sample changer position
Definition: isisraw.h:134
float e_chi
chi sample angle (degrees)
Definition: isisraw.h:141
float samp_cs_inc
sample incoherent cross section
Definition: isisraw.h:145
float can_cs_inc
dunno
Definition: isisraw.h:150
int e_eqname
dunno
Definition: isisraw.h:155
float e_dens
sample number density (atoms.A-3)
Definition: isisraw.h:147
float e_height
sample height (mm)
Definition: isisraw.h:138
float samp_cs_abs
sample absorption cross section
Definition: isisraw.h:146
char e_name[40]
sample name of chemical formula
Definition: isisraw.h:153
float e_thick
sample thickness normal to sample (mm)
Definition: isisraw.h:137
float e_canthick
can wall thickness (mm)
Definition: isisraw.h:148
user information (8*20 bytes)
Definition: isisraw.h:50
char unused[3][20]
to pad out to 8*20 bytes constructor
Definition: isisraw.h:56
char r_instit[20]
institute
Definition: isisraw.h:55
char r_user[20]
name
Definition: isisraw.h:51
char r_night[20]
nighttime phone
Definition: isisraw.h:54
char r_daytel[20]
daytime phone
Definition: isisraw.h:52
USER_STRUCT()
Definition: isisraw.h:58
char r_daytel2[20]
daytime phone
Definition: isisraw.h:53