Optimize updateFastFaceRow processing by removing some TileSpec copy (#5678)
[oweals/minetest.git] / src / minimap.h
index 60b80d8330707c652c61a4e9e897e29023baa44c..c50530335082bcf80c45be4130af51b88e7d860f 100644 (file)
@@ -45,6 +45,11 @@ enum MinimapMode {
        MINIMAP_MODE_COUNT,
 };
 
+enum MinimapShape {
+       MINIMAP_SHAPE_SQUARE,
+       MINIMAP_SHAPE_ROUND,
+};
+
 struct MinimapModeDef {
        bool is_radar;
        u16 scan_height;
@@ -112,20 +117,24 @@ private:
        std::map<v3s16, MinimapMapblock *> m_blocks_cache;
 };
 
-class Mapper {
+class Minimap {
 public:
-       Mapper(IrrlichtDevice *device, Client *client);
-       ~Mapper();
+       Minimap(IrrlichtDevice *device, Client *client);
+       ~Minimap();
 
        void addBlock(v3s16 pos, MinimapMapblock *data);
 
        v3f getYawVec();
-       MinimapMode getMinimapMode();
 
        void setPos(v3s16 pos);
+       v3s16 getPos() const { return data->pos; }
        void setAngle(f32 angle);
+       f32 getAngle() const { return m_angle; }
        void setMinimapMode(MinimapMode mode);
+       MinimapMode getMinimapMode() const { return data->mode; }
        void toggleMinimapShape();
+       void setMinimapShape(MinimapShape shape);
+       MinimapShape getMinimapShape();
 
 
        video::ITexture *getMinimapTexture();