diff options
author | prep <prep@lindenlab.com> | 2012-06-14 16:58:11 -0400 |
---|---|---|
committer | prep <prep@lindenlab.com> | 2012-06-14 16:58:11 -0400 |
commit | f6153ab73508ad972827950e0276dfd2a8e79bf1 (patch) | |
tree | a5b57ed0c8556570b3d15f10bbbc285eb43c74c1 /indra/newview/llpathfindingmanager.h | |
parent | 8973a3db31af2e3ce77fb3c614f15aac65a0ed07 (diff) |
WIP: path-722. Some agent_state_updates come through (god mode), region crossings, cleanup logic is a TBD, etc..
Diffstat (limited to 'indra/newview/llpathfindingmanager.h')
-rw-r--r-- | indra/newview/llpathfindingmanager.h | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index b4bfbc7a34..309d7513c6 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -82,19 +82,22 @@ public: void requestGetCharacters(request_id_t pRequestId, object_request_callback_t pCharactersCallback) const; -#ifdef XXX_STINSON_AGENT_STATE_DELETE_ME friend class LLAgentStateChangeNode; friend class AgentStateResponder; - typedef boost::function<void (EAgentState)> agent_state_callback_t; - typedef boost::signals2::signal<void (EAgentState)> agent_state_signal_t; - typedef boost::signals2::connection agent_state_slot_t; + + typedef boost::function< void () > agent_state_callback_t; + typedef boost::signals2::signal< void () > agent_state_signal_t; + typedef boost::signals2::connection agent_state_slot_t; + + agent_state_slot_t mCrossingSlot; + agent_state_signal_t mAgentStateSignal; agent_state_slot_t registerAgentStateListener(agent_state_callback_t pAgentStateCallback); -#endif // XXX_STINSON_AGENT_STATE_DELETE_ME void handleNavMeshRebakeResult( const LLSD &pContent ); void handleNavMeshRebakeError( U32 pStatus, const std::string &pReason, const std::string &pURL ); void triggerNavMeshRebuild(); + void onRegionBoundaryCrossed(); protected: @@ -108,6 +111,8 @@ private: void handleNavMeshStatusRequest(const LLPathfindingNavMeshStatus &pNavMeshStatus, LLViewerRegion *pRegion); void handleNavMeshStatusUpdate(const LLPathfindingNavMeshStatus &pNavMeshStatus); + void handleAgentStateUpdate(); + LLPathfindingNavMeshPtr getNavMeshForRegion(const LLUUID &pRegionUUID); LLPathfindingNavMeshPtr getNavMeshForRegion(LLViewerRegion *pRegion); @@ -116,20 +121,20 @@ private: std::string getObjectLinksetsURLForCurrentRegion() const; std::string getTerrainLinksetsURLForCurrentRegion() const; std::string getCharactersURLForCurrentRegion() const; - - std::string getCapabilityURLForCurrentRegion(const std::string &pCapabilityName) const; - std::string getCapabilityURLForRegion(LLViewerRegion *pRegion, const std::string &pCapabilityName) const; + std::string getAgentStateURLForCurrentRegion(LLViewerRegion *pRegion) const; + std::string getCapabilityURLForCurrentRegion(const std::string &pCapabilityName) const; + std::string getCapabilityURLForRegion(LLViewerRegion *pRegion, const std::string &pCapabilityName) const; LLViewerRegion *getCurrentRegion() const; void displayNavMeshRebakePanel(); void hideNavMeshRebakePanel(); -#ifdef XXX_STINSON_AGENT_STATE_DELETE_ME + void requestGetAgentState(); - void handleAgentStateResult(const LLSD &pContent, EAgentState pRequestedAgentState); + void handleAgentStateResult(const LLSD &pContent );//, EAgentState pRequestedAgentState); void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); -#endif // XXX_STINSON_AGENT_STATE_DELETE_ME + NavMeshMap mNavMeshMap; |