00001 #ifndef ROCK_H_ 00002 #define ROCK_H_ 00003 00004 #include "BrushConstructor.h" 00005 00006 namespace brushconstruct 00007 { 00008 class Rock: public BrushConstructor 00009 { 00010 private: 00011 static const std::size_t _minSides = 10; 00012 static const std::size_t _maxSides = 1000; 00013 00014 public: 00015 void generate (Brush& brush, const AABB& bounds, std::size_t sides, const TextureProjection& projection, 00016 const std::string& shader); 00017 00018 const std::string getName() const; 00019 00020 static BrushConstructor& getInstance () 00021 { 00022 static Rock _rock; 00023 return _rock; 00024 } 00025 }; 00026 } 00027 #endif /* ROCK_H_ */