summaryrefslogtreecommitdiff
path: root/core/fxcodec/jbig2/JBig2_GrrdProc.h
diff options
context:
space:
mode:
Diffstat (limited to 'core/fxcodec/jbig2/JBig2_GrrdProc.h')
-rw-r--r--core/fxcodec/jbig2/JBig2_GrrdProc.h33
1 files changed, 20 insertions, 13 deletions
diff --git a/core/fxcodec/jbig2/JBig2_GrrdProc.h b/core/fxcodec/jbig2/JBig2_GrrdProc.h
index bdb49d7e91..43f535335d 100644
--- a/core/fxcodec/jbig2/JBig2_GrrdProc.h
+++ b/core/fxcodec/jbig2/JBig2_GrrdProc.h
@@ -7,6 +7,8 @@
#ifndef CORE_FXCODEC_JBIG2_JBIG2_GRRDPROC_H_
#define CORE_FXCODEC_JBIG2_JBIG2_GRRDPROC_H_
+#include <memory>
+
#include "core/fxcrt/fx_system.h"
class CJBig2_ArithDecoder;
@@ -15,21 +17,9 @@ struct JBig2ArithCtx;
class CJBig2_GRRDProc {
public:
- CJBig2_Image* decode(CJBig2_ArithDecoder* pArithDecoder,
- JBig2ArithCtx* grContext);
-
- CJBig2_Image* decode_Template0_unopt(CJBig2_ArithDecoder* pArithDecoder,
- JBig2ArithCtx* grContext);
-
- CJBig2_Image* decode_Template0_opt(CJBig2_ArithDecoder* pArithDecoder,
- JBig2ArithCtx* grContext);
-
- CJBig2_Image* decode_Template1_unopt(CJBig2_ArithDecoder* pArithDecoder,
+ std::unique_ptr<CJBig2_Image> decode(CJBig2_ArithDecoder* pArithDecoder,
JBig2ArithCtx* grContext);
- CJBig2_Image* decode_Template1_opt(CJBig2_ArithDecoder* pArithDecoder,
- JBig2ArithCtx* grContext);
-
uint32_t GRW;
uint32_t GRH;
bool GRTEMPLATE;
@@ -38,6 +28,23 @@ class CJBig2_GRRDProc {
int32_t GRREFERENCEDY;
bool TPGRON;
int8_t GRAT[4];
+
+ private:
+ std::unique_ptr<CJBig2_Image> decode_Template0_unopt(
+ CJBig2_ArithDecoder* pArithDecoder,
+ JBig2ArithCtx* grContext);
+
+ std::unique_ptr<CJBig2_Image> decode_Template0_opt(
+ CJBig2_ArithDecoder* pArithDecoder,
+ JBig2ArithCtx* grContext);
+
+ std::unique_ptr<CJBig2_Image> decode_Template1_unopt(
+ CJBig2_ArithDecoder* pArithDecoder,
+ JBig2ArithCtx* grContext);
+
+ std::unique_ptr<CJBig2_Image> decode_Template1_opt(
+ CJBig2_ArithDecoder* pArithDecoder,
+ JBig2ArithCtx* grContext);
};
#endif // CORE_FXCODEC_JBIG2_JBIG2_GRRDPROC_H_