aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Interfaces
diff options
context:
space:
mode:
authormingchen2008-03-22 23:10:22 +0000
committermingchen2008-03-22 23:10:22 +0000
commit71ca162821ac0e5aae5f91c433b91549ae6d5419 (patch)
treefa2f13c2541075aba6807fcf95364466a785bd51 /OpenSim/Region/Environment/Interfaces
parentImplements llLoopSound(), llStopSound(), and llAdjustSoundVolume(). (diff)
downloadopensim-SC_OLD-71ca162821ac0e5aae5f91c433b91549ae6d5419.zip
opensim-SC_OLD-71ca162821ac0e5aae5f91c433b91549ae6d5419.tar.gz
opensim-SC_OLD-71ca162821ac0e5aae5f91c433b91549ae6d5419.tar.bz2
opensim-SC_OLD-71ca162821ac0e5aae5f91c433b91549ae6d5419.tar.xz
*Moved LandManagement into its own region module (spiffy!)
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Environment/Interfaces/ILandChannel.cs52
-rw-r--r--OpenSim/Region/Environment/Interfaces/ILandObject.cs54
-rw-r--r--OpenSim/Region/Environment/Interfaces/IRegionDataStore.cs3
3 files changed, 107 insertions, 2 deletions
diff --git a/OpenSim/Region/Environment/Interfaces/ILandChannel.cs b/OpenSim/Region/Environment/Interfaces/ILandChannel.cs
new file mode 100644
index 0000000..1e0493f
--- /dev/null
+++ b/OpenSim/Region/Environment/Interfaces/ILandChannel.cs
@@ -0,0 +1,52 @@
1using System;
2using System.Collections.Generic;
3using System.Text;
4
5using libsecondlife;
6using libsecondlife.Packets;
7using OpenSim.Region.Environment.Scenes;
8using OpenSim.Framework;
9
10namespace OpenSim.Region.Environment.Interfaces
11{
12 public interface ILandChannel
13 {
14 bool allowedForcefulBans { get; set; }
15 void IncomingLandObjectsFromStorage(List<LandData> data);
16 void IncomingLandObjectFromStorage(LandData data);
17
18 void NoLandDataFromStorage();
19 ILandObject getLandObject(int x, int y);
20 ILandObject getLandObject(float x, float y);
21 void setPrimsTainted();
22 bool isLandPrimCountTainted();
23 void sendLandUpdate(ScenePresence avatar, bool force);
24 void sendLandUpdate(ScenePresence avatar);
25 void resetAllLandPrimCounts();
26 void addPrimToLandPrimCounts(SceneObjectGroup obj);
27 void removePrimFromLandPrimCounts(SceneObjectGroup obj);
28 void finalizeLandPrimCountUpdate();
29 void updateLandPrimCounts();
30 void performParcelPrimCountUpdate();
31 void updateLandObject(int local_id, LandData newData);
32
33 void sendParcelOverlay(IClientAPI remote_client);
34 void handleParcelPropertiesRequest(int start_x, int start_y, int end_x, int end_y, int sequence_id, bool snap_selection, IClientAPI remote_client);
35 void handleParcelPropertiesUpdateRequest(ParcelPropertiesUpdatePacket packet, IClientAPI remote_client);
36 void handleParcelDivideRequest(int west, int south, int east, int north, IClientAPI remote_client);
37 void handleParcelJoinRequest(int west, int south, int east, int north, IClientAPI remote_client);
38 void handleParcelSelectObjectsRequest(int local_id, int request_type, IClientAPI remote_client);
39 void handleParcelObjectOwnersRequest(int local_id, IClientAPI remote_client);
40
41 void resetSimLandObjects();
42 List<ILandObject> parcelsNearPoint(LLVector3 position);
43 void sendYouAreBannedNotice(ScenePresence avatar);
44 void handleAvatarChangingParcel(ScenePresence avatar, int localLandID, LLUUID regionID);
45 void sendOutNearestBanLine(IClientAPI avatar);
46 void handleSignificantClientMovement(IClientAPI remote_client);
47 void handleAnyClientMovement(ScenePresence avatar);
48 void handleParcelAccessRequest(LLUUID agentID, LLUUID sessionID, uint flags, int sequenceID, int landLocalID, IClientAPI remote_client);
49 void handleParcelAccessUpdateRequest(LLUUID agentID, LLUUID sessionID, uint flags, int landLocalID, List<ParcelManager.ParcelAccessEntry> entries, IClientAPI remote_client);
50
51 }
52}
diff --git a/OpenSim/Region/Environment/Interfaces/ILandObject.cs b/OpenSim/Region/Environment/Interfaces/ILandObject.cs
new file mode 100644
index 0000000..f68fb82
--- /dev/null
+++ b/OpenSim/Region/Environment/Interfaces/ILandObject.cs
@@ -0,0 +1,54 @@
1using System;
2using System.Collections.Generic;
3using System.Text;
4
5using libsecondlife;
6using libsecondlife.Packets;
7using OpenSim.Region.Environment.Scenes;
8
9using OpenSim.Framework;
10
11namespace OpenSim.Region.Environment.Interfaces
12{
13 public interface ILandObject
14 {
15
16 LandData landData { get; set; }
17 bool[,] landBitmap { get; set; }
18 LLUUID regionUUID { get; }
19 bool containsPoint(int x, int y);
20 ILandObject Copy();
21
22
23 void sendLandUpdateToAvatarsOverMe();
24
25 void sendLandProperties(int sequence_id, bool snap_selection, int request_result, IClientAPI remote_client);
26 void updateLandProperties(ParcelPropertiesUpdatePacket packet, IClientAPI remote_client);
27 bool isEitherBannedOrRestricted(LLUUID avatar);
28 bool isBannedFromLand(LLUUID avatar);
29 bool isRestrictedFromLand(LLUUID avatar);
30 void sendLandUpdateToClient(IClientAPI remote_client);
31 ParcelAccessListReplyPacket.ListBlock[] createAccessListArrayByFlag(ParcelManager.AccessList flag);
32 void sendAccessList(LLUUID agentID, LLUUID sessionID, uint flags, int sequenceID, IClientAPI remote_client);
33 void updateAccessList(uint flags, List<ParcelManager.ParcelAccessEntry> entries, IClientAPI remote_client);
34 void updateLandBitmapByteArray();
35 void setLandBitmapFromByteArray();
36 bool[,] getLandBitmap();
37 void forceUpdateLandInfo();
38 void setLandBitmap(bool[,] bitmap);
39
40 bool[,] basicFullRegionLandBitmap();
41 bool[,] getSquareLandBitmap(int start_x, int start_y, int end_x, int end_y);
42 bool[,] modifyLandBitmapSquare(bool[,] land_bitmap, int start_x, int start_y, int end_x, int end_y, bool set_value);
43 bool[,] mergeLandBitmaps(bool[,] bitmap_base, bool[,] bitmap_add);
44 void sendForceObjectSelect(int local_id, int request_type, IClientAPI remote_client);
45 void sendLandObjectOwners(IClientAPI remote_client);
46 void returnObject(SceneObjectGroup obj);
47 void returnLandObjects(int type, LLUUID owner);
48 void resetLandPrimCounts();
49 void addPrimToCount(SceneObjectGroup obj);
50 void removePrimFromCount(SceneObjectGroup obj);
51
52
53 }
54}
diff --git a/OpenSim/Region/Environment/Interfaces/IRegionDataStore.cs b/OpenSim/Region/Environment/Interfaces/IRegionDataStore.cs
index 473897f..c757461 100644
--- a/OpenSim/Region/Environment/Interfaces/IRegionDataStore.cs
+++ b/OpenSim/Region/Environment/Interfaces/IRegionDataStore.cs
@@ -28,7 +28,6 @@
28using System.Collections.Generic; 28using System.Collections.Generic;
29using libsecondlife; 29using libsecondlife;
30using OpenSim.Framework; 30using OpenSim.Framework;
31using OpenSim.Region.Environment.LandManagement;
32using OpenSim.Region.Environment.Scenes; 31using OpenSim.Region.Environment.Scenes;
33 32
34namespace OpenSim.Region.Environment.Interfaces 33namespace OpenSim.Region.Environment.Interfaces
@@ -69,7 +68,7 @@ namespace OpenSim.Region.Environment.Interfaces
69 void StoreTerrain(double[,] terrain, LLUUID regionID); 68 void StoreTerrain(double[,] terrain, LLUUID regionID);
70 double[,] LoadTerrain(LLUUID regionID); 69 double[,] LoadTerrain(LLUUID regionID);
71 70
72 void StoreLandObject(Land Parcel, LLUUID regionUUID); 71 void StoreLandObject(ILandObject Parcel);
73 void RemoveLandObject(LLUUID globalID); 72 void RemoveLandObject(LLUUID globalID);
74 List<LandData> LoadLandObjects(LLUUID regionUUID); 73 List<LandData> LoadLandObjects(LLUUID regionUUID);
75 74