summaryrefslogtreecommitdiffhomepage
path: root/FaceTrackNoIR/tracker.h
diff options
context:
space:
mode:
authorWim Vriend <facetracknoir@gmail.com>2012-01-09 17:01:44 +0000
committerWim Vriend <facetracknoir@gmail.com>2012-01-09 17:01:44 +0000
commitd6086d8203ae4f4b45f3d97960788d603fc78e16 (patch)
treed27181290c04ca84d27b822aa40b9f7ed904e389 /FaceTrackNoIR/tracker.h
parent10feed03651270c2aa0eb95268e40f0b66fe30d6 (diff)
Implemented filter-settings changeably while Tracker is active.
Should also be handy to have a IFilterPtr, for logging... git-svn-id: svn+ssh://svn.code.sf.net/p/facetracknoir/code@99 19e81ba0-9b1a-49c3-bd6c-561e1906d5fb
Diffstat (limited to 'FaceTrackNoIR/tracker.h')
-rw-r--r--FaceTrackNoIR/tracker.h13
1 files changed, 3 insertions, 10 deletions
diff --git a/FaceTrackNoIR/tracker.h b/FaceTrackNoIR/tracker.h
index dd8a961b..b9a39eba 100644
--- a/FaceTrackNoIR/tracker.h
+++ b/FaceTrackNoIR/tracker.h
@@ -41,7 +41,7 @@
#include "..\ftnoir_tracker_base\FTNoIR_Tracker_base.h"
#include "..\ftnoir_protocol_base\FTNoIR_Protocol_base.h"
#include "..\ftnoir_filter_base\FTNoIR_Filter_base.h"
-#include "AutoClosePtr.h"
+//#include "AutoClosePtr.h"
// 1a. COM-Like usage with smart pointer.
// No need to call `ITracker::Release'; the instance will
@@ -50,8 +50,7 @@ typedef AutoClosePtr<ITracker, void, &ITracker::Release> ITrackerPtr;
typedef ITracker *(WINAPI *importGetTracker)(void);
typedef AutoClosePtr<IProtocol, void, &IProtocol::Release> IProtocolPtr;
typedef IProtocol *(WINAPI *importGetProtocol)(void);
-typedef AutoClosePtr<IFilter, void, &IFilter::Release> IFilterPtr;
-typedef IFilter *(WINAPI *importGetFilter)(void);
+
// include the DirectX Library files
#pragma comment (lib, "dinput8.lib")
@@ -162,9 +161,6 @@ private:
static void addHeadPose( THeadPoseData head_pose );
static void addRaw2List ( QList<float> *rawList, float maxIndex, float raw );
-// static float lowPassFilter ( float newvalue, float *oldvalue, float dt, float coeff);
-// static float rateLimiter ( float newvalue, float *oldvalue, float dt, float max_rate);
-// static float getCorrectedNewRaw ( float NewRaw, float rotNeutral );
/** static member variables for saving the head pose **/
static THeadPoseDOF Pitch; // Head-rotation X-direction (Up/Down)
@@ -232,12 +228,9 @@ public:
static void setInvertZ(bool invert) { Z.invert = invert?-1.0f:+1.0f; }
static void setUseFilter(bool set) { useFilter = set; }
- static void setMinSmooth(int x);
- static void setMaxSmooth(int x);
- static void setPowCurve(int x);
-
static void getHeadPose(THeadPoseData *data); // Return the current headpose data
static void getOutputHeadPose(THeadPoseData *data); // Return the current (processed) headpose data
+ static IFilterPtr getFilterPtr() { return pFilter; }
static float getSmoothFromList ( QList<float> *rawList );
static float getDegreesFromRads ( float rads ) { return (rads * 57.295781f); }