#include "StdAfx.h" #include "MotionThread.h" CMotionThread::CMotionThread(IMotionThread2Parent* pMT2P, int nThreadCount) : m_pMT2P(pMT2P), CWorkThreadPools(nThreadCount) { } CMotionThread::~CMotionThread(void) { m_pMT2P = NULL; } BOOL CMotionThread::AddThreadData(const CMotionData& data) { CMotionThreadData *pData = new CMotionThreadData(this); if (pData==NULL) return FALSE; pData->motionData = data; return CreateWorkThread(pData); } void CMotionThread::WorkThreadProcess(PVOID pParameter) { if (m_pMT2P==NULL) return; CMotionThreadData *pData = static_cast(pParameter); if (pData==NULL) return; m_pMT2P->IMT2P_RunThreadProcess(pData->motionData); }