SDC C-Project CF Review 프로그램
LYW
2021-08-09 5c62f2269ac6179a22b475093f35be2fb0999bb2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#pragma once
 
#include "CHThreadPools/WorkThreadPools.h"
 
class CSimulationData
{
public:
    CSimulationData()
    {
        nModuleType = 0;
        nTriggerType = 0;
        nFrameCount = 0;
        nFrameRate = 0;
    }
 
public:
    int            nModuleType;                // grab, snap
    int            nTriggerType;                // external, internal
    int            nFrameCount;                // frame cnt
    int            nFrameRate;
};
 
class CSimulationThreadData : public CWorkThreadData
{
public:
    CSimulationThreadData(PVOID pPtr) : CWorkThreadData(pPtr)
    {
 
    }
    virtual ~CSimulationThreadData()
    {
 
    }
 
    CSimulationData simulationData;
};
 
interface ISimulationThread2Parent
{
    virtual void IST2P_RunThreadProcess(const CSimulationData& threadData) = 0;
};
 
class AFX_EXT_CLASS CSimulationThread : public CWorkThreadPools
{
public:
    CSimulationThread(void);
    virtual ~CSimulationThread(void);
    void    SetST2P(ISimulationThread2Parent* pST2P)            { m_pST2P = pST2P; }
 
    BOOL    AddThreadData(const CSimulationData& data);
 
protected:
    virtual void    WorkThreadProcess(PVOID pParameter);
 
private:
    ISimulationThread2Parent*        m_pST2P;
};