| Index: core/src/fxcodec/jbig2/JBig2_List.h
|
| diff --git a/core/src/fxcodec/jbig2/JBig2_List.h b/core/src/fxcodec/jbig2/JBig2_List.h
|
| index be2d7cb7e4786cb6dc45a15f8710c2ecb2c7951d..e033eb23ea4d7b4a9d5ba674f382799f95bf3c75 100644
|
| --- a/core/src/fxcodec/jbig2/JBig2_List.h
|
| +++ b/core/src/fxcodec/jbig2/JBig2_List.h
|
| @@ -6,48 +6,35 @@
|
|
|
| #ifndef _JBIG2_LIST_H_
|
| #define _JBIG2_LIST_H_
|
| -#include "JBig2_Define.h"
|
| -#include "JBig2_Object.h"
|
| +
|
| +#include <vector>
|
| +
|
| template <class TYPE>
|
| -class CJBig2_List : public CJBig2_Object {
|
| +class CJBig2_List {
|
| public:
|
| - CJBig2_List(int32_t nSize = 8) {
|
| - m_nSize = nSize;
|
| - m_pArray = (TYPE**)m_pModule->JBig2_Malloc2(sizeof(TYPE*), nSize);
|
| - m_nLength = 0;
|
| - }
|
| + CJBig2_List() {}
|
|
|
| ~CJBig2_List() {
|
| clear();
|
| - m_pModule->JBig2_Free(m_pArray);
|
| }
|
|
|
| void clear() {
|
| - int32_t i;
|
| - for (i = 0; i < m_nLength; i++) {
|
| - delete m_pArray[i];
|
| - }
|
| - m_nLength = 0;
|
| + for (size_t i = 0; i < m_vector.size(); ++i)
|
| + delete m_vector[i];
|
| + m_vector.clear();
|
| }
|
|
|
| - void addItem(TYPE* pItem) {
|
| - if (m_nLength >= m_nSize) {
|
| - m_nSize += 8;
|
| - m_pArray =
|
| - (TYPE**)m_pModule->JBig2_Realloc(m_pArray, sizeof(TYPE*) * m_nSize);
|
| - }
|
| - m_pArray[m_nLength++] = pItem;
|
| - }
|
| + void push_back(TYPE* pItem) { m_vector.push_back(pItem); }
|
|
|
| - int32_t getLength() { return m_nLength; }
|
| + size_t size() const { return m_vector.size(); }
|
| + void resize(size_t count) { m_vector.resize(count); }
|
|
|
| - TYPE* getAt(int32_t nIndex) { return m_pArray[nIndex]; }
|
| + TYPE* get(size_t index) { return m_vector[index]; }
|
|
|
| - TYPE* getLast() { return m_pArray[m_nLength - 1]; }
|
| + TYPE* back() { return m_vector.back(); }
|
|
|
| private:
|
| - int32_t m_nSize;
|
| - TYPE** m_pArray;
|
| - int32_t m_nLength;
|
| + std::vector<TYPE*> m_vector;
|
| };
|
| +
|
| #endif
|
|
|