diff options
Diffstat (limited to 'indra/llappearance/llwearabledata.h')
-rw-r--r-- | indra/llappearance/llwearabledata.h | 204 |
1 files changed, 102 insertions, 102 deletions
diff --git a/indra/llappearance/llwearabledata.h b/indra/llappearance/llwearabledata.h index 1396dda52c..1266aed008 100644 --- a/indra/llappearance/llwearabledata.h +++ b/indra/llappearance/llwearabledata.h @@ -1,102 +1,102 @@ -/**
- * @file llwearabledata.h
- * @brief LLWearableData class header file
- *
- * $LicenseInfo:firstyear=2012&license=viewerlgpl$
- * Second Life Viewer Source Code
- * Copyright (C) 2010, Linden Research, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation;
- * version 2.1 of the License only.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
- * $/LicenseInfo$
- */
-
-#ifndef LL_WEARABLEDATA_H
-#define LL_WEARABLEDATA_H
-
-#include "llavatarappearancedefines.h"
-#include "llwearable.h"
-#include "llerror.h"
-
-class LLAvatarAppearance;
-
-class LLWearableData
-{
- // *TODO: Figure out why this is causing compile error.
- //LOG_CLASS(LLWearableData);
-
- //--------------------------------------------------------------------
- // Constructors / destructors / Initializers
- //--------------------------------------------------------------------
-public:
- LLWearableData();
- virtual ~LLWearableData();
-
- void setAvatarAppearance(LLAvatarAppearance* appearance) { mAvatarAppearance = appearance; }
-
-protected:
- //--------------------------------------------------------------------
- // Accessors
- //--------------------------------------------------------------------
-public:
- LLWearable* getWearable(const LLWearableType::EType type, U32 index /*= 0*/);
- const LLWearable* getWearable(const LLWearableType::EType type, U32 index /*= 0*/) const;
- LLWearable* getTopWearable(const LLWearableType::EType type);
- const LLWearable* getTopWearable(const LLWearableType::EType type) const;
- LLWearable* getBottomWearable(const LLWearableType::EType type);
- const LLWearable* getBottomWearable(const LLWearableType::EType type) const;
- U32 getWearableCount(const LLWearableType::EType type) const;
- U32 getWearableCount(const U32 tex_index) const;
- bool getWearableIndex(const LLWearable *wearable, U32& index) const;
- U32 getClothingLayerCount() const;
- bool canAddWearable(const LLWearableType::EType type) const;
-
- bool isOnTop(LLWearable* wearable) const;
-
- static const U32 MAX_CLOTHING_LAYERS = 60;
-
- //--------------------------------------------------------------------
- // Setters
- //--------------------------------------------------------------------
-protected:
- // Low-level data structure setter - public access is via setWearableItem, etc.
- void setWearable(const LLWearableType::EType type, U32 index, LLWearable *wearable);
- void pushWearable(const LLWearableType::EType type, LLWearable *wearable,
- bool trigger_updated = true);
- virtual void wearableUpdated(LLWearable *wearable, bool removed);
- void eraseWearable(LLWearable *wearable);
- void eraseWearable(const LLWearableType::EType type, U32 index);
- void clearWearableType(const LLWearableType::EType type);
- bool swapWearables(const LLWearableType::EType type, U32 index_a, U32 index_b);
-
-private:
- void pullCrossWearableValues(const LLWearableType::EType type);
-
- //--------------------------------------------------------------------
- // Member variables
- //--------------------------------------------------------------------
-protected:
- LLAvatarAppearance* mAvatarAppearance;
- typedef std::vector<LLWearable*> wearableentry_vec_t; // all wearables of a certain type (EG all shirts)
- typedef std::map<LLWearableType::EType, wearableentry_vec_t> wearableentry_map_t; // wearable "categories" arranged by wearable type
- wearableentry_map_t mWearableDatas;
-
-};
-
-
-
-#endif // LL_WEARABLEDATA_H
-
+/** + * @file llwearabledata.h + * @brief LLWearableData class header file + * + * $LicenseInfo:firstyear=2012&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +#ifndef LL_WEARABLEDATA_H +#define LL_WEARABLEDATA_H + +#include "llavatarappearancedefines.h" +#include "llwearable.h" +#include "llerror.h" + +class LLAvatarAppearance; + +class LLWearableData +{ + // *TODO: Figure out why this is causing compile error. + //LOG_CLASS(LLWearableData); + + //-------------------------------------------------------------------- + // Constructors / destructors / Initializers + //-------------------------------------------------------------------- +public: + LLWearableData(); + virtual ~LLWearableData(); + + void setAvatarAppearance(LLAvatarAppearance* appearance) { mAvatarAppearance = appearance; } + +protected: + //-------------------------------------------------------------------- + // Accessors + //-------------------------------------------------------------------- +public: + LLWearable* getWearable(const LLWearableType::EType type, U32 index /*= 0*/); + const LLWearable* getWearable(const LLWearableType::EType type, U32 index /*= 0*/) const; + LLWearable* getTopWearable(const LLWearableType::EType type); + const LLWearable* getTopWearable(const LLWearableType::EType type) const; + LLWearable* getBottomWearable(const LLWearableType::EType type); + const LLWearable* getBottomWearable(const LLWearableType::EType type) const; + U32 getWearableCount(const LLWearableType::EType type) const; + U32 getWearableCount(const U32 tex_index) const; + bool getWearableIndex(const LLWearable *wearable, U32& index) const; + U32 getClothingLayerCount() const; + bool canAddWearable(const LLWearableType::EType type) const; + + bool isOnTop(LLWearable* wearable) const; + + static const U32 MAX_CLOTHING_LAYERS = 60; + + //-------------------------------------------------------------------- + // Setters + //-------------------------------------------------------------------- +protected: + // Low-level data structure setter - public access is via setWearableItem, etc. + void setWearable(const LLWearableType::EType type, U32 index, LLWearable *wearable); + void pushWearable(const LLWearableType::EType type, LLWearable *wearable, + bool trigger_updated = true); + virtual void wearableUpdated(LLWearable *wearable, bool removed); + void eraseWearable(LLWearable *wearable); + void eraseWearable(const LLWearableType::EType type, U32 index); + void clearWearableType(const LLWearableType::EType type); + bool swapWearables(const LLWearableType::EType type, U32 index_a, U32 index_b); + +private: + void pullCrossWearableValues(const LLWearableType::EType type); + + //-------------------------------------------------------------------- + // Member variables + //-------------------------------------------------------------------- +protected: + LLAvatarAppearance* mAvatarAppearance; + typedef std::vector<LLWearable*> wearableentry_vec_t; // all wearables of a certain type (EG all shirts) + typedef std::map<LLWearableType::EType, wearableentry_vec_t> wearableentry_map_t; // wearable "categories" arranged by wearable type + wearableentry_map_t mWearableDatas; + +}; + + + +#endif // LL_WEARABLEDATA_H + |