summaryrefslogtreecommitdiff
path: root/fxbarcode/common/BC_CommonByteMatrix.h
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2018-07-03 15:57:03 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-07-03 15:57:03 +0000
commit1c14ae2fbe1ae95dac3a7f5e60d049d9630aef02 (patch)
tree2d121ae2a0436adce5c54379d1824b427dd03359 /fxbarcode/common/BC_CommonByteMatrix.h
parentd77e0ed72f73fb63305d04953ef03e2edab82d34 (diff)
downloadpdfium-1c14ae2fbe1ae95dac3a7f5e60d049d9630aef02.tar.xz
Avoid explicit allocs in fxbarcode matrix classes.
Other cleanups: Remove unused method. Fold Init() into constructor. Return span<> where possible. Change-Id: Ie38d32efb6e63d86ae24e93684903a6dd900810f Reviewed-on: https://pdfium-review.googlesource.com/36810 Commit-Queue: Tom Sepez <tsepez@chromium.org> Reviewed-by: Lei Zhang <thestig@chromium.org>
Diffstat (limited to 'fxbarcode/common/BC_CommonByteMatrix.h')
-rw-r--r--fxbarcode/common/BC_CommonByteMatrix.h18
1 files changed, 10 insertions, 8 deletions
diff --git a/fxbarcode/common/BC_CommonByteMatrix.h b/fxbarcode/common/BC_CommonByteMatrix.h
index 9f13a376d1..c5a66a3e82 100644
--- a/fxbarcode/common/BC_CommonByteMatrix.h
+++ b/fxbarcode/common/BC_CommonByteMatrix.h
@@ -9,27 +9,29 @@
#include <stdint.h>
+#include <vector>
+
#include "core/fxcrt/fx_system.h"
+#include "third_party/base/span.h"
-class CBC_CommonByteMatrix {
+class CBC_CommonByteMatrix final {
public:
CBC_CommonByteMatrix(int32_t width, int32_t height);
- virtual ~CBC_CommonByteMatrix();
+ ~CBC_CommonByteMatrix();
- int32_t GetHeight();
- int32_t GetWidth();
- uint8_t Get(int32_t x, int32_t y);
- uint8_t* GetArray();
+ int32_t GetWidth() const { return m_width; }
+ int32_t GetHeight() const { return m_height; }
+ pdfium::span<const uint8_t> GetArray() const { return m_bytes; }
+ uint8_t Get(int32_t x, int32_t y) const;
void Set(int32_t x, int32_t y, int32_t value);
void Set(int32_t x, int32_t y, uint8_t value);
void clear(uint8_t value);
- virtual void Init();
private:
- uint8_t* m_bytes;
int32_t m_width;
int32_t m_height;
+ std::vector<uint8_t> m_bytes;
};
#endif // FXBARCODE_COMMON_BC_COMMONBYTEMATRIX_H_