#define USE_GPU_RENDERING true
#define USE_SHADING !(USE_GPU_RENDERING) && true
-#ifdef TRANSFORM_BEZIERS_TO_PATH
+
#include "gmprat.h"
-#include "paranoidnumber.h"
-#endif
+
namespace IPDF
{
#ifdef TRANSFORM_BEZIERS_TO_PATH
- typedef Gmprat VReal;
+ typedef Real VReal;
#else
typedef Real VReal;
#endif
void ForceBufferDirty() {m_buffer_dirty = true;}
void ForceRenderDirty() {m_render_dirty = true;}
+ void QueryGPUBounds(const char * filename, const char * mode="r");
+
void SetLazyRendering(bool state = true) {m_lazy_rendering = state;}
bool UsingLazyRendering() const {return m_lazy_rendering;}
void SaveGPUBMP(const char * filename);
Document & Doc() {return m_document;}
+#ifndef QUADTREE_DISABLED
+ QuadTreeIndex GetCurrentQuadtreeNode() { return m_current_quadtree_node; }
+#endif
private:
struct GPUObjBounds
float x0, y0;
float x1, y1;
} __attribute__((packed));
+
+
void PrepareRender(); // call when m_render_dirty is true
void UpdateObjBoundsVBO(unsigned first_obj, unsigned last_obj); // call when m_buffer_dirty is true
bool m_show_fill_bounds;
bool m_lazy_rendering;// don't redraw frames unless we need to
+
+ FILE * m_query_gpu_bounds_on_next_frame;
#ifndef QUADTREE_DISABLED