From 281199e27888ce2e6ed15b8ad3bd7e54244bb553 Mon Sep 17 00:00:00 2001 From: Maksym Walczak Date: Tue, 4 Jan 2022 12:09:48 +0100 Subject: [PATCH] Avoid void* for the sake of forward declaration --- mediapipe/pose_tracking_dll/pose_tracking.cpp | 11 ++++------- mediapipe/pose_tracking_dll/pose_tracking.h | 6 ++++-- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/mediapipe/pose_tracking_dll/pose_tracking.cpp b/mediapipe/pose_tracking_dll/pose_tracking.cpp index 369542eb9..abb56c9e8 100644 --- a/mediapipe/pose_tracking_dll/pose_tracking.cpp +++ b/mediapipe/pose_tracking_dll/pose_tracking.cpp @@ -155,23 +155,20 @@ private: namespace nimagna { PoseTracking::PoseTracking(const char* calculatorGraphConfigFile) { - myInstance = new PoseTrackingImpl(calculatorGraphConfigFile); + mImplementation = new PoseTrackingImpl(calculatorGraphConfigFile); } bool PoseTracking::processFrame(const cv_wrapper::Mat& inputRGB8Bit) { - auto* instance = static_cast(myInstance); const auto frame = cv::Mat(inputRGB8Bit.rows, inputRGB8Bit.cols, CV_8UC3, inputRGB8Bit.data); - return instance->processFrame(frame); + return mImplementation->processFrame(frame); } cv_wrapper::Point3f* PoseTracking::lastDetectedLandmarks() { - auto* instance = static_cast(myInstance); - return instance->lastDetectedLandmarks(); + return mImplementation->lastDetectedLandmarks(); } cv_wrapper::Mat PoseTracking::lastSegmentedFrame() { - auto* instance = static_cast(myInstance); - const cv::Mat result = instance->lastSegmentedFrame(); + const cv::Mat result = mImplementation->lastSegmentedFrame(); return cv_wrapper::Mat(result.rows, result.cols, result.data); } diff --git a/mediapipe/pose_tracking_dll/pose_tracking.h b/mediapipe/pose_tracking_dll/pose_tracking.h index 5583cb6de..05c017b78 100644 --- a/mediapipe/pose_tracking_dll/pose_tracking.h +++ b/mediapipe/pose_tracking_dll/pose_tracking.h @@ -7,6 +7,8 @@ #define DLLEXPORT __declspec(dllimport) #endif +class PoseTrackingImpl; + namespace nimagna { namespace cv_wrapper { struct Point2f { @@ -85,14 +87,14 @@ namespace nimagna { }; PoseTracking(const char* calculatorGraphConfigFile); - ~PoseTracking() { delete myInstance; } + ~PoseTracking() { delete mImplementation; } bool processFrame(const cv_wrapper::Mat& inputRGB8Bit); cv_wrapper::Mat lastSegmentedFrame(); cv_wrapper::Point3f* lastDetectedLandmarks(); private: - void* myInstance; + PoseTrackingImpl* mImplementation; }; }