Hi Neil,

On 11/30/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
Hi All,

In regards to the desire to have a URL class,

Actually Mark was talking about URI rather than URL.

I recently had need of trying to load a 3DS file from a webserver. The issue I 
had was along the lines that 3DS took a pointer to a stream, and try as I 
might, when I tried to give it an istream instead - allowing the .net pluggin 
to handle the creation of an istream to the URL - I simply couldn't get the 3DS 
to read from an Istream.

As a compromise I created my own buffer object that took either an IStream, or 
a stream, and read the file into my own memory buffer. I then wrote functions 
on the buffer to mimic reading bytes forward and back - essentially a one for 
one mapping of the stream functions being used in the 3DS loader.

I then amended the .net plugin to create one of these objects, and read the URL 
into the buffer object. I then passed this through to the 3DS reader plugin, 
and changed this to use the object as its source of data instead of the stream.

Voila. I'm now able to read 3DS files from URL's. The methodology should 
migrate to any datasource, though I haven't actually done so. I'd like to make 
it more elegant at some point in the future, but for now if you wanted to use 
it for a different plugin, you would need to re-engineer the plugin to use the 
data object buffer - not difficult, just niggling that one has to do it.

If anyone is interested in looking at this approach, drop me a mail and I'll 
see about packing and sending it to you.

I think this would be a local workaround for standard C style file
support rather than istream support.  One could create a helper class
for this, but it needn't be a general requirement for all plugins.


Robert, previously you mentioned that any work in regards to plugin alterations 
would be passed to Don. Is this still the case given recent history ?

You must have mis-understood, general plugin issues are very much
within my domain - I'm both the author of the plugin system and
maintainer of it.  Don wrote the .net plugin, which is just one many
plugins.

Robert.
_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/

Reply via email to