LLTexLayer Class Reference

#include <lltexlayer.h>

Collaboration diagram for LLTexLayer:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 LLTexLayer (LLTexLayerSet *layer_set)
 ~LLTexLayer ()
LLTexLayerInfogetInfo () const
BOOL setInfo (LLTexLayerInfo *info)
BOOL render (S32 x, S32 y, S32 width, S32 height)
void requestUpdate ()
LLTexLayerSetgetTexLayerSet ()
const std::string & getName ()
void addMaskedMorph (LLPolyMorphTarget *morph_target, BOOL invert)
void deleteCaches ()
U8getAlphaData ()
void applyMorphMask (U8 *tex_data, S32 width, S32 height, S32 num_components)
void invalidateMorphMasks ()
ERenderPass getRenderPass ()
const LLStringgetGlobalColor ()
BOOL findNetColor (LLColor4 *color)
BOOL renderImageRaw (U8 *in_data, S32 in_width, S32 in_height, S32 in_components, S32 width, S32 height, BOOL is_mask)
BOOL renderAlphaMasks (S32 x, S32 y, S32 width, S32 height, LLColor4 *colorp)
BOOL hasAlphaParams ()

Protected Types

typedef std::vector< LLTexParamColor * > color_list_t
typedef std::vector< LLTexLayerParamAlpha * > alpha_list_t
typedef std::deque< LLMaskedMorphmorph_list_t
typedef std::map< U32, U8 * > alpha_cache_t

Protected Attributes

LLTexLayerSetmTexLayerSet
LLPointer< LLImageRawmStaticImageRaw
color_list_t mParamColorList
alpha_list_t mParamAlphaList
morph_list_t mMaskedMorphs
alpha_cache_t mAlphaCache
BOOL mMorphMasksValid
BOOL mStaticImageInvalid
LLTexLayerInfomInfo

Detailed Description

Definition at line 318 of file lltexlayer.h.


Member Typedef Documentation

typedef std::map<U32, U8*> LLTexLayer::alpha_cache_t [protected]

Definition at line 364 of file lltexlayer.h.

typedef std::vector<LLTexLayerParamAlpha *> LLTexLayer::alpha_list_t [protected]

Definition at line 358 of file lltexlayer.h.

typedef std::vector<LLTexParamColor *> LLTexLayer::color_list_t [protected]

Definition at line 353 of file lltexlayer.h.

typedef std::deque<LLMaskedMorph> LLTexLayer::morph_list_t [protected]

Definition at line 362 of file lltexlayer.h.


Constructor & Destructor Documentation

LLTexLayer::LLTexLayer ( LLTexLayerSet layer_set  ) 

Definition at line 1194 of file lltexlayer.cpp.

LLTexLayer::~LLTexLayer (  ) 

Definition at line 1203 of file lltexlayer.cpp.

References mAlphaCache.


Member Function Documentation

void LLTexLayer::addMaskedMorph ( LLPolyMorphTarget morph_target,
BOOL  invert 
)

Definition at line 1783 of file lltexlayer.cpp.

References mMaskedMorphs.

Referenced by setInfo().

void LLTexLayer::applyMorphMask ( U8 tex_data,
S32  width,
S32  height,
S32  num_components 
)

Definition at line 1695 of file lltexlayer.cpp.

References mMaskedMorphs.

void LLTexLayer::deleteCaches (  ) 

Definition at line 1306 of file lltexlayer.cpp.

References mParamAlphaList, mStaticImageRaw, NULL, and param.

BOOL LLTexLayer::findNetColor ( LLColor4 color  ) 

Definition at line 1465 of file lltexlayer.cpp.

References f, FALSE, LLTexLayerSet::getAvatar(), LLVOAvatar::getGlobalColor(), getGlobalColor(), getInfo(), lerp(), llassert, mParamColorList, mTexLayerSet, LLColor4::mV, OP_ADD, OP_BLEND, OP_MULTIPLY, param, LLColor4::setToWhite(), LLColor4::setVec(), TRUE, VW, VX, VY, and VZ.

Referenced by render().

U8 * LLTexLayer::getAlphaData (  ) 

Definition at line 1446 of file lltexlayer.cpp.

References LLTexLayerSet::getAvatar(), LLCRC::getCRC(), getInfo(), LLVOAvatar::getLocalTextureID(), mAlphaCache, LLUUID::mData, mParamAlphaList, mTexLayerSet, param, LLCRC::update(), and UUID_BYTES.

const LLString& LLTexLayer::getGlobalColor (  )  [inline]

Definition at line 342 of file lltexlayer.h.

References LLTexLayerInfo::mGlobalColor, and mInfo.

Referenced by findNetColor().

LLTexLayerInfo* LLTexLayer::getInfo (  )  const [inline]

Definition at line 325 of file lltexlayer.h.

References mInfo.

Referenced by findNetColor(), getAlphaData(), render(), and renderAlphaMasks().

const std::string& LLTexLayer::getName ( void   )  [inline]

Definition at line 333 of file lltexlayer.h.

References mInfo, and LLTexLayerInfo::mName.

ERenderPass LLTexLayer::getRenderPass (  )  [inline]

Definition at line 341 of file lltexlayer.h.

References mInfo, and LLTexLayerInfo::mRenderPass.

LLTexLayerSet* LLTexLayer::getTexLayerSet (  )  [inline]

Definition at line 331 of file lltexlayer.h.

References mTexLayerSet.

Referenced by LLTexLayerParamAlpha::getSkip(), LLTexLayerParamAlpha::render(), renderAlphaMasks(), LLTexLayerParamAlpha::setInfo(), setInfo(), LLTexParamColor::setWeight(), and LLTexLayerParamAlpha::setWeight().

BOOL LLTexLayer::hasAlphaParams (  )  [inline]

Definition at line 346 of file lltexlayer.h.

References mParamAlphaList.

void LLTexLayer::invalidateMorphMasks (  ) 

Definition at line 1788 of file lltexlayer.cpp.

References FALSE, and mMorphMasksValid.

Referenced by LLTexLayerParamAlpha::setWeight().

BOOL LLTexLayer::render ( S32  x,
S32  y,
S32  width,
S32  height 
)

Definition at line 1317 of file lltexlayer.cpp.

References LLImageGL::bind(), LLPipeline::disableLights(), FALSE, findNetColor(), LLTexLayerSet::getAvatar(), LLTexStaticImageList::getImageGL(), getInfo(), LLVOAvatar::getLocalTextureGL(), gl_rect_2d_simple(), gl_rect_2d_simple_tex(), glBlendFunc, glColor4fv, gPipeline, gTexStaticImageList, is_approx_zero(), llendl, llinfos, mMaskedMorphs, LLTexLayerInfo::mName, mParamAlphaList, mTexLayerSet, LLColor4::mV, NULL, param, renderAlphaMasks(), stop_glerror, TRUE, and VW.

BOOL LLTexLayer::renderAlphaMasks ( S32  x,
S32  y,
S32  width,
S32  height,
LLColor4 colorp 
)

Definition at line 1534 of file lltexlayer.cpp.

References LLImageGL::bind(), LLVOAvatar::dirtyMesh(), f, FALSE, LLTexLayerSet::getAvatar(), LLImageGL::getClampS(), LLImageGL::getClampT(), LLImageGL::getComponents(), LLTexStaticImageList::getImageGL(), getInfo(), LLVOAvatar::getLocalTextureGL(), LLVOAvatar::getLocalTextureID(), LLTexLayerParamAlpha::getMultiplyBlend(), getTexLayerSet(), gl_rect_2d_simple(), gl_rect_2d_simple_tex(), glBlendFunc, glColor4f, glColor4fv, glGetBooleanv, gTexStaticImageList, llassert, mAlphaCache, mask, LLUUID::mData, LLVOAvatar::mIsSelf, mMaskedMorphs, mMorphMasksValid, mParamAlphaList, LLTexLayerInfo::mStaticImageIsMask, mTexLayerSet, LLColor4::mV, NULL, param, S32, LLImageGL::setClamp(), TRUE, LLImageGL::unbindTexture(), UUID_BYTES, and VW.

Referenced by render().

BOOL LLTexLayer::renderImageRaw ( U8 in_data,
S32  in_width,
S32  in_height,
S32  in_components,
S32  width,
S32  height,
BOOL  is_mask 
)

Definition at line 1706 of file lltexlayer.cpp.

References LLImageGL::bindExternalTexture(), LLVOAvatar::bindScratchTexture(), FALSE, format, LLTexLayerSet::getAvatar(), gl_rect_2d_simple_tex(), glTexSubImage2D, llassert, mTexLayerSet, stop_glerror, TRUE, LLImageGL::unbindTexture(), VOAVATAR_SCRATCH_TEX_HEIGHT, and VOAVATAR_SCRATCH_TEX_WIDTH.

void LLTexLayer::requestUpdate (  ) 

Definition at line 1778 of file lltexlayer.cpp.

References mTexLayerSet, and LLTexLayerSet::requestUpdate().

BOOL LLTexLayer::setInfo ( LLTexLayerInfo info  ) 

Definition at line 1222 of file lltexlayer.cpp.

References addMaskedMorph(), FALSE, getTexLayerSet(), llassert, LLTexLayerInfo::mAlphaInfoList, LLTexLayerInfo::mColorInfoList, mInfo, LLTexLayerInfo::mMorphNameList, mParamAlphaList, mParamColorList, LLTexLayerInfo::mRenderPass, mTexLayerSet, NULL, RP_BUMP, LLTexLayerSet::setBump(), and TRUE.


Member Data Documentation

alpha_cache_t LLTexLayer::mAlphaCache [protected]

Definition at line 365 of file lltexlayer.h.

Referenced by getAlphaData(), renderAlphaMasks(), and ~LLTexLayer().

LLTexLayerInfo* LLTexLayer::mInfo [protected]

Definition at line 369 of file lltexlayer.h.

Referenced by getGlobalColor(), getInfo(), getName(), getRenderPass(), and setInfo().

morph_list_t LLTexLayer::mMaskedMorphs [protected]

Definition at line 363 of file lltexlayer.h.

Referenced by addMaskedMorph(), applyMorphMask(), render(), and renderAlphaMasks().

BOOL LLTexLayer::mMorphMasksValid [protected]

Definition at line 366 of file lltexlayer.h.

Referenced by invalidateMorphMasks(), and renderAlphaMasks().

alpha_list_t LLTexLayer::mParamAlphaList [protected]

Definition at line 359 of file lltexlayer.h.

Referenced by deleteCaches(), getAlphaData(), hasAlphaParams(), render(), renderAlphaMasks(), and setInfo().

color_list_t LLTexLayer::mParamColorList [protected]

Definition at line 354 of file lltexlayer.h.

Referenced by findNetColor(), and setInfo().

BOOL LLTexLayer::mStaticImageInvalid [protected]

Definition at line 367 of file lltexlayer.h.

LLPointer<LLImageRaw> LLTexLayer::mStaticImageRaw [protected]

Definition at line 350 of file lltexlayer.h.

Referenced by deleteCaches().

LLTexLayerSet* LLTexLayer::mTexLayerSet [protected]

Definition at line 349 of file lltexlayer.h.

Referenced by findNetColor(), getAlphaData(), getTexLayerSet(), render(), renderAlphaMasks(), renderImageRaw(), requestUpdate(), and setInfo().


The documentation for this class was generated from the following files:
Generated on Thu Jul 1 06:11:50 2010 for Second Life Viewer by  doxygen 1.4.7