X-Git-Url: https://git.ucc.asn.au/?p=ipdf%2Fcode.git;a=blobdiff_plain;f=src%2Fview.h;h=124ae07e082deed1326fe13187a7641f763c88e6;hp=cd9442020be07a3dafd71efa2b81ec18df24f444;hb=a8297c3461718f2d9afc7a2f8ca620d320ac5f97;hpb=e08b7671a4592481aa73d68b30b7bd1d96e75002 diff --git a/src/view.h b/src/view.h index cd94420..124ae07 100644 --- a/src/view.h +++ b/src/view.h @@ -12,15 +12,14 @@ #define USE_GPU_RENDERING true #define USE_SHADING !(USE_GPU_RENDERING) && true -#ifdef TRANSFORM_BEZIERS_TO_PATH + #include "gmprat.h" -#endif + namespace IPDF { #ifdef TRANSFORM_BEZIERS_TO_PATH - #pragma message "View using Gmprat for bounds" - typedef Gmprat VReal; + typedef Real VReal; #else typedef Real VReal; #endif @@ -73,6 +72,8 @@ namespace IPDF 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;} @@ -89,6 +90,8 @@ namespace IPDF 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 @@ -127,6 +130,8 @@ namespace IPDF 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