35 #ifndef DISP3DLIB_RTSENSORDATACONTROLLER_H
36 #define DISP3DLIB_RTSENSORDATACONTROLLER_H
42 #include "../../../../disp3D_global.h"
56 #include <Eigen/SparseCore>
77 class RtSensorDataWorker;
78 class RtSensorInterpolationMatWorker;
91 typedef QSharedPointer<RtSensorDataController>
SPtr;
92 typedef QSharedPointer<const RtSensorDataController>
ConstSPtr;
112 void setStreamingState(
bool bStreamingState);
121 void setInterpolationFunction(
const QString &sInterpolationFunction);
129 void setLoopState(
bool bLoopState);
139 void setCancelDistance(
double dCancelDist);
147 void setTimeInterval(
int iMSec);
162 void setInterpolationInfo(
const Eigen::MatrixX3f &matVertices,
163 const QVector<QVector<int> > &vecNeighborVertices,
164 const QVector<Eigen::Vector3f> &vecSensorPos,
174 void setThresholds(
const QVector3D &vecThresholds);
182 void setColormapType(
const QString &sColormapType);
190 void setNumberAverages(
int iNumAvr);
198 void setSFreq(
double dSFreq);
214 void setStreamSmoothedData(
bool bStreamSmoothedData);
222 void addData(
const Eigen::MatrixXd& data);
231 void onNewRtRawData(
const Eigen::VectorXd &vecDataVector);
239 void onNewSmoothedRtRawData(
const Eigen::MatrixX4f &matColorMatrix);
247 void onNewInterpolationMatrixCalculated(QSharedPointer<Eigen::SparseMatrix<float> > pMatInterpolationMatrix);
269 void interpolationInfoChanged(
const Eigen::MatrixX3f &matVertices,
270 const QVector<QVector<int> > &vecNeighborVertices,
271 const QVector<Eigen::Vector3f> &vecSensorPos,
281 void numberVerticesChanged(
int iNumberVerts);
297 void streamSmoothedDataChanged(
bool bStreamSmoothedData);
305 void interpolationFunctionChanged(
const QString &sInterpolationFunction);
313 void cancelDistanceChanged(
double dCancelDist);
321 void surfaceColorChanged(
const Eigen::MatrixX3f& matSurfaceVertColor);
329 void thresholdsChanged(
const QVector3D &vecThresholds);
337 void sFreqChanged(
double dSFreq);
345 void numberAveragesChanged(
int iNumAvr);
353 void loopStateChanged(
bool bLoopState);
361 void colormapTypeChanged(
const QString &sColormapType);
369 void rawDataChanged(
const Eigen::MatrixXd& data);
377 void newInterpolationMatrixAvailable(QSharedPointer<Eigen::SparseMatrix<float> > pMatInterpolationMatrix);
385 void newRtRawDataAvailable(
const Eigen::VectorXd &vecDataVector);
393 void newRtSmoothedDataAvailable(
const Eigen::MatrixX4f &matColorMatrix);
397 #endif //DISP3DLIB_RTSENSORDATACONTROLLER_H