From: hades Date: Mon, 23 Apr 2001 13:14:48 +0000 (+0000) Subject: combination of tof and mu readout, mt X-Git-Url: https://jspc29.x-matter.uni-frankfurt.de/git/?a=commitdiff_plain;h=9b62adb71d0e8a5682eef2079ee65450b853c1bb;p=daqdata.git combination of tof and mu readout, mt --- diff --git a/hadaq/hwtrig.c b/hadaq/hwtrig.c index b8b4bfb..60d00f9 100644 --- a/hadaq/hwtrig.c +++ b/hadaq/hwtrig.c @@ -1,4 +1,4 @@ -static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwtrig.c,v 6.15 2001-04-12 12:33:19 hades Exp $"; +static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwtrig.c,v 6.16 2001-04-23 13:14:48 hades Exp $"; #define _POSIX_C_SOURCE 199309L #include @@ -12,14 +12,18 @@ static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hada #include "subevt.h" + +#if 1 #define TOF_READOUT +#endif #ifdef TOF_READOUT #include "hwtip.h" - -#define NCRATES 3 /* Number of TOF crates */ #endif +/* Number of TOF crates */ +#define NCRATES 3 + #define MU_EVT_COUNT 0x0e8014UL #define MU_FIFO 0x0000UL #define MU_FIFO_STATUS 0x0008UL @@ -53,13 +57,13 @@ int Hardware_inSpill(const Hardware *my) Hardware *newHardware(void) { Hardware *my; - unsigned long cardBase; + unsigned long cardBase; int paramWasFound; Param *param; my = allocMem(sizeof(Hardware)); my->maxSubEvtSize = (SubEvt_hdrSize() + 2 * 500 * sizeof(UInt4)) /* MU */ - + (SubEvt_hdrSize() + (NCRATES * 620 * sizeof(UInt4))); /* CONC */ + + ( NCRATES * ( SubEvt_hdrSize() + 620 * sizeof(UInt4))); /* CONC */ my->evtCount = 0; my->old_evtCount = 0; @@ -67,6 +71,7 @@ Hardware *newHardware(void) param = allocMem(sizeof(Param)); conParam(param); Param_getInt(param, "mu", "cardbase", ¶mWasFound, &cardBase); + msglog(LOG_INFO, "MU cardbase %.8x\n", cardBase ); if (!paramWasFound) { msglog(LOG_WARNING, "Parameter %s(%s) not found, default = 0\n", "mu", "cardbase"); @@ -208,6 +213,7 @@ void Hardware_readout(Hardware *my, void *partEvt) * read out CONC */ + for (i = 0; i < NCRATES; i++) { HwTip_readSubEvt(my->tip, subEvt); if (i == 0) { @@ -220,6 +226,8 @@ void Hardware_readout(Hardware *my, void *partEvt) } subEvt = SubEvt_next(partEvt, subEvt); } + + #endif /* @@ -227,10 +235,16 @@ void Hardware_readout(Hardware *my, void *partEvt) */ readoutTrig(my, subEvt); - if (trigTag != (SubEvt_trigNr(subEvt) & 0xff)) { + +#ifndef TOF_READOUT + trigTag = SubEvt_trigNr(subEvt); +#else + if ( trigTag != SubEvt_trigNr(subEvt)) { msglog(LOG_ERR, "(MU)Trigger tag mismatch: 0x%08x != 0x%08x\n", trigTag, SubEvt_trigNr(subEvt)); } +#endif + trigCode = SubEvt_dataValue(subEvt, 0); subEvt = SubEvt_next(partEvt, subEvt);