From 541fb8cb1744c9c3ef7524b2d9491ed08032b36e Mon Sep 17 00:00:00 2001 From: Wim Vriend Date: Thu, 13 Sep 2012 17:08:31 +0000 Subject: Class TrackerDll added, to get info about the Tracker git-svn-id: svn+ssh://svn.code.sf.net/p/facetracknoir/code@131 19e81ba0-9b1a-49c3-bd6c-561e1906d5fb --- FaceTrackNoIR/FTNoIR_Curves.ui | 8 ++++---- FaceTrackNoIR/FaceTrackNoIR.cpp | 37 +++++++++++++------------------------ FaceTrackNoIR/FaceTrackNoIR.h | 6 ++++-- FaceTrackNoIR/FaceTrackNoIR.vcproj | 2 +- FaceTrackNoIR/tracker.cpp | 5 ----- 5 files changed, 22 insertions(+), 36 deletions(-) diff --git a/FaceTrackNoIR/FTNoIR_Curves.ui b/FaceTrackNoIR/FTNoIR_Curves.ui index fbe96b1c..1f01fb27 100644 --- a/FaceTrackNoIR/FTNoIR_Curves.ui +++ b/FaceTrackNoIR/FTNoIR_Curves.ui @@ -7,7 +7,7 @@ 0 0 901 - 585 + 661 @@ -113,7 +113,7 @@ color: rgb(255, 255, 255); 10 10 794 - 488 + 548 @@ -128,7 +128,7 @@ color: rgb(255, 255, 255); 260 - 240 + 300 @@ -138,7 +138,7 @@ color: rgb(255, 255, 255); - 90 + 120 2 diff --git a/FaceTrackNoIR/FaceTrackNoIR.cpp b/FaceTrackNoIR/FaceTrackNoIR.cpp index 09f7e3bb..ae05a9b6 100644 --- a/FaceTrackNoIR/FaceTrackNoIR.cpp +++ b/FaceTrackNoIR/FaceTrackNoIR.cpp @@ -60,6 +60,7 @@ QMainWindow(parent, flags) _curve_config = 0; tracker = 0; + pTrackerDialog = NULL; // _display = 0; l = 0; trayIcon = 0; @@ -920,7 +921,8 @@ QString libName; // Delete the existing QDialog // if (pTrackerDialog) { - pTrackerDialog.Release(); + delete pTrackerDialog; + pTrackerDialog = NULL; } // Show the appropriate Tracker Settings @@ -940,7 +942,7 @@ QString libName; qDebug() << "FaceTrackNoIR::showEngineControls resolved?." << getIT; if (getIT) { - ITrackerDialogPtr ptrXyz(getIT()); + ITrackerDialog *ptrXyz(getIT()); if (ptrXyz) { pTrackerDialog = ptrXyz; @@ -1112,8 +1114,9 @@ void FaceTrackNoIR::createIconGroupBox() { importGetProtocolDialog getProtocol; importGetFilterDll getFilter; -IFilterDllPtr pFilterDll; // Pointer to Filter dialog instance (in DLL) -importGetTrackerDialog getTracker; +IFilterDllPtr pFilterDll; // Pointer to Filter info instance (in DLL) +importGetTrackerDll getTracker; +ITrackerDll *pTrackerDll; // Pointer to Filter info instance (in DLL) QSettings settings("Abbequerque Inc.", "FaceTrackNoIR"); // Registry settings (in HK_USER) @@ -1190,13 +1193,6 @@ importGetTrackerDialog getTracker; // qDebug() << "createIconGroupBox says: FilterName = " << filterFileList.at(i); - //// - //// Delete the existing QDialog - //// - //if (pFilterDll) { - // pFilterDialog.Release(); - //} - // Show the appropriate Protocol-server Settings QLibrary *filterLib = new QLibrary(filterFileList.at(i)); QString *filterName = new QString(""); @@ -1241,27 +1237,20 @@ importGetTrackerDialog getTracker; // qDebug() << "createIconGroupBox says: TrackerName = " << trackerFileList.at(i); - // - // Delete the existing QDialog - // - if (pTrackerDialog) { - pTrackerDialog.Release(); - } - // Show the appropriate Protocol-server Settings QLibrary *trackerLib = new QLibrary(trackerFileList.at(i)); QString *trackerName = new QString(""); QIcon *trackerIcon = new QIcon(); - getTracker = (importGetTrackerDialog) trackerLib->resolve("GetTrackerDialog"); + getTracker = (importGetTrackerDll) trackerLib->resolve("GetTrackerDll"); if (getTracker) { - ITrackerDialogPtr ptrXyz(getTracker()); + ITrackerDll *ptrXyz(getTracker()); if (ptrXyz) { - pTrackerDialog = ptrXyz; - pTrackerDialog->getFullName( trackerName ); - pTrackerDialog->getIcon( trackerIcon ); -// qDebug() << "FaceTrackNoIR::showServerControls GetTrackerDialog Function Resolved!"; + pTrackerDll = ptrXyz; + pTrackerDll->getFullName( trackerName ); + pTrackerDll->getIcon( trackerIcon ); +// qDebug() << "FaceTrackNoIR::showServerControls GetTrackerDll Function Resolved!"; } else { qDebug() << "FaceTrackNoIR::showServerControls Function NOT Resolved!"; diff --git a/FaceTrackNoIR/FaceTrackNoIR.h b/FaceTrackNoIR/FaceTrackNoIR.h index bd969174..789fa683 100644 --- a/FaceTrackNoIR/FaceTrackNoIR.h +++ b/FaceTrackNoIR/FaceTrackNoIR.h @@ -51,8 +51,10 @@ // 1a. COM-Like usage with smart pointer. // No need to call `ITracker::Release'; the instance will // be released automatically in destructor of the smart pointer. -typedef AutoClosePtr ITrackerDialogPtr; +//typedef AutoClosePtr ITrackerDialogPtr; typedef ITrackerDialog *(WINAPI *importGetTrackerDialog)(void); +typedef ITrackerDll *(WINAPI *importGetTrackerDll)(void); + typedef AutoClosePtr IProtocolDialogPtr; typedef IProtocolDialog *(WINAPI *importGetProtocolDialog)(void); typedef AutoClosePtr IFilterDialogPtr; @@ -91,7 +93,7 @@ private: QStringList filterFileList; // List of Filter-DLL-files, that are present in the program-folder QStringList trackerFileList; // List of Tracker-DLL-files, that are present in the program-folder - ITrackerDialogPtr pTrackerDialog; // Pointer to Tracker dialog instance (in DLL) + ITrackerDialog *pTrackerDialog; // Pointer to Tracker dialog instance (in DLL) IProtocolDialogPtr pProtocolDialog; // Pointer to Protocol dialog instance (in DLL) IFilterDialogPtr pFilterDialog; // Pointer to Filter dialog instance (in DLL) diff --git a/FaceTrackNoIR/FaceTrackNoIR.vcproj b/FaceTrackNoIR/FaceTrackNoIR.vcproj index 010b8afd..882bcd1b 100644 --- a/FaceTrackNoIR/FaceTrackNoIR.vcproj +++ b/FaceTrackNoIR/FaceTrackNoIR.vcproj @@ -151,7 +151,7 @@ /> getShortName(&name); - qDebug() << "Tracker::~Tracker Calling pTracker->Release()..." << name; delete pTracker; pTracker = NULL; -// pTracker.Release(); - qDebug() << "Tracker::~Tracker After Calling pTracker->Release()..."; } // Close handles -- cgit v1.2.3