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