#include "rsi.h"
#include <process.h>
using namespace RSI::RapidCode;
const int AXIS_COUNT = 2;
const int DESIRED_POINTS = 50;
const int SYNC_PERIOD = 10;
int32 lastSample = 0;
#pragma region Fixed Size Implementation
const int POINT_BLOCK_COUNT = 10;
int32 extraPointsSentToEvenOutBlock = 0;
int32 AdjustPointsNeededToBlockCount(int32 initialCount)
{
int32 calculatedCount = 0;
int32 adjustedInitialCount = initialCount - extraPointsSentToEvenOutBlock;
while ((adjustedInitialCount > 0) && (adjustedInitialCount > calculatedCount))
{
calculatedCount += POINT_BLOCK_COUNT;
}
extraPointsSentToEvenOutBlock += calculatedCount - initialCount;
return calculatedCount;
}
#pragma endregion
volatile int _continueMonitoring = true;
void monitoringThread(void* tmp)
{
while (_continueMonitoring)
{
int32 pointsNeeded = sampleRecieved - lastSample;
pointsNeeded = AdjustPointsNeededToBlockCount(pointsNeeded);
lastSample = sampleRecieved;
}
}
{
{
}
}
void streamingMotionBufferManagementMain()
{
checkErrors(controller);
try
{
checkErrors(controller);
_beginthread(monitoringThread, 0, controller);
bool exitCondition = false;
while (!exitCondition)
{
}
}
{
printf(
"\n%s\n", err.
text);
}
_continueMonitoring = false;
}