From aef780db30c434e1d681d81852fb13160e72ed1e Mon Sep 17 00:00:00 2001 From: tsepez Date: Thu, 28 Apr 2016 14:56:27 -0700 Subject: Replace CFX_PtrArray with typesafe CFX_ArrayTemplate, part 4 Review-Url: https://codereview.chromium.org/1932703003 --- xfa/fxbarcode/common/reedsolomon/BC_ReedSolomon.cpp | 10 ++++------ xfa/fxbarcode/common/reedsolomon/BC_ReedSolomon.h | 11 ++++++----- 2 files changed, 10 insertions(+), 11 deletions(-) (limited to 'xfa/fxbarcode/common/reedsolomon') diff --git a/xfa/fxbarcode/common/reedsolomon/BC_ReedSolomon.cpp b/xfa/fxbarcode/common/reedsolomon/BC_ReedSolomon.cpp index 4d986cca26..00bd7811d8 100644 --- a/xfa/fxbarcode/common/reedsolomon/BC_ReedSolomon.cpp +++ b/xfa/fxbarcode/common/reedsolomon/BC_ReedSolomon.cpp @@ -37,8 +37,7 @@ CBC_ReedSolomonGF256Poly* CBC_ReedSolomonEncoder::BuildGenerator(int32_t degree, int32_t& e) { if (degree >= m_cachedGenerators.GetSize()) { CBC_ReedSolomonGF256Poly* lastGenerator = - (CBC_ReedSolomonGF256Poly*)(m_cachedGenerators - [m_cachedGenerators.GetSize() - 1]); + m_cachedGenerators[m_cachedGenerators.GetSize() - 1]; for (int32_t d = m_cachedGenerators.GetSize(); d <= degree; d++) { CFX_Int32Array temp; temp.Add(1); @@ -53,7 +52,7 @@ CBC_ReedSolomonGF256Poly* CBC_ReedSolomonEncoder::BuildGenerator(int32_t degree, lastGenerator = nextGenerator; } } - return (CBC_ReedSolomonGF256Poly*)(m_cachedGenerators[degree]); + return m_cachedGenerators[degree]; } void CBC_ReedSolomonEncoder::Encode(CFX_Int32Array* toEncode, int32_t ecBytes, @@ -98,7 +97,6 @@ void CBC_ReedSolomonEncoder::Encode(CFX_Int32Array* toEncode, } } CBC_ReedSolomonEncoder::~CBC_ReedSolomonEncoder() { - for (int32_t i = 0; i < m_cachedGenerators.GetSize(); i++) { - delete (CBC_ReedSolomonGF256Poly*)m_cachedGenerators[i]; - } + for (int32_t i = 0; i < m_cachedGenerators.GetSize(); i++) + delete m_cachedGenerators[i]; } diff --git a/xfa/fxbarcode/common/reedsolomon/BC_ReedSolomon.h b/xfa/fxbarcode/common/reedsolomon/BC_ReedSolomon.h index 0dfa37ddb7..695da46c79 100644 --- a/xfa/fxbarcode/common/reedsolomon/BC_ReedSolomon.h +++ b/xfa/fxbarcode/common/reedsolomon/BC_ReedSolomon.h @@ -13,17 +13,18 @@ class CBC_ReedSolomonGF256; class CBC_ReedSolomonGF256Poly; class CBC_ReedSolomonEncoder { - private: - CBC_ReedSolomonGF256* m_field; - CFX_PtrArray m_cachedGenerators; - CBC_ReedSolomonGF256Poly* BuildGenerator(int32_t degree, int32_t& e); - public: CBC_ReedSolomonEncoder(CBC_ReedSolomonGF256* field); virtual ~CBC_ReedSolomonEncoder(); void Encode(CFX_Int32Array* toEncode, int32_t ecBytes, int32_t& e); virtual void Init(); + + private: + CBC_ReedSolomonGF256Poly* BuildGenerator(int32_t degree, int32_t& e); + + CBC_ReedSolomonGF256* m_field; + CFX_ArrayTemplate m_cachedGenerators; }; #endif // XFA_FXBARCODE_COMMON_REEDSOLOMON_BC_REEDSOLOMON_H_ -- cgit v1.2.3