Fix include paths for fx_system.h
[pdfium.git] / core / src / fxcodec / jbig2 / JBig2_List.h
1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
7 #ifndef _JBIG2_LIST_H_
8 #define _JBIG2_LIST_H_
9
10 #include <vector>
11
12 template <class TYPE>
13 class CJBig2_List {
14  public:
15   CJBig2_List() {}
16
17   ~CJBig2_List() {
18     clear();
19   }
20
21   void clear() {
22     for (size_t i = 0; i < m_vector.size(); ++i)
23       delete m_vector[i];
24     m_vector.clear();
25   }
26
27   void push_back(TYPE* pItem) { m_vector.push_back(pItem); }
28
29   size_t size() const { return m_vector.size(); }
30   void resize(size_t count) { m_vector.resize(count); }
31
32   TYPE* get(size_t index) { return m_vector[index]; }
33
34   TYPE* back() { return m_vector.back(); }
35
36  private:
37   std::vector<TYPE*> m_vector;
38 };
39
40 #endif