aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs')
-rw-r--r--OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs72
1 files changed, 16 insertions, 56 deletions
diff --git a/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs b/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
index d1b7dc1..a7770ad 100644
--- a/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
+++ b/OpenSim/Region/Framework/Interfaces/IAttachmentsModule.cs
@@ -27,8 +27,8 @@
27 27
28using System; 28using System;
29using System.Xml; 29using System.Xml;
30using System.Collections.Generic;
30using OpenMetaverse; 31using OpenMetaverse;
31using OpenMetaverse.Packets;
32using OpenSim.Framework; 32using OpenSim.Framework;
33using OpenSim.Region.Framework.Scenes; 33using OpenSim.Region.Framework.Scenes;
34 34
@@ -40,6 +40,7 @@ namespace OpenSim.Region.Framework.Interfaces
40 /// RezAttachments. This should only be called upon login on the first region. 40 /// RezAttachments. This should only be called upon login on the first region.
41 /// Attachment rezzings on crossings and TPs are done in a different way. 41 /// Attachment rezzings on crossings and TPs are done in a different way.
42 /// </summary> 42 /// </summary>
43 /// <param name="sp"></param>
43 void RezAttachments(IScenePresence sp); 44 void RezAttachments(IScenePresence sp);
44 45
45 /// <summary> 46 /// <summary>
@@ -50,43 +51,21 @@ namespace OpenSim.Region.Framework.Interfaces
50 51
51 /// <summary> 52 /// <summary>
52 /// Delete all the presence's attachments from the scene 53 /// Delete all the presence's attachments from the scene
53 /// </summary>
54 /// <param name="sp">
55 /// This is done when a root agent leaves/is demoted to child (for instance, on logout, teleport or region cross). 54 /// This is done when a root agent leaves/is demoted to child (for instance, on logout, teleport or region cross).
56 /// </param>
57 /// <param name="silent"></param>
58 void DeleteAttachmentsFromScene(IScenePresence sp, bool silent);
59
60 /// <summary>
61 /// Attach an object to an avatar from the world.
62 /// </summary> 55 /// </summary>
63 /// <param name="controllingClient"></param> 56 /// <param name="sp"></param>
64 /// <param name="localID"></param>
65 /// <param name="attachPoint"></param>
66 /// <param name="rot"></param>
67 /// <param name="silent"></param> 57 /// <param name="silent"></param>
68 void AttachObject( 58 void DeleteAttachmentsFromScene(IScenePresence sp, bool silent);
69 IClientAPI remoteClient, uint objectLocalID, uint AttachmentPt, bool silent);
70 59
71 /// <summary> 60 /// <summary>
72 /// Attach an object to an avatar 61 /// Attach an object to an avatar
73 /// </summary> 62 /// </summary>
74 /// <param name="remoteClient"></param> 63 /// <param name="sp"></param>
75 /// <param name="grp"></param> 64 /// <param name="grp"></param>
76 /// <param name="AttachmentPt"></param> 65 /// <param name="AttachmentPt"></param>
77 /// <param name="silent"></param> 66 /// <param name="silent"></param>
78 /// <returns>true if the object was successfully attached, false otherwise</returns> 67 /// <returns>true if the object was successfully attached, false otherwise</returns>
79 bool AttachObject( 68 bool AttachObject(IScenePresence sp, SceneObjectGroup grp, uint AttachmentPt, bool silent);
80 IClientAPI remoteClient, SceneObjectGroup grp, uint AttachmentPt, bool silent);
81
82 /// <summary>
83 /// Rez an attachment from user inventory and change inventory status to match.
84 /// </summary>
85 /// <param name="remoteClient"></param>
86 /// <param name="itemID"></param>
87 /// <param name="AttachmentPt"></param>
88 /// <returns>The scene object that was attached. Null if the scene object could not be found</returns>
89 ISceneEntity RezSingleAttachmentFromInventory(IClientAPI remoteClient, UUID itemID, uint AttachmentPt);
90 69
91 /// <summary> 70 /// <summary>
92 /// Rez an attachment from user inventory and change inventory status to match. 71 /// Rez an attachment from user inventory and change inventory status to match.
@@ -95,51 +74,32 @@ namespace OpenSim.Region.Framework.Interfaces
95 /// <param name="itemID"></param> 74 /// <param name="itemID"></param>
96 /// <param name="AttachmentPt"></param> 75 /// <param name="AttachmentPt"></param>
97 /// <returns>The scene object that was attached. Null if the scene object could not be found</returns> 76 /// <returns>The scene object that was attached. Null if the scene object could not be found</returns>
98 ISceneEntity RezSingleAttachmentFromInventory(ScenePresence sp, UUID itemID, uint AttachmentPt); 77 ISceneEntity RezSingleAttachmentFromInventory(IScenePresence sp, UUID itemID, uint AttachmentPt);
99 78
100 // Same as above, but also load script states from a separate doc 79 // Same as above, but also load script states from a separate doc
101 ISceneEntity RezSingleAttachmentFromInventory( 80 ISceneEntity RezSingleAttachmentFromInventory(
102 IClientAPI remoteClient, UUID itemID, uint AttachmentPt, bool updateInventoryStatus, XmlDocument doc); 81 IScenePresence presence, UUID itemID, uint AttachmentPt, bool updateInventoryStatus, XmlDocument doc);
103 82
104 /// <summary> 83 /// <summary>
105 /// Rez multiple attachments from a user's inventory 84 /// Rez multiple attachments from a user's inventory
106 /// </summary> 85 /// </summary>
107 /// <param name="remoteClient"></param> 86 /// <param name="sp"></param>
108 /// <param name="header"></param> 87 /// <param name="rezlist"></param>
109 /// <param name="objects"></param> 88 void RezMultipleAttachmentsFromInventory(IScenePresence sp,List<KeyValuePair<UUID, uint>> rezlist);
110 void RezMultipleAttachmentsFromInventory(
111 IClientAPI remoteClient,
112 RezMultipleAttachmentsFromInvPacket.HeaderDataBlock header,
113 RezMultipleAttachmentsFromInvPacket.ObjectDataBlock[] objects);
114
115 /// <summary>
116 /// Detach an object from the avatar.
117 /// </summary>
118 /// <remarks>
119 /// This method is called in response to a client's detach request, so we only update the information in
120 /// inventory
121 /// </remarks>
122 /// <param name="objectLocalID"></param>
123 /// <param name="remoteClient"></param>
124 void DetachObject(uint objectLocalID, IClientAPI remoteClient);
125 89
126 /// <summary> 90 /// <summary>
127 /// Detach the given item to the ground. 91 /// Detach the given item to the ground.
128 /// </summary> 92 /// </summary>
93 /// <param name="sp"></param>
129 /// <param name="objectLocalID"></param> 94 /// <param name="objectLocalID"></param>
130 /// <param name="remoteClient"></param> 95 void DetachSingleAttachmentToGround(IScenePresence sp, uint objectLocalID);
131 void DetachSingleAttachmentToGround(uint objectLocalID, IClientAPI remoteClient);
132 96
133 /// <summary> 97 /// <summary>
134 /// Detach the given item so that it remains in the user's inventory. 98 /// Detach the given item so that it remains in the user's inventory.
135 /// </summary> 99 /// </summary>
136 /// <param name="itemID"> 100 /// <param name="sp">/param>
137 /// A <see cref="UUID"/> 101 /// <param name="itemID"></param>
138 /// </param> 102 void DetachSingleAttachmentToInv(IScenePresence sp, UUID itemID);
139 /// <param name="remoteClient">
140 /// A <see cref="IClientAPI"/>
141 /// </param>
142 void DetachSingleAttachmentToInv(UUID itemID, IClientAPI remoteClient);
143 103
144 /// Update the position of an attachment. 104 /// Update the position of an attachment.
145 /// </summary> 105 /// </summary>