Commit 113ea4e7ae962d3d0c54cb6bedf255f55b23de84
1 parent
9e03dc54
Add new method Objects::all
Showing
3 changed files
with
12 additions
and
4 deletions
libqpdf/QPDF.cc
| @@ -500,6 +500,12 @@ QPDF::getObjectCount() | @@ -500,6 +500,12 @@ QPDF::getObjectCount() | ||
| 500 | return toS(og.getObj()); | 500 | return toS(og.getObj()); |
| 501 | } | 501 | } |
| 502 | 502 | ||
| 503 | +std::vector<QPDFObjectHandle> | ||
| 504 | +QPDF::getAllObjects() | ||
| 505 | +{ | ||
| 506 | + return m->objects.all(); | ||
| 507 | +} | ||
| 508 | + | ||
| 503 | void | 509 | void |
| 504 | QPDF::setLastObjectDescription(std::string const& description, QPDFObjGen const& og) | 510 | QPDF::setLastObjectDescription(std::string const& description, QPDFObjGen const& og) |
| 505 | { | 511 | { |
libqpdf/QPDF_objects.cc
| @@ -1149,13 +1149,13 @@ Xref_table::resolve() | @@ -1149,13 +1149,13 @@ Xref_table::resolve() | ||
| 1149 | } | 1149 | } |
| 1150 | 1150 | ||
| 1151 | std::vector<QPDFObjectHandle> | 1151 | std::vector<QPDFObjectHandle> |
| 1152 | -QPDF::getAllObjects() | 1152 | +Objects ::all() |
| 1153 | { | 1153 | { |
| 1154 | // After fixDanglingReferences is called, all objects are in the object cache. | 1154 | // After fixDanglingReferences is called, all objects are in the object cache. |
| 1155 | - fixDanglingReferences(); | 1155 | + qpdf.fixDanglingReferences(); |
| 1156 | std::vector<QPDFObjectHandle> result; | 1156 | std::vector<QPDFObjectHandle> result; |
| 1157 | - for (auto const& iter: m->objects.obj_cache) { | ||
| 1158 | - result.push_back(newIndirect(iter.first, iter.second.object)); | 1157 | + for (auto const& iter: obj_cache) { |
| 1158 | + result.emplace_back(iter.second.object); | ||
| 1159 | } | 1159 | } |
| 1160 | return result; | 1160 | return result; |
| 1161 | } | 1161 | } |
libqpdf/qpdf/QPDF_objects.hh
| @@ -441,6 +441,8 @@ class QPDF::Objects | @@ -441,6 +441,8 @@ class QPDF::Objects | ||
| 441 | return get(QPDFObjGen(id, gen)); | 441 | return get(QPDFObjGen(id, gen)); |
| 442 | } | 442 | } |
| 443 | 443 | ||
| 444 | + std::vector<QPDFObjectHandle> all(); | ||
| 445 | + | ||
| 444 | void erase(QPDFObjGen og); | 446 | void erase(QPDFObjGen og); |
| 445 | 447 | ||
| 446 | void replace(QPDFObjGen og, QPDFObjectHandle oh); | 448 | void replace(QPDFObjGen og, QPDFObjectHandle oh); |