ICP
1
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
isis2
instcontrol_temp
ICP
newicp
Ievent.h
Go to the documentation of this file.
1
#ifndef IEVENT_H
2
#define IEVENT_H
3
4
7
8
10
struct
DAEEventHeaderInfo
11
{
12
unsigned
header_type
: 4;
13
unsigned
header_length
: 5;
14
unsigned
unused1
: 2;
15
unsigned
bad_frame
: 1;
16
unsigned
unused2
: 1;
17
unsigned
fifo_read_late
: 1;
18
unsigned
memory_wrap
: 1;
19
unsigned
frame_overflow
: 1;
20
unsigned
fifo_overflows
: 16;
21
};
22
23
24
struct
DAEEventHeaderVetos
// 32bits
25
{
26
unsigned
fifo
: 1;
27
unsigned
smp
: 1;
28
unsigned
unused4
: 2;
29
unsigned
ts2_pulse
: 1;
30
unsigned
wrong_pulse
: 1;
31
unsigned
isis_slow
: 1;
32
unsigned
unused3
: 5;
33
unsigned
external
: 4;
34
unsigned
unused2
: 8;
35
unsigned
fast_chopper
: 4;
36
unsigned
unused1
: 4;
37
};
38
39
40
enum
DAEEventHeaderMarker
{
EndOfRunMarker
=0xefffffff,
AllValuesFilledInMarker
=0xffffffff };
41
42
static
const
int
DAEEventHeaderFixedMarker
= 0xffffffff;
43
44
struct
DAEEventHeader
45
{
46
uint32_t
marker0
;
47
uint32_t
marker1
;
48
DAEEventHeaderInfo
info
;
49
uint32_t
frame_number
;
50
struct
51
{
52
uint32_t
low
;
53
uint32_t
high
;
54
}
time
;
55
struct
56
{
57
unsigned
period
: 23;
58
unsigned
unused1
: 9;
59
};
60
uint32_t
num_events
;
61
struct
62
{
63
unsigned
protons
: 10;
64
unsigned
unused
: 22;
65
};
66
DAEEventHeaderVetos
vetos
;
67
};
68
69
70
// POSLUT spectrum number and time channels from card. Should not see time_channel=0, first time_channel=1
71
struct
DetectorEvent32
72
{
73
unsigned
time_channel
: 16;
74
unsigned
spectrum
: 16;
75
};
76
77
78
// for 32MHz timing, time is after frame sync in 31.25 ns steps
79
struct
DetectorEvent64
80
{
81
unsigned
position
: 12;
82
unsigned
dim
: 4;
83
unsigned
unused1
: 16;
84
unsigned
time
: 31;
85
unsigned
unused2
: 1;
86
};
87
88
namespace
Ievent_conditions {
89
BOOST_STATIC_ASSERT
(
sizeof
(
DAEEventHeaderInfo
) == 4);
90
BOOST_STATIC_ASSERT
(
sizeof
(
DAEEventHeaderVetos
) == 4);
91
BOOST_STATIC_ASSERT
(
sizeof
(
DAEEventHeader
) == 40);
92
BOOST_STATIC_ASSERT
(
sizeof
(
DetectorEvent32
) == 4);
93
BOOST_STATIC_ASSERT
(
sizeof
(
DetectorEvent64
) == 8);
94
}
95
96
class
Ievent
97
{
98
};
99
100
#endif
/* IEVENT_H
101
*/
DAEEventHeaderFixedMarker
static const int DAEEventHeaderFixedMarker
Definition:
Ievent.h:42
DAEEventHeaderInfo::header_type
unsigned header_type
Definition:
dae_events.h:10
DAEEventHeader::num_events
uint32_t num_events
Definition:
dae_events.h:60
DAEEventHeaderInfo
Sutucture of an Event in DAE memory (32bits)
Definition:
dae_events.h:8
DAEEventHeader::marker1
uint32_t marker1
should always be DAEEventHeaderFixedMarker
Definition:
dae_events.h:47
DetectorEvent64::unused1
unsigned unused1
Definition:
dae_events.h:88
DetectorEvent64::dim
unsigned dim
Definition:
dae_events.h:87
DAEEventHeader::unused
unsigned unused
Definition:
dae_events.h:64
DAEEventHeader
fixed header marker for DAEEventHeader
Definition:
dae_events.h:44
DAEEventHeaderVetos::ts2_pulse
unsigned ts2_pulse
Definition:
dae_events.h:27
DAEEventHeader::vetos
DAEEventHeaderVetos vetos
Definition:
dae_events.h:66
DAEEventHeaderVetos::wrong_pulse
unsigned wrong_pulse
Definition:
dae_events.h:28
DAEEventHeaderInfo::memory_wrap
unsigned memory_wrap
Definition:
dae_events.h:16
DAEEventHeader::period
unsigned period
Definition:
dae_events.h:57
DAEEventHeaderVetos::fifo
unsigned fifo
Definition:
dae_events.h:24
DAEEventHeaderInfo::header_length
unsigned header_length
Definition:
dae_events.h:11
DetectorEvent64::unused2
unsigned unused2
Definition:
dae_events.h:90
DetectorEvent64
Definition:
dae_events.h:84
DAEEventHeaderVetos::fast_chopper
unsigned fast_chopper
Definition:
dae_events.h:33
DetectorEvent32
Definition:
dae_events.h:76
DAEEventHeaderVetos::isis_slow
unsigned isis_slow
Definition:
dae_events.h:29
DAEEventHeaderInfo::frame_overflow
unsigned frame_overflow
Definition:
dae_events.h:17
DAEEventHeaderVetos::unused2
unsigned unused2
Definition:
dae_events.h:32
DetectorEvent64::time
unsigned time
Definition:
dae_events.h:89
Ievent
Definition:
Ievent.h:96
DAEEventHeader::protons
unsigned protons
Definition:
dae_events.h:63
DAEEventHeaderVetos::unused4
unsigned unused4
Definition:
dae_events.h:26
DAEEventHeaderInfo::fifo_overflows
unsigned fifo_overflows
Definition:
dae_events.h:18
DAEEventHeaderVetos::external
unsigned external
Definition:
dae_events.h:31
DAEEventHeader::info
DAEEventHeaderInfo info
should be DAEEventHeaderMarker
Definition:
dae_events.h:48
DAEEventHeader::marker0
uint32_t marker0
Definition:
dae_events.h:46
AllValuesFilledInMarker
Definition:
dae_events.h:38
Ievent_conditions::BOOST_STATIC_ASSERT
BOOST_STATIC_ASSERT(sizeof(DAEEventHeaderInfo)==4)
DAEEventHeader::time
struct DAEEventHeader::DAETime time
DAEEventHeaderVetos::smp
unsigned smp
Definition:
dae_events.h:25
DAEEventHeaderInfo::unused1
unsigned unused1
Definition:
dae_events.h:12
EndOfRunMarker
Definition:
dae_events.h:38
DAEEventHeaderInfo::bad_frame
unsigned bad_frame
Definition:
dae_events.h:13
DetectorEvent32::time_channel
unsigned time_channel
Definition:
dae_events.h:78
DAEEventHeaderVetos::unused3
unsigned unused3
Definition:
dae_events.h:30
DAEEventHeader::frame_number
uint32_t frame_number
Definition:
dae_events.h:49
DetectorEvent32::spectrum
unsigned spectrum
Definition:
dae_events.h:79
DAEEventHeaderInfo::fifo_read_late
unsigned fifo_read_late
Definition:
dae_events.h:15
DAEEventHeader::low
uint32_t low
Definition:
Ievent.h:52
DAEEventHeaderVetos::unused1
unsigned unused1
Definition:
dae_events.h:34
DAEEventHeader::high
uint32_t high
Definition:
Ievent.h:53
DAEEventHeaderMarker
DAEEventHeaderMarker
Definition:
dae_events.h:38
DAEEventHeaderVetos
Definition:
dae_events.h:22
DetectorEvent64::position
unsigned position
Definition:
dae_events.h:86
DAEEventHeaderInfo::unused2
unsigned unused2
Definition:
dae_events.h:14
DAEEventHeader::unused1
unsigned unused1
Definition:
dae_events.h:58
Generated by
1.8.5