#include <llhudeffectpointat.h>
Public Member Functions | |
void | markDead () |
void | setSourceObject (LLViewerObject *objectp) |
BOOL | setPointAt (EPointAtType target_type, LLViewerObject *object, LLVector3 position) |
void | clearPointAtTarget () |
EPointAtType | getPointAtType () |
const LLVector3 & | getPointAtPosAgent () |
const LLVector3d | getPointAtPosGlobal () |
Static Public Attributes | |
static BOOL | sDebugPointAt |
Protected Member Functions | |
LLHUDEffectPointAt (const U8 type) | |
~LLHUDEffectPointAt () | |
void | render () |
void | packData (LLMessageSystem *mesgsys) |
void | unpackData (LLMessageSystem *mesgsys, S32 blocknum) |
void | setTargetObjectAndOffset (LLViewerObject *objp, LLVector3d offset) |
void | setTargetPosGlobal (const LLVector3d &target_pos_global) |
bool | calcTargetPosition () |
void | update () |
Private Attributes | |
EPointAtType | mTargetType |
LLVector3d | mTargetOffsetGlobal |
LLVector3 | mLastSentOffsetGlobal |
F32 | mKillTime |
LLFrameTimer | mTimer |
LLVector3 | mTargetPos |
F32 | mLastSendTime |
Friends | |
class | LLHUDObject |
Definition at line 49 of file llhudeffectpointat.h.
LLHUDEffectPointAt::LLHUDEffectPointAt | ( | const U8 | type | ) | [protected] |
Definition at line 85 of file llhudeffectpointat.cpp.
References clearPointAtTarget().
LLHUDEffectPointAt::~LLHUDEffectPointAt | ( | ) | [protected] |
Definition at line 96 of file llhudeffectpointat.cpp.
void LLHUDEffectPointAt::markDead | ( | ) | [virtual] |
Reimplemented from LLHUDObject.
Definition at line 303 of file llhudeffectpointat.cpp.
References clearPointAtTarget(), LLPointer< Type >::isNull(), LLHUDObject::markDead(), and LLHUDObject::mSourceObject.
Referenced by update().
void LLHUDEffectPointAt::setSourceObject | ( | LLViewerObject * | objectp | ) | [virtual] |
Reimplemented from LLHUDObject.
Definition at line 314 of file llhudeffectpointat.cpp.
References LLPrimitive::isAvatar(), and LLHUDObject::setSourceObject().
Referenced by unpackData().
BOOL LLHUDEffectPointAt::setPointAt | ( | EPointAtType | target_type, | |
LLViewerObject * | object, | |||
LLVector3 | position | |||
) |
Definition at line 228 of file llhudeffectpointat.cpp.
References clearPointAtTarget(), dist_vec(), FALSE, gAgent, LLFrameTimer::getElapsedTimeF32(), LLAgent::getPosGlobalFromAgent(), llendl, llwarns, MAX_SENDS_PER_SEC, LLHUDEffect::mDuration, MIN_DELTAPOS_FOR_UPDATE, mKillTime, mLastSendTime, mLastSentOffsetGlobal, LLHUDObject::mSourceObject, LLHUDObject::mTargetObject, mTargetOffsetGlobal, mTargetType, mTimer, POINTAT_NUM_TARGETS, POINTAT_PRIORITIES, POINTAT_TARGET_CLEAR, POINTAT_TIMEOUTS, LLHUDEffect::setDuration(), LLHUDEffect::setNeedsSendToSim(), LLVector3d::setVec(), TRUE, and update().
void LLHUDEffectPointAt::clearPointAtTarget | ( | ) |
Definition at line 293 of file llhudeffectpointat.cpp.
References LLVector3d::clearVec(), LLHUDObject::mTargetObject, mTargetOffsetGlobal, mTargetType, NULL, and POINTAT_TARGET_NONE.
Referenced by LLHUDEffectPointAt(), markDead(), setPointAt(), and update().
EPointAtType LLHUDEffectPointAt::getPointAtType | ( | ) | [inline] |
const LLVector3& LLHUDEffectPointAt::getPointAtPosAgent | ( | ) | [inline] |
const LLVector3d LLHUDEffectPointAt::getPointAtPosGlobal | ( | ) |
Definition at line 455 of file llhudeffectpointat.cpp.
References LLHUDObject::mSourceObject, mTargetPos, LLPointer< Type >::notNull(), and LLVector3d::setVec().
void LLHUDEffectPointAt::render | ( | ) | [protected, virtual] |
Reimplemented from LLHUDEffect.
Definition at line 326 of file llhudeffectpointat.cpp.
References LLGLImmediate::begin(), LLGLImmediate::color3f(), LLGLImmediate::end(), gGL, LLVertexBuffer::LINES, LLHUDObject::mSourceObject, mTargetPos, mTargetType, LLVector3::mV, POINTAT_TARGET_NONE, sDebugPointAt, update(), LLGLImmediate::vertex3f(), VX, VY, and VZ.
void LLHUDEffectPointAt::packData | ( | LLMessageSystem * | mesgsys | ) | [protected, virtual] |
Reimplemented from LLHUDEffect.
Definition at line 103 of file llhudeffectpointat.cpp.
References _PREHASH_TypeData, LLMessageSystem::addBinaryDataFast(), LLFrameTimer::getElapsedTimeF32(), htonmemcpy(), mData, LLVector3d::mdV, mLastSendTime, LLHUDObject::mSourceObject, LLHUDObject::mTargetObject, mTargetOffsetGlobal, mTargetType, mTimer, MVT_LLUUID, MVT_LLVector3d, MVT_U8, LLUUID::null, LLHUDEffect::packData(), PKT_SIZE, POINTAT_TYPE, SOURCE_AVATAR, TARGET_OBJECT, and TARGET_POS.
void LLHUDEffectPointAt::unpackData | ( | LLMessageSystem * | mesgsys, | |
S32 | blocknum | |||
) | [protected, virtual] |
Reimplemented from LLHUDEffect.
Definition at line 145 of file llhudeffectpointat.cpp.
References _PREHASH_Effect, _PREHASH_ID, _PREHASH_TypeData, LLViewerObjectList::findObject(), gAgent, LLMessageSystem::getBinaryDataFast(), LLMessageSystem::getSizeFast(), LLMessageSystem::getUUIDFast(), gObjectList, htonmemcpy(), LLPrimitive::isAvatar(), LLUUID::isNull(), LLPointer< Type >::isNull(), llendl, llwarns, LLUUID::mData, LLVector3d::mdV, LLAgent::mPointAt, mTargetType, MVT_LLUUID, MVT_LLVector3d, MVT_U8, PKT_SIZE, POINTAT_TYPE, S32, setSourceObject(), setTargetObjectAndOffset(), setTargetPosGlobal(), SOURCE_AVATAR, TARGET_OBJECT, TARGET_POS, LLHUDEffect::unpackData(), and update().
void LLHUDEffectPointAt::setTargetObjectAndOffset | ( | LLViewerObject * | objp, | |
LLVector3d | offset | |||
) | [protected] |
Definition at line 209 of file llhudeffectpointat.cpp.
References LLHUDObject::mTargetObject, and mTargetOffsetGlobal.
Referenced by unpackData().
void LLHUDEffectPointAt::setTargetPosGlobal | ( | const LLVector3d & | target_pos_global | ) | [protected] |
Definition at line 218 of file llhudeffectpointat.cpp.
References LLHUDObject::mTargetObject, mTargetOffsetGlobal, and NULL.
Referenced by unpackData().
bool LLHUDEffectPointAt::calcTargetPosition | ( | ) | [protected] |
Definition at line 398 of file llhudeffectpointat.cpp.
References gAgent, LLAgent::getPosAgentFromGlobal(), LLViewerObject::getPositionAgent(), LLViewerObject::getRenderPosition(), LLViewerObject::getRenderRotation(), LLJoint::getWorldPosition(), LLXform::getWorldRotation(), LLJoint::getWorldRotation(), LLPrimitive::isAvatar(), LLVector3::isFinite(), LLViewerObject::mDrawable, LLVOAvatar::mHeadp, LLVOAvatar::mPelvisp, LLHUDObject::mSourceObject, LLHUDObject::mTargetObject, mTargetOffsetGlobal, mTargetPos, LLPointer< Type >::notNull(), and LLVector3::setVec().
Referenced by update().
void LLHUDEffectPointAt::update | ( | ) | [protected, virtual] |
Reimplemented from LLHUDEffect.
Definition at line 356 of file llhudeffectpointat.cpp.
References ANIM_AGENT_EDITING, calcTargetPosition(), clearPointAtTarget(), LLFrameTimer::getElapsedTimeF32(), LLPointer< Type >::isNull(), markDead(), mKillTime, LLHUDObject::mSourceObject, LLHUDObject::mTargetObject, mTargetType, mTimer, and POINTAT_TARGET_NONE.
Referenced by render(), setPointAt(), and unpackData().
friend class LLHUDObject [friend] |
Definition at line 52 of file llhudeffectpointat.h.
BOOL LLHUDEffectPointAt::sDebugPointAt [static] |
Definition at line 77 of file llhudeffectpointat.h.
Referenced by init_debug_avatar_menu(), and render().
EPointAtType LLHUDEffectPointAt::mTargetType [private] |
Definition at line 79 of file llhudeffectpointat.h.
Referenced by clearPointAtTarget(), getPointAtType(), packData(), render(), setPointAt(), unpackData(), and update().
Definition at line 80 of file llhudeffectpointat.h.
Referenced by calcTargetPosition(), clearPointAtTarget(), packData(), setPointAt(), setTargetObjectAndOffset(), and setTargetPosGlobal().
F32 LLHUDEffectPointAt::mKillTime [private] |
LLFrameTimer LLHUDEffectPointAt::mTimer [private] |
Definition at line 83 of file llhudeffectpointat.h.
Referenced by packData(), setPointAt(), and update().
LLVector3 LLHUDEffectPointAt::mTargetPos [private] |
Definition at line 84 of file llhudeffectpointat.h.
Referenced by calcTargetPosition(), getPointAtPosAgent(), getPointAtPosGlobal(), and render().
F32 LLHUDEffectPointAt::mLastSendTime [private] |