C++11 lambdas - are they really worth it?
[ipdf/code.git] / src / document.h
index 89e854a..b02c798 100644 (file)
@@ -2,6 +2,7 @@
 #define _DOCUMENT_H
 
 #include "ipdf.h"
+#include "quadtree.h"
 
 namespace IPDF
 {
@@ -13,18 +14,31 @@ namespace IPDF
 
                        void Load(const std::string & filename = "");
                        void Save(const std::string & filename);
-                       void Add(ObjectType type, const Rect & bounds);
                        void DebugDumpObjects();
 
                        unsigned ObjectCount() const {return m_count;}
+                       inline const Objects & GetObjects() const {return m_objects;}
 
                        bool operator==(const Document & equ) const;
                        bool operator!=(const Document & equ) const {return !(this->operator==(equ));}
 
+                       void Add(ObjectType type, const Rect & bounds, unsigned data_index = 0);
+                       unsigned AddBezierData(const Bezier & bezier);
+
+#ifndef QUADTREE_DISABLED
+                       inline const QuadTree& GetQuadTree() const { return m_quadtree; }
+#endif
+
                private:
                        friend class View;
                        Objects m_objects;
+#ifndef QUADTREE_DISABLED
+                       QuadTree m_quadtree;
+                       void GenBaseQuadtree();
+#endif
                        unsigned m_count;
+                       
+
        };
 }
 

UCC git Repository :: git.ucc.asn.au