MrSID Decode SDK for Raster Reference Manual
9.5.4.4709
|
00001 /* $Id$ */ 00002 /* ////////////////////////////////////////////////////////////////////////// 00003 // // 00004 // This code is Copyright (c) 2004 LizardTech, Inc, 1008 Western Avenue, // 00005 // Suite 200, Seattle, WA 98104. Unauthorized use or distribution // 00006 // prohibited. Access to and use of this code is permitted only under // 00007 // license from LizardTech, Inc. Portions of the code are protected by // 00008 // US and foreign patents and other filings. All Rights Reserved. // 00009 // // 00011 /* PUBLIC */ 00012 00013 #ifndef JPEGIMAGEWRITER_H 00014 #define JPEGIMAGEWRITER_H 00015 00016 // lt_lib_mrsid_core 00017 #include "lti_geoFileImageWriter.h" 00018 00019 #if defined(LT_COMPILER_MS) 00020 #pragma warning(push,4) 00021 #endif 00022 00023 LT_BEGIN_NAMESPACE(LizardTech) 00024 00025 00031 class JpegImageWriter : public LTIGeoFileImageWriter 00032 { 00033 LT_DISALLOW_COPY_CONSTRUCTOR(JpegImageWriter); 00034 public: 00035 JpegImageWriter(void); 00036 virtual ~JpegImageWriter(void); 00048 LT_STATUS initialize(LTIImageStage *imageStage, 00049 lt_int32 quality = 0, // 0-100 00050 lt_int32 smoothing = 0); // 0-100 00051 00052 LT_STATUS writeBegin(const LTIScene& scene); 00053 LT_STATUS writeStrip(LTISceneBuffer& stripBuffer, const LTIScene& stripScene); 00054 LT_STATUS writeEnd(); 00055 00056 private: 00057 struct ErrorManager; 00058 struct StreamManager; 00059 00060 LT_STATUS writeBegin8(const LTIScene& scene); 00061 LT_STATUS writeStrip8(LTISceneBuffer& stripBuffer, const LTIScene& stripScene); 00062 LT_STATUS writeEnd8(); 00063 00064 LT_STATUS writeBegin12(const LTIScene& scene); 00065 LT_STATUS writeStrip12(LTISceneBuffer& stripBuffer, const LTIScene& stripScene); 00066 LT_STATUS writeEnd12(); 00067 00068 //two parameters for setting compression quality 00069 lt_int32 m_quality; 00070 lt_int32 m_smoothingFactor; 00071 00072 void *m_jpeg; 00073 ErrorManager *m_error; 00074 bool m_use8; 00075 }; 00076 00077 00078 LT_END_NAMESPACE(LizardTech) 00079 00080 #if defined(LT_COMPILER_MS) 00081 #pragma warning(pop) 00082 #endif 00083 00084 #endif // JPEGIMAGEWRITER_H