1
0
Fork 0
mirror of https://git.rwth-aachen.de/acs/public/villas/node/ synced 2025-03-09 00:00:00 +01:00

fix pmu_dft

This commit is contained in:
Manuel Pitz 2022-03-31 15:54:07 +00:00 committed by Steffen Vogel
parent 39c96feecb
commit 0e6bf3f20d

View file

@ -480,16 +480,20 @@ public:
smp->length = windowSize < smpMemPos ? signalIndices.size() * 4 : 0;
unsigned tsPos = 0;
if (timeAlignType == TimeAlign::LEFT)
tsPos = (smpMemPos % windowSize);
else if (timeAlignType == TimeAlign::RIGHT)
tsPos = ((smpMemPos % windowSize) > 0)? (smpMemPos % windowSize) - 1 : windowSize;
else if (timeAlignType == TimeAlign::CENTER) {
tsPos = ((smpMemPos % windowSize) >= (windowSize / 2))?
(smpMemPos % windowSize) - (windowSize / 2) :
(smpMemPos % windowSize) + (windowSize / 2);
if(smpMemPos >= windowSize) {
unsigned tsPos = 0;
if (timeAlignType == TimeAlign::RIGHT)
tsPos = smpMemPos;
else if (timeAlignType == TimeAlign::LEFT)
tsPos = smpMemPos - windowSize;
else if (timeAlignType == TimeAlign::CENTER) {
tsPos = smpMemPos - (windowSize / 2);
}
smp->ts.origin = smpMemoryTs[tsPos % windowSize];
}
smp->ts.origin = smpMemoryTs[tsPos];
smp->ts.origin = smpMemoryTs[tsPos % windowSize];
calcCount++;
}
@ -499,6 +503,10 @@ public:
lastSequence = smp->sequence;
if(smpMemPos >= 2 * windowSize) {//reset smpMemPos if greater than twice the window. Important to handle init
smpMemPos = windowSize;
}
smpMemPos++;
if (run && windowSize < smpMemPos)