StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
iccpHeader.h
1 #ifndef ICCP_HEADER_HH
2 #define ICCP_HEADER_HH
3 
4 
5 // MWS 3-29 Header changed. Elements of the strutct are resized and
6 // reordered
7 // Tonko, 4/24/2002 Changed "transaction" to "dest_id"
8 
9 #pragma pack(1)
10 
11 #ifndef RTS_LITTLE_ENDIAN
12 // Big endian header definition
13 struct ic_msg_head
14 {
15  unsigned char daq_cmd ;
16  unsigned char dst_task ;
17  unsigned status :4;
18  unsigned token :12 ;
19 //-------------------------------------------
20  unsigned valid_words :12 ;
21  unsigned domain :4 ;
22  unsigned short source_id ;
23 //-------------------------------------------
24  unsigned short dest_id ;
25  unsigned char reserved ;
26  unsigned char src_task ;
27 };
28 #else
29 // Little endian header definition (For alpha and pentium)
30 struct ic_msg_head
31 {
32  unsigned token :12;
33  unsigned status :4;
34  unsigned char dst_task;
35  unsigned char daq_cmd;
36 //-------------------------------------------
37  unsigned short source_id;
38  unsigned domain :4 ;
39  unsigned valid_words :12 ;
40 //-------------------------------------------
41  unsigned char src_task ;
42  unsigned char reserved ;
43  unsigned short dest_id ;
44 };
45 #endif // RTS_LITTLE_ENDIAN
46 
47 #pragma pack()
48 
49 #endif