#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;
|