-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathcnf_file_format.txt
More file actions
213 lines (130 loc) · 6.48 KB
/
cnf_file_format.txt
File metadata and controls
213 lines (130 loc) · 6.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
CNF data file format
====================
0x00 file header
0x70 section header list, each header has a length of 0x30
0x70 + i*0x30 section header i
variable number of section blocks,
lenghts of section blocks depend on section id (type)
Note: Multiple sections with same id may be present
file header
-----------
0x1E string "Associated ", filled with spaces to length of 0x40, zero terminated
section headers
---------------
0x00 uint32 section id (type of section)
0x0A uint32 start of section in data file
section block
-------------
0x00 section header (same as in section header list)
0x30 section data (depends on section type)
known section ids
-------------------------
0x00000000 no section (terminates section header list)
0x00012000 parameter section (eg. times, energy calibration, number of channels)
0x00012001 string section
0x00012002 efficiency section
0x00012003 sample? section
0x00012004 marker section
0x00012005 channel data section
0x00012006 GammaML X2.1 section?
0x00012010 analytics section
0x00012013 gamma encal section?
0x0001200D gamma encal section?
0x0001202C nuclid identification section
observed but unknown section ids
--------------------------------
0x00012016
0x00004006 (Note: no header in section block!)
parameter section
-----------------
(offsets from beginning of section header)
([0x00] is uint16 format offset)
0x30 + 0x00 string[32] file description
0x30 + 0x80 string[4] measurement mode
0x30 + 0x8A uint8 number of channels / 256
0x30 + 0xA0 uint32 number (differs for every measurement)
0x30 + 0xFB string[8] energy calibration type
0x30 + [0x24] + 0x01 datetime start datetime
0x30 + [0x24] + 0x09 time real time
0x30 + [0x24] + 0x11 time live time
0x30 + [0x22] + 0x44 pdp11_float A[0] energy calibration coefficients
0x30 + [0x22] + 0x48 pdp11_float A[1]
0x30 + [0x22] + 0x4C pdp11_float A[2]
0x30 + [0x22] + 0x50 pdp11_float A[3]
0x30 + [0x22] + 0x5C string energy calibration unit
0x30 + [0x22] + 0x9C string mca type
0x30 + [0x22] + 0xDC pdp11_float B[0] FWHM calibration coefficients
0x30 + [0x22] + 0xE0 pdp11_float B[1]
0x30 + [0x22] + 0xE4 pdp11_float B[2]
0x30 + [0x22] + 0xE8 pdp11_float B[3]
0x30 + [0x22] + 0x108 string data source
0x30 + [0x22] + 0x30C string[8] detector type
efficiency section
------------------
(offsets from beginning of section header)
0x30 + 0x2A string[16] geometry ID
0x30 + 0xCE string[32] efficiency type
0x30 + 0x19F string[16] calibration name?
sample section
--------------
(offsets from beginning of section header)
0x30 + 0x00 string[16] deposition unit
deposition time
0x30 + 0x88 string[8] LINEAR, STEP?
0x30 + 0x140 string[8] sample preparation
calibration section
-------------------
(offsets from beginning of section header)
0x30 + 0x00 string[16] calibration name?
analytics section
-------------------
(offsets from beginning of section header)
0x30 + 0x12 string[40] description of analytics sequence
analytics data:
0x30 + 0x76 string[192] background file
0x30 + 0x3E6 string[96] nuclide identification file (NID)
0x30 + 0x4A6 string[96] dsc info file
0x30 + 0x62E string[16] data source info
0x30 + 0x18EB string[192] nid file?
0x30 + 0x273D string[128] ??
..
0x30 + 0x33DA string[64] report ctl file
marker section
--------------
(offsets from beginning of section header)
0x30 + 0x4A uint32 marker left
0x30 + 0x5A uint32 marker right
channel data section
--------------------
0x30 + 0x1D0 uint32[n_channels] channel count data (see parameter section for n_channels)
floating point data format
--------------------------
Stored as PDP11 (DEC) 32bit floating point format
To convert to IEEE 754 single precision (32bit),
swap upper/lower word, interpret as float and divide by 4.
time format
-----------
Stored as inverted unsigned 64bit integer in units of 0.1 microseconds.
absolute datetime format
-------------------------
Modified Julian data stored as (non-inverted) unsigned 64bit integer in
units of 0.1 microseconds. To convert to unixtime, divide by 10000000UL
and subtract 3506716800UL.
general information:
--------------------
Marker Info Status
This status page includes data related to the current marker positions such as start/end channel and energy, centroid channel and energy, FWHM and FWTM, integral, area, etc.
Time Info Status
This status page includes items such as acquire start time, dead time, elapsed live and real times and total counts, along with the preset values for total counts as well as for live and real time.
Sample Info Status:
This status page includes sample-related information such as ID, description, sample deposition date/time, quantity and units, and geometry ID.
Calibration Info Status
This status page shows the current energy, FWHM, and tail calibration equations. It also shows the efficiency calculated at (the energy of) the current cursor position.
Display Info Status
This status page includes data related to the current display window and the current ROI (defined by the current marker positions). This includes information such as start and end channels and VFS of the display window/spectrum, and the width, net cps, and total cps of the current ROI. The data is for the expand window if expand is on; it is for the compare spectrum if compare is on and the compare spectrum is currently selected.
Display Info Status
This status page includes data related to the current display window and the current ROI (defined by the current marker positions). This includes information such as start and end channels and VFS of the display window/spectrum, and the width, net cps, and total cps of the current ROI. The data is for the expand window if expand is on; it is for the compare spectrum if compare is on and the compare spectrum is currently selected.
User Info Status
This status page shows six extra CAM parameters which can be used for special purposes: CAM_T_DISSTR1 through CAM_T_DISSTR6.
Nuclide Info Status
This status page shows data for a nuclide, if the energy of the cursor was found in the nuclide library specified by the setup for Interactive NID.