moved ../../pdf2swf/xpdf to .
[swftools.git] / lib / xpdf / Array.h
diff --git a/lib/xpdf/Array.h b/lib/xpdf/Array.h
new file mode 100644 (file)
index 0000000..20ae05f
--- /dev/null
@@ -0,0 +1,58 @@
+//========================================================================
+//
+// Array.h
+//
+// Copyright 1996-2003 Glyph & Cog, LLC
+//
+//========================================================================
+
+#ifndef ARRAY_H
+#define ARRAY_H
+
+#include <aconf.h>
+
+#ifdef USE_GCC_PRAGMAS
+#pragma interface
+#endif
+
+#include "Object.h"
+
+class XRef;
+
+//------------------------------------------------------------------------
+// Array
+//------------------------------------------------------------------------
+
+class Array {
+public:
+
+  // Constructor.
+  Array(XRef *xrefA);
+
+  // Destructor.
+  ~Array();
+
+  // Reference counting.
+  int incRef() { return ++ref; }
+  int decRef() { return --ref; }
+
+  // Get number of elements.
+  int getLength() { return length; }
+
+  // Add an element.
+  void add(Object *elem);
+
+  // Accessors.
+  Object *get(int i, Object *obj);
+  Object *getNF(int i, Object *obj);
+
+private:
+
+  XRef *xref;                  // the xref table for this PDF file
+  Object *elems;               // array of elements
+  int size;                    // size of <elems> array
+  int length;                  // number of elements in array
+  int ref;                     // reference count
+};
+
+#endif