diff options
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Interfaces/IScriptInstance.cs')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Interfaces/IScriptInstance.cs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/Interfaces/IScriptInstance.cs b/OpenSim/Region/ScriptEngine/Interfaces/IScriptInstance.cs index 2f5b526..38fff52 100644 --- a/OpenSim/Region/ScriptEngine/Interfaces/IScriptInstance.cs +++ b/OpenSim/Region/ScriptEngine/Interfaces/IScriptInstance.cs | |||
@@ -28,9 +28,11 @@ | |||
28 | using System; | 28 | using System; |
29 | using System.Collections; | 29 | using System.Collections; |
30 | using System.Collections.Generic; | 30 | using System.Collections.Generic; |
31 | using System.Threading; | ||
31 | using OpenMetaverse; | 32 | using OpenMetaverse; |
32 | using log4net; | 33 | using log4net; |
33 | using OpenSim.Framework; | 34 | using OpenSim.Framework; |
35 | using OpenSim.Region.Framework.Scenes; | ||
34 | using OpenSim.Region.ScriptEngine.Shared; | 36 | using OpenSim.Region.ScriptEngine.Shared; |
35 | using OpenSim.Region.ScriptEngine.Interfaces; | 37 | using OpenSim.Region.ScriptEngine.Interfaces; |
36 | 38 | ||
@@ -105,6 +107,11 @@ namespace OpenSim.Region.ScriptEngine.Interfaces | |||
105 | /// </summary> | 107 | /// </summary> |
106 | long MeasurementPeriodExecutionTime { get; } | 108 | long MeasurementPeriodExecutionTime { get; } |
107 | 109 | ||
110 | /// <summary> | ||
111 | /// Scene part in which this script instance is contained. | ||
112 | /// </summary> | ||
113 | SceneObjectPart Part { get; } | ||
114 | |||
108 | IScriptEngine Engine { get; } | 115 | IScriptEngine Engine { get; } |
109 | UUID AppDomain { get; set; } | 116 | UUID AppDomain { get; set; } |
110 | string PrimName { get; } | 117 | string PrimName { get; } |
@@ -124,6 +131,12 @@ namespace OpenSim.Region.ScriptEngine.Interfaces | |||
124 | 131 | ||
125 | uint LocalID { get; } | 132 | uint LocalID { get; } |
126 | UUID AssetID { get; } | 133 | UUID AssetID { get; } |
134 | |||
135 | /// <summary> | ||
136 | /// Inventory item containing the script used. | ||
137 | /// </summary> | ||
138 | TaskInventoryItem ScriptTask { get; } | ||
139 | |||
127 | Queue EventQueue { get; } | 140 | Queue EventQueue { get; } |
128 | 141 | ||
129 | /// <summary> | 142 | /// <summary> |
@@ -169,6 +182,18 @@ namespace OpenSim.Region.ScriptEngine.Interfaces | |||
169 | void Resume(); | 182 | void Resume(); |
170 | 183 | ||
171 | /// <summary> | 184 | /// <summary> |
185 | /// If true then scripts should look to terminate their threads in co-operation with the script engine rather | ||
186 | /// than through Thread.Abort() | ||
187 | /// </summary> | ||
188 | bool CoopTermination { get; } | ||
189 | |||
190 | /// <summary> | ||
191 | /// Used for script sleeps when we are using co-operative script termination. | ||
192 | /// </summary> | ||
193 | /// <remarks>null if CoopTermination is not active</remarks> | ||
194 | EventWaitHandle CoopSleepHandle { get; } | ||
195 | |||
196 | /// <summary> | ||
172 | /// Process the next event queued for this script instance. | 197 | /// Process the next event queued for this script instance. |
173 | /// </summary> | 198 | /// </summary> |
174 | /// <returns></returns> | 199 | /// <returns></returns> |