00001 //------------------------------------------------------------- 00002 // Go4 Release Package v3.04-01 (build 30401) 00003 // 28-November-2008 00004 //--------------------------------------------------------------- 00005 // The GSI Online Offline Object Oriented (Go4) Project 00006 // Experiment Data Processing at EE department, GSI 00007 //--------------------------------------------------------------- 00008 // 00009 //Copyright (C) 2000- Gesellschaft f. Schwerionenforschung, GSI 00010 // Planckstr. 1, 64291 Darmstadt, Germany 00011 //Contact: http://go4.gsi.de 00012 //---------------------------------------------------------------- 00013 //This software can be used under the license agreements as stated 00014 //in Go4License.txt file which is part of the distribution. 00015 //---------------------------------------------------------------- 00016 #ifndef S_OPC1 00017 #define S_OPC1 00018 00019 #include "typedefs.h" 00020 00021 #if MBS_ENDIAN == 1 00022 00023 struct s_opc1 { /* ++ byte1 (LSB) ++ */ 00024 char h_flt_len; /* ++ byte4 (MSB) ++ length of filter*/ 00025 char h_next_fltblk; /* ++ byte3 ++ next filter blk */ 00026 char h_fltspec; /* ++ byte2 filter specification */ 00027 /* +++ 25-Jan-1994 reversed bit sequence +++ */ 00028 unsigned b1_lnkf2 :1; /* lnk different flts blks */ 00029 unsigned b1_lnkf1 :1; /* lnk filters: and:1 or:0 */ 00030 unsigned b3_opc :3; /* opcode */ 00031 unsigned b1_selwrt:1; /* select write of evt/sev */ 00032 unsigned b1_selflt:1; /* select event/subevent filter */ 00033 unsigned b1_evtsev :1; /* 1:event/0:subevt active for sel */ 00034 /* REM : h_next_fltblk and h_flt_len are ABSOLUTE adresses !!! */ 00035 }; 00036 00037 00038 #else 00039 00040 /* struct for filter opcode */ 00041 struct s_opc1 00042 { /* ++ byte1 (LSB) ++ */ 00043 unsigned b1_evtsev :1; /* 1:event/0:subevt active for sel */ 00044 unsigned b1_selflt:1; /* select event/subevent filter */ 00045 unsigned b1_selwrt:1; /* select write of evt/sev */ 00046 unsigned b3_opc :3; /* opcode */ 00047 unsigned b1_lnkf1 :1; /* lnk filters: and:1 or:0 */ 00048 unsigned b1_lnkf2 :1; /* lnk different flts blks */ 00049 char h_fltspec; /* ++ byte2 filter specification */ 00050 char h_next_fltblk; /* ++ byte3 ++ next filter blk */ 00051 char h_flt_len; /* ++ byte4 (MSB) ++ length of filter*/ 00052 }; 00053 00054 /* REM : h_next_fltblk and h_flt_len are ABSOLUTE adresses !!! */ 00055 00056 #endif 00057 00058 #endif 00059 00060 //----------------------------END OF GO4 SOURCE FILE ---------------------