]> jspc29.x-matter.uni-frankfurt.de Git - daqdata.git/commitdiff
Optimizations by WK
authorhadaq <hadaq>
Thu, 6 Jun 2002 12:54:24 +0000 (12:54 +0000)
committerhadaq <hadaq>
Thu, 6 Jun 2002 12:54:24 +0000 (12:54 +0000)
hadaq/subevt.c
hadaq/subevt.h

index 372db444903a0dbfd37f1d386b0f4967c9deb420..93dce840e527bc23a0c46dfd466ae64110ce7a71 100644 (file)
@@ -1,4 +1,5 @@
-static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/subevt.c,v 6.6 2001-11-18 11:56:21 hadaq Exp $";
+static char *rcsId = "$Header: /u/hadaq/CVS/hadaq/subevt.c,v 6.6 2001/11/18 11:5
+6:21 hadaq Exp $";
 
 
 #include <stdlib.h>
@@ -9,134 +10,76 @@ static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hada
 
 #include "subevt.h"
 
-enum SubEvtIdx {
-       SubEvtIdx_size,
-       SubEvtIdx_decoding,
-       SubEvtIdx_id,
-       SubEvtIdx_trigNr,
-       SubEvtIdx_data
-};
-
-size_t SubEvt_hdrLen(void)
-{
-       return SubEvtIdx_data;
-}
-
-size_t SubEvt_hdrSize(void)
-{
-       return SubEvt_hdrLen() * sizeof(uint32_t);
-}
-
-size_t SubEvt_dataSize(const void *my)
-{
-       return SubEvt_size(my) - SubEvt_hdrSize();
-}
-
-void *SubEvt_data(const void *my)
-{
-       return (void *) ((char *) my + SubEvt_hdrSize());
-}
-
 uint32_t SubEvt_dataValue(const void *my, unsigned idx) {
-       uint32_t val;
-
-       switch (SubEvt_alignment(my)) {
-       case 4:
-               if (SubEvt_isSwapped(my)) {
-                       uint32_t tmp0;
-                       uint32_t tmp1;
-
-                       tmp0 = ((uint32_t *)SubEvt_data(my))[idx];
-                       ((char *) &tmp1)[0] = ((char *) &tmp0)[3];
-                       ((char *) &tmp1)[1] = ((char *) &tmp0)[2];
-                       ((char *) &tmp1)[2] = ((char *) &tmp0)[1];
-                       ((char *) &tmp1)[3] = ((char *) &tmp0)[0];
-                       val = tmp1;
-               } else {
-                       val = ((uint32_t *)SubEvt_data(my))[idx];
-               }
-               break;
-       case 2:
-               if (SubEvt_isSwapped(my)) {
-                       uint16_t v;
-                       swab(((uint16_t *)SubEvt_data(my)) + idx, &v, 2);
-                       val = v;
-               } else {
-                       val = ((uint16_t *)SubEvt_data(my))[idx];
-               }
-               break;
-       default:
-               val = ((uint8_t *)SubEvt_data(my))[idx];
-               break;
-       }
-       return val;
-}
-
-uint32_t SubEvt_id(const void *my)
-{
-       return SubEvt_hdrValue(my, SubEvtIdx_id);
-}
-
-uint32_t SubEvt_pureId(const void *my)
-{
-       return SubEvt_hdrValue(my, SubEvtIdx_id) & 0x7fffffffU;
-}
-
-int SubEvt_dataError(const void *my)
-{
-       return (SubEvt_hdrValue(my, SubEvtIdx_id) & 0x80000000) != 0;
-}
-
-void SubEvt_setId(void *my, uint32_t id)
-{
-       SubEvt_setHdrValue(my, SubEvtIdx_id, id);
-}
-
-uint32_t SubEvt_trigNr(const void *my)
-{
-       return SubEvt_hdrValue(my, SubEvtIdx_trigNr);
-}
-
-void SubEvt_setTrigNr(void *my, uint32_t trigNr)
-{
-       SubEvt_setHdrValue(my, SubEvtIdx_trigNr, trigNr);
+        uint32_t val;
+
+        switch (SubEvt_alignment(my)) {
+        case 4:
+                if (SubEvt_isSwapped(my)) {
+                        uint32_t tmp0;
+                        uint32_t tmp1;
+
+                        tmp0 = ((uint32_t *)SubEvt_data(my))[idx];
+                        ((char *) &tmp1)[0] = ((char *) &tmp0)[3];
+                        ((char *) &tmp1)[1] = ((char *) &tmp0)[2];
+                        ((char *) &tmp1)[2] = ((char *) &tmp0)[1];
+                        ((char *) &tmp1)[3] = ((char *) &tmp0)[0];
+                        val = tmp1;
+                } else {
+                        val = ((uint32_t *)SubEvt_data(my))[idx];
+                }
+                break;
+        case 2:
+                if (SubEvt_isSwapped(my)) {
+                        uint16_t v;
+                        swab(((uint16_t *)SubEvt_data(my)) + idx, &v, 2);
+                        val = v;
+                } else {
+                        val = ((uint16_t *)SubEvt_data(my))[idx];
+                }
+                break;
+        default:
+                val = ((uint8_t *)SubEvt_data(my))[idx];
+                break;
+        }
+        return val;
 }
 
 char *SubEvt_2charP(const void *my)
 {
-       static char buf[132];
+        static char buf[132];
 
-       sprintf(buf, "size: 0x%08x\tdecoding: 0x%08x\tid: 0x%08x\ttrigNr: 0x%08x",
-                       SubEvt_size(my), SubEvt_decoding(my), SubEvt_id(my), SubEvt_trigNr(my));
+        sprintf(buf, "size: 0x%08x\tdecoding: 0x%08x\tid: 0x%08x\ttrigNr: 0x%08x",
+               SubEvt_size(my), SubEvt_decoding(my), SubEvt_id(my), SubEvt_trigNr(my));
 
-       return buf;
+        return buf;
 }
 
 void *newSubEvt(uint32_t decoding, uint32_t id, uint32_t trigNr)
 {
-       void *my;
+        void *my;
 
-       my = malloc(SubEvt_hdrSize());
+        my = malloc(SubEvt_hdrSize());
 
-       SubEvt_setSize(my, SubEvt_hdrSize());
-       SubEvt_setDecoding(my, decoding);
-       SubEvt_setId(my, id);
-       SubEvt_setTrigNr(my, trigNr);
+        SubEvt_setSize(my, SubEvt_hdrSize());
+        SubEvt_setDecoding(my, decoding);
+        SubEvt_setId(my, id);
+        SubEvt_setTrigNr(my, trigNr);
 
-       return my;
+        return my;
 }
 
 void deleteSubEvt(void *my)
 {
-       free(my);
+        free(my);
 }
 
 void *SubEvt_appendData(void *my, const void *data, size_t size)
 {
 
-       my = realloc(my, SubEvt_paddedSize(my) + size);
-       memcpy(SubEvt_end(my), data, size);
-       SubEvt_setSize(my, SubEvt_paddedSize(my) + size);
+        my = realloc(my, SubEvt_paddedSize(my) + size);
+        memcpy(SubEvt_end(my), data, size);
+        SubEvt_setSize(my, SubEvt_paddedSize(my) + size);
 
-       return my;
+        return my;
 }
index a0a46d536ddc3a2203c8ce8a806318a4b5a824ce..bfd8edc0ed8a615b3f84356a1e25cb78c2f2a01e 100644 (file)
@@ -18,7 +18,7 @@ enum SubEvtId {
   SubEvtId_start = 10,
   SubEvtId_veto = 11,
   SubEvtId_richPed = 12,
-       SubEvtId_tofTest = 400,
+  SubEvtId_tofTest = 400,
   SubEvtId_trigCode = 500,
   SubEvtId_trigInfo = 501,
   SubEvtId_slowTest = 600
@@ -46,19 +46,68 @@ enum SubEvtDecoding {
 #define SubEvt_end HadTu_end
 #define SubEvt_next HadTu_next
 
-size_t SubEvt_hdrLen(void);
-size_t SubEvt_hdrSize(void);
-size_t SubEvt_dataSize(const void *my);
-void *SubEvt_data(const void *my);
+
+enum SubEvtIdx {
+        SubEvtIdx_size,
+        SubEvtIdx_decoding,
+        SubEvtIdx_id,
+        SubEvtIdx_trigNr,
+        SubEvtIdx_data
+};
+
+static size_t SubEvt_hdrLen(void)
+{
+        return SubEvtIdx_data;
+}
+
+static size_t SubEvt_hdrSize(void)
+{
+        return SubEvt_hdrLen() * sizeof(uint32_t);
+}
+
+static size_t SubEvt_dataSize(const void *my)
+{
+        return SubEvt_size(my) - SubEvt_hdrSize();
+}
+
+static void *SubEvt_data(const void *my)
+{
+        return (void *) ((char *) my + SubEvt_hdrSize());
+}
+
 uint32_t SubEvt_dataValue(const void *my, unsigned idx);
 char *SubEvt_2charP(const void *my);
 
-uint32_t SubEvt_id(const void *my);
-uint32_t SubEvt_pureId(const void *my);
-int SubEvt_dataError(const void *my);
-void SubEvt_setId(void *my, uint32_t id);
-uint32_t SubEvt_trigNr(const void *my);
-void SubEvt_setTrigNr(void *my, uint32_t trigNr);
+
+static uint32_t SubEvt_id(const void *my)
+{
+        return SubEvt_hdrValue(my, SubEvtIdx_id);
+}
+
+static uint32_t SubEvt_pureId(const void *my)
+{
+        return SubEvt_hdrValue(my, SubEvtIdx_id) & 0x7fffffffU;
+}
+
+static int SubEvt_dataError(const void *my)
+{
+        return (SubEvt_hdrValue(my, SubEvtIdx_id) & 0x80000000) != 0;
+}
+
+static void SubEvt_setId(void *my, uint32_t id)
+{
+        SubEvt_setHdrValue(my, SubEvtIdx_id, id);
+}
+
+static uint32_t SubEvt_trigNr(const void *my)
+{
+        return SubEvt_hdrValue(my, SubEvtIdx_trigNr);
+}
+
+static void SubEvt_setTrigNr(void *my, uint32_t trigNr)
+{
+        SubEvt_setHdrValue(my, SubEvtIdx_trigNr, trigNr);
+}
 
 void *newSubEvt(uint32_t decoding, uint32_t id, uint32_t trigNr);
 void deleteSubEvt(void *my);