35#ifndef DISP3DLIB_RTSENSORDATACONTROLLER_H
36#define DISP3DLIB_RTSENSORDATACONTROLLER_H
42#include "../../../../disp3D_global.h"
56#include <Eigen/SparseCore>
77class RtSensorDataWorker;
78class 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);
270 const QVector<QVector<int> > &vecNeighborVertices,
271 const QVector<Eigen::Vector3f> &vecSensorPos,
#define DISP3DSHARED_EXPORT
This controller organizes data streaming and interpolation matrix calculations. It only uses Queued s...
void sFreqChanged(double dSFreq)
void newRtSmoothedDataAvailable(const Eigen::MatrixX4f &matColorMatrix)
QThread m_rtSensorDataWorkerThread
void thresholdsChanged(const QVector3D &vecThresholds)
void newRtRawDataAvailable(const Eigen::VectorXd &vecDataVector)
void interpolationInfoChanged(const Eigen::MatrixX3f &matVertices, const QVector< QVector< int > > &vecNeighborVertices, const QVector< Eigen::Vector3f > &vecSensorPos, const FIFFLIB::FiffInfo &fiffInfo, int iSensorType)
QThread m_rtInterpolationWorkerThread
void badChannelsChanged(const FIFFLIB::FiffInfo &info)
void cancelDistanceChanged(double dCancelDist)
void loopStateChanged(bool bLoopState)
void newInterpolationMatrixAvailable(QSharedPointer< Eigen::SparseMatrix< float > > pMatInterpolationMatrix)
void numberAveragesChanged(int iNumAvr)
void interpolationFunctionChanged(const QString &sInterpolationFunction)
void colormapTypeChanged(const QString &sColormapType)
void streamSmoothedDataChanged(bool bStreamSmoothedData)
void surfaceColorChanged(const Eigen::MatrixX3f &matSurfaceVertColor)
void numberVerticesChanged(int iNumberVerts)
QSharedPointer< const RtSensorDataController > ConstSPtr
void rawDataChanged(const Eigen::MatrixXd &data)
QSharedPointer< RtSensorDataController > SPtr
QPointer< RtSensorDataWorker > m_pRtSensorDataWorker
QPointer< RtSensorInterpolationMatWorker > m_pRtInterpolationWorker
FIFF measurement file information.