diff --git a/evrMrmApp/src/drvem.h b/evrMrmApp/src/drvem.h index af860853..84a321d2 100644 --- a/evrMrmApp/src/drvem.h +++ b/evrMrmApp/src/drvem.h @@ -236,6 +236,15 @@ class epicsShareClass EVRMRM : public mrf::ObjectInst, const void *isrLinuxPvt; #endif + //get the pointer of the delay module + DelayModule* getDelayModule(int i){ + if (size_t(i)getDelayModule(N/2) != NULL){ + if (N%2 == 0){ + owner->getDelayModule(N/2)->setDelay0(val); + }else{ + owner->getDelayModule(N/2)->setDelay1(val); + } + } break; case OutputRB: WRITE32(owner->base, RTMDELAY(N), ticks); break; @@ -190,6 +197,13 @@ MRMOutput::fineDelay() const case OutputFP: break; case OutputFPUniv: + if (owner->getDelayModule(N/2) != NULL){ + if (N%2 == 0){ + dly_val = owner->getDelayModule(N/2)->getDelay0(); + }else{ + dly_val = owner->getDelayModule(N/2)->getDelay1(); + } + } break; case OutputRB: epicsUInt32 ticks;