From 130aeac190366d21f410e6202cf20e8358cacb4e Mon Sep 17 00:00:00 2001 From: Edouard DUPIN Date: Tue, 20 Dec 2016 22:00:03 +0100 Subject: [PATCH] [DEV] many correction on read write file - BMP read write correction RGB order - JPG and PNG correct sens on the image - image private, correct the internal data --- data/read_128x128.bmp | Bin 0 -> 49274 bytes data/read_128x128.jpg | Bin 0 -> 6320 bytes data/read_128x128.png | Bin 0 -> 26195 bytes data/{read.bmp => read_227x149.bmp} | Bin data/{read.jpg => read_227x149.jpg} | Bin data/{read.png => read_227x149.png} | Bin data/read_228x149.bmp | Bin 0 -> 102722 bytes egami/Image.cpp | 2 +- egami/Image.hpp | 2 +- egami/ImagePrivate.hpp | 96 ++++++++++++--------- egami/wrapperBMP.cpp | 129 +++++++++++++++++++--------- egami/wrapperJPG.cpp | 5 +- egami/wrapperPNG.cpp | 8 +- lutinParseSubFolders.txt | 1 + test/main.cpp | 61 +++++++++++-- tools/viewer/appl/MainWindows.cpp | 123 ++++++++++++++++++++++++++ tools/viewer/appl/MainWindows.hpp | 33 +++++++ tools/viewer/appl/debug.cpp | 13 +++ tools/viewer/appl/debug.hpp | 45 ++++++++++ tools/viewer/appl/init.cpp | 117 +++++++++++++++++++++++++ tools/viewer/data/icon.png | Bin 0 -> 13552 bytes tools/viewer/lutin_egami-viewer.py | 61 +++++++++++++ 22 files changed, 599 insertions(+), 97 deletions(-) create mode 100644 data/read_128x128.bmp create mode 100644 data/read_128x128.jpg create mode 100644 data/read_128x128.png rename data/{read.bmp => read_227x149.bmp} (100%) rename data/{read.jpg => read_227x149.jpg} (100%) rename data/{read.png => read_227x149.png} (100%) create mode 100644 data/read_228x149.bmp create mode 100644 lutinParseSubFolders.txt create mode 100644 tools/viewer/appl/MainWindows.cpp create mode 100644 tools/viewer/appl/MainWindows.hpp create mode 100644 tools/viewer/appl/debug.cpp create mode 100644 tools/viewer/appl/debug.hpp create mode 100644 tools/viewer/appl/init.cpp create mode 100644 tools/viewer/data/icon.png create mode 100755 tools/viewer/lutin_egami-viewer.py diff --git a/data/read_128x128.bmp b/data/read_128x128.bmp new file mode 100644 index 0000000000000000000000000000000000000000..addc4a4973f927820eea909191ecb4da280c6026 GIT binary patch literal 49274 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 G*8c@+NkX>( literal 0 HcmV?d00001 diff --git a/egami/Image.cpp b/egami/Image.cpp index db449b3..82123d9 100644 --- a/egami/Image.cpp +++ b/egami/Image.cpp @@ -149,7 +149,7 @@ void egami::Image::resize(const ivec2& _size, const ivec2& _startPos) { EGAMI_DEBUG("No internal data for image (nullptr)"); return; } - m_data->resize(_size, _startPos); + m_data->resize2(_size, _startPos); } void egami::Image::resize(const ivec2& _size, const etk::Color<>& _color, const ivec2& _startPos) { diff --git a/egami/Image.hpp b/egami/Image.hpp index bd95694..35bfa56 100644 --- a/egami/Image.hpp +++ b/egami/Image.hpp @@ -57,7 +57,7 @@ namespace egami { virtual void resize(const ivec2& _size, const etk::Color& _color, const ivec2& _startPos) = 0; virtual void resize(const ivec2& _size, const etk::Color& _color, const ivec2& _startPos) = 0; virtual void resize(const ivec2& _size, const etk::Color& _color, const ivec2& _startPos) = 0; - virtual void resize(const ivec2& _size, const ivec2& _startPos) = 0; + virtual void resize2(const ivec2& _size, const ivec2& _startPos) = 0; virtual void set(const ivec2& _pos, const etk::Color<>& _newColor) = 0; virtual void set(const ivec2& _pos, const etk::Color& _newColor) = 0; virtual void set(const ivec2& _pos, const etk::Color& _newColor) = 0; diff --git a/egami/ImagePrivate.hpp b/egami/ImagePrivate.hpp index e5ef2cd..08b65c0 100644 --- a/egami/ImagePrivate.hpp +++ b/egami/ImagePrivate.hpp @@ -14,18 +14,18 @@ namespace egami { - template> + template> class ImageTemplate : public ImagePrivate { private: ivec2 m_size; - std::vector m_data; + std::vector m_data; public: // constructor : ImageTemplate(const ivec2& _size=ivec2(32,32)) : m_size(_size) { - // basic element : + // basic element: etk::Color<> tmpBg(0,0,0,0); - // preallocate data with a basic bg elements : + // preallocate data with a basic bg elements: m_data.resize(m_size.x()*m_size.y(), tmpBg); if ((uint32_t)m_size.x()*m_size.y() > m_data.size()) { //TK_ERROR("Allocation of data buffer in error"); @@ -35,7 +35,7 @@ namespace egami { // destructor virtual ~ImageTemplate() { }; - // EWOL internal API for Texture system : + // EWOL internal API for Texture system: public: void* getTextureDataPointer() { return &m_data[0]; @@ -45,60 +45,74 @@ namespace egami { return m_size; }; // ----------------------------------------------- - // -- basic tools : + // -- basic tools: // ----------------------------------------------- public : - void resize__(const ivec2& _size, const ivec2& _startPos=ivec2(0,0)) { + void resize2__(const ivec2& _size, const ivec2& _startPos=ivec2(0,0)) { if (_size == m_size) { // same size == > nothing to do ... return; } - if ((size_t)(_size.x()*_size.y()) > m_data.size()) { - m_data.resize(_size.x()*_size.y()); + ivec2 oldSize = m_size; + m_size = _size; + if ((size_t)(m_size.x()*m_size.y()) > m_data.size()) { + m_data.resize(m_size.x()*m_size.y()); } // grow size : - if (_size.x() == m_size.x()) { - if (_size.y() < m_size.y()) { + if (m_size.x() == oldSize.x()) { + if (m_size.y() < oldSize.y()) { // Just remove lines .... } else { // just add lines } - } else if (_size.x() < m_size.x()) { - if (_size.y() <= m_size.y()) { - for (int32_t yyy=0; yyy<_size.y(); ++yyy) { - for (int32_t xxx=0; xxx<_size.x(); ++xxx) { - m_data[yyy*_size.x()+xxx] = m_data[yyy*m_size.x()+xxx]; + } else if (m_size.x() < oldSize.x()) { + if (m_size.y() <= oldSize.y()) { + for (int32_t yyy=0; yyy=0; --yyy) { - for (int32_t xxx=0; xxx<_size.x(); ++xxx) { - m_data[yyy*_size.x()+xxx] = m_data[yyy*m_size.x()+xxx]; + for (int32_t yyy=oldSize.y()-1; yyy>=0; --yyy) { + for (int32_t xxx=0; xxx m_size.x()) + } else { // (m_size.x() > oldSize.x()) - if (_size.y() <= m_size.y()) { - for (int32_t yyy=0; yyy<_size.y(); ++yyy) { - for (int32_t xxx=0; xxx=0; --yyy) { - for (int32_t xxx=0; xxx=0; --yyy) { + for (int32_t xxx=0; xxx tmpBg(0,0,0,0); + for (int32_t yyy=oldSize.y()-1; yyy void resize(const ivec2& _size, const TYPE_2& _color) { - T tmp(_color); + template void resize(const ivec2& _size, const EGAMI_TYPE_COLOR_2& _color) { + EGAMI_TYPE_COLOR tmp(_color); resize__(_size, tmp); } void set(const ivec2& _pos, const etk::Color<>& _newColor) { @@ -157,33 +171,33 @@ namespace egami { int32_t getHeight() const { return m_size.y(); }; - void clearColor(const T& _fill) { + void clearColor(const EGAMI_TYPE_COLOR& _fill) { for (int32_t iii=0; iii get(const ivec2& _pos) const { return get__(_pos); } - const T& get__(const ivec2& _pos) const { - static const T errorColor(0x00000000); + const EGAMI_TYPE_COLOR& get__(const ivec2& _pos) const { + static const EGAMI_TYPE_COLOR errorColor(0x00000000); if( _pos.x()>=0 && _pos.x()=0 && _pos.y()=0 && _pos.x()=0 && _pos.y()& _input) { + void insert(const ivec2& _pos, const ImageTemplate& _input) { for(int32_t yyy = 0; yyy < _input.getSize().y() && _pos.y() + yyy < m_size.y(); ++yyy) { for(int32_t xxx = 0; xxx < _input.getSize().x() && _pos.x() + xxx < m_size.x(); ++xxx) { set(ivec2(_pos.x()+xxx, _pos.y()+yyy), _input.get(ivec2(xxx, yyy)) ); diff --git a/egami/wrapperBMP.cpp b/egami/wrapperBMP.cpp index 3c0045a..ae7add1 100644 --- a/egami/wrapperBMP.cpp +++ b/egami/wrapperBMP.cpp @@ -27,8 +27,28 @@ extern "C" { int32_t biSizeImage; int32_t biXPelsPerMeter; int32_t biYPelsPerMeter; - int32_t biClrUsed; - int32_t biClrImportant; + int32_t biPaletteNumber; + int32_t biImportantColor; + }; + struct bitmapInfoHeaderExtended { + int32_t biSize; + int32_t biWidth; + int32_t biHeight; + int16_t biPlanes; + int16_t biBitCount; + int32_t biCompression; + int32_t biSizeImage; + int32_t biXPelsPerMeter; + int32_t biYPelsPerMeter; + // https://en.wikipedia.org/wiki/BMP_file_format / example 2 + int32_t biPaletteNumber; + int32_t biImportantColor; + int32_t biLCSColorSpace; // This is at this position, inspection of "gimp" output ... + int32_t biBitMaskRed; + int32_t biBitMaskGreen; + int32_t biBitMaskBlue; + int32_t biBitMaskAlpha; + int32_t biUnused[12]; }; #pragma pack(pop) } @@ -59,8 +79,8 @@ static void display(struct bitmapFileHeader _header, struct bitmapInfoHeader _in EGAMI_DEBUG(" biSizeImage =" << _info.biSizeImage << " specifies the size of the image data, in bytes. If there is no compression, it is valid to set this member to zero."); EGAMI_DEBUG(" biXPelsPerMeter=" << _info.biXPelsPerMeter << " specifies the the horizontal pixels per meter on the designated targer device, usually set to zero."); EGAMI_DEBUG(" biYPelsPerMeter=" << _info.biYPelsPerMeter << " specifies the the vertical pixels per meter on the designated targer device, usually set to zero."); - EGAMI_DEBUG(" biClrUsed =" << _info.biClrUsed << " speglTexImage2Dcifies the number of colors used in the bitmap, if set to zero the number of colors is calculated using the biBitCount member."); - EGAMI_DEBUG(" biClrImportant =" << _info.biClrImportant << " specifies the number of color that are 'important' for the bitmap, if set to zero, all colors are important."); + EGAMI_DEBUG(" biClrUsed =" << _info.biPaletteNumber << " Pallet color number."); + EGAMI_DEBUG(" biClrImportant =" << _info.biImportantColor << " Important color ID."); /* EGAMI_DEBUG("Bitmap : " << m_width << "x" << m_height); switch(m_dataMode) @@ -94,7 +114,9 @@ egami::Image egami::loadBMP(const std::string& _inputFile) { int32_t m_width = 0; int32_t m_height = 0; struct bitmapFileHeader m_FileHeader; + bool useExtended = false; struct bitmapInfoHeader m_InfoHeader; + struct bitmapInfoHeaderExtended m_InfoHeaderExtended; etk::FSNode fileName(_inputFile); // get the fileSize ... @@ -116,10 +138,32 @@ egami::Image egami::loadBMP(const std::string& _inputFile) { fileName.fileClose(); return out; } - if (fileName.fileRead(&m_InfoHeader,sizeof(struct bitmapInfoHeader),1) != 1) { - EGAMI_ERROR("error loading file header"); - fileName.fileClose(); - return out; + if (m_FileHeader.bfOffBits > sizeof(struct bitmapFileHeader) + sizeof(struct bitmapInfoHeader)) { + EGAMI_WARNING("Read bitmap in EXTENDED mode ..."); + if (fileName.fileRead(&m_InfoHeaderExtended,sizeof(struct bitmapInfoHeaderExtended),1) != 1) { + EGAMI_ERROR("error loading file header"); + fileName.fileClose(); + return out; + } + useExtended = true; + m_InfoHeader.biSize = m_InfoHeaderExtended.biSize; + m_InfoHeader.biWidth = m_InfoHeaderExtended.biWidth; + m_InfoHeader.biHeight = m_InfoHeaderExtended.biHeight; + m_InfoHeader.biHeight = m_InfoHeaderExtended.biHeight; + m_InfoHeader.biHeight = m_InfoHeaderExtended.biHeight; + m_InfoHeader.biBitCount = m_InfoHeaderExtended.biBitCount; + m_InfoHeader.biCompression = m_InfoHeaderExtended.biCompression; + m_InfoHeader.biSizeImage = m_InfoHeaderExtended.biSizeImage; + m_InfoHeader.biXPelsPerMeter = m_InfoHeaderExtended.biXPelsPerMeter; + m_InfoHeader.biYPelsPerMeter = m_InfoHeaderExtended.biYPelsPerMeter; + } else { + EGAMI_WARNING("Read bitmap in BASIC mode ..."); + if (fileName.fileRead(&m_InfoHeader,sizeof(struct bitmapInfoHeader),1) != 1) { + EGAMI_ERROR("error loading file header"); + fileName.fileClose(); + return out; + } + useExtended = false; } //display(m_FileHeader, m_InfoHeader); //EGAMI_ERROR("plopppppppppppppp " << m_FileHeader.bfOffBits); @@ -166,6 +210,7 @@ egami::Image egami::loadBMP(const std::string& _inputFile) { fileName.fileClose();; return out; } + std::vector m_data; if(m_InfoHeader.biSizeImage != 0) { m_data.resize(m_InfoHeader.biSizeImage, 0); @@ -183,11 +228,11 @@ egami::Image egami::loadBMP(const std::string& _inputFile) { uint16_t * pointer = (uint16_t*)(&m_data[0]); for(int32_t yyy=0; yyy> 8)); + tmpColor.setB((uint8_t)((*pointer & 0xF800) >> 8)); tmpColor.setG((uint8_t)((*pointer & 0x07E0) >> 3)); - tmpColor.setB((uint8_t)(*pointer << 3)); + tmpColor.setR((uint8_t)(*pointer << 3)); tmpColor.setA(0xFF); - out.set(ivec2(xxx,yyy), tmpColor); + out.set(ivec2(xxx,m_height-yyy-1), tmpColor); pointer++; } } @@ -197,11 +242,11 @@ egami::Image egami::loadBMP(const std::string& _inputFile) { uint16_t * pointer = (uint16_t*)(&m_data[0]); for(int32_t yyy=0; yyy> 7)); + tmpColor.setB((int8_t)((*pointer & 0x7C00) >> 7)); tmpColor.setG((int8_t)((*pointer & 0x03E0) >> 2)); - tmpColor.setB((int8_t)(*pointer << 3)); + tmpColor.setR((int8_t)(*pointer << 3)); tmpColor.setA(0xFF); - out.set(ivec2(xxx,yyy), tmpColor); + out.set(ivec2(xxx,m_height-yyy-1), tmpColor); pointer++; } } @@ -220,16 +265,15 @@ egami::Image egami::loadBMP(const std::string& _inputFile) { uint8_t * pointer = (&m_data[0]); for(int32_t yyy=0; yyy& tmpColor = _inputImage.get(ivec2(xxx,yyy)); + const etk::Color<>& tmpColor = _inputImage.get(ivec2(xxx,_inputImage.getSize().y()-yyy-1)); uint8_t* pointer = data; *pointer++ = tmpColor.r(); *pointer++ = tmpColor.g(); @@ -346,11 +397,11 @@ bool egami::storeBMP(const std::string& _fileName, const egami::Image& _inputIma uint8_t data[16]; for(int32_t yyy=0; yyy<_inputImage.getSize().y(); ++yyy) { for(int32_t xxx=0; xxx<_inputImage.getSize().x(); ++xxx) { - const etk::Color<>& tmpColor = _inputImage.get(ivec2(xxx,yyy)); + const etk::Color<>& tmpColor = _inputImage.get(ivec2(xxx,_inputImage.getSize().y()-yyy-1)); uint8_t* pointer = data; - *pointer++ = tmpColor.r(); - *pointer++ = tmpColor.g(); *pointer++ = tmpColor.b(); + *pointer++ = tmpColor.g(); + *pointer++ = tmpColor.r(); fileName.fileWrite(data,3,1); } if (offset != 0) { diff --git a/egami/wrapperJPG.cpp b/egami/wrapperJPG.cpp index 15bcf13..395e495 100644 --- a/egami/wrapperJPG.cpp +++ b/egami/wrapperJPG.cpp @@ -107,12 +107,13 @@ egami::Image egami::loadJPG(const std::string& _inputFile) { // Here we use the library's state variable cinfo.output_scanline as the loop counter, so that we don't have to keep track ourselves. - int32_t yyy = 1; + int32_t yyy = 0; while (cinfo.output_scanline < cinfo.output_height) { // Get a simple line: (void) jpeg_read_scanlines(&cinfo, buffer, 1); // Direst push on the output (got output format RGB8) - uint8_t* tmpp = dataOutPointer + (row_stride*(cinfo.output_height-yyy)); + //uint8_t* tmpp = dataOutPointer + (row_stride*(cinfo.output_height-yyy)); + uint8_t* tmpp = dataOutPointer + (row_stride*yyy); memcpy(tmpp, buffer[0], row_stride); yyy++; } diff --git a/egami/wrapperPNG.cpp b/egami/wrapperPNG.cpp index 25c2846..7cb2eef 100644 --- a/egami/wrapperPNG.cpp +++ b/egami/wrapperPNG.cpp @@ -211,7 +211,7 @@ egami::Image egami::loadPNG(const std::string& _inputFile) { for (png_uint_32 xxx = 0; xxx < width; ++xxx) { png_byte* ptr = &(row[xxx*4]); tmpColor.set(ptr[0], ptr[1], ptr[2], ptr[3]); - out.set(ivec2(xxx,height-yyy-1), tmpColor); + out.set(ivec2(xxx,yyy), tmpColor); } } break; @@ -223,7 +223,7 @@ egami::Image egami::loadPNG(const std::string& _inputFile) { for (png_uint_32 xxx = 0; xxx < width; ++xxx) { png_byte* ptr = &(row[xxx*3]); tmpColor.set(ptr[0], ptr[1], ptr[2]); - out.set(ivec2(xxx,height-yyy-1), tmpColor); + out.set(ivec2(xxx,yyy), tmpColor); } } break; @@ -235,7 +235,7 @@ egami::Image egami::loadPNG(const std::string& _inputFile) { for (png_uint_32 xxx = 0; xxx < width; ++xxx) { png_byte* ptr = &(row[xxx]); tmpColor.set(ptr[0], ptr[0], ptr[0]); - out.set(ivec2(xxx,height-yyy-1), tmpColor); + out.set(ivec2(xxx,yyy), tmpColor); } } break; @@ -247,7 +247,7 @@ egami::Image egami::loadPNG(const std::string& _inputFile) { for (png_uint_32 xxx = 0; xxx < width; ++xxx) { png_byte* ptr = &(row[xxx*2]); tmpColor.set(ptr[0], ptr[0], ptr[0], ptr[1]); - out.set(ivec2(xxx,height-yyy-1), tmpColor); + out.set(ivec2(xxx,yyy), tmpColor); } } break; diff --git a/lutinParseSubFolders.txt b/lutinParseSubFolders.txt new file mode 100644 index 0000000..89b1ecd --- /dev/null +++ b/lutinParseSubFolders.txt @@ -0,0 +1 @@ +tools/viewer \ No newline at end of file diff --git a/test/main.cpp b/test/main.cpp index c16c75a..41b02e7 100644 --- a/test/main.cpp +++ b/test/main.cpp @@ -20,9 +20,9 @@ int main(int argc, const char *argv[]) { return RUN_ALL_TESTS(); } -TEST(TestBMP, read) { - egami::Image image = egami::load("DATA:read.bmp"); - egami::store(image, "out/read.bmp.bmp"); +TEST(TestBMP, read_227x149) { + egami::Image image = egami::load("DATA:read_227x149.bmp"); + egami::store(image, "out/read_227x149.bmp.bmp"); // Check if image is loaded EXPECT_EQ(true, image.exist()); // check image correct size @@ -34,10 +34,38 @@ TEST(TestBMP, read) { EXPECT_EQ("3518a9693a349044d23c3a95262831144011086fdb339ef8532f9c6cebffe76b2c994b0a3e6d69addca15538a1cb559af3be445c5b622b5cf80c9291e7b8ca5b", sha512); } +TEST(TestBMP, read_128x128) { + egami::Image image = egami::load("DATA:read_128x128.bmp"); + egami::store(image, "out/read_128x128.bmp.bmp"); + // Check if image is loaded + EXPECT_EQ(true, image.exist()); + // check image correct size + EXPECT_EQ(ivec2(128,128), image.getSize()); + // check image correct type + EXPECT_EQ(egami::colorType::RGB8, image.getType()); + // check integrity + std::string sha512 = algue::stringConvert(algue::sha512::encode((const uint8_t *)image.getTextureDataPointer(), egami::getFormatColorSize(image.getType()) * image.getSize().x() * image.getSize().y())); + EXPECT_EQ("3518a9693a349044d23c3a95262831144011086fdb339ef8532f9c6cebffe76b2c994b0a3e6d69addca15538a1cb559af3be445c5b622b5cf80c9291e7b8ca5b", sha512); +} -TEST(TestPNG, read) { - egami::Image image = egami::load("DATA:read.png"); - egami::store(image, "out/read.png.bmp"); + +TEST(TestPNG, read_227x149) { + egami::Image image = egami::load("DATA:read_227x149.png"); + egami::store(image, "out/read.png_227x149.bmp"); + // Check if image is loaded + EXPECT_EQ(true, image.exist()); + // check image correct size + EXPECT_EQ(ivec2(227,149), image.getSize()); + // check image correct type + EXPECT_EQ(egami::colorType::RGB8, image.getType()); + // check integrity + std::string sha512 = algue::stringConvert(algue::sha512::encode((const uint8_t *)image.getTextureDataPointer(), egami::getFormatColorSize(image.getType()) * image.getSize().x() * image.getSize().y())); + EXPECT_EQ("42dbad7abf1e651da58c9df06521d63a878b5bd0db6e1cbe129db3c9782ce640a6709583ba9e6571d314f39b259321dcc392f98bf4412deb5ce8392566d2bc0f", sha512); +} + +TEST(TestPNG, read_128x128) { + egami::Image image = egami::load("DATA:read_128x128.png"); + egami::store(image, "out/read_128x128.png.bmp"); // Check if image is loaded EXPECT_EQ(true, image.exist()); // check image correct size @@ -64,9 +92,24 @@ TEST(TestSVG, read) { } -TEST(TestJPG, read) { - egami::Image image = egami::load("DATA:read.jpg"); - egami::store(image, "out/read.jpg.bmp"); +TEST(TestJPG, read_227x149) { + egami::Image image = egami::load("DATA:read_227x149.jpg"); + egami::store(image, "out/read_227x149.jpg.bmp"); + // Check if image is loaded + EXPECT_EQ(true, image.exist()); + // check image correct size + EXPECT_EQ(ivec2(227,149), image.getSize()); + // check image correct type + EXPECT_EQ(egami::colorType::RGB8, image.getType()); + // check integrity + std::string sha512 = algue::stringConvert(algue::sha512::encode((const uint8_t *)image.getTextureDataPointer(), egami::getFormatColorSize(image.getType()) * image.getSize().x() * image.getSize().y())); + EXPECT_EQ("42dbad7abf1e651da58c9df06521d63a878b5bd0db6e1cbe129db3c9782ce640a6709583ba9e6571d314f39b259321dcc392f98bf4412deb5ce8392566d2bc0f", sha512); +} + + +TEST(TestJPG, read_128x128) { + egami::Image image = egami::load("DATA:read_128x128.jpg"); + egami::store(image, "out/read_128x128.jpg.bmp"); // Check if image is loaded EXPECT_EQ(true, image.exist()); // check image correct size diff --git a/tools/viewer/appl/MainWindows.cpp b/tools/viewer/appl/MainWindows.cpp new file mode 100644 index 0000000..869a15d --- /dev/null +++ b/tools/viewer/appl/MainWindows.cpp @@ -0,0 +1,123 @@ +/** @file + * @author Edouard DUPIN + * @copyright 2010, Edouard DUPIN, all right reserved + * @license BSD v3 (see license file) + */ + + +#include +#include + +#include +#include +#include +#include + +appl::MainWindows::MainWindows() : + m_idDisplayed(-1) { + APPL_DEBUG("CREATE WINDOWS ... "); + addObjectType("appl::MainWindows"); +} + +void appl::MainWindows::init() { + ewol::widget::Windows::init(); + m_image = ewol::widget::Image::create("src", std::string("DATA:icon.png"), + "expand", bvec2(true,true), + "fill", bvec2(true,true)); + propertyTitle.set("EVI"); + m_image->propertyExpand.set(bvec2(true,true)); + m_image->propertyFill.set(bvec2(true,true)); + setSubWidget(m_image); + shortCutAdd("F12", "menu:reloade-shader"); + signalShortcut.connect(sharedFromThis(), &appl::MainWindows::onCallbackShortCut); +} + +void appl::MainWindows::onCallbackShortCut(const std::string& _value) { + APPL_WARNING("Event from ShortCut : " << _value); + if (_value == "menu:reloade-shader") { + ewol::getContext().getResourcesManager().reLoadResources(); + ewol::getContext().forceRedrawAll(); + } else { + APPL_ERROR("Event from Menu UNKNOW : '" << _value << "'"); + } +} + +void appl::MainWindows::setListOfFiles(std::vector _listImages) { + m_listImages = _listImages; + if (m_listImages.size() == 0) { + m_idDisplayed = -1; + m_image->propertySource.set("DATA:icon.png"); + propertyTitle.set("EVI"); + } else { + m_idDisplayed = 0; + m_image->propertySource.set(m_listImages[0]); + propertyTitle.set("EVI:" + m_listImages[0]); + } +} + +bool appl::MainWindows::onEventInput(const ewol::event::Input& _event) { + APPL_WARNING(" EVENT : " << _event); + return true; +} + +bool appl::MainWindows::onEventEntry(const ewol::event::Entry& _event) { + if (m_idDisplayed == -1) { + return false; + } + if (_event.getStatus() == gale::key::status::down) { + if ( ( _event.getType() == gale::key::keyboard::character + && _event.getChar() == ' ') + || _event.getType() == gale::key::keyboard::right) { + m_idDisplayed++; + if (m_idDisplayed >= m_listImages.size()) { + m_idDisplayed--; + return true; + } + m_image->propertySource.set(m_listImages[m_idDisplayed]); + propertyTitle.set("EVI:" + m_listImages[m_idDisplayed] + " " + etk::to_string(m_idDisplayed+1) + "/" + etk::to_string(m_listImages.size())); + return true; + } + if (_event.getType() == gale::key::keyboard::left) { + m_idDisplayed--; + if (m_idDisplayed < 0) { + m_idDisplayed++; + return true; + } + m_image->propertySource.set(m_listImages[m_idDisplayed]); + propertyTitle.set("EVI:" + m_listImages[m_idDisplayed] + " " + etk::to_string(m_idDisplayed+1) + "/" + etk::to_string(m_listImages.size())); + return true; + } + if (_event.getType() == gale::key::keyboard::down) { + m_idDisplayed += 10; + if (m_idDisplayed >= m_listImages.size()) { + m_idDisplayed = m_listImages.size()-1; + } + m_image->propertySource.set(m_listImages[m_idDisplayed]); + propertyTitle.set("EVI:" + m_listImages[m_idDisplayed] + " " + etk::to_string(m_idDisplayed+1) + "/" + etk::to_string(m_listImages.size())); + return true; + } + if (_event.getType() == gale::key::keyboard::up) { + m_idDisplayed -= 10; + if (m_idDisplayed < 0) { + m_idDisplayed = 0; + } + m_image->propertySource.set(m_listImages[m_idDisplayed]); + propertyTitle.set("EVI:" + m_listImages[m_idDisplayed] + " " + etk::to_string(m_idDisplayed+1) + "/" + etk::to_string(m_listImages.size())); + return true; + } + if (_event.getType() == gale::key::keyboard::pageDown) { + m_idDisplayed = m_listImages.size()-1; + m_image->propertySource.set(m_listImages[m_idDisplayed]); + propertyTitle.set("EVI:" + m_listImages[m_idDisplayed] + " " + etk::to_string(m_idDisplayed+1) + "/" + etk::to_string(m_listImages.size())); + return true; + } + if (_event.getType() == gale::key::keyboard::pageUp) { + m_idDisplayed = 0; + m_image->propertySource.set(m_listImages[m_idDisplayed]); + propertyTitle.set("EVI:" + m_listImages[m_idDisplayed] + " " + etk::to_string(m_idDisplayed+1) + "/" + etk::to_string(m_listImages.size())); + return true; + } + } + + return true; +} diff --git a/tools/viewer/appl/MainWindows.hpp b/tools/viewer/appl/MainWindows.hpp new file mode 100644 index 0000000..7354309 --- /dev/null +++ b/tools/viewer/appl/MainWindows.hpp @@ -0,0 +1,33 @@ +/** @file + * @author Edouard DUPIN + * @copyright 2010, Edouard DUPIN, all right reserved + * @license BSD v3 (see license file) + */ +#pragma once + +#include +#include +#include +#include +namespace appl { + class MainWindows : public ewol::widget::Windows { + private: + ewol::widget::ImageShared m_image; + std::vector m_listImages; + int64_t m_idDisplayed; + public: + // Constructeur + MainWindows(); + void init() override; + public: + DECLARE_FACTORY(MainWindows); + ~MainWindows() {}; + void setListOfFiles(std::vector _listImages); + protected: + void onCallbackShortCut(const std::string& _value); + bool onEventInput(const ewol::event::Input& _event) override; + bool onEventEntry(const ewol::event::Entry& _event) override; + }; +}; + + diff --git a/tools/viewer/appl/debug.cpp b/tools/viewer/appl/debug.cpp new file mode 100644 index 0000000..8e5b2ee --- /dev/null +++ b/tools/viewer/appl/debug.cpp @@ -0,0 +1,13 @@ +/** @file + * @author Edouard DUPIN + * @copyright 2010, Edouard DUPIN, all right reserved + * @license GPL v3 (see license file) + */ + + +#include + +int32_t appl::getLogId() { + static int32_t g_val = elog::registerInstance("egami-viewer"); + return g_val; +} diff --git a/tools/viewer/appl/debug.hpp b/tools/viewer/appl/debug.hpp new file mode 100644 index 0000000..5c66e6b --- /dev/null +++ b/tools/viewer/appl/debug.hpp @@ -0,0 +1,45 @@ +/** @file + * @author Edouard DUPIN + * @copyright 2011, Edouard DUPIN, all right reserved + * @license APACHE v2.0 (see license file) + */ +#pragma once + +#include +#include + +namespace appl { + /** + * @brief Get local id of the library + * @return Unique ID of the library + */ + int32_t getLogId(); +}; + +#define APPL_BASIC(info,data) ELOG_BASE(appl::getLogId(),info,data) + +#define APPL_PRINT(data) APPL_BASIC(-1, data) +#define APPL_CRITICAL(data) APPL_BASIC(1, data) +#define APPL_ERROR(data) APPL_BASIC(2, data) +#define APPL_WARNING(data) APPL_BASIC(3, data) +#ifdef DEBUG + #define APPL_INFO(data) APPL_BASIC(4, data) + #define APPL_DEBUG(data) APPL_BASIC(5, data) + #define APPL_VERBOSE(data) APPL_BASIC(6, data) + #define APPL_TODO(data) APPL_BASIC(4, "TODO : " << data) +#else + #define APPL_INFO(data) do { } while(false) + #define APPL_DEBUG(data) do { } while(false) + #define APPL_VERBOSE(data) do { } while(false) + #define APPL_TODO(data) do { } while(false) +#endif + +#define APPL_HIDDEN(data) do { } while(false) + +#define APPL_ASSERT(cond,data) \ + do { \ + if (!(cond)) { \ + APPL_CRITICAL(data); \ + assert(!#cond); \ + } \ + } while (0) diff --git a/tools/viewer/appl/init.cpp b/tools/viewer/appl/init.cpp new file mode 100644 index 0000000..a1d791d --- /dev/null +++ b/tools/viewer/appl/init.cpp @@ -0,0 +1,117 @@ +/** @file + * @author Edouard DUPIN + * @copyright 2010, Edouard DUPIN, all right reserved + * @license BSD v3 (see license file) + */ + +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +class MainApplication : public ewol::context::Application { + private: + std::vector m_listFiles; + public: + virtual void onCreate(ewol::Context& _context) { + APPL_INFO(" == > CREATE ... (START) [" << gale::getBoardType() << "] (" << gale::getCompilationMode() << ") (BEGIN)"); + for( int32_t iii=0 ; iii<_context.getCmd().size(); iii++) { + std::string tmpppp = _context.getCmd().get(iii); + if ( tmpppp == "-h" + || tmpppp == "--help") { + APPL_INFO(" -t c-flags-file-name" ); + APPL_INFO(" -h/--help display this help" ); + exit(0); + } + if ( tmpppp.size()>=2 + && tmpppp[0] == '-' + && tmpppp[1] == '-') { + continue; + } + // TODO : Check if it is a path ... + if (etk::FSNodeExist(tmpppp) == false) { + APPL_ERROR("element does not exist: '" << tmpppp << "' ==> rejected"); + } else { + etk::FSNode elem(tmpppp); + if (elem.getNodeType() == etk::typeNode_folder) { + std::vector tmp = elem.folderGetSub(false, true, ".*"); + std::sort(tmp.begin(), tmp.end()); + for (auto &it : tmp) { + m_listFiles.push_back(it); + } + } else { + // simple file: + m_listFiles.push_back(tmpppp); + } + } + } + //etk::theme::setName("COLOR", "color/black/"); + etk::theme::setName("COLOR", "color/white/"); + + _context.setSize(vec2(800, 600)); + + _context.setTitle("egami-viewer"); + + // select internal data for font ... + _context.getFontDefault().setUseExternal(true); + #ifdef __TARGET_OS__Android + _context.getFontDefault().set("FreeSerif", 19); + #else + _context.getFontDefault().set("FreeSerif;DejaVuSansMono",14); + #endif + + // set the application icon ... + _context.setIcon("DATA:icon.png"); + + APPL_INFO("==> CREATE ... (END)"); + } + + void onStart(ewol::Context& _context) { + APPL_INFO("==> START ... (BEGIN)"); + + ememory::SharedPtr basicWindows = appl::MainWindows::create(); + if (basicWindows == nullptr) { + APPL_ERROR("Can not allocate the basic windows"); + return; + } + basicWindows->setListOfFiles(m_listFiles); + // create the specific windows + _context.setWindows(basicWindows); + if (basicWindows == nullptr) { + APPL_ERROR("Can not allocate the basic windows"); + _context.exit(-1); + return; + } + + // create the specific windows + _context.setWindows(basicWindows); + + APPL_INFO("==> START ... (END)"); + return; + } + + void onStop(ewol::Context& _context) { + APPL_INFO("==> STOP ... (START)"); + APPL_INFO("==> STOP ... (END)"); + } +}; + + + +/** + * @brief Main of the program (This can be set in every case, but it is not used in Andoid...). + * @param std IO + * @return std IO + */ +int main(int _argc, const char *_argv[]) { + // second possibility + return ewol::run(new MainApplication(), _argc, _argv); +} + + diff --git a/tools/viewer/data/icon.png b/tools/viewer/data/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..d7b48600028139e479cf3241f93f3a72ea632cb5 GIT binary patch literal 13552 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"] + +def configure(target, my_module): + # add the file to compile: + my_module.add_src_file([ + 'appl/debug.cpp', + 'appl/init.cpp', + 'appl/MainWindows.cpp', + ]) + + my_module.add_depend(['ewol']) + + my_module.copy_file('data/icon.png','icon.png') + + my_module.add_path(".") + + """ + # set the package properties : + my_module.pkg_set("VERSION", versionID) + my_module.pkg_set("COMPAGNY_TYPE", "org") + my_module.pkg_set("COMPAGNY_NAME", "Edouard DUPIN") + my_module.pkg_set("MAINTAINER", ["Mr DUPIN Edouard "]) + my_module.pkg_set("ICON", tools.get_current_path(__file__) + "/../data/icon.png") + my_module.pkg_set("SECTION", ["Development"]) + my_module.pkg_set("PRIORITY", "optional") + my_module.pkg_set("DESCRIPTION", "ewol test software") + my_module.pkg_set("NAME", "test software") + + my_module.pkg_add("RIGHT", "SET_ORIENTATION") + my_module.pkg_add("RIGHT", "VIBRATE") + """ + + return True + + + +