aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/World/Wind/IWindModelPlugin.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/CoreModules/World/Wind/IWindModelPlugin.cs')
-rw-r--r--OpenSim/Region/CoreModules/World/Wind/IWindModelPlugin.cs56
1 files changed, 56 insertions, 0 deletions
diff --git a/OpenSim/Region/CoreModules/World/Wind/IWindModelPlugin.cs b/OpenSim/Region/CoreModules/World/Wind/IWindModelPlugin.cs
new file mode 100644
index 0000000..29b0ed5
--- /dev/null
+++ b/OpenSim/Region/CoreModules/World/Wind/IWindModelPlugin.cs
@@ -0,0 +1,56 @@
1using System;
2using System.Collections.Generic;
3
4using Nini.Config;
5using OpenSim.Framework;
6using OpenMetaverse;
7using OpenSim.Region.Framework.Scenes;
8
9namespace OpenSim.Region.CoreModules.World.Wind
10{
11 public interface IWindModelPlugin : IPlugin
12 {
13 /// <summary>
14 /// Brief description of this plugin's wind model
15 /// </summary>
16 string Description { get; }
17
18 /// <summary>
19 /// Provides access to the wind configuration, if any.
20 /// </summary>
21 void WindConfig(Scene scene, IConfig windConfig);
22
23 /// <summary>
24 /// Update wind.
25 /// </summary>
26 void WindUpdate(uint frame);
27
28 /// <summary>
29 /// Returns the wind vector at the given local region coordinates.
30 /// </summary>
31 Vector3 WindSpeed(float x, float y, float z);
32
33 /// <summary>
34 /// Generate a 16 x 16 Vector2 array of wind speeds for LL* based viewers
35 /// </summary>
36 /// <returns>Must return a Vector2[256]</returns>
37 Vector2[] WindLLClientArray();
38
39 /// <summary>
40 /// Retrieve a list of parameter/description pairs.
41 /// </summary>
42 /// <returns></returns>
43 Dictionary<string, string> WindParams();
44
45 /// <summary>
46 /// Set the specified parameter
47 /// </summary>
48 void WindParamSet(string param, float value);
49
50 /// <summary>
51 /// Get the specified parameter
52 /// </summary>
53 float WindParamGet(string param);
54
55 }
56}