]> jspc29.x-matter.uni-frankfurt.de Git - daqdata.git/commitdiff
indented -- mm
authorhadaq <hadaq>
Tue, 15 Oct 2002 12:12:29 +0000 (12:12 +0000)
committerhadaq <hadaq>
Tue, 15 Oct 2002 12:12:29 +0000 (12:12 +0000)
hadaq/hwship.c
hadaq/hwship.h
hadaq/hwshow.c
hadaq/indent.pro

index dca3abc06f477bce5e6b9055bf2562aec9568a31..2d8a1b5d8b540bd56e1ceaac65530fe05078d698 100644 (file)
@@ -1,4 +1,4 @@
-static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwship.c,v 6.23 2002-10-09 12:42:18 hadaq Exp $";
+static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwship.c,v 6.24 2002-10-15 12:12:29 hadaq Exp $";
 
 #include <assert.h>
 #include <string.h>
@@ -15,125 +15,119 @@ static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hada
 
 #include "hwship.h"
 
-int conHwShip(HwShip * my, const char *name, const Param *param)
+int conHwShip(HwShip *my, const char *name, const Param *param)
 {
-  unsigned long cardBase;
+       unsigned long cardBase;
        int paramWasFound;
-  int i;
+       int i;
 
-  assert(my != NULL);
+       assert(my != NULL);
 
-  strcpy(my->name, name);
+       strcpy(my->name, name);
 
        Param_getInt(param, my->name, "cardbase", &paramWasFound, &cardBase);
        if (!paramWasFound) {
                syslog(LOG_WARNING,
-                       "Parameter %s(%s) not found, default = 0", my->name, "cardbase");
+                        "Parameter %s(%s) not found, default = 0", my->name, "cardbase");
                cardBase = 0;
        }
+       my->lvme = malloc(sizeof(LVme));
+       if (0 > conLVme(my->lvme, cardBase, 0x400000UL, 0x39UL, 0, 0)) {
+               syslog(LOG_ERR, "HwShip on %p not found", cardBase);
+               return -1;
+       }
+       /* Select VME-accessible register of LVL2-controller */
+       LVme_setW(my->lvme, LVL2_SEL_VMEREG, LVL2_SELMEM_VMEREG);
 
-  my->lvme = malloc(sizeof(LVme));
-  if (0 > conLVme(my->lvme, cardBase, 0x400000UL, 0x39UL, 0, 0)) {
-    syslog(LOG_ERR, "HwShip on %p not found", cardBase);
-    return -1;
-  }
-  /* Select VME-accessible register of LVL2-controller */
-  LVme_setW(my->lvme, LVL2_SEL_VMEREG, LVL2_SELMEM_VMEREG);
-
-  my->currAddr = 0x7fffffff; /* behind end of memory */
-  my->endOfData = 0;
-  return 0;
+       my->currAddr = 0x7fffffff;      /* behind end of memory */
+       my->endOfData = 0;
+       return 0;
 }
 
-void desHwShip(HwShip * my)
+void desHwShip(HwShip *my)
 {
-  desLVme(my->lvme);
+       desLVme(my->lvme);
 }
 
-void HwShip_requestBuffer(HwShip *my) {
-  int i;
+void HwShip_requestBuffer(HwShip *my)
+{
+       int i;
 
 #ifndef NDEBUG
-  syslog(LOG_DEBUG, "wait for data");
+       syslog(LOG_DEBUG, "wait for data");
 #endif
-  while ((LVme_getL(my->lvme, LVL2_ACCESS_VMEREG) >> 16 & 0xffff) <= 2) {
+       while ((LVme_getL(my->lvme, LVL2_ACCESS_VMEREG) >> 16 & 0xffff) <= 2) {
 #if 1
-                       struct timespec tS, *t = &tS;
-                       t->tv_sec = 0;
-                       t->tv_nsec = 010000000;
-                       nanosleep(t, NULL);
+               struct timespec tS, *t = &tS;
+               t->tv_sec = 0;
+               t->tv_nsec = 010000000;
+               nanosleep(t, NULL);
 #endif
-  }
+       }
 #ifndef NDEBUG
-  syslog(LOG_DEBUG, "data available");
+       syslog(LOG_DEBUG, "data available");
 #endif
-  i = my->bankRequested == 1 ? 0 : 1;
-  LVme_setL(my->lvme, LVL2_ACCESS_VMEREG, i);
-  my->bankRequested = i;
-  my->currAddr = LVL2_DATASTART;
+       i = my->bankRequested == 1 ? 0 : 1;
+       LVme_setL(my->lvme, LVL2_ACCESS_VMEREG, i);
+       my->bankRequested = i;
+       my->currAddr = LVL2_DATASTART;
 
-  /* to indicate a buffer request state which is cleared by getEndOfData */
-  my->endOfData =0;
+       /* to indicate a buffer request state which is cleared by getEndOfData */
+       my->endOfData = 0;
 }
 
 #define SHIP_NODATASIZE 16
 
 int HwShip_readSubEvt(HwShip *my, void *subEvt)
 {
-  uint32_t * data = (uint32_t *)subEvt;
-  int lastAddr;
-  int currAddr = my->currAddr;
-  int size, i;
-  char str[200], buff[200];
-  unsigned long *tempPtr;
+       uint32_t *data = (uint32_t *) subEvt;
+       int lastAddr;
+       int currAddr = my->currAddr;
+       int size, i;
+       char str[200], buff[200];
+       unsigned long *tempPtr;
 
-  size = LVme_getL(my->lvme, currAddr);
+       size = LVme_getL(my->lvme, currAddr);
 
-  lastAddr = currAddr + size;
-  my->currAddr = lastAddr;
+       lastAddr = currAddr + size;
+       my->currAddr = lastAddr;
 
-  /* skip empty subevent, nobody will realize this */
+       /* skip empty subevent, nobody will realize this */
 #if 1
-  if (size <= SHIP_NODATASIZE) return 1;
-#endif 
-
-  /* copy one sub evt from RC to memory */
-  *data++ = size;
-  i=0;
-  /* we are not sure what the maximum number of words is allowed in the ipcs*/
-  while (  ( (currAddr+=4) < lastAddr) && ( i < 0x1600 ) ) {
-       *data++ = LVme_getL(my->lvme, currAddr);
-       i++;
-  }
-
-  if(size > 0x1900) {
-    syslog(LOG_ERR,"Error, size too large: %.8x", size);
-
-    tempPtr = data-0x1600;
-  
-    str[0] = 0;
-    for(i=0;i < 100; i++) {
-      sprintf(buff, "%.8x   ", tempPtr[i]);
-      strcpy((char *) ((unsigned int)str + strlen(str)) , buff);
-      if( ((i+1)%4) == 0) {
-       syslog(LOG_ERR, str);
-       str[0] = 0;
-      }
-    }
-    if( (i%4)) {
-      syslog(LOG_ERR, str);
-      str[0] = 0;
-    }
-  }
+       if (size <= SHIP_NODATASIZE)
+               return 1;
+#endif
 
+       /* copy one sub evt from RC to memory */
+       *data++ = size;
+       i = 0;
+       /* we are not sure what the maximum number of words is allowed in the ipcs*/
+       while (((currAddr += 4) < lastAddr) && (i < 0x1600)) {
+               *data++ = LVme_getL(my->lvme, currAddr);
+               i++;
+       }
 
+       if (size > 0x1900) {
+               syslog(LOG_ERR, "Error, size too large: %.8x", size);
+
+               tempPtr = data - 0x1600;
+
+               str[0] = 0;
+               for (i = 0; i < 100; i++) {
+                       sprintf(buff, "%.8x   ", tempPtr[i]);
+                       strcpy((char *) ((unsigned int) str + strlen(str)), buff);
+                       if (((i + 1) % 4) == 0) {
+                               syslog(LOG_ERR, str);
+                               str[0] = 0;
+                       }
+               }
+               if ((i % 4)) {
+                       syslog(LOG_ERR, str);
+                       str[0] = 0;
+               }
+       }
 #ifndef NDEBUG
        syslog(LOG_DEBUG, "subEvt: %s", SubEvt_2charP(subEvt));
 #endif
-  return 0;
+       return 0;
 }
-
-
-
-
-
index 599212d447796c52d9def70a807d3efa1e215849..0156795219fd62c2b26e48cbaa8a2210b79dd1a9 100644 (file)
@@ -7,12 +7,14 @@
 #include "ipc_basis.h"
 
 typedef struct HwShipS {
-  char name[12];
-  LVme *lvme;
-  int currAddr;
-  int endOfData;
-  int bankRequested;
-} HwShip;
+       char name[12];
+       LVme *lvme;
+       int currAddr;
+       int endOfData;
+       int bankRequested;
+}
+
+HwShip;
 
 
 int conHwShip(HwShip *my, const char *name, const Param *param);
@@ -20,24 +22,29 @@ void desHwShip(HwShip *my);
 
 void HwShip_requestBuffer(HwShip *my);
 
-static int bankConfirmed(HwShip *my) {
+static int bankConfirmed(HwShip *my)
+{
        return LVme_tstBitL(my->lvme, LVL2_ACCESS_VMEREG, 7);
 }
 
-static void HwShip_getEndOfData(HwShip *my) {
+static void HwShip_getEndOfData(HwShip *my)
+{
        my->endOfData = LVme_getL(my->lvme, LVL2_OFFSET) - 2 + LVL2_OFFSET;
 }
 
-static int HwShip_isBusy(HwShip *my) {
-  return my->bankRequested != bankConfirmed(my);
+static int HwShip_isBusy(HwShip *my)
+{
+       return my->bankRequested != bankConfirmed(my);
 }
 
-static int HwShip_isEmpty(HwShip *my) {
-  return my->currAddr >= my->endOfData;
+static int HwShip_isEmpty(HwShip *my)
+{
+       return my->currAddr >= my->endOfData;
 }
 
-static int HwShip_isBufRequested(HwShip *my) {
-  return my->endOfData == 0;
+static int HwShip_isBufRequested(HwShip *my)
+{
+       return my->endOfData == 0;
 }
 
 int HwShip_readSubEvt(HwShip *my, void *subEvt);
index b8e37b0a0da9b3ba8c46e00ee3ad340a69cc67e2..8e8d88be392733d7045530e1a26753edbe8c1a49 100644 (file)
@@ -1,4 +1,4 @@
-static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwshow.c,v 6.23 2002-10-09 12:42:18 hadaq Exp $";
+static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwshow.c,v 6.24 2002-10-15 12:12:29 hadaq Exp $";
 
 
 #define _POSIX_C_SOURCE 199309L
@@ -8,7 +8,7 @@ static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hada
 #include <errno.h>
 #include <stdio.h>
 #include <stdlib.h>
-#include <string.h> 
+#include <string.h>
 #include <sys/time.h>
 #include <syslog.h>
 
@@ -51,7 +51,7 @@ Hardware *newHardware(void)
        /*my->maxSubEvtSize = SubEvt_hdrSize() + (NSHIPS * 1600 * sizeof(uint32_t));*/
        my->maxSubEvtSize = SubEvt_hdrSize() + (NSHIPS * 1900 * sizeof(uint32_t));
 
-       syslog(LOG_WARNING, "max subevent size: %.8x", my->maxSubEvtSize );
+       syslog(LOG_WARNING, "max subevent size: %.8x", my->maxSubEvtSize);
 
 
        for (i = 0; i < NSHIPS; i++) {
@@ -95,28 +95,28 @@ void Hardware_waitForTrigger(Hardware *my, void *subEvt)
        }
 
        do {
-         for (i = 0; i < NSHIPS; i++) {
-               if (HwShip_isBufRequested(my->ship[i])) {
-                 if (!HwShip_isBusy(my->ship[i])) {
-                       HwShip_getEndOfData(my->ship[i]);
-                       --nRequests;
-                 }
+               for (i = 0; i < NSHIPS; i++) {
+                       if (HwShip_isBufRequested(my->ship[i])) {
+                               if (!HwShip_isBusy(my->ship[i])) {
+                                       HwShip_getEndOfData(my->ship[i]);
+                                       --nRequests;
+                               }
+                       }
                }
-         }
 #if 0
 /*
 * This sleep prevents a tight loop which stops work on real
 * time systems if the priority of readout is not lowered.
 * When not using the sleep use option -p -2 for daq_readout.
 */
-         if (nRequests == NSHIPS) {
-               struct timespec tS, *t = &tS;
-               t->tv_sec = 0;
-               t->tv_nsec = 020000000;
-               nanosleep(t, NULL);
-         }
+               if (nRequests == NSHIPS) {
+                       struct timespec tS, *t = &tS;
+                       t->tv_sec = 0;
+                       t->tv_nsec = 020000000;
+                       nanosleep(t, NULL);
+               }
 #endif
-       } while(nRequests);
+       } while (nRequests);
 
 }
 
@@ -134,24 +134,24 @@ void Hardware_readout(Hardware *my, void *partEvt)
 
        /* read all ships, check for common trigger tag */
        for (i = 0; i < NSHIPS; i++) {
-         if( HwShip_readSubEvt(my->ship[i], subEvt) == 0) {
-               if (firstShip < 0) {
-                       trigTag = SubEvt_trigNr(subEvt) & 0xff;
-                       firstShip = i;
-               } else {
-                       if (trigTag != (SubEvt_trigNr(subEvt) & 0xff)) {
-                               SubEvt_setId(subEvt, SubEvt_id(subEvt) | 0x80000000UL);
-                               SubEvt_setId(partEvt, SubEvt_id(partEvt) | 0x80000000UL);
-                               syslog(LOG_ERR, "(%s)Trigger tag mismatch: 0x%08x (%d) != 0x%08x",
-                                       my->ship[i]->name,trigTag,firstShip,SubEvt_trigNr(subEvt));
+               if (HwShip_readSubEvt(my->ship[i], subEvt) == 0) {
+                       if (firstShip < 0) {
+                               trigTag = SubEvt_trigNr(subEvt) & 0xff;
+                               firstShip = i;
+                       } else {
+                               if (trigTag != (SubEvt_trigNr(subEvt) & 0xff)) {
+                                       SubEvt_setId(subEvt, SubEvt_id(subEvt) | 0x80000000UL);
+                                       SubEvt_setId(partEvt, SubEvt_id(partEvt) | 0x80000000UL);
+                                       syslog(LOG_ERR, "(%s)Trigger tag mismatch: 0x%08x (%d) != 0x%08x",
+                                                  my->ship[i]->name, trigTag, firstShip, SubEvt_trigNr(subEvt));
+                               }
                        }
+                       subEvt = SubEvt_next(partEvt, subEvt);
                }
-               subEvt = SubEvt_next(partEvt, subEvt);
-         }
        }
 
        SubEvt_setTrigNr(partEvt, trigNr << 8 | trigTag);
-       SubEvt_setSize(partEvt, (char *)subEvt - (char *)partEvt);
+       SubEvt_setSize(partEvt, (char *) subEvt - (char *) partEvt);
        trigNr++;
 
        assert(SubEvt_size(partEvt) <= my->maxSubEvtSize);
index eed0339b531e9798d714f69343192d6623cdaf8b..d65d71217a57c7c3fcab0ce9072d52671a385453 100644 (file)
@@ -23,3 +23,5 @@
 -T HwV488
 -T HwV556
 -T HwDtu
+-T HwShip
+-T LVme