SDC C-Project CF Review 프로그램
LYW
2021-09-14 ffe71aadfdcb4a9ea2ac4d8d320983d42ef3cad5
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#pragma once
 
#include "CHImageControls/CHImageData.h"
typedef std::vector<CCHImageData*>                    VectorImageData;
typedef std::vector<CCHImageData*>::iterator        VectorImageDataIt;
 
class CCameraImageData
{
public:
    CCameraImageData(void)
    {
        Reset();
    }
 
    virtual ~CCameraImageData(void)
    {
        Reset();
    }
 
    void Reset()
    {
    for (VectorImageDataIt it=m_vecImageData.begin(); it!=m_vecImageData.end(); it++)
        {
            CCHImageData *pImageData = static_cast<CCHImageData*>(*it);
            pImageData->ReleaseImage();
            delete pImageData;
        }
        m_vecImageData.clear();
    }
 
    void Reserve(int nCount)
    {
        m_vecImageData.reserve(nCount);
    }
 
    void ClearImageAll()
    {
        for (VectorImageDataIt it=m_vecImageData.begin(); it!=m_vecImageData.end(); it++)
        {
            (*it)->ClearImage(0);
        }
    }
 
    void ClearImage(int nIndex)
    {
        if (nIndex<0 || nIndex>(int)m_vecImageData.size()-1) return;
        
        m_vecImageData[nIndex]->ClearImage(0);
    }
 
    int GetImageCount()
    {
        return (int) m_vecImageData.size();
    }
 
    void AddImageData(CCHImageData *pImageData)
    {
        m_vecImageData.push_back(pImageData);
    }
 
    CCHImageData* GetImageData(int nIndex)
    {
        if (nIndex<0 || nIndex>(int)m_vecImageData.size()-1) return NULL;
        return m_vecImageData[nIndex];
    }
 
protected:
    VectorImageData    m_vecImageData;
};
typedef std::vector<CCameraImageData*>                VectorCameraImageData;
typedef std::vector<CCameraImageData*>::iterator    VectorCameraImageDataIt;