diff options
Diffstat (limited to 'indra/newview/llhudobject.h')
| -rw-r--r-- | indra/newview/llhudobject.h | 246 | 
1 files changed, 123 insertions, 123 deletions
diff --git a/indra/newview/llhudobject.h b/indra/newview/llhudobject.h index d6b355e336..797dc63017 100644 --- a/indra/newview/llhudobject.h +++ b/indra/newview/llhudobject.h @@ -1,123 +1,123 @@ -/**  - * @file llhudobject.h - * @brief LLHUDObject class definition - * - * $LicenseInfo:firstyear=2002&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_LLHUDOBJECT_H -#define LL_LLHUDOBJECT_H - -/** - * Base class and manager for in-world 2.5D non-interactive objects - */ - -#include "llpointer.h" - -#include "v4color.h" -#include "v3math.h" -#include "v3dmath.h" -#include "lldrawpool.h"		// TODO: eliminate, unused below -#include <list> - -class LLViewerCamera; -class LLFontGL; -class LLFace; -class LLViewerObject; -class LLHUDEffect; - -class LLHUDObject : public LLRefCount -{ -public: -	virtual void markDead(); -	virtual F32 getDistance() const; -	virtual void setSourceObject(LLViewerObject* objectp); -	virtual void setTargetObject(LLViewerObject* objectp); -	virtual LLViewerObject* getSourceObject() { return mSourceObject; } -	virtual LLViewerObject* getTargetObject() { return mTargetObject; } - -	void setPositionGlobal(const LLVector3d &position_global); -	void setPositionAgent(const LLVector3 &position_agent); - -	bool isVisible() const { return mVisible; } - -	U8 getType() const { return mType; } - -	LLVector3d getPositionGlobal() const { return mPositionGlobal; } - -	static LLHUDObject *addHUDObject(const U8 type); -	static LLHUDEffect *addHUDEffect(const U8 type); -	static void updateAll(); -	static void renderAll(); -	static void renderAllForSelect(); -	static void renderAllForTimer(); - -	// Some objects may need to update when window shape changes -	static void reshapeAll(); - -	static void cleanupHUDObjects(); - -	enum -	{ -		LL_HUD_TEXT, -		LL_HUD_ICON, -		LL_HUD_CONNECTOR, -		LL_HUD_FLEXIBLE_OBJECT,			// Ventrella -		LL_HUD_ANIMAL_CONTROLS,			// Ventrella -		LL_HUD_LOCAL_ANIMATION_OBJECT,	// Ventrella -		LL_HUD_CLOTH,					// Ventrella -		LL_HUD_EFFECT_BEAM, -		LL_HUD_EFFECT_GLOW, -		LL_HUD_EFFECT_POINT, -		LL_HUD_EFFECT_TRAIL, -		LL_HUD_EFFECT_SPHERE, -		LL_HUD_EFFECT_SPIRAL, -		LL_HUD_EFFECT_EDIT, -		LL_HUD_EFFECT_LOOKAT, -		LL_HUD_EFFECT_POINTAT, -		LL_HUD_EFFECT_VOICE_VISUALIZER,	// Ventrella -		LL_HUD_NAME_TAG, -		LL_HUD_EFFECT_BLOB -	}; -protected: -	static void sortObjects(); - -	LLHUDObject(const U8 type); -	virtual ~LLHUDObject(); - -	virtual void render() = 0; -	virtual void renderForTimer() {}; -	 -protected: -	U8				mType; -	bool			mDead; -	bool			mVisible; -	LLVector3d		mPositionGlobal; -	LLPointer<LLViewerObject> mSourceObject; -	LLPointer<LLViewerObject> mTargetObject; - -private: -	typedef std::list<LLPointer<LLHUDObject> > hud_object_list_t; -	static hud_object_list_t sHUDObjects; -}; - -#endif // LL_LLHUDOBJECT_H +/**
 + * @file llhudobject.h
 + * @brief LLHUDObject class definition
 + *
 + * $LicenseInfo:firstyear=2002&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_LLHUDOBJECT_H
 +#define LL_LLHUDOBJECT_H
 +
 +/**
 + * Base class and manager for in-world 2.5D non-interactive objects
 + */
 +
 +#include "llpointer.h"
 +
 +#include "v4color.h"
 +#include "v3math.h"
 +#include "v3dmath.h"
 +#include "lldrawpool.h"     // TODO: eliminate, unused below
 +#include <list>
 +
 +class LLViewerCamera;
 +class LLFontGL;
 +class LLFace;
 +class LLViewerObject;
 +class LLHUDEffect;
 +
 +class LLHUDObject : public LLRefCount
 +{
 +public:
 +    virtual void markDead();
 +    virtual F32 getDistance() const;
 +    virtual void setSourceObject(LLViewerObject* objectp);
 +    virtual void setTargetObject(LLViewerObject* objectp);
 +    virtual LLViewerObject* getSourceObject() { return mSourceObject; }
 +    virtual LLViewerObject* getTargetObject() { return mTargetObject; }
 +
 +    void setPositionGlobal(const LLVector3d &position_global);
 +    void setPositionAgent(const LLVector3 &position_agent);
 +
 +    bool isVisible() const { return mVisible; }
 +
 +    U8 getType() const { return mType; }
 +
 +    LLVector3d getPositionGlobal() const { return mPositionGlobal; }
 +
 +    static LLHUDObject *addHUDObject(const U8 type);
 +    static LLHUDEffect *addHUDEffect(const U8 type);
 +    static void updateAll();
 +    static void renderAll();
 +    static void renderAllForSelect();
 +    static void renderAllForTimer();
 +
 +    // Some objects may need to update when window shape changes
 +    static void reshapeAll();
 +
 +    static void cleanupHUDObjects();
 +
 +    enum
 +    {
 +        LL_HUD_TEXT,
 +        LL_HUD_ICON,
 +        LL_HUD_CONNECTOR,
 +        LL_HUD_FLEXIBLE_OBJECT,         // Ventrella
 +        LL_HUD_ANIMAL_CONTROLS,         // Ventrella
 +        LL_HUD_LOCAL_ANIMATION_OBJECT,  // Ventrella
 +        LL_HUD_CLOTH,                   // Ventrella
 +        LL_HUD_EFFECT_BEAM,
 +        LL_HUD_EFFECT_GLOW,
 +        LL_HUD_EFFECT_POINT,
 +        LL_HUD_EFFECT_TRAIL,
 +        LL_HUD_EFFECT_SPHERE,
 +        LL_HUD_EFFECT_SPIRAL,
 +        LL_HUD_EFFECT_EDIT,
 +        LL_HUD_EFFECT_LOOKAT,
 +        LL_HUD_EFFECT_POINTAT,
 +        LL_HUD_EFFECT_VOICE_VISUALIZER, // Ventrella
 +        LL_HUD_NAME_TAG,
 +        LL_HUD_EFFECT_BLOB
 +    };
 +protected:
 +    static void sortObjects();
 +
 +    LLHUDObject(const U8 type);
 +    virtual ~LLHUDObject();
 +
 +    virtual void render() = 0;
 +    virtual void renderForTimer() {};
 +
 +protected:
 +    U8              mType;
 +    bool            mDead;
 +    bool            mVisible;
 +    LLVector3d      mPositionGlobal;
 +    LLPointer<LLViewerObject> mSourceObject;
 +    LLPointer<LLViewerObject> mTargetObject;
 +
 +private:
 +    typedef std::list<LLPointer<LLHUDObject> > hud_object_list_t;
 +    static hud_object_list_t sHUDObjects;
 +};
 +
 +#endif // LL_LLHUDOBJECT_H
  | 
