diff options
author | Rider Linden <rider@lindenlab.com> | 2018-01-23 08:54:34 -0800 |
---|---|---|
committer | Rider Linden <rider@lindenlab.com> | 2018-01-23 08:54:34 -0800 |
commit | 1b8c2b5ebbe0d42f147730bc9b6528fa8c6796ce (patch) | |
tree | 577e909cd6f0c620dcda1393fb572100fd4faf7e /indra/newview/llenvironment.h | |
parent | a0c228d84240a80437b63e0a2cd1cee24e8004a0 (diff) |
MAINT-8052: Initial support for new EEP cap
Diffstat (limited to 'indra/newview/llenvironment.h')
-rw-r--r-- | indra/newview/llenvironment.h | 35 |
1 files changed, 27 insertions, 8 deletions
diff --git a/indra/newview/llenvironment.h b/indra/newview/llenvironment.h index 4f8850683e..f5bd9be870 100644 --- a/indra/newview/llenvironment.h +++ b/indra/newview/llenvironment.h @@ -54,6 +54,23 @@ public: static const F32Seconds TRANSITION_DEFAULT; static const F32Seconds TRANSITION_SLOW; + struct EnvironmentInfo + { + EnvironmentInfo(); + + typedef boost::shared_ptr<EnvironmentInfo> ptr_t; + + LLUUID mParcelId; + S64Seconds mDayLength; + S64Seconds mDayOffset; + LLSD mDaycycleData; + LLSD mAltitudes; + bool mIsDefault; + + static ptr_t extract(LLSD); + + }; + enum EnvSelection_t { ENV_LOCAL, @@ -99,7 +116,7 @@ public: typedef std::pair<std::string, LLUUID> name_id_t; typedef std::vector<name_id_t> list_name_id_t; typedef boost::signals2::signal<void()> change_signal_t; - typedef boost::function<void(const LLSD &)> environment_apply_fn; + typedef boost::function<void(S32, EnvironmentInfo::ptr_t)> environment_apply_fn; virtual ~LLEnvironment(); @@ -198,9 +215,11 @@ public: void requestRegion(); void updateRegion(LLSettingsDay::ptr_t &pday, S32 day_length, S32 day_offset); void resetRegion(); - void requestParcel(const LLUUID &parcel_id); - void updateParcel(const LLUUID &parcel_id, LLSettingsDay::ptr_t &pday, S32 day_length, S32 day_offset); - void resetParcel(const LLUUID &parcel_id); + void requestParcel(S32 parcel_id); + void updateParcel(S32 parcel_id, LLSettingsDay::ptr_t &pday, S32 day_length, S32 day_offset); + void resetParcel(S32 parcel_id); + + void selectAgentEnvironment(); protected: virtual void initSingleton(); @@ -280,11 +299,11 @@ private: void onRegionChange(); void onParcelChange(); - void coroRequestEnvironment(LLUUID parcel_id, environment_apply_fn apply); - void coroUpdateEnvironment(LLUUID parcel_id, LLSettingsDay::ptr_t pday, S32 day_length, S32 day_offset, environment_apply_fn apply); - void coroResetEnvironment(LLUUID parcel_id, environment_apply_fn apply); + void coroRequestEnvironment(S32 parcel_id, environment_apply_fn apply); + void coroUpdateEnvironment(S32 parcel_id, LLSettingsDay::ptr_t pday, S32 day_length, S32 day_offset, environment_apply_fn apply); + void coroResetEnvironment(S32 parcel_id, environment_apply_fn apply); - void applyEnvironment(LLSD environment); + void recordEnvironment(S32 parcel_id, EnvironmentInfo::ptr_t environment); //========================================================================= void legacyLoadAllPresets(); |