Hi Robert,

I did a review of the HTTP and NON HTTP pager file read. I still use the
readNodeFile callback mechansim and this work. But for our
work, it's not only there a good idea to pass the custom code, because the
generation of the custom database (on the flow) doesn't
work as fast as the file read is. so if we are moving around over the
terrain, and once we come back to  a position we still were, and
the database pager should read all files still generated and there is one
missing and unfortunately the missing one has the highest
prio it will take that one, then the other will not paged in as long as the
missing one is generating, but it should be loaded all others,
and once the missing once is generated it will immedently paged in. like the
http request, if it's in the cache then we can load it without
downloading, directly read in.

so may we should change the mechansime, its not really general implemented:

you assume that we have only HTTP or NON HTTP, non http is no problem there
is only files. also cached ones and so.
but if we don't have http:// starting file names, you assume that it's a
file. but may it's a database request code for the tile gerneration
instead of a real existing file name, if we have such  information, then we
should be able to check the "filename"/ "request" not only
against http:// starting string may we can append a user request qeueu and a
user thread to pregenerate / preread the files. we should only
have a method

itr : Iterate over all QUEUEandThread  (non http, http, user )  {

if ( itr->requestForThisQueue(databaseRequest->_fileName)) {

itr->queue....

}

}

Class QUEUEandThread {

DatabaseThread _thread;
RequestQueue   _queue;

bool requestForThisQueue(std::string reqStr) {
  // if HTTP queue is
   return osgDB::containsServerAddress(reqStr)
}
}


so we would be able to append user requests queues very fast and the code
will be more general for future task.

/adrian

2008/11/12 Robert Osfield <[EMAIL PROTECTED]>

> Hi Adrian,
>
> On Wed, Nov 12, 2008 at 6:39 PM, Adrian Egli OpenSceneGraph (3D)
> <[EMAIL PROTECTED]> wrote:
> > Ok i see, so you would append a custum reading thread to the osg database
> to
> > avoid subclassing.
>
> There shouldn't be any need for a custom reading thread, just use the
> existing threads to call you code via the osgDB::readNodeFile
> mechanism - just put your code in a plugin and let the OSG call it.
>
> Robert.
> _______________________________________________
> osg-users mailing list
> osg-users@lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>



-- 
********************************************
Adrian Egli
_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to