<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Having written the DataSnapshot module as an outsider, I must say I was
really pleased with the current module system. It's really simple to
understand, and works as advertised. There were protected parts that I
couldn't access (in theory), but I hacked around it. In any case, no
other module system would have allowed access to protected parts --
that issue is always a potential problem for plugin modules.<br>
<br>
I don't know enough about the mono plugins to compare. And I'm not sure
what the problem is here, I lost track.<br>
<br>
WRT that specific simulation (wind), I think a lot of that info is
currently on the client, not on the server. But one can implement a
wind model module, no doubt about that; you may need to get creative
about visualizing it with the SL client, though, I'm not sure there's
any talk between the simulator and the client about wind.<br>
<br>
Dahlia Trimble wrote:
<blockquote
cite="mid:ab84ceb10806251309g8efd705me9cc63d8faaabc66@mail.gmail.com"
type="cite">
<div>I've been thinking about what it would take to implement a crude
wind model in opensim, and this thread appears to be along the lines of
some of my thoughts. I've done some CFD visualization work several
years ago, but I am by no means an expert and as such I think I would
rather concentrate on developing the hooks and providing a basic model
that can be unplugged and replaced with other models that would be
better suited for more demanding applications. Such a model may need
access to simulation variables like time of day, sun position, the
object meshes used by the physics engine and their layout in 3D space,
weather conditions of neighboring regions, and probably others. It may
need to send weather data to agents in the simulation area, and expose
data to the scripting engine to support functions such as llWind(). It
would also need to be informed of changes in the region such as adding
prims or terrain modifications.</div>
<div> </div>
<div>As a relatively new contributor, I'm not really familiar with
the benefits or drawbacks of the various means of plugging in code with
these requirements, and it appears that many of these issues are being
brought up here which is what prompted me it add it to this thread
rather than start another. Comments?</div>
<div> </div>
<div><br>
<br>
</div>
<div class="gmail_quote">On Wed, Jun 25, 2008 at 12:08 PM, Michael
Wright <<a moz-do-not-send="true"
href="mailto:michaelwri22@yahoo.co.uk">michaelwri22@yahoo.co.uk</a>>
wrote:<br>
<blockquote class="gmail_quote"
style="border-left: 1px solid rgb(204, 204, 204); margin: 0px 0px 0px 0.8ex; padding-left: 1ex;">Yes
those are great if we can acheive them. I'm just not sure how we create
a "clean" wrapper that is independant of Mono.addins, as it uses
various attributes to define the interfaces and plugins
(TypeExtensionPoint, Extension, etc) . So those classes need references
to mono.addins. <br>
<br>
Like for example our current IApplicationPlugin:<br>
<br>
using Mono.Addins;<br>
<br>
[assembly : AddinRoot("OpenSim", "0.5")]<br>
<br>
namespace OpenSim<br>
{<br>
[TypeExtensionPoint("/OpenSim/Startup")]<br>
public interface IApplicationPlugin<br>
{<br>
void Initialise(OpenSimBase openSim);<br>
void Close();<br>
}<br>
}<br>
<br>
and to implement a Application plugin:<br>
<br>
assembly : Addin]<br>
[assembly : AddinDependency("OpenSim", "0.5")]<br>
[assembly : AddinDependency("RegionProxy", "0.1")]<br>
<br>
namespace OpenSim.ApplicationPlugins.LoadBalancer<br>
{<br>
[Extension("/OpenSim/Startup")]<br>
public class LoadBalancerPlugin : IApplicationPlugin<br>
{<br>
<br>
<br>
So if we had more classes that used were loaded by mono.addins, we
would need the interfaces to have a TypeExtensionPoint attribute and
the implementations to have the Extension. Tthe only other way I saw
for Mono.addings to load plugins without those attributes, is by using
its xml manifest files. And one of our requirements is listed as that
we don't use third party config files.<br>
<br>
I most likely haven't dug deep enough into mono.addins and there could
well be a method to do cut out the attributes and not require manifest
files. But anyway my point is that I believe a implied effect of those
requirements is that we don't have references to Mono.addins in the
core opensim assemblys. (OpenSim.Framework.X , etc) <br>
<div>
<div class="Wj3C7c"><br>
<b><i>Dr Scofield <<a moz-do-not-send="true"
href="mailto:DrScofield@xyzzyxyzzy.net" target="_blank">DrScofield@xyzzyxyzzy.net</a>></i></b>
wrote:
<blockquote
style="border-left: 2px solid rgb(16, 16, 255); padding-left: 5px; margin-left: 5px;">Stefan
Andersson wrote:<br>
> Just to get this straight, is what we're saying<br>
> <br>
> 1) Yes, we will have a common loader architecture<br>
> 2) Yes, it will be implemented as a set of interfaces<br>
> 3) Yes, we will create one implementation as a wrapper around
Mono.Addins<br>
> 4) Yes, we will aim at having a common setup file structure for <br>
> OpenSim, not depend on lots of different third-party components
config.<br>
><br>
> That sounds excellent to me.<br>
+1<br>
><br>
> Best regards,<br>
> Stefan Andersson<br>
> Tribal Media AB<br>
> <br>
> Join the 3d web revolution : <a moz-do-not-send="true"
href="http://tribalnet.se/" target="_blank">http://tribalnet.se/</a><br>
> <br>
><br>
><br>
><br>
>
------------------------------------------------------------------------<br>
><br>
> > Date: Wed, 25 Jun 2008 10:16:34 -0400<br>
> > From: <a moz-do-not-send="true" href="mailto:sean@dague.net"
target="_blank">sean@dague.net</a><br>
> > To: <a moz-do-not-send="true"
href="mailto:opensim-dev@lists.berlios.de" target="_blank">opensim-dev@lists.berlios.de</a><br>
> > Subject: Re: [Opensim-dev] Module/Plugin Loading<br>
> ><br>
> > On Wed, Jun 25, 2008 at 03:12:45PM +0100, Melanie wrote:<br>
> > > I believe that we should use a plugin loader that allows
us to<br>
> > > configure plugin loading completely within our own .ini
files. I<br>
> > > think that a requirement to tweak complex XML based
mono/.NET config<br>
> > > files to get a plugin loaded will put running OpenSim
out fo reach<br>
> > > of many users.<br>
> > ><br>
> > > That said, I'm all for a standardized way to load a
plugin. I just<br>
> > > think it shouldn't be required to edit conifg files
outside of<br>
> > > OpenSim's own.<br>
> ><br>
> > +1. I think that ryan's plugin loader approach will give us
that (at<br>
> > least from what I've seen in his patch and description). I'm
looking<br>
> > forward to that work.<br>
> ><br>
> > -Sean<br>
> ><br>
> > --<br>
> >
__________________________________________________________________<br>
> ><br>
> > Sean Dague Mid-Hudson Valley<br>
> > sean at dague dot net Linux Users Group<br>
> > <a moz-do-not-send="true" href="http://dague.net/"
target="_blank">http://dague.net</a> <a moz-do-not-send="true"
href="http://mhvlug.org/" target="_blank">http://mhvlug.org</a><br>
> ><br>
> > There is no silver bullet. Plus, werewolves make better
neighbors<br>
> > than zombies, and they tend to keep the vampire population
down.<br>
> >
__________________________________________________________________<br>
><br>
>
------------------------------------------------------------------------<br>
><br>
> _______________________________________________<br>
> Opensim-dev mailing list<br>
> <a moz-do-not-send="true"
href="mailto:Opensim-dev@lists.berlios.de" target="_blank">Opensim-dev@lists.berlios.de</a><br>
> <a moz-do-not-send="true"
href="https://lists.berlios.de/mailman/listinfo/opensim-dev"
target="_blank">https://lists.berlios.de/mailman/listinfo/opensim-dev</a><br>
> <br>
<br>
<br>
-- <br>
dr dirk husemann ---- virtual worlds research ---- ibm zurich research
lab<br>
SL: dr scofield ---- <a moz-do-not-send="true"
href="mailto:drscofield@xyzzyxyzzy.net" target="_blank">drscofield@xyzzyxyzzy.net</a>
---- <a moz-do-not-send="true" href="http://xyzzyxyzzy.net/"
target="_blank">http://xyzzyxyzzy.net/</a><br>
RL: <a moz-do-not-send="true" href="mailto:hud@zurich.ibm.com"
target="_blank">hud@zurich.ibm.com</a> - +41 44 724 8573 - <a
moz-do-not-send="true" href="http://www.zurich.ibm.com/%7Ehud/"
target="_blank">http://www.zurich.ibm.com/~hud/</a><br>
<br>
_______________________________________________<br>
Opensim-dev mailing list<br>
<a moz-do-not-send="true"
href="mailto:Opensim-dev@lists.berlios.de" target="_blank">Opensim-dev@lists.berlios.de</a><br>
<a moz-do-not-send="true"
href="https://lists.berlios.de/mailman/listinfo/opensim-dev"
target="_blank">https://lists.berlios.de/mailman/listinfo/opensim-dev</a><br>
</blockquote>
<br>
</div>
</div>
<div class="WgoR0d">
<p></p>
<hr size="1">Not happy with your email address? <br>
<a moz-do-not-send="true"
href="http://uk.docs.yahoo.com/ymail/new.html" target="_blank">Get the
one you really want</a> - millions of new email addresses available now
at <a moz-do-not-send="true"
href="http://uk.docs.yahoo.com/ymail/new.html" target="_blank">Yahoo!</a>
</div>
<br>
_______________________________________________<br>
Opensim-dev mailing list<br>
<a moz-do-not-send="true" href="mailto:Opensim-dev@lists.berlios.de">Opensim-dev@lists.berlios.de</a><br>
<a moz-do-not-send="true"
href="https://lists.berlios.de/mailman/listinfo/opensim-dev"
target="_blank">https://lists.berlios.de/mailman/listinfo/opensim-dev</a><br>
<br>
</blockquote>
</div>
<br>
<pre wrap="">
<hr size="4" width="90%">
_______________________________________________
Opensim-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Opensim-dev@lists.berlios.de">Opensim-dev@lists.berlios.de</a>
<a class="moz-txt-link-freetext" href="https://lists.berlios.de/mailman/listinfo/opensim-dev">https://lists.berlios.de/mailman/listinfo/opensim-dev</a>
</pre>
</blockquote>
<br>
</body>
</html>