Allow setting type of Real at compilation time
[ipdf/code.git] / src / ipdf.h
index 8ee30c3..c9a6a23 100644 (file)
@@ -2,12 +2,15 @@
 #define _IPDF_H
 
 #include "common.h"
+#include "real.h"
+
+#define C_RED Colour(1,0,0,1)
+#define C_GREEN Colour(0,1,0,1)
+#define C_BLUE Colour(0,0,1,1)
 
 namespace IPDF
 {
-       typedef float Real;
-       
-       inline float RealToFloat(Real r) {return r;}
+
        inline Real Random(Real max=1, Real min=0)
        {
                return min + (max-min) * ((Real)(rand() % (int)1e6) / 1e6);
@@ -18,6 +21,7 @@ namespace IPDF
 
        enum DocChunkTypes
        {
+               CT_NUMOBJS,
                CT_OBJTYPES,
                CT_OBJBOUNDS
        };
@@ -35,6 +39,13 @@ namespace IPDF
                }
        };
 
+       struct Colour
+       {
+               float r; float g; float b; float a;
+               Colour() = default;
+               Colour(float _r, float _g, float _b, float _a) : r(_r), g(_g), b(_b), a(_a) {}
+       };
+
        struct Objects
        {
                std::vector<ObjectType> types;          

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