From 516ad5b3c234321daf01294d6e03bdc4be019d36 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Fri, 17 Feb 2012 19:03:16 -0800 Subject: PATH-292: Implementing the new freeze/unfreeze functionality on the basic panel. --- indra/newview/llpathfindingmanager.h | 71 ++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 indra/newview/llpathfindingmanager.h (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h new file mode 100644 index 0000000000..ef50e2ad6c --- /dev/null +++ b/indra/newview/llpathfindingmanager.h @@ -0,0 +1,71 @@ +/** + * @file llpathfindingmanager.h + * @author William Todd Stinson + * @brief A state manager for the various pathfinding states. + * + * $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_LLPATHFINDINGMANAGER_H +#define LL_LLPATHFINDINGMANAGER_H + +#include + +#include + +#include "llsingleton.h" + +class LLFloater; + +class LLPathfindingManager : public LLSingleton +{ +public: + typedef enum { + kAgentStateNotEnabled = 0, + kAgentStateFrozen = 1, + kAgentStateUnfrozen = 2, + kAgentStateError = 3 + } EAgentState; + + typedef boost::function agent_state_callback_t; + + LLPathfindingManager(); + virtual ~LLPathfindingManager(); + + bool isPathfindingEnabledForCurrentRegion() const; + + void requestGetAgentState(agent_state_callback_t pAgentStateCB) const; + void requestSetAgentState(EAgentState, agent_state_callback_t pAgentStateCB) const; + + void handleAgentStateResult(const LLSD &pContent, agent_state_callback_t pAgentStateCB) const; + void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL, agent_state_callback_t pAgentStateCB) const; + +protected: + +private: + std::string getRetrieveNavMeshURLForCurrentRegion() const; + std::string getAgentStateURLForCurrentRegion() const; + + std::string getCapabilityURLForCurrentRegion(const std::string &pCapabilityName) const; +}; + +#endif // LL_LLPATHFINDINGMANAGER_H -- cgit v1.2.3 From b2782a6f4b1b7b171f93f4139ddc7eda1dc324ac Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Fri, 17 Feb 2012 19:08:40 -0800 Subject: PATH-292: Clarifying and centralizing how the default initial agent state is specified. --- indra/newview/llpathfindingmanager.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index ef50e2ad6c..e8aa8385cf 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -40,10 +40,11 @@ class LLPathfindingManager : public LLSingleton { public: typedef enum { - kAgentStateNotEnabled = 0, - kAgentStateFrozen = 1, - kAgentStateUnfrozen = 2, - kAgentStateError = 3 + kAgentStateNotEnabled = 0, + kAgentStateFrozen = 1, + kAgentStateUnfrozen = 2, + kAgentStateError = 3, + kAgentStateInitialDefault = kAgentStateUnfrozen } EAgentState; typedef boost::function agent_state_callback_t; -- cgit v1.2.3 From 1757f3967874a2885b45e3324bf19f677e76f6bc Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Tue, 21 Feb 2012 18:40:40 -0800 Subject: PATH-296: Refining the behavior of the freeze/unfreeze functionality to support both basic and edit/test pathfinding floaters open at the same time. --- indra/newview/llpathfindingmanager.h | 37 +++++++++++++++++++++++++----------- 1 file changed, 26 insertions(+), 11 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index e8aa8385cf..a9432f9077 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -31,6 +31,7 @@ #include #include +#include #include "llsingleton.h" @@ -38,35 +39,49 @@ class LLFloater; class LLPathfindingManager : public LLSingleton { + friend class AgentStateResponder; public: typedef enum { - kAgentStateNotEnabled = 0, - kAgentStateFrozen = 1, - kAgentStateUnfrozen = 2, - kAgentStateError = 3, - kAgentStateInitialDefault = kAgentStateUnfrozen + kAgentStateUnknown, + kAgentStateFrozen, + kAgentStateUnfrozen, + kAgentStateNotEnabled, + kAgentStateError } EAgentState; - typedef boost::function agent_state_callback_t; + typedef boost::function agent_state_callback_t; + typedef boost::signals2::signal agent_state_signal_t; + typedef boost::signals2::connection agent_state_slot_t; LLPathfindingManager(); virtual ~LLPathfindingManager(); bool isPathfindingEnabledForCurrentRegion() const; - void requestGetAgentState(agent_state_callback_t pAgentStateCB) const; - void requestSetAgentState(EAgentState, agent_state_callback_t pAgentStateCB) const; - - void handleAgentStateResult(const LLSD &pContent, agent_state_callback_t pAgentStateCB) const; - void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL, agent_state_callback_t pAgentStateCB) const; + agent_state_slot_t registerAgentStateSignal(agent_state_callback_t pAgentStateCallback); + EAgentState getAgentState(); + EAgentState getLastKnownNonErrorAgentState() const; + void requestSetAgentState(EAgentState pAgentState); protected: private: + static bool isValidAgentState(EAgentState pAgentState); + + void requestGetAgentState(); + void setAgentState(EAgentState pAgentState); + + void handleAgentStateResult(const LLSD &pContent, EAgentState pRequestedAgentState); + void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); + std::string getRetrieveNavMeshURLForCurrentRegion() const; std::string getAgentStateURLForCurrentRegion() const; std::string getCapabilityURLForCurrentRegion(const std::string &pCapabilityName) const; + + agent_state_signal_t mAgentStateSignal; + EAgentState mAgentState; + EAgentState mLastKnownNonErrorAgentState; }; #endif // LL_LLPATHFINDINGMANAGER_H -- cgit v1.2.3 From 73aa47f391341e6d6ef5136ef73302be689d3e9d Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Thu, 23 Feb 2012 16:51:06 -0800 Subject: PATH-292: Reworking how and where linksets are requested and managed. --- indra/newview/llpathfindingmanager.h | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index a9432f9077..cef2b7c058 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -34,12 +34,15 @@ #include #include "llsingleton.h" +#include "llpathfindinglinkset.h" +#include "llpathfindinglinksetlist.h" class LLFloater; class LLPathfindingManager : public LLSingleton { friend class AgentStateResponder; + friend class LinksetsResponder; public: typedef enum { kAgentStateUnknown, @@ -49,20 +52,34 @@ public: kAgentStateError } EAgentState; - typedef boost::function agent_state_callback_t; - typedef boost::signals2::signal agent_state_signal_t; - typedef boost::signals2::connection agent_state_slot_t; + typedef boost::function agent_state_callback_t; + typedef boost::signals2::signal agent_state_signal_t; + typedef boost::signals2::connection agent_state_slot_t; + + typedef enum { + kLinksetsRequestStarted, + kLinksetsRequestCompleted, + kLinksetsRequestNotEnabled, + kLinksetsRequestError + } ELinksetsRequestStatus; + + typedef boost::function linksets_callback_t; LLPathfindingManager(); virtual ~LLPathfindingManager(); bool isPathfindingEnabledForCurrentRegion() const; + bool isAllowAlterPermanent(); + agent_state_slot_t registerAgentStateSignal(agent_state_callback_t pAgentStateCallback); EAgentState getAgentState(); EAgentState getLastKnownNonErrorAgentState() const; void requestSetAgentState(EAgentState pAgentState); + ELinksetsRequestStatus requestGetLinksets(linksets_callback_t pLinksetsCallback) const; + ELinksetsRequestStatus requestSetLinksets(LLPathfindingLinksetListPtr pLinksetList, LLPathfindingLinkset::ELinksetUse pLinksetUse, S32 pA, S32 pB, S32 pC, S32 pD, linksets_callback_t pLinksetsCallback) const; + protected: private: @@ -70,12 +87,15 @@ private: void requestGetAgentState(); void setAgentState(EAgentState pAgentState); - void handleAgentStateResult(const LLSD &pContent, EAgentState pRequestedAgentState); void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); + void handleLinksetsResult(const LLSD &pContent, linksets_callback_t pLinksetsCallback) const; + void handleLinksetsError(U32 pStatus, const std::string &pReason, const std::string &pURL, linksets_callback_t pLinksetsCallback) const; + std::string getRetrieveNavMeshURLForCurrentRegion() const; std::string getAgentStateURLForCurrentRegion() const; + std::string getLinksetsURLForCurrentRegion() const; std::string getCapabilityURLForCurrentRegion(const std::string &pCapabilityName) const; -- cgit v1.2.3 From 9b06300e2c94eae83a29637073f65d4ffc73bf6d Mon Sep 17 00:00:00 2001 From: William Todd Stinson Date: Sat, 25 Feb 2012 22:27:06 -0800 Subject: PATH-292: Adding the ability to view and edit pathfinding attributes of the terrain. --- indra/newview/llpathfindingmanager.h | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index cef2b7c058..4b6fd49640 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -5,7 +5,7 @@ * * $LicenseInfo:firstyear=2002&license=viewerlgpl$ * Second Life Viewer Source Code - * Copyright (C) 2010, Linden Research, Inc. + * 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 @@ -42,7 +42,6 @@ class LLFloater; class LLPathfindingManager : public LLSingleton { friend class AgentStateResponder; - friend class LinksetsResponder; public: typedef enum { kAgentStateUnknown, @@ -90,12 +89,10 @@ private: void handleAgentStateResult(const LLSD &pContent, EAgentState pRequestedAgentState); void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); - void handleLinksetsResult(const LLSD &pContent, linksets_callback_t pLinksetsCallback) const; - void handleLinksetsError(U32 pStatus, const std::string &pReason, const std::string &pURL, linksets_callback_t pLinksetsCallback) const; - std::string getRetrieveNavMeshURLForCurrentRegion() const; std::string getAgentStateURLForCurrentRegion() const; - std::string getLinksetsURLForCurrentRegion() const; + std::string getObjectLinksetsURLForCurrentRegion() const; + std::string getTerrainLinksetsURLForCurrentRegion() const; std::string getCapabilityURLForCurrentRegion(const std::string &pCapabilityName) const; -- cgit v1.2.3 From 1503338ddcd170871815d70d328cbbd1dfd40c82 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Mon, 27 Feb 2012 16:15:16 -0800 Subject: PATH-292: Ensuring that the terrain linkset is not visible and/or editable to a non-estate non-god agent. --- indra/newview/llpathfindingmanager.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 4b6fd49640..9a6bbb81b9 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -38,6 +38,7 @@ #include "llpathfindinglinksetlist.h" class LLFloater; +class LLViewerRegion; class LLPathfindingManager : public LLSingleton { @@ -70,6 +71,7 @@ public: bool isPathfindingEnabledForCurrentRegion() const; bool isAllowAlterPermanent(); + bool isAllowViewTerrainProperties() const; agent_state_slot_t registerAgentStateSignal(agent_state_callback_t pAgentStateCallback); EAgentState getAgentState(); @@ -95,6 +97,7 @@ private: std::string getTerrainLinksetsURLForCurrentRegion() const; std::string getCapabilityURLForCurrentRegion(const std::string &pCapabilityName) const; + LLViewerRegion *getCurrentRegion() const; agent_state_signal_t mAgentStateSignal; EAgentState mAgentState; -- cgit v1.2.3 From a33e24413ea74aaad91d9eeaa685d1c523c5d210 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Fri, 2 Mar 2012 19:17:16 -0800 Subject: PATH-304,PATH-205: Initial reworking of the navmesh download functionality. --- indra/newview/llpathfindingmanager.h | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 9a6bbb81b9..f034ddb9ea 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -28,15 +28,18 @@ #ifndef LL_LLPATHFINDINGMANAGER_H #define LL_LLPATHFINDINGMANAGER_H +#include "llsingleton.h" +#include "lluuid.h" +#include "llpathfindingnavmesh.h" +#include "llpathfindinglinkset.h" +#include "llpathfindinglinksetlist.h" + #include +#include #include #include -#include "llsingleton.h" -#include "llpathfindinglinkset.h" -#include "llpathfindinglinksetlist.h" - class LLFloater; class LLViewerRegion; @@ -44,6 +47,8 @@ class LLPathfindingManager : public LLSingleton { friend class AgentStateResponder; public: + typedef std::map NavMeshMap; + typedef enum { kAgentStateUnknown, kAgentStateFrozen, @@ -73,7 +78,10 @@ public: bool isAllowAlterPermanent(); bool isAllowViewTerrainProperties() const; - agent_state_slot_t registerAgentStateSignal(agent_state_callback_t pAgentStateCallback); + LLPathfindingNavMesh::navmesh_slot_t registerNavMeshListenerForCurrentRegion(LLPathfindingNavMesh::navmesh_callback_t pNavMeshCallback); + void requestGetNavMeshForCurrentRegion(); + + agent_state_slot_t registerAgentStateListener(agent_state_callback_t pAgentStateCallback); EAgentState getAgentState(); EAgentState getLastKnownNonErrorAgentState() const; void requestSetAgentState(EAgentState pAgentState); @@ -84,6 +92,8 @@ public: protected: private: + LLPathfindingNavMeshPtr getNavMeshForCurrentRegion(); + static bool isValidAgentState(EAgentState pAgentState); void requestGetAgentState(); @@ -96,9 +106,12 @@ private: std::string getObjectLinksetsURLForCurrentRegion() const; std::string getTerrainLinksetsURLForCurrentRegion() const; - std::string getCapabilityURLForCurrentRegion(const std::string &pCapabilityName) const; + std::string getCapabilityURLForCurrentRegion(const std::string &pCapabilityName) const; LLViewerRegion *getCurrentRegion() const; + NavMeshMap mNavMeshMap; + U32 mNavMeshVersionXXX; // XXX stinson 03/02/2012 : a hacky way of doing versions for now + agent_state_signal_t mAgentStateSignal; EAgentState mAgentState; EAgentState mLastKnownNonErrorAgentState; -- cgit v1.2.3 From a0c626fe411336871505c2c414143ae4b2f73259 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Tue, 6 Mar 2012 18:40:37 -0800 Subject: PATH-205,PATH-304: More work to handle downloading of out-of-date navmeshes. --- indra/newview/llpathfindingmanager.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index f034ddb9ea..eb8704e308 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -78,8 +78,8 @@ public: bool isAllowAlterPermanent(); bool isAllowViewTerrainProperties() const; - LLPathfindingNavMesh::navmesh_slot_t registerNavMeshListenerForCurrentRegion(LLPathfindingNavMesh::navmesh_callback_t pNavMeshCallback); - void requestGetNavMeshForCurrentRegion(); + LLPathfindingNavMesh::navmesh_slot_t registerNavMeshListenerForRegion(LLViewerRegion *pRegion, LLPathfindingNavMesh::navmesh_callback_t pNavMeshCallback); + void requestGetNavMeshForRegion(LLViewerRegion *pRegion); agent_state_slot_t registerAgentStateListener(agent_state_callback_t pAgentStateCallback); EAgentState getAgentState(); @@ -92,7 +92,7 @@ public: protected: private: - LLPathfindingNavMeshPtr getNavMeshForCurrentRegion(); + LLPathfindingNavMeshPtr getNavMeshForRegion(LLViewerRegion *pRegion); static bool isValidAgentState(EAgentState pAgentState); @@ -102,11 +102,13 @@ private: void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); std::string getRetrieveNavMeshURLForCurrentRegion() const; + std::string getRetrieveNavMeshURLForRegion(LLViewerRegion *pRegion) const; std::string getAgentStateURLForCurrentRegion() const; std::string getObjectLinksetsURLForCurrentRegion() const; std::string getTerrainLinksetsURLForCurrentRegion() const; std::string getCapabilityURLForCurrentRegion(const std::string &pCapabilityName) const; + std::string getCapabilityURLForRegion(LLViewerRegion *pRegion, const std::string &pCapabilityName) const; LLViewerRegion *getCurrentRegion() const; NavMeshMap mNavMeshMap; -- cgit v1.2.3 From f578181af9cbe3277374578c27487e2e72956079 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Thu, 8 Mar 2012 12:34:11 -0800 Subject: PATH-304: Adding functionality to handle the reloading of out-of-date navmeshes. --- indra/newview/llpathfindingmanager.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index eb8704e308..3e85cb1291 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -80,6 +80,7 @@ public: LLPathfindingNavMesh::navmesh_slot_t registerNavMeshListenerForRegion(LLViewerRegion *pRegion, LLPathfindingNavMesh::navmesh_callback_t pNavMeshCallback); void requestGetNavMeshForRegion(LLViewerRegion *pRegion); + void handleNavMeshUpdate(const LLUUID &pRegionUUID, U32 pNavMeshVersion); agent_state_slot_t registerAgentStateListener(agent_state_callback_t pAgentStateCallback); EAgentState getAgentState(); @@ -92,6 +93,7 @@ public: protected: private: + LLPathfindingNavMeshPtr getNavMeshForRegion(const LLUUID &pRegionUUID); LLPathfindingNavMeshPtr getNavMeshForRegion(LLViewerRegion *pRegion); static bool isValidAgentState(EAgentState pAgentState); -- cgit v1.2.3 From b3197fc12e41bc60e3510d840c67ef98816c3ae8 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Mon, 12 Mar 2012 18:48:40 -0700 Subject: PATH-304: Making the navmesh version information work for both Premium Wilderness regions (old pathfinding simulator build with missing capabilities) as well as the new pathfinding simulator builds with the version services. --- indra/newview/llpathfindingmanager.h | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 3e85cb1291..3a849d0290 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -42,6 +42,7 @@ class LLFloater; class LLViewerRegion; +class LLPathfindingNavMeshStatus; class LLPathfindingManager : public LLSingleton { @@ -74,13 +75,16 @@ public: virtual ~LLPathfindingManager(); bool isPathfindingEnabledForCurrentRegion() const; + bool isPathfindingEnabledForRegion(LLViewerRegion *pRegion) const; bool isAllowAlterPermanent(); bool isAllowViewTerrainProperties() const; LLPathfindingNavMesh::navmesh_slot_t registerNavMeshListenerForRegion(LLViewerRegion *pRegion, LLPathfindingNavMesh::navmesh_callback_t pNavMeshCallback); void requestGetNavMeshForRegion(LLViewerRegion *pRegion); - void handleNavMeshUpdate(const LLUUID &pRegionUUID, U32 pNavMeshVersion); + + void handleNavMeshStatusRequest(const LLPathfindingNavMeshStatus &pNavMeshStatus, LLViewerRegion *pRegion); + void handleNavMeshStatusUpdate(const LLPathfindingNavMeshStatus &pNavMeshStatus); agent_state_slot_t registerAgentStateListener(agent_state_callback_t pAgentStateCallback); EAgentState getAgentState(); @@ -93,6 +97,8 @@ public: protected: private: + void sendRequestGetNavMeshForRegion(LLPathfindingNavMeshPtr navMeshPtr, LLViewerRegion *pRegion, U32 pNavMeshVersion); + LLPathfindingNavMeshPtr getNavMeshForRegion(const LLUUID &pRegionUUID); LLPathfindingNavMeshPtr getNavMeshForRegion(LLViewerRegion *pRegion); @@ -103,7 +109,7 @@ private: void handleAgentStateResult(const LLSD &pContent, EAgentState pRequestedAgentState); void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); - std::string getRetrieveNavMeshURLForCurrentRegion() const; + std::string getNavMeshStatusURLForRegion(LLViewerRegion *pRegion) const; std::string getRetrieveNavMeshURLForRegion(LLViewerRegion *pRegion) const; std::string getAgentStateURLForCurrentRegion() const; std::string getObjectLinksetsURLForCurrentRegion() const; @@ -114,7 +120,6 @@ private: LLViewerRegion *getCurrentRegion() const; NavMeshMap mNavMeshMap; - U32 mNavMeshVersionXXX; // XXX stinson 03/02/2012 : a hacky way of doing versions for now agent_state_signal_t mAgentStateSignal; EAgentState mAgentState; -- cgit v1.2.3 From e1aac3718192d7ce663f9134492b4a12dc1637d0 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Tue, 13 Mar 2012 16:42:07 -0700 Subject: PATH-394: First pass at handling the sim-to-viewer message reporting the change from FROZEN to UNFROZEN state. --- indra/newview/llpathfindingmanager.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 3a849d0290..1cfd870897 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -47,6 +47,7 @@ class LLPathfindingNavMeshStatus; class LLPathfindingManager : public LLSingleton { friend class AgentStateResponder; + friend class LLAgentStateChangeNode; public: typedef std::map NavMeshMap; @@ -108,6 +109,7 @@ private: void setAgentState(EAgentState pAgentState); void handleAgentStateResult(const LLSD &pContent, EAgentState pRequestedAgentState); void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); + void handleAgentStateUpdate(const LLSD &pContent); std::string getNavMeshStatusURLForRegion(LLViewerRegion *pRegion) const; std::string getRetrieveNavMeshURLForRegion(LLViewerRegion *pRegion) const; -- cgit v1.2.3 From d4fb7c99febf07b4eb7f3a9d2eab485e356d1439 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Wed, 14 Mar 2012 14:09:36 -0700 Subject: PATH-302: Adding in status reporting for the simulator navmesh status. Separating the viewer status messaging from the simulator status. --- indra/newview/llpathfindingmanager.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 1cfd870897..b458d6513a 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -77,6 +77,9 @@ public: bool isPathfindingEnabledForCurrentRegion() const; bool isPathfindingEnabledForRegion(LLViewerRegion *pRegion) const; +#ifdef DEPRECATED_UNVERSIONED_NAVMESH + bool isPathfindingNavMeshVersioningEnabledForCurrentRegionXXX() const; +#endif // DEPRECATED_UNVERSIONED_NAVMESH bool isAllowAlterPermanent(); bool isAllowViewTerrainProperties() const; @@ -98,7 +101,7 @@ public: protected: private: - void sendRequestGetNavMeshForRegion(LLPathfindingNavMeshPtr navMeshPtr, LLViewerRegion *pRegion, U32 pNavMeshVersion); + void sendRequestGetNavMeshForRegion(LLPathfindingNavMeshPtr navMeshPtr, LLViewerRegion *pRegion, const LLPathfindingNavMeshStatus &pNavMeshStatus); LLPathfindingNavMeshPtr getNavMeshForRegion(const LLUUID &pRegionUUID); LLPathfindingNavMeshPtr getNavMeshForRegion(LLViewerRegion *pRegion); -- cgit v1.2.3 From 473da43c1bbc20245b3a74c1adc7c92f91d25807 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Tue, 27 Mar 2012 19:05:29 -0700 Subject: Refactoring the characters floater code. --- indra/newview/llpathfindingmanager.h | 31 +++++++++++++++++++------------ 1 file changed, 19 insertions(+), 12 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index b458d6513a..d906a94d44 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -33,6 +33,7 @@ #include "llpathfindingnavmesh.h" #include "llpathfindinglinkset.h" #include "llpathfindinglinksetlist.h" +#include "llpathfindingcharacterlist.h" #include #include @@ -46,8 +47,10 @@ class LLPathfindingNavMeshStatus; class LLPathfindingManager : public LLSingleton { - friend class AgentStateResponder; + friend class LLNavMeshSimStateChangeNode; friend class LLAgentStateChangeNode; + friend class NavMeshStatusResponder; + friend class AgentStateResponder; public: typedef std::map NavMeshMap; @@ -64,13 +67,14 @@ public: typedef boost::signals2::connection agent_state_slot_t; typedef enum { - kLinksetsRequestStarted, - kLinksetsRequestCompleted, - kLinksetsRequestNotEnabled, - kLinksetsRequestError - } ELinksetsRequestStatus; + kRequestStarted, + kRequestCompleted, + kRequestNotEnabled, + kRequestError + } ERequestStatus; - typedef boost::function linksets_callback_t; + typedef boost::function linksets_callback_t; + typedef boost::function characters_callback_t; LLPathfindingManager(); virtual ~LLPathfindingManager(); @@ -87,22 +91,24 @@ public: LLPathfindingNavMesh::navmesh_slot_t registerNavMeshListenerForRegion(LLViewerRegion *pRegion, LLPathfindingNavMesh::navmesh_callback_t pNavMeshCallback); void requestGetNavMeshForRegion(LLViewerRegion *pRegion); - void handleNavMeshStatusRequest(const LLPathfindingNavMeshStatus &pNavMeshStatus, LLViewerRegion *pRegion); - void handleNavMeshStatusUpdate(const LLPathfindingNavMeshStatus &pNavMeshStatus); - agent_state_slot_t registerAgentStateListener(agent_state_callback_t pAgentStateCallback); EAgentState getAgentState(); EAgentState getLastKnownNonErrorAgentState() const; void requestSetAgentState(EAgentState pAgentState); - ELinksetsRequestStatus requestGetLinksets(linksets_callback_t pLinksetsCallback) const; - ELinksetsRequestStatus requestSetLinksets(LLPathfindingLinksetListPtr pLinksetList, LLPathfindingLinkset::ELinksetUse pLinksetUse, S32 pA, S32 pB, S32 pC, S32 pD, linksets_callback_t pLinksetsCallback) const; + ERequestStatus requestGetLinksets(linksets_callback_t pLinksetsCallback) const; + ERequestStatus requestSetLinksets(LLPathfindingLinksetListPtr pLinksetList, LLPathfindingLinkset::ELinksetUse pLinksetUse, S32 pA, S32 pB, S32 pC, S32 pD, linksets_callback_t pLinksetsCallback) const; + + ERequestStatus requestGetCharacters(characters_callback_t pCharactersCallback) const; protected: private: void sendRequestGetNavMeshForRegion(LLPathfindingNavMeshPtr navMeshPtr, LLViewerRegion *pRegion, const LLPathfindingNavMeshStatus &pNavMeshStatus); + void handleNavMeshStatusRequest(const LLPathfindingNavMeshStatus &pNavMeshStatus, LLViewerRegion *pRegion); + void handleNavMeshStatusUpdate(const LLPathfindingNavMeshStatus &pNavMeshStatus); + LLPathfindingNavMeshPtr getNavMeshForRegion(const LLUUID &pRegionUUID); LLPathfindingNavMeshPtr getNavMeshForRegion(LLViewerRegion *pRegion); @@ -119,6 +125,7 @@ private: std::string getAgentStateURLForCurrentRegion() const; 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; -- cgit v1.2.3 From 9d22b22d962321822a6be6a23150e6d5f939cd50 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Thu, 5 Apr 2012 15:59:34 -0700 Subject: PATH-482: BUGFIX Automatically reloading the character and linksets floaters on region crossing. --- indra/newview/llpathfindingmanager.h | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index d906a94d44..795ee88f3d 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -73,8 +73,10 @@ public: kRequestError } ERequestStatus; - typedef boost::function linksets_callback_t; - typedef boost::function characters_callback_t; + typedef U32 request_id_t; + + typedef boost::function linksets_callback_t; + typedef boost::function characters_callback_t; LLPathfindingManager(); virtual ~LLPathfindingManager(); @@ -96,10 +98,10 @@ public: EAgentState getLastKnownNonErrorAgentState() const; void requestSetAgentState(EAgentState pAgentState); - ERequestStatus requestGetLinksets(linksets_callback_t pLinksetsCallback) const; - ERequestStatus requestSetLinksets(LLPathfindingLinksetListPtr pLinksetList, LLPathfindingLinkset::ELinksetUse pLinksetUse, S32 pA, S32 pB, S32 pC, S32 pD, linksets_callback_t pLinksetsCallback) const; + ERequestStatus requestGetLinksets(request_id_t pRequestId, linksets_callback_t pLinksetsCallback) const; + ERequestStatus requestSetLinksets(request_id_t pRequestId, LLPathfindingLinksetListPtr pLinksetList, LLPathfindingLinkset::ELinksetUse pLinksetUse, S32 pA, S32 pB, S32 pC, S32 pD, linksets_callback_t pLinksetsCallback) const; - ERequestStatus requestGetCharacters(characters_callback_t pCharactersCallback) const; + ERequestStatus requestGetCharacters(request_id_t pRequestId, characters_callback_t pCharactersCallback) const; protected: -- cgit v1.2.3 From a72034fa42ebaf7e2f56c4a8cb0f445f12d22fe4 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Tue, 24 Apr 2012 19:23:20 -0700 Subject: PATH-580: BUGFIX Adding functionality to detect when the region's capabilities have not yet been loading and deferring requests for the navmesh query until the capabilities are fully loaded. --- indra/newview/llpathfindingmanager.h | 289 ++++++++++++++++++----------------- 1 file changed, 146 insertions(+), 143 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 795ee88f3d..9797c783b5 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -1,143 +1,146 @@ -/** - * @file llpathfindingmanager.h - * @author William Todd Stinson - * @brief A state manager for the various pathfinding states. - * - * $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_LLPATHFINDINGMANAGER_H -#define LL_LLPATHFINDINGMANAGER_H - -#include "llsingleton.h" -#include "lluuid.h" -#include "llpathfindingnavmesh.h" -#include "llpathfindinglinkset.h" -#include "llpathfindinglinksetlist.h" -#include "llpathfindingcharacterlist.h" - -#include -#include - -#include -#include - -class LLFloater; -class LLViewerRegion; -class LLPathfindingNavMeshStatus; - -class LLPathfindingManager : public LLSingleton -{ - friend class LLNavMeshSimStateChangeNode; - friend class LLAgentStateChangeNode; - friend class NavMeshStatusResponder; - friend class AgentStateResponder; -public: - typedef std::map NavMeshMap; - - typedef enum { - kAgentStateUnknown, - kAgentStateFrozen, - kAgentStateUnfrozen, - kAgentStateNotEnabled, - kAgentStateError - } EAgentState; - - typedef boost::function agent_state_callback_t; - typedef boost::signals2::signal agent_state_signal_t; - typedef boost::signals2::connection agent_state_slot_t; - - typedef enum { - kRequestStarted, - kRequestCompleted, - kRequestNotEnabled, - kRequestError - } ERequestStatus; - - typedef U32 request_id_t; - - typedef boost::function linksets_callback_t; - typedef boost::function characters_callback_t; - - LLPathfindingManager(); - virtual ~LLPathfindingManager(); - - bool isPathfindingEnabledForCurrentRegion() const; - bool isPathfindingEnabledForRegion(LLViewerRegion *pRegion) const; -#ifdef DEPRECATED_UNVERSIONED_NAVMESH - bool isPathfindingNavMeshVersioningEnabledForCurrentRegionXXX() const; -#endif // DEPRECATED_UNVERSIONED_NAVMESH - - bool isAllowAlterPermanent(); - bool isAllowViewTerrainProperties() const; - - LLPathfindingNavMesh::navmesh_slot_t registerNavMeshListenerForRegion(LLViewerRegion *pRegion, LLPathfindingNavMesh::navmesh_callback_t pNavMeshCallback); - void requestGetNavMeshForRegion(LLViewerRegion *pRegion); - - agent_state_slot_t registerAgentStateListener(agent_state_callback_t pAgentStateCallback); - EAgentState getAgentState(); - EAgentState getLastKnownNonErrorAgentState() const; - void requestSetAgentState(EAgentState pAgentState); - - ERequestStatus requestGetLinksets(request_id_t pRequestId, linksets_callback_t pLinksetsCallback) const; - ERequestStatus requestSetLinksets(request_id_t pRequestId, LLPathfindingLinksetListPtr pLinksetList, LLPathfindingLinkset::ELinksetUse pLinksetUse, S32 pA, S32 pB, S32 pC, S32 pD, linksets_callback_t pLinksetsCallback) const; - - ERequestStatus requestGetCharacters(request_id_t pRequestId, characters_callback_t pCharactersCallback) const; - -protected: - -private: - void sendRequestGetNavMeshForRegion(LLPathfindingNavMeshPtr navMeshPtr, LLViewerRegion *pRegion, const LLPathfindingNavMeshStatus &pNavMeshStatus); - - void handleNavMeshStatusRequest(const LLPathfindingNavMeshStatus &pNavMeshStatus, LLViewerRegion *pRegion); - void handleNavMeshStatusUpdate(const LLPathfindingNavMeshStatus &pNavMeshStatus); - - LLPathfindingNavMeshPtr getNavMeshForRegion(const LLUUID &pRegionUUID); - LLPathfindingNavMeshPtr getNavMeshForRegion(LLViewerRegion *pRegion); - - static bool isValidAgentState(EAgentState pAgentState); - - void requestGetAgentState(); - void setAgentState(EAgentState pAgentState); - void handleAgentStateResult(const LLSD &pContent, EAgentState pRequestedAgentState); - void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); - void handleAgentStateUpdate(const LLSD &pContent); - - std::string getNavMeshStatusURLForRegion(LLViewerRegion *pRegion) const; - std::string getRetrieveNavMeshURLForRegion(LLViewerRegion *pRegion) const; - std::string getAgentStateURLForCurrentRegion() const; - 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; - LLViewerRegion *getCurrentRegion() const; - - NavMeshMap mNavMeshMap; - - agent_state_signal_t mAgentStateSignal; - EAgentState mAgentState; - EAgentState mLastKnownNonErrorAgentState; -}; - -#endif // LL_LLPATHFINDINGMANAGER_H +/** + * @file llpathfindingmanager.h + * @author William Todd Stinson + * @brief A state manager for the various pathfinding states. + * + * $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_LLPATHFINDINGMANAGER_H +#define LL_LLPATHFINDINGMANAGER_H + +#include "llsingleton.h" +#include "lluuid.h" +#include "llpathfindingnavmesh.h" +#include "llpathfindinglinkset.h" +#include "llpathfindinglinksetlist.h" +#include "llpathfindingcharacterlist.h" + +#include +#include + +#include +#include + +class LLFloater; +class LLViewerRegion; +class LLPathfindingNavMeshStatus; + +class LLPathfindingManager : public LLSingleton +{ + friend class LLNavMeshSimStateChangeNode; + friend class LLAgentStateChangeNode; + friend class NavMeshStatusResponder; + friend class AgentStateResponder; +public: + typedef std::map NavMeshMap; + + typedef enum { + kAgentStateUnknown, + kAgentStateFrozen, + kAgentStateUnfrozen, + kAgentStateNotEnabled, + kAgentStateError + } EAgentState; + + typedef boost::function agent_state_callback_t; + typedef boost::signals2::signal agent_state_signal_t; + typedef boost::signals2::connection agent_state_slot_t; + + typedef enum { + kRequestStarted, + kRequestCompleted, + kRequestNotEnabled, + kRequestError + } ERequestStatus; + + typedef U32 request_id_t; + + typedef boost::function linksets_callback_t; + typedef boost::function characters_callback_t; + + LLPathfindingManager(); + virtual ~LLPathfindingManager(); + + bool isPathfindingEnabledForCurrentRegion() const; + bool isPathfindingEnabledForRegion(LLViewerRegion *pRegion) const; +#ifdef DEPRECATED_UNVERSIONED_NAVMESH + bool isPathfindingNavMeshVersioningEnabledForCurrentRegionXXX() const; +#endif // DEPRECATED_UNVERSIONED_NAVMESH + + bool isAllowAlterPermanent(); + bool isAllowViewTerrainProperties() const; + + LLPathfindingNavMesh::navmesh_slot_t registerNavMeshListenerForRegion(LLViewerRegion *pRegion, LLPathfindingNavMesh::navmesh_callback_t pNavMeshCallback); + void requestGetNavMeshForRegion(LLViewerRegion *pRegion); + + agent_state_slot_t registerAgentStateListener(agent_state_callback_t pAgentStateCallback); + EAgentState getAgentState(); + EAgentState getLastKnownNonErrorAgentState() const; + void requestSetAgentState(EAgentState pAgentState); + + ERequestStatus requestGetLinksets(request_id_t pRequestId, linksets_callback_t pLinksetsCallback) const; + ERequestStatus requestSetLinksets(request_id_t pRequestId, LLPathfindingLinksetListPtr pLinksetList, LLPathfindingLinkset::ELinksetUse pLinksetUse, S32 pA, S32 pB, S32 pC, S32 pD, linksets_callback_t pLinksetsCallback) const; + + ERequestStatus requestGetCharacters(request_id_t pRequestId, characters_callback_t pCharactersCallback) const; + +protected: + +private: + void sendRequestGetNavMeshForRegion(LLPathfindingNavMeshPtr navMeshPtr, LLViewerRegion *pRegion, const LLPathfindingNavMeshStatus &pNavMeshStatus); + + void handleDeferredGetNavMeshForRegion(const LLUUID &pRegionUUID); + + void handleNavMeshStatusRequest(const LLPathfindingNavMeshStatus &pNavMeshStatus, LLViewerRegion *pRegion); + void handleNavMeshStatusUpdate(const LLPathfindingNavMeshStatus &pNavMeshStatus); + + LLPathfindingNavMeshPtr getNavMeshForRegion(const LLUUID &pRegionUUID); + LLPathfindingNavMeshPtr getNavMeshForRegion(LLViewerRegion *pRegion); + + static bool isValidAgentState(EAgentState pAgentState); + + void requestGetAgentState(); + void setAgentState(EAgentState pAgentState); + void handleAgentStateResult(const LLSD &pContent, EAgentState pRequestedAgentState); + void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); + void handleAgentStateUpdate(const LLSD &pContent); + + std::string getNavMeshStatusURLForRegion(LLViewerRegion *pRegion) const; + std::string getRetrieveNavMeshURLForRegion(LLViewerRegion *pRegion) const; + std::string getAgentStateURLForCurrentRegion() const; + 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; + LLViewerRegion *getCurrentRegion() const; + + NavMeshMap mNavMeshMap; + + agent_state_signal_t mAgentStateSignal; + EAgentState mAgentState; + EAgentState mLastKnownNonErrorAgentState; +}; + +#endif // LL_LLPATHFINDINGMANAGER_H + -- cgit v1.2.3 From 932921766740655de84108970095ca17d24c5829 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Fri, 27 Apr 2012 17:08:33 -0700 Subject: PATH-585: Adding an initial notification for when a server-side automatic unfreeze occurs. --- indra/newview/llpathfindingmanager.h | 1 + 1 file changed, 1 insertion(+) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 9797c783b5..f5d7cd1332 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -123,6 +123,7 @@ private: void handleAgentStateResult(const LLSD &pContent, EAgentState pRequestedAgentState); void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); void handleAgentStateUpdate(const LLSD &pContent); + void handleAgentStateUserNotification(const LLSD &pNotification, const LLSD &pResponse); std::string getNavMeshStatusURLForRegion(LLViewerRegion *pRegion) const; std::string getRetrieveNavMeshURLForRegion(LLViewerRegion *pRegion) const; -- cgit v1.2.3 From 852377c676bc3a8183073e41357499f06f40fb1b Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Tue, 1 May 2012 14:22:58 -0700 Subject: Switching the functionality of the linksets and character request handling to no longer return values directly, but rather to report status only through the callbacks. --- indra/newview/llpathfindingmanager.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index f5d7cd1332..067a2c2515 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -98,10 +98,10 @@ public: EAgentState getLastKnownNonErrorAgentState() const; void requestSetAgentState(EAgentState pAgentState); - ERequestStatus requestGetLinksets(request_id_t pRequestId, linksets_callback_t pLinksetsCallback) const; - ERequestStatus requestSetLinksets(request_id_t pRequestId, LLPathfindingLinksetListPtr pLinksetList, LLPathfindingLinkset::ELinksetUse pLinksetUse, S32 pA, S32 pB, S32 pC, S32 pD, linksets_callback_t pLinksetsCallback) const; + void requestGetLinksets(request_id_t pRequestId, linksets_callback_t pLinksetsCallback) const; + void requestSetLinksets(request_id_t pRequestId, LLPathfindingLinksetListPtr pLinksetList, LLPathfindingLinkset::ELinksetUse pLinksetUse, S32 pA, S32 pB, S32 pC, S32 pD, linksets_callback_t pLinksetsCallback) const; - ERequestStatus requestGetCharacters(request_id_t pRequestId, characters_callback_t pCharactersCallback) const; + void requestGetCharacters(request_id_t pRequestId, characters_callback_t pCharactersCallback) const; protected: -- cgit v1.2.3 From 84d8b320a2dff7a7d34e04d1f5c7fd38d148e5c7 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Tue, 1 May 2012 14:55:53 -0700 Subject: PATH-580: Ensuring that the characters and linksets capability services are properly deferred requested in the case that a regions capabilities have not been fully received at initial request time. --- indra/newview/llpathfindingmanager.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 067a2c2515..ad4dbe9adc 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -109,6 +109,8 @@ private: void sendRequestGetNavMeshForRegion(LLPathfindingNavMeshPtr navMeshPtr, LLViewerRegion *pRegion, const LLPathfindingNavMeshStatus &pNavMeshStatus); void handleDeferredGetNavMeshForRegion(const LLUUID &pRegionUUID); + void handleDeferredGetLinksetsForRegion(const LLUUID &pRegionUUID, request_id_t pRequestId, linksets_callback_t pLinksetsCallback) const; + void handleDeferredGetCharactersForRegion(const LLUUID &pRegionUUID, request_id_t pRequestId, characters_callback_t pCharactersCallback) const; void handleNavMeshStatusRequest(const LLPathfindingNavMeshStatus &pNavMeshStatus, LLViewerRegion *pRegion); void handleNavMeshStatusUpdate(const LLPathfindingNavMeshStatus &pNavMeshStatus); -- cgit v1.2.3 From 3c2be426e5e905076d00b9492c0e66c8b31caf19 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Wed, 30 May 2012 18:47:12 -0700 Subject: First pass at refactoring the pathfinding linksets and pathfinding characters classes to reduce code duplication, as both functionalities were heavily duplicated. --- indra/newview/llpathfindingmanager.h | 31 ++++++++++++++----------------- 1 file changed, 14 insertions(+), 17 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index ad4dbe9adc..172670cdf8 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -28,19 +28,18 @@ #ifndef LL_LLPATHFINDINGMANAGER_H #define LL_LLPATHFINDINGMANAGER_H -#include "llsingleton.h" -#include "lluuid.h" -#include "llpathfindingnavmesh.h" -#include "llpathfindinglinkset.h" -#include "llpathfindinglinksetlist.h" -#include "llpathfindingcharacterlist.h" - #include #include #include #include +#include "llpathfindinglinkset.h" +#include "llpathfindingobjectlist.h" +#include "llpathfindingnavmesh.h" +#include "llsingleton.h" +#include "lluuid.h" + class LLFloater; class LLViewerRegion; class LLPathfindingNavMeshStatus; @@ -73,11 +72,6 @@ public: kRequestError } ERequestStatus; - typedef U32 request_id_t; - - typedef boost::function linksets_callback_t; - typedef boost::function characters_callback_t; - LLPathfindingManager(); virtual ~LLPathfindingManager(); @@ -98,10 +92,13 @@ public: EAgentState getLastKnownNonErrorAgentState() const; void requestSetAgentState(EAgentState pAgentState); - void requestGetLinksets(request_id_t pRequestId, linksets_callback_t pLinksetsCallback) const; - void requestSetLinksets(request_id_t pRequestId, LLPathfindingLinksetListPtr pLinksetList, LLPathfindingLinkset::ELinksetUse pLinksetUse, S32 pA, S32 pB, S32 pC, S32 pD, linksets_callback_t pLinksetsCallback) const; + typedef U32 request_id_t; + typedef boost::function object_request_callback_t; + + void requestGetLinksets(request_id_t pRequestId, object_request_callback_t pLinksetsCallback) const; + void requestSetLinksets(request_id_t pRequestId, const LLPathfindingObjectListPtr &pLinksetListPtr, LLPathfindingLinkset::ELinksetUse pLinksetUse, S32 pA, S32 pB, S32 pC, S32 pD, object_request_callback_t pLinksetsCallback) const; - void requestGetCharacters(request_id_t pRequestId, characters_callback_t pCharactersCallback) const; + void requestGetCharacters(request_id_t pRequestId, object_request_callback_t pCharactersCallback) const; protected: @@ -109,8 +106,8 @@ private: void sendRequestGetNavMeshForRegion(LLPathfindingNavMeshPtr navMeshPtr, LLViewerRegion *pRegion, const LLPathfindingNavMeshStatus &pNavMeshStatus); void handleDeferredGetNavMeshForRegion(const LLUUID &pRegionUUID); - void handleDeferredGetLinksetsForRegion(const LLUUID &pRegionUUID, request_id_t pRequestId, linksets_callback_t pLinksetsCallback) const; - void handleDeferredGetCharactersForRegion(const LLUUID &pRegionUUID, request_id_t pRequestId, characters_callback_t pCharactersCallback) const; + void handleDeferredGetLinksetsForRegion(const LLUUID &pRegionUUID, request_id_t pRequestId, object_request_callback_t pLinksetsCallback) const; + void handleDeferredGetCharactersForRegion(const LLUUID &pRegionUUID, request_id_t pRequestId, object_request_callback_t pCharactersCallback) const; void handleNavMeshStatusRequest(const LLPathfindingNavMeshStatus &pNavMeshStatus, LLViewerRegion *pRegion); void handleNavMeshStatusUpdate(const LLPathfindingNavMeshStatus &pNavMeshStatus); -- cgit v1.2.3 From 3352a1eac15f752535b636866eeb966ec3900c62 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Wed, 30 May 2012 19:39:08 -0700 Subject: Cleaning up some unreferenced headers and classes definitions from previous refactoring. --- indra/newview/llpathfindingmanager.h | 2 -- 1 file changed, 2 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 172670cdf8..3c9af91e7b 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -40,7 +40,6 @@ #include "llsingleton.h" #include "lluuid.h" -class LLFloater; class LLViewerRegion; class LLPathfindingNavMeshStatus; @@ -143,4 +142,3 @@ private: }; #endif // LL_LLPATHFINDINGMANAGER_H - -- cgit v1.2.3 From ff7223fafef58d9f8025e97fee87cf7911d93ccf Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Mon, 11 Jun 2012 14:45:59 -0700 Subject: PATH-706: Removing enforcement on frozen/unfrozen state from the linksets floater. Also, removing handlers for agent state change. --- indra/newview/llpathfindingmanager.h | 1 - 1 file changed, 1 deletion(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 3c9af91e7b..1ae6e06b40 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -80,7 +80,6 @@ public: bool isPathfindingNavMeshVersioningEnabledForCurrentRegionXXX() const; #endif // DEPRECATED_UNVERSIONED_NAVMESH - bool isAllowAlterPermanent(); bool isAllowViewTerrainProperties() const; LLPathfindingNavMesh::navmesh_slot_t registerNavMeshListenerForRegion(LLViewerRegion *pRegion, LLPathfindingNavMesh::navmesh_callback_t pNavMeshCallback); -- cgit v1.2.3 From b912c27bf44a45e607adc3b5c94d3fd8a9bbf53e Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Mon, 11 Jun 2012 16:40:53 -0700 Subject: PATH-711: Implementing Leo's changes for the pathfinding console. --- indra/newview/llpathfindingmanager.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 1ae6e06b40..24b58d1fe9 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -74,12 +74,16 @@ public: LLPathfindingManager(); virtual ~LLPathfindingManager(); + void initSystem(); + bool isPathfindingEnabledForCurrentRegion() const; bool isPathfindingEnabledForRegion(LLViewerRegion *pRegion) const; #ifdef DEPRECATED_UNVERSIONED_NAVMESH bool isPathfindingNavMeshVersioningEnabledForCurrentRegionXXX() const; #endif // DEPRECATED_UNVERSIONED_NAVMESH + bool isPathfindingDebugEnabled() const; + bool isAllowViewTerrainProperties() const; LLPathfindingNavMesh::navmesh_slot_t registerNavMeshListenerForRegion(LLViewerRegion *pRegion, LLPathfindingNavMesh::navmesh_callback_t pNavMeshCallback); -- cgit v1.2.3 From e738e704b88d64b8a0183f94045d229d9f498bd1 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Mon, 11 Jun 2012 17:03:15 -0700 Subject: PATH-714: Removing the DEPRECATED_UNVERSIONED_NAVMESH as the viewer no longer has to support the Premium Wilderness regions on the old server code. --- indra/newview/llpathfindingmanager.h | 3 --- 1 file changed, 3 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 24b58d1fe9..3aafef3565 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -78,9 +78,6 @@ public: bool isPathfindingEnabledForCurrentRegion() const; bool isPathfindingEnabledForRegion(LLViewerRegion *pRegion) const; -#ifdef DEPRECATED_UNVERSIONED_NAVMESH - bool isPathfindingNavMeshVersioningEnabledForCurrentRegionXXX() const; -#endif // DEPRECATED_UNVERSIONED_NAVMESH bool isPathfindingDebugEnabled() const; -- cgit v1.2.3 From 42f3648814923edad8a040620cb3db233597cbb9 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Mon, 11 Jun 2012 18:59:51 -0700 Subject: PATH-705: First pass at removing the agent state functionality. WIP -- still need to remove XXX_STINSON_AGENT_STATE_DELETE_ME ifdef'ed code. --- indra/newview/llpathfindingmanager.h | 49 ++++++++++++------------------------ 1 file changed, 16 insertions(+), 33 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 3aafef3565..40c0e6b140 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -46,24 +46,10 @@ class LLPathfindingNavMeshStatus; class LLPathfindingManager : public LLSingleton { friend class LLNavMeshSimStateChangeNode; - friend class LLAgentStateChangeNode; friend class NavMeshStatusResponder; - friend class AgentStateResponder; public: typedef std::map NavMeshMap; - typedef enum { - kAgentStateUnknown, - kAgentStateFrozen, - kAgentStateUnfrozen, - kAgentStateNotEnabled, - kAgentStateError - } EAgentState; - - typedef boost::function agent_state_callback_t; - typedef boost::signals2::signal agent_state_signal_t; - typedef boost::signals2::connection agent_state_slot_t; - typedef enum { kRequestStarted, kRequestCompleted, @@ -86,11 +72,6 @@ public: LLPathfindingNavMesh::navmesh_slot_t registerNavMeshListenerForRegion(LLViewerRegion *pRegion, LLPathfindingNavMesh::navmesh_callback_t pNavMeshCallback); void requestGetNavMeshForRegion(LLViewerRegion *pRegion); - agent_state_slot_t registerAgentStateListener(agent_state_callback_t pAgentStateCallback); - EAgentState getAgentState(); - EAgentState getLastKnownNonErrorAgentState() const; - void requestSetAgentState(EAgentState pAgentState); - typedef U32 request_id_t; typedef boost::function object_request_callback_t; @@ -99,6 +80,16 @@ 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 agent_state_callback_t; + typedef boost::signals2::signal agent_state_signal_t; + typedef boost::signals2::connection agent_state_slot_t; + + agent_state_slot_t registerAgentStateListener(agent_state_callback_t pAgentStateCallback); +#endif // XXX_STINSON_AGENT_STATE_DELETE_ME + protected: private: @@ -114,18 +105,8 @@ private: LLPathfindingNavMeshPtr getNavMeshForRegion(const LLUUID &pRegionUUID); LLPathfindingNavMeshPtr getNavMeshForRegion(LLViewerRegion *pRegion); - static bool isValidAgentState(EAgentState pAgentState); - - void requestGetAgentState(); - void setAgentState(EAgentState pAgentState); - void handleAgentStateResult(const LLSD &pContent, EAgentState pRequestedAgentState); - void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); - void handleAgentStateUpdate(const LLSD &pContent); - void handleAgentStateUserNotification(const LLSD &pNotification, const LLSD &pResponse); - std::string getNavMeshStatusURLForRegion(LLViewerRegion *pRegion) const; std::string getRetrieveNavMeshURLForRegion(LLViewerRegion *pRegion) const; - std::string getAgentStateURLForCurrentRegion() const; std::string getObjectLinksetsURLForCurrentRegion() const; std::string getTerrainLinksetsURLForCurrentRegion() const; std::string getCharactersURLForCurrentRegion() const; @@ -134,11 +115,13 @@ private: std::string getCapabilityURLForRegion(LLViewerRegion *pRegion, const std::string &pCapabilityName) const; LLViewerRegion *getCurrentRegion() const; - NavMeshMap mNavMeshMap; +#ifdef XXX_STINSON_AGENT_STATE_DELETE_ME + void requestGetAgentState(); + 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 - agent_state_signal_t mAgentStateSignal; - EAgentState mAgentState; - EAgentState mLastKnownNonErrorAgentState; + NavMeshMap mNavMeshMap; }; #endif // LL_LLPATHFINDINGMANAGER_H -- cgit v1.2.3 From de1e1db9600a03ab5b0dc3f04a5bdcee30632f05 Mon Sep 17 00:00:00 2001 From: prep Date: Wed, 13 Jun 2012 10:50:46 -0400 Subject: WIP for path-702. --- indra/newview/llpathfindingmanager.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 40c0e6b140..635179e5a0 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -39,6 +39,8 @@ #include "llpathfindingnavmesh.h" #include "llsingleton.h" #include "lluuid.h" +#include "llpanel.h" +#include "llmoveview.h" class LLViewerRegion; class LLPathfindingNavMeshStatus; @@ -122,6 +124,10 @@ private: #endif // XXX_STINSON_AGENT_STATE_DELETE_ME NavMeshMap mNavMeshMap; + + + BOOL mShowNavMeshRebake; }; + #endif // LL_LLPATHFINDINGMANAGER_H -- cgit v1.2.3 From 7d5c4d20b9f99b3e7d5781433ed6046678292627 Mon Sep 17 00:00:00 2001 From: prep Date: Wed, 13 Jun 2012 13:30:26 -0400 Subject: WIP: path-722. Posting and responders for navmesh rebaking --- indra/newview/llpathfindingmanager.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 635179e5a0..535c681499 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -92,6 +92,9 @@ public: 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); + protected: private: @@ -117,6 +120,11 @@ private: std::string getCapabilityURLForRegion(LLViewerRegion *pRegion, const std::string &pCapabilityName) const; LLViewerRegion *getCurrentRegion() const; + + void displayNavMeshRebakePanel(); + void hideNavMeshRebakePanel(); + void triggerNavMeshRebuild(); + #ifdef XXX_STINSON_AGENT_STATE_DELETE_ME void requestGetAgentState(); void handleAgentStateResult(const LLSD &pContent, EAgentState pRequestedAgentState); -- cgit v1.2.3 From 9767b5a026ba1b442ad1aa438f5957375a997c14 Mon Sep 17 00:00:00 2001 From: prep Date: Wed, 13 Jun 2012 15:31:44 -0400 Subject: Path-722: Reset buttons to default state. --- indra/newview/llpathfindingmanager.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 535c681499..b4bfbc7a34 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -93,7 +93,8 @@ public: #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 handleNavMeshRebakeError( U32 pStatus, const std::string &pReason, const std::string &pURL ); + void triggerNavMeshRebuild(); protected: @@ -123,7 +124,6 @@ private: void displayNavMeshRebakePanel(); void hideNavMeshRebakePanel(); - void triggerNavMeshRebuild(); #ifdef XXX_STINSON_AGENT_STATE_DELETE_ME void requestGetAgentState(); -- cgit v1.2.3 From f6153ab73508ad972827950e0276dfd2a8e79bf1 Mon Sep 17 00:00:00 2001 From: prep Date: Thu, 14 Jun 2012 16:58:11 -0400 Subject: WIP: path-722. Some agent_state_updates come through (god mode), region crossings, cleanup logic is a TBD, etc.. --- indra/newview/llpathfindingmanager.h | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') 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 agent_state_callback_t; - typedef boost::signals2::signal 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; -- cgit v1.2.3 From 43c6d1a2477ade3102396b7dbdc921105adc008c Mon Sep 17 00:00:00 2001 From: prep Date: Fri, 15 Jun 2012 13:00:37 -0400 Subject: path-722: At startup we request the agent status update. --- indra/newview/llpathfindingmanager.h | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 309d7513c6..1de9fd6525 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -98,6 +98,7 @@ public: void handleNavMeshRebakeError( U32 pStatus, const std::string &pReason, const std::string &pURL ); void triggerNavMeshRebuild(); void onRegionBoundaryCrossed(); + void requestGetAgentState(); protected: @@ -129,16 +130,13 @@ private: void displayNavMeshRebakePanel(); void hideNavMeshRebakePanel(); - - - void requestGetAgentState(); - void handleAgentStateResult(const LLSD &pContent );//, EAgentState pRequestedAgentState); + void handleAgentStateResult(const LLSD &pContent ); void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); NavMeshMap mNavMeshMap; - + //prep#stinson# set this flag instead of directly showing/hiding the rebake panel BOOL mShowNavMeshRebake; }; -- cgit v1.2.3 From b59a82fc8ea5a23a886d3eb5d3c27b7c1d97d8d6 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Mon, 18 Jun 2012 17:21:42 -0700 Subject: PATH-705: Creating a path to pull in the state of the current region navmesh without downloading the navmesh binary. --- indra/newview/llpathfindingmanager.h | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 1de9fd6525..a8ece11302 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -63,6 +63,7 @@ public: virtual ~LLPathfindingManager(); void initSystem(); + void quitSystem(); bool isPathfindingEnabledForCurrentRegion() const; bool isPathfindingEnabledForRegion(LLViewerRegion *pRegion) const; @@ -72,7 +73,7 @@ public: bool isAllowViewTerrainProperties() const; LLPathfindingNavMesh::navmesh_slot_t registerNavMeshListenerForRegion(LLViewerRegion *pRegion, LLPathfindingNavMesh::navmesh_callback_t pNavMeshCallback); - void requestGetNavMeshForRegion(LLViewerRegion *pRegion); + void requestGetNavMeshForRegion(LLViewerRegion *pRegion, bool pIsGetStatusOnly); typedef U32 request_id_t; typedef boost::function object_request_callback_t; @@ -89,9 +90,6 @@ public: 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); void handleNavMeshRebakeResult( const LLSD &pContent ); @@ -105,11 +103,11 @@ protected: private: void sendRequestGetNavMeshForRegion(LLPathfindingNavMeshPtr navMeshPtr, LLViewerRegion *pRegion, const LLPathfindingNavMeshStatus &pNavMeshStatus); - void handleDeferredGetNavMeshForRegion(const LLUUID &pRegionUUID); + void handleDeferredGetNavMeshForRegion(const LLUUID &pRegionUUID, bool pIsGetStatusOnly); void handleDeferredGetLinksetsForRegion(const LLUUID &pRegionUUID, request_id_t pRequestId, object_request_callback_t pLinksetsCallback) const; void handleDeferredGetCharactersForRegion(const LLUUID &pRegionUUID, request_id_t pRequestId, object_request_callback_t pCharactersCallback) const; - void handleNavMeshStatusRequest(const LLPathfindingNavMeshStatus &pNavMeshStatus, LLViewerRegion *pRegion); + void handleNavMeshStatusRequest(const LLPathfindingNavMeshStatus &pNavMeshStatus, LLViewerRegion *pRegion, bool pIsGetStatusOnly); void handleNavMeshStatusUpdate(const LLPathfindingNavMeshStatus &pNavMeshStatus); void handleAgentStateUpdate(); @@ -127,17 +125,17 @@ private: std::string getCapabilityURLForRegion(LLViewerRegion *pRegion, const std::string &pCapabilityName) const; LLViewerRegion *getCurrentRegion() const; - + void handleNavMeshStatus(LLPathfindingNavMesh::ENavMeshRequestStatus pRequestStatus, const LLPathfindingNavMeshStatus &pNavMeshStatus); + void displayNavMeshRebakePanel(); void hideNavMeshRebakePanel(); void handleAgentStateResult(const LLSD &pContent ); void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); - - NavMeshMap mNavMeshMap; - - //prep#stinson# set this flag instead of directly showing/hiding the rebake panel - BOOL mShowNavMeshRebake; + NavMeshMap mNavMeshMap; + agent_state_slot_t mCrossingSlot; + agent_state_signal_t mAgentStateSignal; + LLPathfindingNavMesh::navmesh_slot_t mNavMeshSlot; }; -- cgit v1.2.3 From 6711e6584aa0aa5f17f76a557524725857fbf2ba Mon Sep 17 00:00:00 2001 From: prep Date: Tue, 19 Jun 2012 15:09:22 -0400 Subject: path-722: handling the case where region entry or teleporting would cause the rebake button to be drawn ontop of splash screen. --- indra/newview/llpathfindingmanager.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index a8ece11302..dafe75216f 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -96,7 +96,8 @@ public: void handleNavMeshRebakeError( U32 pStatus, const std::string &pReason, const std::string &pURL ); void triggerNavMeshRebuild(); void onRegionBoundaryCrossed(); - void requestGetAgentState(); + void requestGetAgentState(); + void hideNavMeshRebakePanel(); protected: @@ -128,7 +129,6 @@ private: void handleNavMeshStatus(LLPathfindingNavMesh::ENavMeshRequestStatus pRequestStatus, const LLPathfindingNavMeshStatus &pNavMeshStatus); void displayNavMeshRebakePanel(); - void hideNavMeshRebakePanel(); void handleAgentStateResult(const LLSD &pContent ); void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); -- cgit v1.2.3 From f5a5e687b77b70958e2ebb5a21ae4c4de2bc1bd8 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Tue, 19 Jun 2012 18:13:47 -0700 Subject: PATH-702: Tying the status of the rebake button to the status of the navmesh for the current region. --- indra/newview/llpathfindingmanager.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index dafe75216f..21467a0cf8 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -97,7 +97,6 @@ public: void triggerNavMeshRebuild(); void onRegionBoundaryCrossed(); void requestGetAgentState(); - void hideNavMeshRebakePanel(); protected: @@ -128,7 +127,10 @@ private: void handleNavMeshStatus(LLPathfindingNavMesh::ENavMeshRequestStatus pRequestStatus, const LLPathfindingNavMeshStatus &pNavMeshStatus); +#if 0 void displayNavMeshRebakePanel(); + void hideNavMeshRebakePanel(); +#endif void handleAgentStateResult(const LLSD &pContent ); void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); -- cgit v1.2.3 From 37f3a016fcc8b1cf92cdb4c546b1ab25546a527a Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Tue, 19 Jun 2012 18:29:49 -0700 Subject: Removing unused methods and members from the pathfinding manager. --- indra/newview/llpathfindingmanager.h | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 21467a0cf8..2457c18309 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -95,7 +95,6 @@ public: void handleNavMeshRebakeResult( const LLSD &pContent ); void handleNavMeshRebakeError( U32 pStatus, const std::string &pReason, const std::string &pURL ); void triggerNavMeshRebuild(); - void onRegionBoundaryCrossed(); void requestGetAgentState(); protected: @@ -125,8 +124,6 @@ private: std::string getCapabilityURLForRegion(LLViewerRegion *pRegion, const std::string &pCapabilityName) const; LLViewerRegion *getCurrentRegion() const; - void handleNavMeshStatus(LLPathfindingNavMesh::ENavMeshRequestStatus pRequestStatus, const LLPathfindingNavMeshStatus &pNavMeshStatus); - #if 0 void displayNavMeshRebakePanel(); void hideNavMeshRebakePanel(); @@ -134,10 +131,8 @@ private: void handleAgentStateResult(const LLSD &pContent ); void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); - NavMeshMap mNavMeshMap; - agent_state_slot_t mCrossingSlot; - agent_state_signal_t mAgentStateSignal; - LLPathfindingNavMesh::navmesh_slot_t mNavMeshSlot; + NavMeshMap mNavMeshMap; + agent_state_signal_t mAgentStateSignal; }; -- cgit v1.2.3 From b98cbe00fe885cebebe1ec5fd123c969b5d2c29f Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Tue, 19 Jun 2012 19:06:25 -0700 Subject: PATH-702: Refining the behavior of the rebuild navmesh button after it is pushed, and removing unused code. --- indra/newview/llpathfindingmanager.h | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 2457c18309..f77877af08 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -91,12 +91,11 @@ public: typedef boost::signals2::connection agent_state_slot_t; agent_state_slot_t registerAgentStateListener(agent_state_callback_t pAgentStateCallback); - - void handleNavMeshRebakeResult( const LLSD &pContent ); - void handleNavMeshRebakeError( U32 pStatus, const std::string &pReason, const std::string &pURL ); - void triggerNavMeshRebuild(); void requestGetAgentState(); + typedef boost::function rebake_navmesh_callback_t; + void requestRebakeNavMesh(rebake_navmesh_callback_t pRebakeNavMeshCallback); + protected: private: @@ -114,6 +113,7 @@ private: LLPathfindingNavMeshPtr getNavMeshForRegion(const LLUUID &pRegionUUID); LLPathfindingNavMeshPtr getNavMeshForRegion(LLViewerRegion *pRegion); + std::string getNavMeshStatusURLForCurrentRegion() const; std::string getNavMeshStatusURLForRegion(LLViewerRegion *pRegion) const; std::string getRetrieveNavMeshURLForRegion(LLViewerRegion *pRegion) const; std::string getObjectLinksetsURLForCurrentRegion() const; @@ -124,10 +124,6 @@ private: std::string getCapabilityURLForRegion(LLViewerRegion *pRegion, const std::string &pCapabilityName) const; LLViewerRegion *getCurrentRegion() const; -#if 0 - void displayNavMeshRebakePanel(); - void hideNavMeshRebakePanel(); -#endif void handleAgentStateResult(const LLSD &pContent ); void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); @@ -135,5 +131,4 @@ private: agent_state_signal_t mAgentStateSignal; }; - #endif // LL_LLPATHFINDINGMANAGER_H -- cgit v1.2.3 From 37e6aa609f2ccd49e6225bad5186ec6ba49b9cb7 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Tue, 19 Jun 2012 20:09:35 -0700 Subject: PATH-723: Pulling in whether the user has access to view the rebake navmesh button or not. --- indra/newview/llpathfindingmanager.h | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index f77877af08..38e100f74b 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -49,6 +49,8 @@ class LLPathfindingManager : public LLSingleton { friend class LLNavMeshSimStateChangeNode; friend class NavMeshStatusResponder; + friend class LLAgentStateChangeNode; + friend class AgentStateResponder; public: typedef std::map NavMeshMap; @@ -83,12 +85,9 @@ public: void requestGetCharacters(request_id_t pRequestId, object_request_callback_t pCharactersCallback) const; - friend class LLAgentStateChangeNode; - friend class AgentStateResponder; - - 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; + typedef boost::function agent_state_callback_t; + typedef boost::signals2::signal agent_state_signal_t; + typedef boost::signals2::connection agent_state_slot_t; agent_state_slot_t registerAgentStateListener(agent_state_callback_t pAgentStateCallback); void requestGetAgentState(); @@ -101,6 +100,7 @@ protected: private: void sendRequestGetNavMeshForRegion(LLPathfindingNavMeshPtr navMeshPtr, LLViewerRegion *pRegion, const LLPathfindingNavMeshStatus &pNavMeshStatus); + void handleDeferredGetAgentStateForRegion(const LLUUID &pRegionUUID); void handleDeferredGetNavMeshForRegion(const LLUUID &pRegionUUID, bool pIsGetStatusOnly); void handleDeferredGetLinksetsForRegion(const LLUUID &pRegionUUID, request_id_t pRequestId, object_request_callback_t pLinksetsCallback) const; void handleDeferredGetCharactersForRegion(const LLUUID &pRegionUUID, request_id_t pRequestId, object_request_callback_t pCharactersCallback) const; @@ -108,7 +108,7 @@ private: void handleNavMeshStatusRequest(const LLPathfindingNavMeshStatus &pNavMeshStatus, LLViewerRegion *pRegion, bool pIsGetStatusOnly); void handleNavMeshStatusUpdate(const LLPathfindingNavMeshStatus &pNavMeshStatus); - void handleAgentStateUpdate(); + void handleAgentState(BOOL pCanRebakeRegion); LLPathfindingNavMeshPtr getNavMeshForRegion(const LLUUID &pRegionUUID); LLPathfindingNavMeshPtr getNavMeshForRegion(LLViewerRegion *pRegion); @@ -119,14 +119,11 @@ private: std::string getObjectLinksetsURLForCurrentRegion() const; std::string getTerrainLinksetsURLForCurrentRegion() const; std::string getCharactersURLForCurrentRegion() const; - std::string getAgentStateURLForCurrentRegion(LLViewerRegion *pRegion) const; + std::string getAgentStateURLForRegion(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 handleAgentStateResult(const LLSD &pContent ); - void handleAgentStateError(U32 pStatus, const std::string &pReason, const std::string &pURL); - NavMeshMap mNavMeshMap; agent_state_signal_t mAgentStateSignal; }; -- cgit v1.2.3 From fb1fa8434a1a84105f67e72fdf72d300be2951bb Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Wed, 20 Jun 2012 19:46:28 -0700 Subject: PATH-761: Implementing the new design for the pathfinding view floater. --- indra/newview/llpathfindingmanager.h | 2 -- 1 file changed, 2 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 38e100f74b..5fa2b94def 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -70,8 +70,6 @@ public: bool isPathfindingEnabledForCurrentRegion() const; bool isPathfindingEnabledForRegion(LLViewerRegion *pRegion) const; - bool isPathfindingDebugEnabled() const; - bool isAllowViewTerrainProperties() const; LLPathfindingNavMesh::navmesh_slot_t registerNavMeshListenerForRegion(LLViewerRegion *pRegion, LLPathfindingNavMesh::navmesh_callback_t pNavMeshCallback); -- cgit v1.2.3 From c9fea8b43cfb50d1e8406ea87f47c51daea7cef1 Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Mon, 25 Jun 2012 18:17:56 -0700 Subject: PATH-718: Disabling the view/test menu in the case of a stubbed llphysicsextensions library. --- indra/newview/llpathfindingmanager.h | 1 + 1 file changed, 1 insertion(+) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 5fa2b94def..9aa3065d89 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -67,6 +67,7 @@ public: void initSystem(); void quitSystem(); + bool isPathfindingViewEnabled() const; bool isPathfindingEnabledForCurrentRegion() const; bool isPathfindingEnabledForRegion(LLViewerRegion *pRegion) const; -- cgit v1.2.3 From 78910cf3016fc55eaf8214640b348df0f8bcdeda Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Tue, 26 Jun 2012 18:04:19 -0700 Subject: Updating the header licensing comments. --- indra/newview/llpathfindingmanager.h | 53 ++++++++++++++++++------------------ 1 file changed, 26 insertions(+), 27 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 9aa3065d89..65589fe3a0 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -1,30 +1,29 @@ -/** - * @file llpathfindingmanager.h - * @author William Todd Stinson - * @brief A state manager for the various pathfinding states. - * - * $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$ - */ - +/** +* @file llpathfindingmanager.h +* @brief Header file for llpathfindingmanager +* @author Stinson@lindenlab.com +* +* $LicenseInfo:firstyear=2012&license=viewerlgpl$ +* Second Life Viewer Source Code +* Copyright (C) 2012, 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_LLPATHFINDINGMANAGER_H #define LL_LLPATHFINDINGMANAGER_H -- cgit v1.2.3 From 685a672b74550ca0dbf8a816257c84c9c44fd34d Mon Sep 17 00:00:00 2001 From: Todd Stinson Date: Thu, 28 Jun 2012 15:37:55 -0700 Subject: Cleaning up new files in preparation for merge into viewer-release. --- indra/newview/llpathfindingmanager.h | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h index 65589fe3a0..c61ff244fc 100644 --- a/indra/newview/llpathfindingmanager.h +++ b/indra/newview/llpathfindingmanager.h @@ -37,12 +37,10 @@ #include "llpathfindingobjectlist.h" #include "llpathfindingnavmesh.h" #include "llsingleton.h" -#include "lluuid.h" -#include "llpanel.h" -#include "llmoveview.h" -class LLViewerRegion; class LLPathfindingNavMeshStatus; +class LLUUID; +class LLViewerRegion; class LLPathfindingManager : public LLSingleton { @@ -51,8 +49,6 @@ class LLPathfindingManager : public LLSingleton friend class LLAgentStateChangeNode; friend class AgentStateResponder; public: - typedef std::map NavMeshMap; - typedef enum { kRequestStarted, kRequestCompleted, @@ -96,6 +92,8 @@ public: protected: private: + typedef std::map NavMeshMap; + void sendRequestGetNavMeshForRegion(LLPathfindingNavMeshPtr navMeshPtr, LLViewerRegion *pRegion, const LLPathfindingNavMeshStatus &pNavMeshStatus); void handleDeferredGetAgentStateForRegion(const LLUUID &pRegionUUID); -- cgit v1.2.3 From bf6182daa8b4d7cea79310547f71d7a3155e17b0 Mon Sep 17 00:00:00 2001 From: Graham Madarasz Date: Fri, 29 Mar 2013 07:50:08 -0700 Subject: Update Mac and Windows breakpad builds to latest --- indra/newview/llpathfindingmanager.h | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 indra/newview/llpathfindingmanager.h (limited to 'indra/newview/llpathfindingmanager.h') diff --git a/indra/newview/llpathfindingmanager.h b/indra/newview/llpathfindingmanager.h old mode 100644 new mode 100755 -- cgit v1.2.3