Refactor IEventReceiver back into IScriptEngine

This commit is contained in:
Melanie Thielker
2008-11-08 02:24:34 +00:00
parent 8699c2b3b9
commit 833f5e8bed
15 changed files with 110 additions and 105 deletions

View File

@@ -33,6 +33,7 @@ using OpenMetaverse;
using Nini.Config;
using OpenSim.Region.ScriptEngine.Interfaces;
using Amib.Threading;
using OpenSim.Framework;
namespace OpenSim.Region.ScriptEngine.Interfaces
{
@@ -40,11 +41,39 @@ namespace OpenSim.Region.ScriptEngine.Interfaces
/// An interface for a script API module to communicate with
/// the engine it's running under
/// </summary>
public interface IScriptEngine : IEventReceiver
public interface IScriptEngine
{
/// <summary>
/// Queue an event for execution
/// </summary>
IScriptWorkItem QueueEventHandler(object parms);
Scene World { get; }
/// <summary>
/// Post an event to a single script
/// </summary>
bool PostScriptEvent(UUID itemID, EventParams parms);
/// <summary>
/// Post event to an entire prim
/// </summary>
bool PostObjectEvent(uint localID, EventParams parms);
DetectParams GetDetectParams(UUID item, int number);
int GetStartParameter(UUID itemID);
void SetScriptState(UUID itemID, bool state);
bool GetScriptState(UUID itemID);
void SetState(UUID itemID, string newState);
void ApiResetScript(UUID itemID);
void ResetScript(UUID itemID);
IConfig Config { get; }
string ScriptEngineName { get; }
ILog Log { get; }
IScriptApi GetApi(UUID itemID, string name);
string GetAssemblyName(UUID itemID);
string GetXMLState(UUID itemID);
}
}