aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IScheduler.cs
diff options
context:
space:
mode:
authorAdam Frisby2009-04-11 10:21:04 +0000
committerAdam Frisby2009-04-11 10:21:04 +0000
commitb8619386eb31a2bf3f460e464d0237f6bee5f56f (patch)
treee9a1f1559e04e3f3597aa8ed6ef37c6a63254ca2 /OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IScheduler.cs
parentCorrect Opensim.ini.example to reflect the default settings for clouds. (diff)
downloadopensim-SC-b8619386eb31a2bf3f460e464d0237f6bee5f56f.zip
opensim-SC-b8619386eb31a2bf3f460e464d0237f6bee5f56f.tar.gz
opensim-SC-b8619386eb31a2bf3f460e464d0237f6bee5f56f.tar.bz2
opensim-SC-b8619386eb31a2bf3f460e464d0237f6bee5f56f.tar.xz
* Minor MRM Cleanup
* Interfaces now live in Interfaces subdirectory. * Namespace does not yet reflect this change. * Final namespace for MRMs will probably sit somewhere around OpenSim.Extend.MRM[?]
Diffstat (limited to 'OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IScheduler.cs')
-rw-r--r--OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IScheduler.cs43
1 files changed, 43 insertions, 0 deletions
diff --git a/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IScheduler.cs b/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IScheduler.cs
new file mode 100644
index 0000000..cf45de7
--- /dev/null
+++ b/OpenSim/Region/OptionalModules/Scripting/Minimodule/Interfaces/IScheduler.cs
@@ -0,0 +1,43 @@
1using System;
2
3namespace OpenSim.Region.OptionalModules.Scripting.Minimodule
4{
5 interface IScheduler
6 {
7 /// <summary>
8 /// Schedule an event callback to occur
9 /// when 'time' is elapsed.
10 /// </summary>
11 /// <param name="time">The period to wait before executing</param>
12 void RunIn(TimeSpan time);
13
14 /// <summary>
15 /// Schedule an event callback to fire
16 /// every "time". Equivilent to a repeating
17 /// timer.
18 /// </summary>
19 /// <param name="time">The period to wait between executions</param>
20 void RunAndRepeat(TimeSpan time);
21
22 /// <summary>
23 /// Fire this scheduler only when the region has
24 /// a user in it.
25 /// </summary>
26 bool WhenRegionOccupied { get; set; }
27
28 /// <summary>
29 /// Fire this event only when the region is visible
30 /// to a child agent, or there is a full agent
31 /// in this region.
32 /// </summary>
33 bool WhenRegionVisible { get; set; }
34
35 /// <summary>
36 /// Determines whether this runs in the master scheduler thread, or a new thread
37 /// is spawned to handle your request. Running in scheduler may mean that your
38 /// code does not execute perfectly on time, however will result in a lower
39 /// processor cost to running your code.
40 /// </summary>
41 bool Schedule { get; set; }
42 }
43}