GSI Object Oriented Online Offline (Go4)  GO4-6.1.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
s_opc1.h
Go to the documentation of this file.
1 // $Id: s_opc1.h 3333 2021-10-18 11:27:07Z linev $
2 //-----------------------------------------------------------------------
3 // The GSI Online Offline Object Oriented (Go4) Project
4 // Experiment Data Processing at EE department, GSI
5 //-----------------------------------------------------------------------
6 // Copyright (C) 2000- GSI Helmholtzzentrum fuer Schwerionenforschung GmbH
7 // Planckstr. 1, 64291 Darmstadt, Germany
8 // Contact: http://go4.gsi.de
9 //-----------------------------------------------------------------------
10 // This software can be used under the license agreements as stated
11 // in Go4License.txt file which is part of the distribution.
12 //-----------------------------------------------------------------------
13 
14 #ifndef S_OPC1_H
15 #define S_OPC1_H
16 
17 #include "typedefs.h"
18 
19 #if MBS_ENDIAN == 1
20 
21 struct s_opc1 { /* ++ byte1 (LSB) ++ */
22  char h_flt_len; /* ++ byte4 (MSB) ++ length of filter*/
23  char h_next_fltblk; /* ++ byte3 ++ next filter blk */
24  char h_fltspec; /* ++ byte2 filter specification */
25  /* +++ 25-Jan-1994 reversed bit sequence +++ */
26  unsigned b1_lnkf2 :1; /* lnk different flts blks */
27  unsigned b1_lnkf1 :1; /* lnk filters: and:1 or:0 */
28  unsigned b3_opc :3; /* opcode */
29  unsigned b1_selwrt:1; /* select write of evt/sev */
30  unsigned b1_selflt:1; /* select event/subevent filter */
31  unsigned b1_evtsev :1; /* 1:event/0:subevt active for sel */
32 /* REM : h_next_fltblk and h_flt_len are ABSOLUTE adresses !!! */
33 };
34 
35 
36 #else
37 
38 /* struct for filter opcode */
39 struct s_opc1
40  { /* ++ byte1 (LSB) ++ */
41  unsigned b1_evtsev :1; /* 1:event/0:subevt active for sel */
42  unsigned b1_selflt:1; /* select event/subevent filter */
43  unsigned b1_selwrt:1; /* select write of evt/sev */
44  unsigned b3_opc :3; /* opcode */
45  unsigned b1_lnkf1 :1; /* lnk filters: and:1 or:0 */
46  unsigned b1_lnkf2 :1; /* lnk different flts blks */
47  char h_fltspec; /* ++ byte2 filter specification */
48  char h_next_fltblk; /* ++ byte3 ++ next filter blk */
49  char h_flt_len; /* ++ byte4 (MSB) ++ length of filter*/
50  };
51 
52 /* REM : h_next_fltblk and h_flt_len are ABSOLUTE adresses !!! */
53 
54 #endif
55 
56 #endif
char h_fltspec
Definition: s_opc1.h:47
unsigned b1_selflt
Definition: s_opc1.h:42
char h_flt_len
Definition: s_opc1.h:49
unsigned b3_opc
Definition: s_opc1.h:44
Definition: s_opc1.h:39
unsigned b1_evtsev
Definition: s_opc1.h:41
unsigned b1_lnkf2
Definition: s_opc1.h:46
char h_next_fltblk
Definition: s_opc1.h:48
unsigned b1_lnkf1
Definition: s_opc1.h:45
unsigned b1_selwrt
Definition: s_opc1.h:43