SDC C-Project CF Review 프로그램
LYW
2021-07-08 e10b8c2a3f6ee6b639dbb49ff6635d0657531d1e
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
#pragma once
 
class CProcessTimer
{
public:
 
    CProcessTimer(void)
    {
        m_swFreq.LowPart = m_swFreq.HighPart = 0;
        m_swStart = m_swFreq;
        m_swEnd = m_swFreq;
        m_fTimeforDuration = 0;
        QueryPerformanceFrequency(&m_swFreq);
    }
 
    void Start(void)
    {
        QueryPerformanceCounter(&m_swStart);
    }
 
    void End(void)
    {
        QueryPerformanceCounter(&m_swEnd);
        m_fTimeforDuration = (m_swEnd.QuadPart - m_swStart.QuadPart)/(float)m_swFreq.QuadPart;
    }
 
    const float GetDurationSecond(void) const        { return m_fTimeforDuration; }
    const float GetDurationMilliSecond(void) const    { return m_fTimeforDuration*1000.f; }
    LARGE_INTEGER GetStartInteger(void) const        { return m_swStart; }
    LARGE_INTEGER GetEndInteger(void) const            { return m_swEnd; }
    LARGE_INTEGER GetFrequency(void) const            { return m_swFreq; }
 
private:
    LARGE_INTEGER    m_swFreq, m_swStart, m_swEnd;
    float            m_fTimeforDuration;
 
};