#include <lvme.h>
#include <allParam.h>
+#include "tof_defs.h"
typedef struct HwTipS {
- char name[16];
+ char name[12];
LVme *lvme;
- unsigned long currAddr;
- unsigned long bankRequested;
- unsigned long pipeFull;
- unsigned long daqRq;
- unsigned long daqGr;
- unsigned long fifo;
+ int bankRequested;
+ int daqRq;
+ int daqGr;
+ int currAddr;
+ int fifo;
+ int endOfData;
} HwTip;
int conHwTip(HwTip *my, const char *name, const Param *param);
void desHwTip(HwTip *my);
+static int HwTip_isBusy(HwTip * my)
+{
+ return !LVme_tstBitL(my->lvme, CONFIG1BASE + CFG_MASTER_STATUS, my->daqGr);
+}
+static void HwTip_getEndOfData(HwTip * my)
+{
+ my->endOfData = LVme_getL(my->lvme, my->fifo) + my->fifo;
+}
+
+static int HwTip_isEmpty(HwTip * my)
+{
+ return my->currAddr >= my->endOfData;
+}
+
void HwTip_requestBuffer(HwTip *my);
-int HwTip_isBusy(HwTip *my);
-int HwTip_isEmpty(HwTip *my);
int HwTip_readSubEvt(HwTip *my, void *subEvt);
#endif