]> jspc29.x-matter.uni-frankfurt.de Git - daqdata.git/commitdiff
New subEvt_errBit function added. Sergey.
authorhadaq <hadaq>
Mon, 14 Jun 2010 14:37:09 +0000 (14:37 +0000)
committerhadaq <hadaq>
Mon, 14 Jun 2010 14:37:09 +0000 (14:37 +0000)
hadaq/subevt.c

index 48955751aaf7e86444ea1f018caafd34ef179761..811d4f2b6cb7e9d0863679e911ce7d7c55dae939 100644 (file)
@@ -1,6 +1,6 @@
-static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/subevt.c,v 6.12 2003-05-14 13:54:45 muench Exp $";
-
+static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/subevt.c,v 6.13 2010-06-14 14:37:09 hadaq Exp $";
 
+#include <stdio.h>
 #include <stdlib.h>
 #include <errno.h>
 #include <string.h>
@@ -45,6 +45,30 @@ uint32_t SubEvt_dataValue(const void *my, unsigned idx)
        return val;
 }
 
+uint32_t SubEvt_errBit(const void *my)
+{
+       unsigned i;
+       uint32_t val;
+
+       if (SubEvt_decoding(my) == SubEvtDecoding_32bitData) {
+               i = SubEvt_dataSize(my) / sizeof(uint32_t) - 1;
+
+               val = SubEvt_dataValue(my, i);
+       } else if (SubEvt_decoding(my) == SubEvtDecoding_16bitData) {
+               i = SubEvt_dataSize(my) / sizeof(uint16_t) - 1;
+
+               val = SubEvt_dataValue(my, i);
+       } else if (SubEvt_decoding(my) == SubEvtDecoding_8bitData) {
+               i = SubEvt_dataSize(my) / sizeof(uint8_t) - 1;
+
+               val = SubEvt_dataValue(my, i);
+       } else {
+               fprintf(stderr, " Unknown decoding: %i\n", SubEvt_decoding(my));
+       }
+
+       return val;
+}
+
 char *SubEvt_2charP(const void *my)
 {
        static char buf[132];