aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/QPDFXRefEntry.cc
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2008-04-29 14:55:25 +0200
committerJay Berkenbilt <ejb@ql.org>2008-04-29 14:55:25 +0200
commit9a0b88bf7777c153dc46ace22db74ef24d51583a (patch)
treef567ac1cf2bf5071a611eb49323a935b6ac938ff /libqpdf/QPDFXRefEntry.cc
downloadqpdf-9a0b88bf7777c153dc46ace22db74ef24d51583a.tar.zst
update release date to actual daterelease-qpdf-2.0
git-svn-id: svn+q:///qpdf/trunk@599 71b93d88-0707-0410-a8cf-f5a4172ac649
Diffstat (limited to 'libqpdf/QPDFXRefEntry.cc')
-rw-r--r--libqpdf/QPDFXRefEntry.cc61
1 files changed, 61 insertions, 0 deletions
diff --git a/libqpdf/QPDFXRefEntry.cc b/libqpdf/QPDFXRefEntry.cc
new file mode 100644
index 00000000..669a2f13
--- /dev/null
+++ b/libqpdf/QPDFXRefEntry.cc
@@ -0,0 +1,61 @@
+
+#include <qpdf/QPDFXRefEntry.hh>
+#include <qpdf/QPDFExc.hh>
+#include <qpdf/QUtil.hh>
+
+QPDFXRefEntry::QPDFXRefEntry() :
+ type(0),
+ field1(0),
+ field2(0)
+{
+}
+
+QPDFXRefEntry::QPDFXRefEntry(int type, int field1, int field2) :
+ type(type),
+ field1(field1),
+ field2(field2)
+{
+ if ((type < 1) || (type > 2))
+ {
+ throw QPDFExc("invalid xref type " + QUtil::int_to_string(type));
+ }
+}
+
+int
+QPDFXRefEntry::getType() const
+{
+ return this->type;
+}
+
+int
+QPDFXRefEntry::getOffset() const
+{
+ if (this->type != 1)
+ {
+ throw QPDFExc(
+ "getOffset called for xref entry of type != 1");
+ }
+ return this->field1;
+}
+
+int
+QPDFXRefEntry::getObjStreamNumber() const
+{
+ if (this->type != 2)
+ {
+ throw QPDFExc(
+ "getObjStreamNumber called for xref entry of type != 2");
+ }
+ return this->field1;
+}
+
+int
+QPDFXRefEntry::getObjStreamIndex() const
+{
+ if (this->type != 2)
+ {
+ throw QPDFExc(
+ "getObjStreamIndex called for xref entry of type != 2");
+ }
+ return this->field2;
+}