patch_code.cpp File Reference

Encode patch DCT data into bitcode. More...

#include "linden_common.h"
#include "llmath.h"
#include "v3math.h"
#include "patch_dct.h"
#include "patch_code.h"
#include "bitpack.h"

Include dependency graph for patch_code.cpp:

Go to the source code of this file.

Functions

void init_patch_coding (LLBitPack &bitpack)
void code_patch_group_header (LLBitPack &bitpack, LLGroupHeader *gopp)
void code_patch_header (LLBitPack &bitpack, LLPatchHeader *ph, S32 *patch)
void code_end_of_data (LLBitPack &bitpack)
void code_patch (LLBitPack &bitpack, S32 *patch, S32 postquant)
void end_patch_coding (LLBitPack &bitpack)
void init_patch_decoding (LLBitPack &bitpack)
void decode_patch_group_header (LLBitPack &bitpack, LLGroupHeader *gopp)
void decode_patch_header (LLBitPack &bitpack, LLPatchHeader *ph)
void decode_patch (LLBitPack &bitpack, S32 *patches)

Variables

U32 gPatchSize
U32 gWordBits


Detailed Description

Encode patch DCT data into bitcode.

LicenseInfo
firstyear=2000&license=viewergpl

Copyright (c) 2000-2007, Linden Research, Inc.

Second Life Viewer Source Code The source code in this file ("Source Code") is provided by Linden Lab to you under the terms of the GNU General Public License, version 2.0 ("GPL"), unless you have obtained a separate licensing agreement ("Other License"), formally executed by you and Linden Lab. Terms of the GPL can be found in doc/GPL-license.txt in this distribution, or online at http://secondlife.com/developers/opensource/gplv2

There are special exceptions to the terms and conditions of the GPL as it is applied to this Source Code. View the full text of the exception in the file doc/FLOSS-exception.txt in this software distribution, or online at http://secondlife.com/developers/opensource/flossexception

By copying, modifying or distributing this software, you acknowledge that you have read and understood your obligations described above, and agree to abide by those obligations.

ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, COMPLETENESS OR PERFORMANCE. $/LicenseInfo$

Definition in file patch_code.cpp.


Function Documentation

void code_end_of_data ( LLBitPack bitpack  ) 

Definition at line 129 of file patch_code.cpp.

References LLBitPack::bitPack(), and END_OF_PATCHES.

void code_patch ( LLBitPack bitpack,
S32 patch,
S32  postquant 
)

Definition at line 134 of file patch_code.cpp.

References LLBitPack::bitPack(), FALSE, gPatchSize, gWordBits, i, j, llendl, llerrs, NEGATIVE_VALUE, POSITIVE_VALUE, S32, TRUE, ZERO_CODE, and ZERO_EOB.

void code_patch_group_header ( LLBitPack bitpack,
LLGroupHeader gopp 
)

Definition at line 48 of file patch_code.cpp.

References LLBitPack::bitPack(), gPatchSize, LLGroupHeader::layer_type, LLGroupHeader::patch_size, stride, and LLGroupHeader::stride.

void code_patch_header ( LLBitPack bitpack,
LLPatchHeader ph,
S32 patch 
)

Definition at line 63 of file patch_code.cpp.

References LLBitPack::bitPack(), LLPatchHeader::dc_offset, gPatchSize, gWordBits, i, j, llendl, llerrs, LLPatchHeader::patchids, LLPatchHeader::quant_wbits, range, LLPatchHeader::range, and S32.

void decode_patch ( LLBitPack bitpack,
S32 patches 
)

Definition at line 289 of file patch_code.cpp.

References LLBitPack::bitUnpack(), gPatchSize, gWordBits, i, j, and S32.

Referenced by LLWind::decompress(), LLCloudLayer::decompress(), and LLSurface::decompressDCTPatch().

void decode_patch_group_header ( LLBitPack bitpack,
LLGroupHeader gopp 
)

Definition at line 212 of file patch_code.cpp.

References LLBitPack::bitUnpack(), gPatchSize, LLGroupHeader::layer_type, LLGroupHeader::patch_size, and LLGroupHeader::stride.

Referenced by LLVLManager::unpackData().

void decode_patch_header ( LLBitPack bitpack,
LLPatchHeader ph 
)

Definition at line 237 of file patch_code.cpp.

References LLBitPack::bitUnpack(), LLPatchHeader::dc_offset, END_OF_PATCHES, gWordBits, LLPatchHeader::patchids, LLPatchHeader::quant_wbits, and LLPatchHeader::range.

Referenced by LLWind::decompress(), LLCloudLayer::decompress(), and LLSurface::decompressDCTPatch().

void end_patch_coding ( LLBitPack bitpack  ) 

Definition at line 202 of file patch_code.cpp.

References LLBitPack::flushBitPack().

void init_patch_coding ( LLBitPack bitpack  ) 

Definition at line 43 of file patch_code.cpp.

References LLBitPack::resetBitPacking().

void init_patch_decoding ( LLBitPack bitpack  ) 

Definition at line 207 of file patch_code.cpp.

References LLBitPack::resetBitPacking().


Variable Documentation

U32 gPatchSize

Definition at line 41 of file patch_code.cpp.

Referenced by code_patch(), code_patch_group_header(), code_patch_header(), decode_patch(), and decode_patch_group_header().

U32 gWordBits

Definition at line 41 of file patch_code.cpp.

Referenced by code_patch(), code_patch_header(), decode_patch(), and decode_patch_header().


Generated on Thu Jul 1 06:10:56 2010 for Second Life Viewer by  doxygen 1.4.7