summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2021-01-17 00:35:30 +0100
committerJay Berkenbilt <ejb@ql.org>2021-01-24 09:27:26 +0100
commitd61ffb65d034848157291b9825f4b33155bd55e7 (patch)
tree9eebcc0ab116bdf5e5d6fd80362c262d6fdc54f7 /include
parentba814703fbfc99c99d24c8873ae3356b2623dc69 (diff)
downloadqpdf-d61ffb65d034848157291b9825f4b33155bd55e7.tar.zst
Add new constructors for name/number tree helpers
Add constructors that take a QPDF object so we can issue warnings and create new indirect objects.
Diffstat (limited to 'include')
-rw-r--r--include/qpdf/QPDFNameTreeObjectHelper.hh12
-rw-r--r--include/qpdf/QPDFNumberTreeObjectHelper.hh12
2 files changed, 22 insertions, 2 deletions
diff --git a/include/qpdf/QPDFNameTreeObjectHelper.hh b/include/qpdf/QPDFNameTreeObjectHelper.hh
index e5bb2893..b1e4e494 100644
--- a/include/qpdf/QPDFNameTreeObjectHelper.hh
+++ b/include/qpdf/QPDFNameTreeObjectHelper.hh
@@ -42,6 +42,16 @@ class NNTreeDetails;
class QPDFNameTreeObjectHelper: public QPDFObjectHelper
{
public:
+ // The qpdf object is required so that this class can issue
+ // warnings, attempt repairs, and add indirect objects.
+ QPDF_DLL
+ QPDFNameTreeObjectHelper(QPDFObjectHandle, QPDF&,
+ bool auto_repair = true);
+
+ // ABI: Legacy Constructor will be removed in QPDF 11. A
+ // QPDFNameTreeObjectHelper constructed in this way can't be
+ // modified or repaired and will silently ignore problems in the
+ // structure.
QPDF_DLL
QPDFNameTreeObjectHelper(QPDFObjectHandle);
QPDF_DLL
@@ -133,7 +143,7 @@ class QPDFNameTreeObjectHelper: public QPDFObjectHelper
~Members();
private:
- Members(QPDFObjectHandle& oh);
+ Members(QPDFObjectHandle& oh, QPDF*, bool auto_repair);
Members(Members const&) = delete;
std::shared_ptr<NNTreeImpl> impl;
diff --git a/include/qpdf/QPDFNumberTreeObjectHelper.hh b/include/qpdf/QPDFNumberTreeObjectHelper.hh
index d4e93690..dcef7e8d 100644
--- a/include/qpdf/QPDFNumberTreeObjectHelper.hh
+++ b/include/qpdf/QPDFNumberTreeObjectHelper.hh
@@ -39,6 +39,16 @@ class NNTreeDetails;
class QPDFNumberTreeObjectHelper: public QPDFObjectHelper
{
public:
+ // The qpdf object is required so that this class can issue
+ // warnings, attempt repairs, and add indirect objects.
+ QPDF_DLL
+ QPDFNumberTreeObjectHelper(QPDFObjectHandle, QPDF&,
+ bool auto_repair = true);
+
+ // ABI: Legacy Constructor will be removed in QPDF 11. A
+ // QPDFNumberTreeObjectHelper constructed in this way can't be
+ // modified or repaired and will silently ignore problems in the
+ // structure.
QPDF_DLL
QPDFNumberTreeObjectHelper(QPDFObjectHandle);
QPDF_DLL
@@ -154,7 +164,7 @@ class QPDFNumberTreeObjectHelper: public QPDFObjectHelper
~Members();
private:
- Members(QPDFObjectHandle& oh);
+ Members(QPDFObjectHandle& oh, QPDF*, bool auto_repair);
Members(Members const&) = delete;
std::shared_ptr<NNTreeImpl> impl;