From d78c04f611aa713efce4f5f8874b637d0682b7b5 Mon Sep 17 00:00:00 2001 From: hadaq Date: Mon, 14 Jun 2010 14:37:09 +0000 Subject: [PATCH] New subEvt_errBit function added. Sergey. --- hadaq/subevt.c | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/hadaq/subevt.c b/hadaq/subevt.c index 4895575..811d4f2 100644 --- a/hadaq/subevt.c +++ b/hadaq/subevt.c @@ -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 #include #include #include @@ -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]; -- 2.43.0