diff options
Diffstat (limited to 'OpenSim/Region/Framework/Interfaces')
16 files changed, 371 insertions, 46 deletions
diff --git a/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs b/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs new file mode 100644 index 0000000..958847b --- /dev/null +++ b/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs | |||
@@ -0,0 +1,140 @@ | |||
1 | /* | ||
2 | * Copyright (c) Contributors, http://opensimulator.org/ | ||
3 | * See CONTRIBUTORS.TXT for a full list of copyright holders. | ||
4 | * | ||
5 | * Redistribution and use in source and binary forms, with or without | ||
6 | * modification, are permitted provided that the following conditions are met: | ||
7 | * * Redistributions of source code must retain the above copyright | ||
8 | * notice, this list of conditions and the following disclaimer. | ||
9 | * * Redistributions in binary form must reproduce the above copyright | ||
10 | * notice, this list of conditions and the following disclaimer in the | ||
11 | * documentation and/or other materials provided with the distribution. | ||
12 | * * Neither the name of the OpenSim Project nor the | ||
13 | * names of its contributors may be used to endorse or promote products | ||
14 | * derived from this software without specific prior written permission. | ||
15 | * | ||
16 | * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY | ||
17 | * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | ||
18 | * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | ||
19 | * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY | ||
20 | * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
21 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | ||
22 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND | ||
23 | * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
24 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | ||
25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
26 | */ | ||
27 | |||
28 | using System; | ||
29 | using System.Xml; | ||
30 | using OpenMetaverse; | ||
31 | using OpenMetaverse.Packets; | ||
32 | using OpenSim.Framework; | ||
33 | using OpenSim.Region.Framework.Scenes; | ||
34 | |||
35 | namespace OpenSim.Region.Framework.Interfaces | ||
36 | { | ||
37 | public interface IAttachmentsModule | ||
38 | { | ||
39 | /// <summary> | ||
40 | /// Attach an object to an avatar from the world. | ||
41 | /// </summary> | ||
42 | /// <param name="controllingClient"></param> | ||
43 | /// <param name="localID"></param> | ||
44 | /// <param name="attachPoint"></param> | ||
45 | /// <param name="rot"></param> | ||
46 | /// <param name="silent"></param> | ||
47 | void AttachObject( | ||
48 | IClientAPI remoteClient, uint objectLocalID, uint AttachmentPt, Quaternion rot, bool silent); | ||
49 | |||
50 | /// <summary> | ||
51 | /// Attach an object to an avatar. | ||
52 | /// </summary> | ||
53 | /// <param name="controllingClient"></param> | ||
54 | /// <param name="localID"></param> | ||
55 | /// <param name="attachPoint"></param> | ||
56 | /// <param name="rot"></param> | ||
57 | /// <param name="attachPos"></param> | ||
58 | /// <param name="silent"></param> | ||
59 | /// <returns>true if the object was successfully attached, false otherwise</returns> | ||
60 | bool AttachObject( | ||
61 | IClientAPI remoteClient, uint objectLocalID, uint AttachmentPt, Quaternion rot, Vector3 attachPos, bool silent); | ||
62 | |||
63 | /// <summary> | ||
64 | /// Rez an attachment from user inventory and change inventory status to match. | ||
65 | /// </summary> | ||
66 | /// <param name="remoteClient"></param> | ||
67 | /// <param name="itemID"></param> | ||
68 | /// <param name="AttachmentPt"></param> | ||
69 | /// <returns>The scene object that was attached. Null if the scene object could not be found</returns> | ||
70 | UUID RezSingleAttachmentFromInventory(IClientAPI remoteClient, UUID itemID, uint AttachmentPt); | ||
71 | |||
72 | /// <summary> | ||
73 | /// Rez an attachment from user inventory | ||
74 | /// </summary> | ||
75 | /// <param name="remoteClient"></param> | ||
76 | /// <param name="itemID"></param> | ||
77 | /// <param name="AttachmentPt"></param> | ||
78 | /// <param name="updateinventoryStatus"> | ||
79 | /// If true, we also update the user's inventory to show that the attachment is set. If false, we do not. | ||
80 | /// False is required so that we don't attempt to update information when a user enters a scene with the | ||
81 | /// attachment already correctly set up in inventory. | ||
82 | /// <returns>The uuid of the scene object that was attached. Null if the scene object could not be found</returns> | ||
83 | UUID RezSingleAttachmentFromInventory( | ||
84 | IClientAPI remoteClient, UUID itemID, uint AttachmentPt, bool updateInventoryStatus); | ||
85 | |||
86 | // Same as above, but also load script states from a separate doc | ||
87 | UUID RezSingleAttachmentFromInventory( | ||
88 | IClientAPI remoteClient, UUID itemID, uint AttachmentPt, bool updateInventoryStatus, XmlDocument doc); | ||
89 | |||
90 | /// <summary> | ||
91 | /// Rez multiple attachments from a user's inventory | ||
92 | /// </summary> | ||
93 | /// <param name="remoteClient"></param> | ||
94 | /// <param name="header"></param> | ||
95 | /// <param name="objects"></param> | ||
96 | void RezMultipleAttachmentsFromInventory( | ||
97 | IClientAPI remoteClient, | ||
98 | RezMultipleAttachmentsFromInvPacket.HeaderDataBlock header, | ||
99 | RezMultipleAttachmentsFromInvPacket.ObjectDataBlock[] objects); | ||
100 | |||
101 | /// <summary> | ||
102 | /// Detach an object from the avatar. | ||
103 | /// </summary> | ||
104 | /// | ||
105 | /// This method is called in response to a client's detach request, so we only update the information in | ||
106 | /// inventory | ||
107 | /// <param name="objectLocalID"></param> | ||
108 | /// <param name="remoteClient"></param> | ||
109 | void DetachObject(uint objectLocalID, IClientAPI remoteClient); | ||
110 | |||
111 | /// <summary> | ||
112 | /// Detach the given item to the ground. | ||
113 | /// </summary> | ||
114 | /// <param name="itemID"></param> | ||
115 | /// <param name="remoteClient"></param> | ||
116 | void DetachSingleAttachmentToGround(UUID itemID, IClientAPI remoteClient); | ||
117 | |||
118 | /// <summary> | ||
119 | /// Update the user inventory to the attachment of an item | ||
120 | /// </summary> | ||
121 | /// <param name="att"></param> | ||
122 | /// <param name="remoteClient"></param> | ||
123 | /// <param name="itemID"></param> | ||
124 | /// <param name="AttachmentPt"></param> | ||
125 | /// <returns></returns> | ||
126 | UUID SetAttachmentInventoryStatus( | ||
127 | SceneObjectGroup att, IClientAPI remoteClient, UUID itemID, uint AttachmentPt); | ||
128 | |||
129 | /// <summary> | ||
130 | /// Update the user inventory to show a detach. | ||
131 | /// </summary> | ||
132 | /// <param name="itemID"> | ||
133 | /// A <see cref="UUID"/> | ||
134 | /// </param> | ||
135 | /// <param name="remoteClient"> | ||
136 | /// A <see cref="IClientAPI"/> | ||
137 | /// </param> | ||
138 | void ShowDetachInUserInventory(UUID itemID, IClientAPI remoteClient); | ||
139 | } | ||
140 | } | ||
diff --git a/OpenSim/Region/Framework/Interfaces/IDialogModule.cs b/OpenSim/Region/Framework/Interfaces/IDialogModule.cs index ce57c44..be9764a 100644 --- a/OpenSim/Region/Framework/Interfaces/IDialogModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IDialogModule.cs | |||
@@ -120,16 +120,8 @@ namespace OpenSim.Region.Framework.Interfaces | |||
120 | void SendNotificationToUsersInRegion(UUID fromAvatarID, string fromAvatarName, string message); | 120 | void SendNotificationToUsersInRegion(UUID fromAvatarID, string fromAvatarName, string message); |
121 | 121 | ||
122 | /// <summary> | 122 | /// <summary> |
123 | /// Send a notification to all users in the estate. This notification should remain around until the | 123 | /// Send a textbox entry for the client to respond to |
124 | /// user explicitly dismisses it. | ||
125 | /// </summary> | 124 | /// </summary> |
126 | /// | 125 | void SendTextBoxToUser(UUID avatarid, string message, int chatChannel, string name, UUID objectid, UUID ownerid); |
127 | /// On the Linden Labs Second Client (as of 1.21), this is a big blue box message on the upper right of the | ||
128 | /// screen. | ||
129 | /// | ||
130 | /// <param name="fromAvatarID">The user sending the message</param> | ||
131 | /// <param name="fromAvatarName">The name of the user doing the sending</param> | ||
132 | /// <param name="message">The message being sent to the user</param> | ||
133 | void SendNotificationToUsersInEstate(UUID fromAvatarID, string fromAvatarName, string message); | ||
134 | } | 126 | } |
135 | } | 127 | } |
diff --git a/OpenSim/Region/Framework/Interfaces/IEntityInventory.cs b/OpenSim/Region/Framework/Interfaces/IEntityInventory.cs index 16ca3f9..1e2f60b 100644 --- a/OpenSim/Region/Framework/Interfaces/IEntityInventory.cs +++ b/OpenSim/Region/Framework/Interfaces/IEntityInventory.cs | |||
@@ -73,6 +73,9 @@ namespace OpenSim.Region.Framework.Interfaces | |||
73 | /// </summary> | 73 | /// </summary> |
74 | void CreateScriptInstances(int startParam, bool postOnRez, string engine, int stateSource); | 74 | void CreateScriptInstances(int startParam, bool postOnRez, string engine, int stateSource); |
75 | 75 | ||
76 | ArrayList GetScriptErrors(UUID itemID); | ||
77 | void ResumeScripts(); | ||
78 | |||
76 | /// <summary> | 79 | /// <summary> |
77 | /// Stop all the scripts in this entity. | 80 | /// Stop all the scripts in this entity. |
78 | /// </summary> | 81 | /// </summary> |
@@ -160,6 +163,7 @@ namespace OpenSim.Region.Framework.Interfaces | |||
160 | /// in this prim's inventory.</param> | 163 | /// in this prim's inventory.</param> |
161 | /// <returns>false if the item did not exist, true if the update occurred successfully</returns> | 164 | /// <returns>false if the item did not exist, true if the update occurred successfully</returns> |
162 | bool UpdateInventoryItem(TaskInventoryItem item); | 165 | bool UpdateInventoryItem(TaskInventoryItem item); |
166 | bool UpdateInventoryItem(TaskInventoryItem item, bool fireScriptEvents); | ||
163 | 167 | ||
164 | /// <summary> | 168 | /// <summary> |
165 | /// Remove an item from this entity's inventory | 169 | /// Remove an item from this entity's inventory |
@@ -212,5 +216,6 @@ namespace OpenSim.Region.Framework.Interfaces | |||
212 | /// A <see cref="Dictionary`2"/> | 216 | /// A <see cref="Dictionary`2"/> |
213 | /// </returns> | 217 | /// </returns> |
214 | Dictionary<UUID, string> GetScriptStates(); | 218 | Dictionary<UUID, string> GetScriptStates(); |
219 | Dictionary<UUID, string> GetScriptStates(bool oldIDs); | ||
215 | } | 220 | } |
216 | } | 221 | } |
diff --git a/OpenSim/Region/Framework/Interfaces/IEntityTransferModule.cs b/OpenSim/Region/Framework/Interfaces/IEntityTransferModule.cs new file mode 100644 index 0000000..e8738c4 --- /dev/null +++ b/OpenSim/Region/Framework/Interfaces/IEntityTransferModule.cs | |||
@@ -0,0 +1,60 @@ | |||
1 | /* | ||
2 | * Copyright (c) Contributors, http://opensimulator.org/ | ||
3 | * See CONTRIBUTORS.TXT for a full list of copyright holders. | ||
4 | * | ||
5 | * Redistribution and use in source and binary forms, with or without | ||
6 | * modification, are permitted provided that the following conditions are met: | ||
7 | * * Redistributions of source code must retain the above copyright | ||
8 | * notice, this list of conditions and the following disclaimer. | ||
9 | * * Redistributions in binary form must reproduce the above copyright | ||
10 | * notice, this list of conditions and the following disclaimer in the | ||
11 | * documentation and/or other materials provided with the distribution. | ||
12 | * * Neither the name of the OpenSimulator Project nor the | ||
13 | * names of its contributors may be used to endorse or promote products | ||
14 | * derived from this software without specific prior written permission. | ||
15 | * | ||
16 | * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY | ||
17 | * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | ||
18 | * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | ||
19 | * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY | ||
20 | * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
21 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | ||
22 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND | ||
23 | * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
24 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | ||
25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
26 | */ | ||
27 | |||
28 | using System; | ||
29 | using OpenSim.Services.Interfaces; | ||
30 | using GridRegion = OpenSim.Services.Interfaces.GridRegion; | ||
31 | |||
32 | using OpenMetaverse; | ||
33 | using OpenSim.Framework; | ||
34 | using OpenSim.Region.Framework.Scenes; | ||
35 | |||
36 | namespace OpenSim.Region.Framework.Interfaces | ||
37 | { | ||
38 | public interface IEntityTransferModule | ||
39 | { | ||
40 | void Teleport(ScenePresence agent, ulong regionHandle, Vector3 position, | ||
41 | Vector3 lookAt, uint teleportFlags); | ||
42 | |||
43 | void TeleportHome(UUID id, IClientAPI client); | ||
44 | |||
45 | void Cross(ScenePresence agent, bool isFlying); | ||
46 | |||
47 | void AgentArrivedAtDestination(UUID agent); | ||
48 | |||
49 | void EnableChildAgents(ScenePresence agent); | ||
50 | |||
51 | void EnableChildAgent(ScenePresence agent, GridRegion region); | ||
52 | |||
53 | void Cross(SceneObjectGroup sog, Vector3 position, bool silent); | ||
54 | } | ||
55 | |||
56 | public interface IUserAgentVerificationModule | ||
57 | { | ||
58 | bool VerifyClient(AgentCircuitData aCircuit, string token); | ||
59 | } | ||
60 | } | ||
diff --git a/OpenSim/Region/Framework/Interfaces/IEstateDataStore.cs b/OpenSim/Region/Framework/Interfaces/IEstateDataStore.cs index 668ff98..87c7a05 100644 --- a/OpenSim/Region/Framework/Interfaces/IEstateDataStore.cs +++ b/OpenSim/Region/Framework/Interfaces/IEstateDataStore.cs | |||
@@ -25,6 +25,7 @@ | |||
25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
26 | */ | 26 | */ |
27 | 27 | ||
28 | using System.Collections.Generic; | ||
28 | using OpenMetaverse; | 29 | using OpenMetaverse; |
29 | using OpenSim.Framework; | 30 | using OpenSim.Framework; |
30 | 31 | ||
@@ -34,7 +35,12 @@ namespace OpenSim.Region.Framework.Interfaces | |||
34 | { | 35 | { |
35 | void Initialise(string connectstring); | 36 | void Initialise(string connectstring); |
36 | 37 | ||
37 | EstateSettings LoadEstateSettings(UUID regionID); | 38 | EstateSettings LoadEstateSettings(UUID regionID, bool create); |
39 | EstateSettings LoadEstateSettings(int estateID); | ||
38 | void StoreEstateSettings(EstateSettings es); | 40 | void StoreEstateSettings(EstateSettings es); |
41 | List<int> GetEstates(string search); | ||
42 | bool LinkRegion(UUID regionID, int estateID); | ||
43 | List<UUID> GetRegions(int estateID); | ||
44 | bool DeleteEstate(int estateID); | ||
39 | } | 45 | } |
40 | } | 46 | } |
diff --git a/OpenSim/Region/Framework/Interfaces/IEstateModule.cs b/OpenSim/Region/Framework/Interfaces/IEstateModule.cs index 890fa31..c850f7f 100644 --- a/OpenSim/Region/Framework/Interfaces/IEstateModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IEstateModule.cs | |||
@@ -29,8 +29,15 @@ using OpenMetaverse; | |||
29 | 29 | ||
30 | namespace OpenSim.Region.Framework.Interfaces | 30 | namespace OpenSim.Region.Framework.Interfaces |
31 | { | 31 | { |
32 | public delegate void ChangeDelegate(UUID regionID); | ||
33 | public delegate void MessageDelegate(UUID regionID, UUID fromID, string fromName, string message); | ||
34 | |||
32 | public interface IEstateModule : IRegionModule | 35 | public interface IEstateModule : IRegionModule |
33 | { | 36 | { |
37 | event ChangeDelegate OnRegionInfoChange; | ||
38 | event ChangeDelegate OnEstateInfoChange; | ||
39 | event MessageDelegate OnEstateMessage; | ||
40 | |||
34 | uint GetRegionFlags(); | 41 | uint GetRegionFlags(); |
35 | bool IsManager(UUID avatarID); | 42 | bool IsManager(UUID avatarID); |
36 | 43 | ||
diff --git a/OpenSim/Region/Framework/Interfaces/IFriendsModule.cs b/OpenSim/Region/Framework/Interfaces/IFriendsModule.cs index 8386030..0ff7dee 100644 --- a/OpenSim/Region/Framework/Interfaces/IFriendsModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IFriendsModule.cs | |||
@@ -33,19 +33,7 @@ namespace OpenSim.Region.Framework.Interfaces | |||
33 | { | 33 | { |
34 | public interface IFriendsModule | 34 | public interface IFriendsModule |
35 | { | 35 | { |
36 | /// <summary> | 36 | uint GetFriendPerms(UUID PrincipalID, UUID FriendID); |
37 | /// Offer a friendship to a user from the server end rather than by direct initiation from a client. | 37 | void SendFriendsOnlineIfNeeded(IClientAPI client); |
38 | /// </summary> | ||
39 | /// <param name="fromUserId"> | ||
40 | /// A user with this id must existing in the user data store, but need not be logged on. | ||
41 | /// </param> | ||
42 | /// <param name="toUserClient"> | ||
43 | /// An actually logged in client to which the offer is being made. | ||
44 | /// FIXME: This is somewhat too tightly coupled - it should arguably be possible to offer friendships even if the | ||
45 | /// receiving user is not currently online. | ||
46 | /// </param> | ||
47 | /// <param name="offerMessage"></param> | ||
48 | void OfferFriendship(UUID fromUserId, IClientAPI toUserClient, string offerMessage); | ||
49 | List<FriendListItem> GetUserFriends(UUID agentID); | ||
50 | } | 38 | } |
51 | } | 39 | } |
diff --git a/OpenSim/Region/Framework/Interfaces/IGroupsMessagingModule.cs b/OpenSim/Region/Framework/Interfaces/IGroupsMessagingModule.cs new file mode 100644 index 0000000..f158236 --- /dev/null +++ b/OpenSim/Region/Framework/Interfaces/IGroupsMessagingModule.cs | |||
@@ -0,0 +1,73 @@ | |||
1 | /* | ||
2 | * Copyright (c) Contributors, http://opensimulator.org/ | ||
3 | * See CONTRIBUTORS.TXT for a full list of copyright holders. | ||
4 | * | ||
5 | * Redistribution and use in source and binary forms, with or without | ||
6 | * modification, are permitted provided that the following conditions are met: | ||
7 | * * Redistributions of source code must retain the above copyright | ||
8 | * notice, this list of conditions and the following disclaimer. | ||
9 | * * Redistributions in binary form must reproduce the above copyright | ||
10 | * notice, this list of conditions and the following disclaimer in the | ||
11 | * documentation and/or other materials provided with the distribution. | ||
12 | * * Neither the name of the OpenSimulator Project nor the | ||
13 | * names of its contributors may be used to endorse or promote products | ||
14 | * derived from this software without specific prior written permission. | ||
15 | * | ||
16 | * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY | ||
17 | * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | ||
18 | * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | ||
19 | * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY | ||
20 | * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||
21 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | ||
22 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND | ||
23 | * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
24 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | ||
25 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
26 | */ | ||
27 | |||
28 | using OpenMetaverse; | ||
29 | using OpenSim.Framework; | ||
30 | |||
31 | namespace OpenSim.Region.Framework.Interfaces | ||
32 | { | ||
33 | /// <summary> | ||
34 | /// Provide mechanisms for messaging groups. | ||
35 | /// </summary> | ||
36 | /// | ||
37 | /// TODO: Provide a mechanism for receiving group messages as well as sending them | ||
38 | /// | ||
39 | public interface IGroupsMessagingModule | ||
40 | { | ||
41 | /// <summary> | ||
42 | /// Start a group chat session. | ||
43 | /// </summary> | ||
44 | /// You must call this before calling SendMessageToGroup(). If a chat session for this group is already taking | ||
45 | /// place then the agent will added to that session. | ||
46 | /// <param name="agentID"> | ||
47 | /// A UUID that represents the agent being added. If you are agentless (e.g. you are | ||
48 | /// a region module), then you can use any random ID. | ||
49 | /// </param> | ||
50 | /// <param name="groupID"> | ||
51 | /// The ID for the group to join. Currently, the session ID used is identical to the | ||
52 | /// group ID. | ||
53 | /// </param> | ||
54 | /// <returns> | ||
55 | /// True if the chat session was started successfully, false otherwise. | ||
56 | /// </returns> | ||
57 | bool StartGroupChatSession(UUID agentID, UUID groupID); | ||
58 | |||
59 | /// <summary> | ||
60 | /// Send a message to an entire group. | ||
61 | /// </summary> | ||
62 | /// <param name="im"> | ||
63 | /// The message itself. The fields that must be populated are | ||
64 | /// | ||
65 | /// imSessionID - Populate this with the group ID (session ID and group ID are currently identical) | ||
66 | /// fromAgentName - Populate this with whatever arbitrary name you want to show up in the chat dialog | ||
67 | /// message - The message itself | ||
68 | /// dialog - This must be (byte)InstantMessageDialog.SessionSend | ||
69 | /// </param> | ||
70 | /// <param name="groupID"></param> | ||
71 | void SendMessageToGroup(GridInstantMessage im, UUID groupID); | ||
72 | } | ||
73 | } \ No newline at end of file | ||
diff --git a/OpenSim/Region/Framework/Interfaces/IGroupsModule.cs b/OpenSim/Region/Framework/Interfaces/IGroupsModule.cs index 8980b2d..2c091e7 100644 --- a/OpenSim/Region/Framework/Interfaces/IGroupsModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IGroupsModule.cs | |||
@@ -37,21 +37,51 @@ namespace OpenSim.Region.Framework.Interfaces | |||
37 | { | 37 | { |
38 | event NewGroupNotice OnNewGroupNotice; | 38 | event NewGroupNotice OnNewGroupNotice; |
39 | 39 | ||
40 | /// <summary> | ||
41 | /// Create a group | ||
42 | /// </summary> | ||
43 | /// <param name="remoteClient"></param> | ||
44 | /// <param name="name"></param> | ||
45 | /// <param name="charter"></param> | ||
46 | /// <param name="showInList"></param> | ||
47 | /// <param name="insigniaID"></param> | ||
48 | /// <param name="membershipFee"></param> | ||
49 | /// <param name="openEnrollment"></param> | ||
50 | /// <param name="allowPublish"></param> | ||
51 | /// <param name="maturePublish"></param> | ||
52 | /// <returns>The UUID of the created group</returns> | ||
53 | UUID CreateGroup( | ||
54 | IClientAPI remoteClient, string name, string charter, bool showInList, UUID insigniaID, int membershipFee, | ||
55 | bool openEnrollment, bool allowPublish, bool maturePublish); | ||
56 | |||
57 | /// <summary> | ||
58 | /// Get a group | ||
59 | /// </summary> | ||
60 | /// <param name="name">Name of the group</param> | ||
61 | /// <returns>The group's data. Null if there is no such group.</returns> | ||
62 | GroupRecord GetGroupRecord(string name); | ||
63 | |||
64 | /// <summary> | ||
65 | /// Get a group | ||
66 | /// </summary> | ||
67 | /// <param name="GroupID">ID of the group</param> | ||
68 | /// <returns>The group's data. Null if there is no such group.</returns> | ||
69 | GroupRecord GetGroupRecord(UUID GroupID); | ||
70 | |||
40 | void ActivateGroup(IClientAPI remoteClient, UUID groupID); | 71 | void ActivateGroup(IClientAPI remoteClient, UUID groupID); |
41 | List<GroupTitlesData> GroupTitlesRequest(IClientAPI remoteClient, UUID groupID); | 72 | List<GroupTitlesData> GroupTitlesRequest(IClientAPI remoteClient, UUID groupID); |
42 | List<GroupMembersData> GroupMembersRequest(IClientAPI remoteClient, UUID groupID); | 73 | List<GroupMembersData> GroupMembersRequest(IClientAPI remoteClient, UUID groupID); |
43 | List<GroupRolesData> GroupRoleDataRequest(IClientAPI remoteClient, UUID groupID); | 74 | List<GroupRolesData> GroupRoleDataRequest(IClientAPI remoteClient, UUID groupID); |
44 | List<GroupRoleMembersData> GroupRoleMembersRequest(IClientAPI remoteClient, UUID groupID); | 75 | List<GroupRoleMembersData> GroupRoleMembersRequest(IClientAPI remoteClient, UUID groupID); |
45 | GroupProfileData GroupProfileRequest(IClientAPI remoteClient, UUID groupID); | 76 | GroupProfileData GroupProfileRequest(IClientAPI remoteClient, UUID groupID); |
46 | GroupMembershipData[] GetMembershipData(UUID UserID); | 77 | GroupMembershipData[] GetMembershipData(UUID UserID); |
47 | GroupMembershipData GetMembershipData(UUID GroupID, UUID UserID); | 78 | GroupMembershipData GetMembershipData(UUID GroupID, UUID UserID); |
48 | 79 | ||
49 | void UpdateGroupInfo(IClientAPI remoteClient, UUID groupID, string charter, bool showInList, UUID insigniaID, int membershipFee, bool openEnrollment, bool allowPublish, bool maturePublish); | 80 | void UpdateGroupInfo(IClientAPI remoteClient, UUID groupID, string charter, bool showInList, UUID insigniaID, int membershipFee, bool openEnrollment, bool allowPublish, bool maturePublish); |
50 | 81 | ||
51 | void SetGroupAcceptNotices(IClientAPI remoteClient, UUID groupID, bool acceptNotices, bool listInProfile); | 82 | void SetGroupAcceptNotices(IClientAPI remoteClient, UUID groupID, bool acceptNotices, bool listInProfile); |
52 | 83 | ||
53 | void GroupTitleUpdate(IClientAPI remoteClient, UUID GroupID, UUID TitleRoleID); | 84 | void GroupTitleUpdate(IClientAPI remoteClient, UUID GroupID, UUID TitleRoleID); |
54 | UUID CreateGroup(IClientAPI remoteClient, string name, string charter, bool showInList, UUID insigniaID, int membershipFee, bool openEnrollment, bool allowPublish, bool maturePublish); | ||
55 | 85 | ||
56 | GroupNoticeData[] GroupNoticesListRequest(IClientAPI remoteClient, UUID GroupID); | 86 | GroupNoticeData[] GroupNoticesListRequest(IClientAPI remoteClient, UUID GroupID); |
57 | string GetGroupTitle(UUID avatarID); | 87 | string GetGroupTitle(UUID avatarID); |
@@ -64,7 +94,6 @@ namespace OpenSim.Region.Framework.Interfaces | |||
64 | void LeaveGroupRequest(IClientAPI remoteClient, UUID GroupID); | 94 | void LeaveGroupRequest(IClientAPI remoteClient, UUID GroupID); |
65 | void EjectGroupMemberRequest(IClientAPI remoteClient, UUID GroupID, UUID EjecteeID); | 95 | void EjectGroupMemberRequest(IClientAPI remoteClient, UUID GroupID, UUID EjecteeID); |
66 | void InviteGroupRequest(IClientAPI remoteClient, UUID GroupID, UUID InviteeID, UUID RoleID); | 96 | void InviteGroupRequest(IClientAPI remoteClient, UUID GroupID, UUID InviteeID, UUID RoleID); |
67 | GroupRecord GetGroupRecord(UUID GroupID); | ||
68 | void NotifyChange(UUID GroupID); | 97 | void NotifyChange(UUID GroupID); |
69 | } | 98 | } |
70 | } | 99 | } \ No newline at end of file |
diff --git a/OpenSim/Region/Framework/Interfaces/ITeleportModule.cs b/OpenSim/Region/Framework/Interfaces/IInventoryAccessModule.cs index 5f9129d..8185258 100644 --- a/OpenSim/Region/Framework/Interfaces/ITeleportModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IInventoryAccessModule.cs | |||
@@ -27,15 +27,21 @@ | |||
27 | 27 | ||
28 | using System; | 28 | using System; |
29 | using System.Collections.Generic; | 29 | using System.Collections.Generic; |
30 | using System.Text; | 30 | |
31 | using OpenMetaverse; | 31 | using OpenSim.Framework; |
32 | using OpenSim.Region.Framework.Scenes; | 32 | using OpenSim.Region.Framework.Scenes; |
33 | 33 | ||
34 | using OpenMetaverse; | ||
35 | |||
34 | namespace OpenSim.Region.Framework.Interfaces | 36 | namespace OpenSim.Region.Framework.Interfaces |
35 | { | 37 | { |
36 | public interface ITeleportModule | 38 | public interface IInventoryAccessModule |
37 | { | 39 | { |
38 | void RequestTeleportToLocation(ScenePresence avatar, ulong regionHandle, Vector3 position, | 40 | UUID CapsUpdateInventoryItemAsset(IClientAPI remoteClient, UUID itemID, byte[] data); |
39 | Vector3 lookAt, uint teleportFlags); | 41 | UUID DeleteToInventory(DeRezAction action, UUID folderID, SceneObjectGroup objectGroup, IClientAPI remoteClient); |
42 | SceneObjectGroup RezObject(IClientAPI remoteClient, UUID itemID, Vector3 RayEnd, Vector3 RayStart, | ||
43 | UUID RayTargetID, byte BypassRayCast, bool RayEndIsIntersection, | ||
44 | bool RezSelected, bool RemoveItem, UUID fromTaskID, bool attachment); | ||
45 | void TransferInventoryAssets(InventoryItemBase item, UUID sender, UUID receiver); | ||
40 | } | 46 | } |
41 | } | 47 | } |
diff --git a/OpenSim/Region/Framework/Interfaces/IInventoryArchiverModule.cs b/OpenSim/Region/Framework/Interfaces/IInventoryArchiverModule.cs index 2d038ce..fbadd91 100644 --- a/OpenSim/Region/Framework/Interfaces/IInventoryArchiverModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IInventoryArchiverModule.cs | |||
@@ -27,7 +27,7 @@ | |||
27 | 27 | ||
28 | using System; | 28 | using System; |
29 | using System.IO; | 29 | using System.IO; |
30 | using OpenSim.Framework.Communications.Cache; | 30 | using OpenSim.Services.Interfaces; |
31 | 31 | ||
32 | namespace OpenSim.Region.Framework.Interfaces | 32 | namespace OpenSim.Region.Framework.Interfaces |
33 | { | 33 | { |
@@ -41,7 +41,7 @@ namespace OpenSim.Region.Framework.Interfaces | |||
41 | /// <param name="savePath">The stream to which the archive was saved</param> | 41 | /// <param name="savePath">The stream to which the archive was saved</param> |
42 | /// <param name="reportedException">Contains the exception generated if the save did not succeed</param> | 42 | /// <param name="reportedException">Contains the exception generated if the save did not succeed</param> |
43 | public delegate void InventoryArchiveSaved( | 43 | public delegate void InventoryArchiveSaved( |
44 | Guid id, bool succeeded, CachedUserInfo userInfo, string invPath, Stream saveStream, Exception reportedException); | 44 | Guid id, bool succeeded, UserAccount userInfo, string invPath, Stream saveStream, Exception reportedException); |
45 | 45 | ||
46 | public interface IInventoryArchiverModule | 46 | public interface IInventoryArchiverModule |
47 | { | 47 | { |
diff --git a/OpenSim/Region/Framework/Interfaces/IPresenceModule.cs b/OpenSim/Region/Framework/Interfaces/IPresenceModule.cs index 630c6a3..d44c1e1 100644 --- a/OpenSim/Region/Framework/Interfaces/IPresenceModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IPresenceModule.cs | |||
@@ -31,13 +31,13 @@ namespace OpenSim.Region.Framework.Interfaces | |||
31 | { | 31 | { |
32 | public struct PresenceInfo | 32 | public struct PresenceInfo |
33 | { | 33 | { |
34 | public UUID userID; | 34 | public string UserID; |
35 | public UUID regionID; | 35 | public UUID RegionID; |
36 | 36 | ||
37 | public PresenceInfo(UUID userID, UUID regionID) | 37 | public PresenceInfo(string userID, UUID regionID) |
38 | { | 38 | { |
39 | this.userID = userID; | 39 | UserID = userID; |
40 | this.regionID = regionID; | 40 | RegionID = regionID; |
41 | } | 41 | } |
42 | } | 42 | } |
43 | 43 | ||
diff --git a/OpenSim/Region/Framework/Interfaces/IRegionArchiverModule.cs b/OpenSim/Region/Framework/Interfaces/IRegionArchiverModule.cs index 991d60c..89e59d0 100644 --- a/OpenSim/Region/Framework/Interfaces/IRegionArchiverModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IRegionArchiverModule.cs | |||
@@ -90,8 +90,12 @@ namespace OpenSim.Region.Framework.Interfaces | |||
90 | /// If true, the loaded region merges with the existing one rather than replacing it. Any terrain or region | 90 | /// If true, the loaded region merges with the existing one rather than replacing it. Any terrain or region |
91 | /// settings in the archive will be ignored. | 91 | /// settings in the archive will be ignored. |
92 | /// </param> | 92 | /// </param> |
93 | /// <param name="skipAssets"> | ||
94 | /// If true, the archive is loaded without loading any assets contained within it. This is useful if the | ||
95 | /// assets are already known to be present in the grid's asset service. | ||
96 | /// </param> | ||
93 | /// <param name="requestId">If supplied, this request Id is later returned in the saved event</param> | 97 | /// <param name="requestId">If supplied, this request Id is later returned in the saved event</param> |
94 | void DearchiveRegion(string loadPath, bool merge, Guid requestId); | 98 | void DearchiveRegion(string loadPath, bool merge, bool skipAssets, Guid requestId); |
95 | 99 | ||
96 | /// <summary> | 100 | /// <summary> |
97 | /// Dearchive a region from a stream. This replaces the existing scene. | 101 | /// Dearchive a region from a stream. This replaces the existing scene. |
@@ -113,7 +117,11 @@ namespace OpenSim.Region.Framework.Interfaces | |||
113 | /// If true, the loaded region merges with the existing one rather than replacing it. Any terrain or region | 117 | /// If true, the loaded region merges with the existing one rather than replacing it. Any terrain or region |
114 | /// settings in the archive will be ignored. | 118 | /// settings in the archive will be ignored. |
115 | /// </param> | 119 | /// </param> |
120 | /// <param name="skipAssets"> | ||
121 | /// If true, the archive is loaded without loading any assets contained within it. This is useful if the | ||
122 | /// assets are already known to be present in the grid's asset service. | ||
123 | /// </param | ||
116 | /// <param name="requestId">If supplied, this request Id is later returned in the saved event</param> | 124 | /// <param name="requestId">If supplied, this request Id is later returned in the saved event</param> |
117 | void DearchiveRegion(Stream loadStream, bool merge, Guid requestId); | 125 | void DearchiveRegion(Stream loadStream, bool merge, bool skipAssets, Guid requestId); |
118 | } | 126 | } |
119 | } | 127 | } |
diff --git a/OpenSim/Region/Framework/Interfaces/IRegionDataStore.cs b/OpenSim/Region/Framework/Interfaces/IRegionDataStore.cs index 7312799..3e8e196 100644 --- a/OpenSim/Region/Framework/Interfaces/IRegionDataStore.cs +++ b/OpenSim/Region/Framework/Interfaces/IRegionDataStore.cs | |||
@@ -103,8 +103,8 @@ namespace OpenSim.Region.Framework.Interfaces | |||
103 | 103 | ||
104 | void StoreRegionSettings(RegionSettings rs); | 104 | void StoreRegionSettings(RegionSettings rs); |
105 | RegionSettings LoadRegionSettings(UUID regionUUID); | 105 | RegionSettings LoadRegionSettings(UUID regionUUID); |
106 | RegionMeta7WindlightData LoadRegionWindlightSettings(UUID regionUUID); | 106 | RegionLightShareData LoadRegionWindlightSettings(UUID regionUUID); |
107 | void StoreRegionWindlightSettings(RegionMeta7WindlightData wl); | 107 | void StoreRegionWindlightSettings(RegionLightShareData wl); |
108 | 108 | ||
109 | void Shutdown(); | 109 | void Shutdown(); |
110 | } | 110 | } |
diff --git a/OpenSim/Region/Framework/Interfaces/IRegionModule.cs b/OpenSim/Region/Framework/Interfaces/IRegionModule.cs index 8eb906c..e25a6e8 100644 --- a/OpenSim/Region/Framework/Interfaces/IRegionModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IRegionModule.cs | |||
@@ -30,6 +30,9 @@ using OpenSim.Region.Framework.Scenes; | |||
30 | 30 | ||
31 | namespace OpenSim.Region.Framework.Interfaces | 31 | namespace OpenSim.Region.Framework.Interfaces |
32 | { | 32 | { |
33 | /// <summary> | ||
34 | /// DEPRECATED! Use INonSharedRegionModule or ISharedRegionModule instead | ||
35 | /// </summary> | ||
33 | public interface IRegionModule | 36 | public interface IRegionModule |
34 | { | 37 | { |
35 | void Initialise(Scene scene, IConfigSource source); | 38 | void Initialise(Scene scene, IConfigSource source); |
diff --git a/OpenSim/Region/Framework/Interfaces/IScriptModule.cs b/OpenSim/Region/Framework/Interfaces/IScriptModule.cs index e90b300..fecdd1b 100644 --- a/OpenSim/Region/Framework/Interfaces/IScriptModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IScriptModule.cs | |||
@@ -41,6 +41,14 @@ namespace OpenSim.Region.Framework.Interfaces | |||
41 | bool PostScriptEvent(UUID itemID, string name, Object[] args); | 41 | bool PostScriptEvent(UUID itemID, string name, Object[] args); |
42 | bool PostObjectEvent(UUID itemID, string name, Object[] args); | 42 | bool PostObjectEvent(UUID itemID, string name, Object[] args); |
43 | 43 | ||
44 | // Suspend ALL scripts in a given scene object. The item ID | ||
45 | // is the UUID of a SOG, and the method acts on all contained | ||
46 | // scripts. This is different from the suspend/resume that | ||
47 | // can be issued by a client. | ||
48 | // | ||
49 | void SuspendScript(UUID itemID); | ||
50 | void ResumeScript(UUID itemID); | ||
51 | |||
44 | ArrayList GetScriptErrors(UUID itemID); | 52 | ArrayList GetScriptErrors(UUID itemID); |
45 | } | 53 | } |
46 | } | 54 | } |