00001 /* 00002 * @file llimagepng.h 00003 * 00004 * $LicenseInfo:firstyear=2007&license=viewergpl$ 00005 * 00006 * Copyright (c) 2007, Linden Research, Inc. 00007 * 00008 * Second Life Viewer Source Code 00009 * The source code in this file ("Source Code") is provided by Linden Lab 00010 * to you under the terms of the GNU General Public License, version 2.0 00011 * ("GPL"), unless you have obtained a separate licensing agreement 00012 * ("Other License"), formally executed by you and Linden Lab. Terms of 00013 * the GPL can be found in doc/GPL-license.txt in this distribution, or 00014 * online at http://secondlife.com/developers/opensource/gplv2 00015 * 00016 * There are special exceptions to the terms and conditions of the GPL as 00017 * it is applied to this Source Code. View the full text of the exception 00018 * in the file doc/FLOSS-exception.txt in this software distribution, or 00019 * online at http://secondlife.com/developers/opensource/flossexception 00020 * 00021 * By copying, modifying or distributing this software, you acknowledge 00022 * that you have read and understood your obligations described above, 00023 * and agree to abide by those obligations. 00024 * 00025 * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO 00026 * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, 00027 * COMPLETENESS OR PERFORMANCE. 00028 * $/LicenseInfo$ 00029 */ 00030 00031 #ifndef LL_LLIMAGEPNG_H 00032 #define LL_LLIMAGEPNG_H 00033 00034 #include "stdtypes.h" 00035 #include "llimage.h" 00036 00037 class LLImagePNG : public LLImageFormatted 00038 { 00039 protected: 00040 ~LLImagePNG(); 00041 00042 public: 00043 LLImagePNG(); 00044 00045 BOOL updateData(); 00046 BOOL decode(LLImageRaw* raw_image, F32 decode_time = 0.0); 00047 BOOL encode(const LLImageRaw* raw_image, F32 encode_time = 0.0); 00048 00049 private: 00050 U8* mTmpWriteBuffer; 00051 }; 00052 00053 #endif