LDT
- sampled data (little-endian binary, 2-byte integers)
- one A/D channel
- segmented (can be discontiguous according to seg. start time)
<LDT> = {
<ldt_head>
<ldt_seg>*
}
<ldt_head> = {
4 byte int pad size -- number of extra data points before and
after each segment, so an N point segment has
N+2*leader points. The pads are meant to hold
baseline data, but are seldom used (pad size = 0).
2 byte unsigned short dt -- time between data points, in microseconds
2 byte unsigned short scaling factor -- explained below
}
<ldt_seg> = {
<ldt_seg_head>
<ldt_seg_body>
}
<ldt_seg_head> = {
4 byte int start time of the segment in microseconds since start of recording.
(or just 0)
4 byte int number of points in this segment, including pads.
}
<ldt_seg_body> = {
<ldt_point>*
}
<ldt_point> = {
2 byte signed short [ (scaling factor) / 100 ] * (actual value)
}
--------------------- LDT example -------------------------------------
0200 0000 0004 0080 pad size 2, dt = 1.024e-3 sec; scaling=32768
0000 0000 0800 0000 segment: start = 0; 8 points (4 + 4 pads)
0100 0100 ABCD 1234 2 points of padding (= 1 here) and 2 data points
8340 FF42 0100 0100 2 more data points and 2 points of padding
D282 0000 0600 0000 segment: start = 3.349e-2 sec; 6 points
0100 0100 42FF CC2D 2 points of padding and 2 data points
0100 0100 2 points of padding