aboutsummaryrefslogtreecommitdiff
path: root/src/libjin/Graphics/je_bitmap.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libjin/Graphics/je_bitmap.h')
-rw-r--r--src/libjin/Graphics/je_bitmap.h195
1 files changed, 0 insertions, 195 deletions
diff --git a/src/libjin/Graphics/je_bitmap.h b/src/libjin/Graphics/je_bitmap.h
deleted file mode 100644
index 5ab11ca..0000000
--- a/src/libjin/Graphics/je_bitmap.h
+++ /dev/null
@@ -1,195 +0,0 @@
-#ifndef __JE_BITMAP_H__
-#define __JE_BITMAP_H__
-#include "../core/je_configuration.h"
-#if defined(jin_graphics)
-
-#include <functional>
-
-#include "GLee/GLee.h"
-
-#include "../common/je_types.h"
-#include "../math/je_vector2.hpp"
-
-#include "je_color.h"
-
-namespace JinEngine
-{
- namespace Graphics
- {
-
- ///
- /// A RGBA32 bitmap.
- ///
- /// A bitmap keeps pixels and can't draw directly onto screen. To render bitmap, a texture is required. A
- /// texture is a renderable hard ware side structure which could be handled with GPU. For instance, opengl
- /// create texture and store it in GPU memory for rendering them onto hdc.
- ///
- class Bitmap
- {
- public:
- ///
- /// Create bitmap from given file.
- ///
- /// @param path Path of image file.
- /// @return Bitmap if create successful, otherwise retrun false.
- ///
- static Bitmap* createBitmap(const char* path);
-
- ///
- /// Create bitmap by pixels data.
- ///
- /// @param pixels Pixels data.
- /// @param width Width of bitmap.
- /// @param height Height of bitmap.
- /// @return Return bitmap pointer if created, otherwise return null.
- ///
- static Bitmap* createBitmap(const void* pixels, unsigned width, unsigned height);
-
- ///
- /// Create bitmap from compressed image data.
- ///
- /// @param imgData Compressed image data.
- /// @param size Size of image data.
- /// @return Return bitmap pointer if created, otherwise return null.
- ///
- static Bitmap* createBitmap(const void* imgData, size_t size);
-
- ///
- /// Create bitmap with specific color and size.
- ///
- /// @param width Width of bitmap.
- /// @param height Height of bitmap.
- /// @param color Color of bitmap, black by default.
- /// @return Return bitmap pointer if created, otherwise return null.
- ///
- static Bitmap* createBitmap(int width, int height, Color color = Color::BLACK);
-
- ///
- /// Create bitmap and set bitmap pixels with given drawer.
- ///
- static Bitmap* createBitmap(int width, int height, std::function<Color(int, int, int, int)> drawer);
-
- ///
- /// Create bitmap with another one.
- ///
- /// @param bitmap Bitmap be cloned.
- /// @return Return bitmap pointer if created, otherwise return null.
- ///
- static Bitmap* clone(const Bitmap* bitmap);
-
- ///
- /// Destructor of bitmap
- ///
- virtual ~Bitmap();
-
- ///
- /// Directly bind pixels with given pixels data
- ///
- /// @param pixels Pixels to be binded.
- /// @param width Width of bitmap
- /// @param height Height of bitmap
- ///
- void bind(Color* pixels, int width, int height);
-
- ///
- /// Reset pixel data with given pixels data.
- ///
- /// @param pixels Pixels to be set.
- /// @param width Width of bitmap
- /// @param height Height of bitmap
- ///
- void resetPixels(const Color* pixels, int width, int height);
-
- ///
- /// Reset pixel data with given color.
- ///
- /// @param color Color to be set.
- /// @param width Width of bitmap
- /// @param height Height of bitmap
- ///
- void resetPixels(const Color& color, int width, int height);
-
- ///
- /// Set pixel with given color.
- ///
- /// @param color Color to be set.
- /// @param x X value of pixel.
- /// @param y Y value of pixel.
- ///
- void setPixel(const Color& color, int x, int y);
-
- ///
- /// Set pixels with given color.
- ///
- /// @param color Color to be set.
- ///
- void setPixels(Color color);
-
- ///
- /// Set pixels with given color data.
- ///
- /// @param colors New pixels' colors.
- /// @param count Number of pixels.
- ///
- void setPixels(Color* colors, int count);
-
- ///
- /// Get pixel in given position.
- ///
- /// @param x X value of position.
- /// @param y Y value of position.
- ///
- Color getPixel(int x, int y);
-
- ///
- /// Get pixels.
- /// @return Colors of the bitmap.
- ///
- const Color* getPixels() const;
-
- ///
- /// Get bitmap width.
- ///
- /// @return Width of bitmap.
- ///
- inline int getWidth() const { return width; }
-
- ///
- /// Get bitmap height.
- ///
- /// @return Height of bitmap.
- ///
- inline int getHeight() const { return height; }
-
- ///
- /// Get bitmap size.
- ///
- /// @return Size of bitmap.
- ///
- inline Math::Vector2<int> getSize() const { return Math::Vector2<int>(width, height); }
-
- protected:
- ///
- /// Constructor of bitmap.
- ///
- Bitmap();
-
- ///
- /// Constructor of bitmap.
- ///
- /// @param width Width of bitmap.
- /// @param height Height of bitmap.
- ///
- Bitmap(unsigned w, unsigned h);
-
- Color * pixels;
- unsigned width, height;
-
- };
-
- } // namespace Graphics
-} // namespace JinEngine
-
-#endif
-
-#endif \ No newline at end of file