00001
00002
00003
00004
00005 #ifndef MERCATOR_SURFACE_H
00006 #define MERCATOR_SURFACE_H
00007
00008 #include <Mercator/Buffer.h>
00009
00010 #include <climits>
00011
00012 namespace Mercator {
00013
00014 class Shader;
00015
00016 typedef unsigned char ColorT;
00017
00018 static const ColorT colorMax = UCHAR_MAX;
00019 static const ColorT colorMin = 0;
00020
00021 class Surface : public Buffer<ColorT> {
00022 public:
00023 const Shader & m_shader;
00024
00025 explicit Surface(const Segment & segment, const Shader & shader,
00026 bool colors = true, bool alpha = true);
00027 virtual ~Surface();
00028
00029 void populate();
00030
00031 };
00032
00033 }
00034
00035 #endif // MERCATOR_SURFACE_H