diff --git a/frontend/Interfaces/buddy/DIP/ImgContainer.h b/frontend/Interfaces/buddy/DIP/ImgContainer.h index 2894baf26e..ccacf416f3 100644 --- a/frontend/Interfaces/buddy/DIP/ImgContainer.h +++ b/frontend/Interfaces/buddy/DIP/ImgContainer.h @@ -22,11 +22,11 @@ #define FRONTEND_INTERFACES_BUDDY_DIP_IMGCONTAINER #include "buddy/Core/Container.h" +#include #include -#include #include #include -#include +#include #ifdef BUDDY_ENABLE_PNG #include #endif @@ -75,7 +75,7 @@ template class Image : public MemRef { Image(std::string filename, ImageModes mode, bool norm = false); // from data to initialize image - Image(T *data, intptr_t sizes[N]) : MemRef(data, sizes) {}; + Image(T *data, intptr_t sizes[N]) : MemRef(data, sizes){}; // Retrieves the name of the current image format as a string. std::string getFormatName() const { @@ -128,9 +128,6 @@ template class Image : public MemRef { #endif }; -// template -// Image::Image(T *data, intptr_t sizes[N]): MemRef(data, sizes) {} - // Image Container Constructor // Constructs an image container object from the image file path. template @@ -651,42 +648,42 @@ bool Image::decodePNG(const std::vector &fileData) { } #endif -template -int findFormat(const std::string &_ext){ +template int findFormat(const std::string &_ext) { if (_ext.size() <= 1) return 0; const char *ext = strrchr(_ext.c_str(), '.'); if (!ext) return 0; - + if (strcmp(ext, ".bmp") == 0) { return 1; } else { - std::cerr << "Unsupported to generate" << ext << "format image" << std::endl; + std::cerr << "Unsupported to generate" << ext << "format image" + << std::endl; return 0; } } template -static void imageWrite(const std::string &filename, Image &image){ +static void imageWrite(const std::string &filename, Image &image) { int imformat = findFormat(filename); switch (imformat) { - case 1: - BMPEncode(filename, image); - break; - default: - return; + case 1: + BMPEncode(filename, image); + break; + default: + return; } return; } template -void BMPEncode(const std::string &filename, Image &image){ +void BMPEncode(const std::string &filename, Image &image) { std::ofstream bmp(filename, std::ios::binary); if (!bmp) { - std::cerr << "Failed to create file" << std::endl; - return; + std::cerr << "Failed to create file" << std::endl; + return; } int width = image.getSizes()[3]; int height = image.getSizes()[2]; @@ -706,28 +703,28 @@ void BMPEncode(const std::string &filename, Image &image){ // Write file header bmp.write("BM", 2); int fileSizeInt = validToInt(fileSize); - bmp.write(reinterpret_cast(&fileSizeInt), 4); - bmp.write(reinterpret_cast(&zero), 4); - bmp.write(reinterpret_cast(&headerSize), 4); + bmp.write(reinterpret_cast(&fileSizeInt), 4); + bmp.write(reinterpret_cast(&zero), 4); + bmp.write(reinterpret_cast(&headerSize), 4); // Write bitmap header - bmp.write(reinterpret_cast(&bitmapHeaderSize), 4); - bmp.write(reinterpret_cast(&width), 4); - bmp.write(reinterpret_cast(&height), 4); - bmp.write(reinterpret_cast(&one), 2); + bmp.write(reinterpret_cast(&bitmapHeaderSize), 4); + bmp.write(reinterpret_cast(&width), 4); + bmp.write(reinterpret_cast(&height), 4); + bmp.write(reinterpret_cast(&one), 2); int bitDepth = channels << 3; - bmp.write(reinterpret_cast(&(bitDepth)), 2); - bmp.write(reinterpret_cast(&zero), 4); - bmp.write(reinterpret_cast(&zero), 4); - bmp.write(reinterpret_cast(&zero), 4); - bmp.write(reinterpret_cast(&zero), 4); - bmp.write(reinterpret_cast(&zero), 4); - bmp.write(reinterpret_cast(&zero), 4); + bmp.write(reinterpret_cast(&(bitDepth)), 2); + bmp.write(reinterpret_cast(&zero), 4); + bmp.write(reinterpret_cast(&zero), 4); + bmp.write(reinterpret_cast(&zero), 4); + bmp.write(reinterpret_cast(&zero), 4); + bmp.write(reinterpret_cast(&zero), 4); + bmp.write(reinterpret_cast(&zero), 4); // Write palette if (channels == 1) { FillPalette(palette, 8); - bmp.write(reinterpret_cast(&palette), sizeof(palette)); + bmp.write(reinterpret_cast(&palette), sizeof(palette)); } // Write image data @@ -736,14 +733,15 @@ void BMPEncode(const std::string &filename, Image &image){ for (int y = height - 1; y >= 0; y--) { for (int i = 0; i < width; i++) { for (int t = channels - 1; t >= 0; t--) { - unsigned char pixel= static_cast(data[y * width + i + t * step]); - bmp.write(reinterpret_cast(&pixel), 1); + unsigned char pixel = + static_cast(data[y * width + i + t * step]); + bmp.write(reinterpret_cast(&pixel), 1); } } if (fileStep > width * channels) bmp.write(zeropad, fileStep - width * channels); } - + bmp.close(); }