Mercator
TileShader.h
1 // This file may be redistributed and modified only under the terms of
2 // the GNU General Public License (See COPYING for details).
3 // Copyright (C) 2005 Alistair Riddoch
4 
5 #ifndef MERCATOR_TILE_SHADER_H
6 #define MERCATOR_TILE_SHADER_H
7 
8 #include <Mercator/Shader.h>
9 
10 #include <map>
11 
12 namespace Mercator {
13 
21 class TileShader : public Shader {
22  public:
24  typedef std::map<int, Shader *> Shaderstore;
25  private:
28  public:
29  explicit TileShader();
30  virtual ~TileShader();
31 
33  void addShader(Shader * t, int id) {
34  m_subShaders[id] = t;
35  }
36 
37  virtual bool checkIntersect(const Segment &) const;
38  virtual void shade(Surface &) const;
39 };
40 
41 } // namespace Mercator
42 
43 #endif // MERCATOR_TILE_SHADER_H