diff options
author | Neal Orman <nyx@lindenlab.com> | 2009-10-16 17:56:30 +0000 |
---|---|---|
committer | Neal Orman <nyx@lindenlab.com> | 2009-10-16 17:56:30 +0000 |
commit | d08b0b6ae8bcd452a3d707ac153107d0f1523df8 (patch) | |
tree | 3caac3468a18b105e5aa5eb53cd13ed416c1a48d /indra/newview/lllocaltextureobject.h | |
parent | 087897b1f837872fc02822595e5dd47fabf3b7e8 (diff) |
merging in new wearable infrastructure to get a step closer to eventually supporting multiple wearables per type. Merge tested and compiles/working on linux and windows - no obvious regressions on appearance or appearance editor. Merge generated no conflicts due to being tested in fresh re-branch in avatar-pipeline/multiple-textures-12. Merge perfomed with following command:
svn merge -r 136489:136510 svn+ssh://svn.lindenlab.com/svn/linden/branches/avatar-pipeline/multiple-textures-12 .
Progress can be tracked in DEV-32551.
-Nyx
Diffstat (limited to 'indra/newview/lllocaltextureobject.h')
-rw-r--r-- | indra/newview/lllocaltextureobject.h | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/indra/newview/lllocaltextureobject.h b/indra/newview/lllocaltextureobject.h index 79e1562dce..138bbad677 100644 --- a/indra/newview/lllocaltextureobject.h +++ b/indra/newview/lllocaltextureobject.h @@ -39,6 +39,8 @@ class LLViewerFetchedTexture; class LLUUID; class LLTexLayer; class LLTextureEntry; +class LLTexLayerTemplate; +class LLWearable; // Stores all relevant information for a single texture // assumed to have ownership of all objects referred to - @@ -47,20 +49,24 @@ class LLLocalTextureObject { public: LLLocalTextureObject(); - LLLocalTextureObject(LLViewerFetchedTexture *image, LLTextureEntry *entry, LLTexLayer *layer, LLUUID id); + LLLocalTextureObject(LLViewerFetchedTexture *image, LLUUID id); LLLocalTextureObject(const LLLocalTextureObject <o); ~LLLocalTextureObject(); LLViewerFetchedTexture* getImage() const; - LLTextureEntry* getTexEntry() const; - LLTexLayer* getTexLayer() const; + LLTexLayer* getTexLayer(U32 index) const; + LLTexLayer* getTexLayer(const std::string &name); + U32 getNumTexLayers() const; LLUUID getID() const; S32 getDiscard() const; BOOL getBakedReady() const; void setImage(LLViewerFetchedTexture* new_image); - void setTexEntry(LLTextureEntry *new_te); - void setTexLayer(LLTexLayer *new_tex_layer); + BOOL setTexLayer(LLTexLayer *new_tex_layer, U32 index); + BOOL addTexLayer(LLTexLayer *new_tex_layer, LLWearable *wearable); + BOOL addTexLayer(LLTexLayerTemplate *new_tex_layer, LLWearable *wearable); + BOOL removeTexLayer(U32 index); + void setID(LLUUID new_id); void setDiscard(S32 new_discard); void setBakedReady(BOOL ready); @@ -73,8 +79,9 @@ private: // NOTE: LLLocalTextureObject should be the exclusive owner of mTexEntry and mTexLayer // using shared pointers here only for smart assignment & cleanup // do NOT create new shared pointers to these objects, or keep pointers to them around - boost::shared_ptr<LLTextureEntry> mTexEntry; - boost::shared_ptr<LLTexLayer> mTexLayer; + typedef std::vector<LLTexLayer*> tex_layer_p; + tex_layer_p mTexLayers; + LLUUID mID; BOOL mIsBakedReady; |