\r
#include "CImageLoaderJPG.h"\r
\r
-#ifdef _IRR_COMPILE_WITH_JPG_LOADER_\r
-\r
#include "IReadFile.h"\r
#include "CImage.h"\r
#include "os.h"\r
return core::hasFileExtension ( filename, "jpg", "jpeg" );\r
}\r
\r
+// struct for handling jpeg errors\r
+struct irr_jpeg_error_mgr\r
+{\r
+ // public jpeg error fields\r
+ struct jpeg_error_mgr pub;\r
\r
-#ifdef _IRR_COMPILE_WITH_LIBJPEG_\r
-\r
- // struct for handling jpeg errors\r
- struct irr_jpeg_error_mgr\r
- {\r
- // public jpeg error fields\r
- struct jpeg_error_mgr pub;\r
-\r
- // for longjmp, to return to caller on a fatal error\r
- jmp_buf setjmp_buffer;\r
+ // for longjmp, to return to caller on a fatal error\r
+ jmp_buf setjmp_buffer;\r
\r
- // for having access to the filename when printing the error messages\r
- core::stringc* filename;\r
- };\r
+ // for having access to the filename when printing the error messages\r
+ core::stringc* filename;\r
+};\r
\r
void CImageLoaderJPG::init_source (j_decompress_ptr cinfo)\r
{\r
errMsg += *myerr->filename;\r
os::Printer::log(errMsg.c_str(),temp1, ELL_ERROR);\r
}\r
-#endif // _IRR_COMPILE_WITH_LIBJPEG_\r
\r
//! returns true if the file maybe is able to be loaded by this class\r
bool CImageLoaderJPG::isALoadableFileFormat(io::IReadFile* file) const\r
{\r
- #ifndef _IRR_COMPILE_WITH_LIBJPEG_\r
- return false;\r
- #else\r
-\r
if (!(file && file->seek(0)))\r
return false;\r
unsigned char header[3];\r
size_t headerLen = file->read(header, sizeof(header));\r
return headerLen >= 3 && !memcmp(header, "\xFF\xD8\xFF", 3);\r
- #endif\r
}\r
\r
//! creates a surface from the file\r
IImage* CImageLoaderJPG::loadImage(io::IReadFile* file) const\r
{\r
- #ifndef _IRR_COMPILE_WITH_LIBJPEG_\r
- os::Printer::log("Can't load as not compiled with _IRR_COMPILE_WITH_LIBJPEG_:", file->getFileName(), ELL_DEBUG);\r
- return 0;\r
- #else\r
-\r
if (!file)\r
return 0;\r
\r
delete [] input;\r
\r
return image;\r
-\r
- #endif\r
}\r
\r
\r
\r
} // end namespace video\r
} // end namespace irr\r
-\r
-#endif\r
-\r