From 3106955fc99120193434a1b324a30697e3ce44a9 Mon Sep 17 00:00:00 2001 From: Wim Vriend Date: Sat, 22 Sep 2012 14:38:13 +0000 Subject: Added to the repo, after changing AutoClose stuff git-svn-id: svn+ssh://svn.code.sf.net/p/facetracknoir/code@156 19e81ba0-9b1a-49c3-bd6c-561e1906d5fb --- FTNoIR_Filter_EWMA2/ftnoir_filter_ewma_dll.cpp | 90 ++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 FTNoIR_Filter_EWMA2/ftnoir_filter_ewma_dll.cpp diff --git a/FTNoIR_Filter_EWMA2/ftnoir_filter_ewma_dll.cpp b/FTNoIR_Filter_EWMA2/ftnoir_filter_ewma_dll.cpp new file mode 100644 index 00000000..c9867f1b --- /dev/null +++ b/FTNoIR_Filter_EWMA2/ftnoir_filter_ewma_dll.cpp @@ -0,0 +1,90 @@ +/******************************************************************************** +* FaceTrackNoIR This program is a private project of some enthusiastic * +* gamers from Holland, who don't like to pay much for * +* head-tracking. * +* * +* Copyright (C) 2012 Wim Vriend (Developing) * +* Ron Hendriks (Researching and Testing) * +* * +* Homepage * +* * +* This program is free software; you can redistribute it and/or modify it * +* under the terms of the GNU General Public License as published by the * +* Free Software Foundation; either version 3 of the License, or (at your * +* option) any later version. * +* * +* This program is distributed in the hope that it will be useful, but * +* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY * +* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * +* more details. * +* * +* You should have received a copy of the GNU General Public License along * +* with this program; if not, see . * +* * +********************************************************************************/ +/* + Modifications (last one on top): + 20120830 - WVR: The Dialog class was used to get general info on the DLL. This + had a big disadvantage: the complete dialog was loaded, just to get + some data and then it was deleted again (without ever showing the dialog). + The FilterDll class solves this. + The functions to get the name(s) and icon were removed from the two other classes. +*/ +#include "ftnoir_filter_ewma2.h" +#include + +FTNoIR_FilterDll::FTNoIR_FilterDll() { + //populate the description strings + filterFullName = "EWMA Filter Mk2"; + filterShortName = "EWMA"; + filterDescription = "Exponentially Weighted Moving Average filter with dynamic smoothing parameter"; +} + +FTNoIR_FilterDll::~FTNoIR_FilterDll() +{ + +} + +void FTNoIR_FilterDll::Release() +{ + delete this; +} + +void FTNoIR_FilterDll::Initialize() +{ + return; +} + +void FTNoIR_FilterDll::getFullName(QString *strToBeFilled) +{ + *strToBeFilled = filterFullName; +}; + +void FTNoIR_FilterDll::getShortName(QString *strToBeFilled) +{ + *strToBeFilled = filterShortName; +}; + +void FTNoIR_FilterDll::getDescription(QString *strToBeFilled) +{ + *strToBeFilled = filterDescription; +}; + +void FTNoIR_FilterDll::getIcon(QIcon *icon) +{ + *icon = QIcon(":/images/filter-16.png"); +}; + +//////////////////////////////////////////////////////////////////////////////// +// Factory function that creates instances if the Filter object. + +// Export both decorated and undecorated names. +// GetFilterDll - Undecorated name, which can be easily used with GetProcAddress +// Win32 API function. +// _GetFilterDll@0 - Common name decoration for __stdcall functions in C language. +#pragma comment(linker, "/export:GetFilterDll=_GetFilterDll@0") + +FTNOIR_FILTER_BASE_EXPORT IFilterDllPtr __stdcall GetFilterDll() +{ + return new FTNoIR_FilterDll; +} -- cgit v1.2.3