Commit ad4688866d200ce1bbd7912a62b228a700c8e780

Authored by m-holger
1 parent 1e2dcbf0

Add new method QPDF::Xref_table::show

libqpdf/QPDF.cc
... ... @@ -1355,26 +1355,30 @@ QPDF::Xref_table::insert_reconstructed(int obj, qpdf_offset_t f1, int f2)
1355 1355 void
1356 1356 QPDF::showXRefTable()
1357 1357 {
1358   - auto& cout = *m->log->getInfo();
1359   - for (auto const& iter: m->xref_table) {
  1358 + m->xref_table.show();
  1359 +}
  1360 +
  1361 +void
  1362 +QPDF::Xref_table::show()
  1363 +{
  1364 + auto& cout = *qpdf.m->log->getInfo();
  1365 + for (auto const& iter: *this) {
1360 1366 QPDFObjGen const& og = iter.first;
1361 1367 QPDFXRefEntry const& entry = iter.second;
1362 1368 cout << og.unparse('/') << ": ";
1363 1369 switch (entry.getType()) {
1364 1370 case 1:
1365   - cout << "uncompressed; offset = " << entry.getOffset();
  1371 + cout << "uncompressed; offset = " << entry.getOffset() << "\n";
1366 1372 break;
1367 1373  
1368 1374 case 2:
1369   - *m->log->getInfo() << "compressed; stream = " << entry.getObjStreamNumber()
1370   - << ", index = " << entry.getObjStreamIndex();
  1375 + cout << "compressed; stream = " << entry.getObjStreamNumber()
  1376 + << ", index = " << entry.getObjStreamIndex() << "\n";
1371 1377 break;
1372 1378  
1373 1379 default:
1374 1380 throw std::logic_error("unknown cross-reference table type while showing xref_table");
1375   - break;
1376 1381 }
1377   - m->log->info("\n");
1378 1382 }
1379 1383 }
1380 1384  
... ...
libqpdf/qpdf/QPDF_private.hh
... ... @@ -16,6 +16,7 @@ class QPDF::Xref_table: public std::map&lt;QPDFObjGen, QPDFXRefEntry&gt;
16 16  
17 17 void initialize();
18 18 void reconstruct(QPDFExc& e);
  19 + void show();
19 20  
20 21 QPDFObjectHandle trailer;
21 22 bool reconstructed{false};
... ...