summaryrefslogtreecommitdiff
path: root/indra/newview/llagent.h
diff options
context:
space:
mode:
authorBrad Payne (Vir Linden) <vir@lindenlab.com>2020-04-22 15:34:58 +0100
committerBrad Payne (Vir Linden) <vir@lindenlab.com>2020-04-22 15:34:58 +0100
commit4e75814b44e0a2903e351c0bf6e42a7eae086309 (patch)
treee473712e3d32d12bb8b35752229a81067d7830e8 /indra/newview/llagent.h
parent6219348652846782fe682e13aacd00e5225b35d0 (diff)
parentd7f1c88c35849e56f5b352f13c16a08467d1533b (diff)
Merge remote-tracking branch 'origin/master' into SL-12995
Merge
Diffstat (limited to 'indra/newview/llagent.h')
-rw-r--r--indra/newview/llagent.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/indra/newview/llagent.h b/indra/newview/llagent.h
index 5ba1083d8e..1a352d3397 100644
--- a/indra/newview/llagent.h
+++ b/indra/newview/llagent.h
@@ -189,6 +189,8 @@ private:
// Position
//--------------------------------------------------------------------
public:
+ typedef boost::signals2::signal<void(const LLVector3 &position_local, const LLVector3d &position_global)> position_signal_t;
+
LLVector3 getPosAgentFromGlobal(const LLVector3d &pos_global) const;
LLVector3d getPosGlobalFromAgent(const LLVector3 &pos_agent) const;
const LLVector3d &getPositionGlobal() const;
@@ -196,11 +198,17 @@ public:
// Call once per frame to update position, angles (radians).
void updateAgentPosition(const F32 dt, const F32 yaw, const S32 mouse_x, const S32 mouse_y);
void setPositionAgent(const LLVector3 &center);
+
+ boost::signals2::connection whenPositionChanged(position_signal_t::slot_type fn);
+
protected:
void propagate(const F32 dt); // ! BUG ! Should roll into updateAgentPosition
private:
mutable LLVector3d mPositionGlobal;
+ position_signal_t mOnPositionChanged;
+ LLVector3d mLastTestGlobal;
+
//--------------------------------------------------------------------
// Velocity
//--------------------------------------------------------------------