1b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project// Copyright 2016 PDFium Authors. All rights reserved. 2b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project// Use of this source code is governed by a BSD-style license that can be 3b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project// found in the LICENSE file. 4b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project 5b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project 7b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project#ifndef CORE_FPDFDOC_CPVT_ARRAYTEMPLATE_H_ 8b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project#define CORE_FPDFDOC_CPVT_ARRAYTEMPLATE_H_ 9b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project 10b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project#include "core/fxcrt/fx_basic.h" 11b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project#include "core/fxcrt/fx_system.h" 12b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project 13b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Projecttemplate <class TYPE> 14b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Projectclass CPVT_ArrayTemplate : public CFX_ArrayTemplate<TYPE> { 15b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project public: 16b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project bool IsEmpty() { return CFX_ArrayTemplate<TYPE>::GetSize() <= 0; } 17b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project 18b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project TYPE GetAt(int nIndex) const { 190935e09bb12a1886a801713bbd78bbc20bf4ea4eChih-yu Huang if (nIndex >= 0 && nIndex < CFX_ArrayTemplate<TYPE>::GetSize()) 2041ecefdc167ca88d785e6a1d58b706cc7f03c2bdWu-cheng Li return CFX_ArrayTemplate<TYPE>::GetAt(nIndex); 21ab2ffa88872149978823c3184d0af162d3cdca13Chung-yih Wang return nullptr; 22749d056cd82ebfe6e613596d9e22dd355aeeec41Chung-yih Wang } 2394ca8baae7e6e3885d895c095890eabf30d922e2Chih-yu Huang 246fb969e2edd99340b3b77eae4e7b313a82937930Andy Stadler void RemoveAt(int nIndex) { 2598d615769af2b08bcddf02ee1b11f5288ec5cf92Wu-cheng Li if (nIndex >= 0 && nIndex < CFX_ArrayTemplate<TYPE>::GetSize()) 26419d20ae123f53226ccefb7d28d8a40add8ffd0aChung-yih Wang CFX_ArrayTemplate<TYPE>::RemoveAt(nIndex); 27c5e37cbb96b8284203560c51dd5f41c705a21f58Wu-cheng Li } 28adab2bddc93bf4af535cb58e7167bf8690d97d8cChung-yih Wang}; 291efb18228a45952d699af280482e1c51a4582690Owen Lin 30b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project#endif // CORE_FPDFDOC_CPVT_ARRAYTEMPLATE_H_ 31b64d345c9d51cabce43b5191532a0c185d2a70a5The Android Open Source Project