[osg-submissions] Small VPB patches for Windows

Jean-Sebastien Guay jean-sebastien.guay at polymtl.ca
Thu Jan 24 13:41:57 PST 2008


Hello Robert,

Following Paul Martz's and Bob Kuehne's course on VPB, I was able to do some
rudimentary testing of vpbcache, vpbmaster and osgdem --so functionality.

Here's what I did:

1. Create a ... "job script" I guess is what you would call it?

osgdem --geocentric -l 4 --compressed --terrain -v 2000.0 \
   -d ..\globe\dem\srtm_ramp2.world.21600x10800.tif \
   -t ..\globe\tex\wtb_large.tif \
   -o world_20k_10k_4.ive \
   -a world_20k_10k_4.osga \
   --so world_20k_10k_4.vpb

2. Initialize the cache

vpbcache --cache world_20k_10k_4.cache -s world_20k_10k_4.vpb --add

3. Then I created a file called "machines", containing:
_________________________________

Machine
{
    hostname localhost
    processes 2
}
_________________________________

4. Run it!

vpbmaster -s world_20k_10k_4.vpb --machines machines \
    --master-log master.log --cache world_20k_10k_4.cache


Out of those, osgdem --so works as expected. vpbcache seems to as well. But for
vpbmaster, I needed to make some changes:

1. You were using mode "wr" as an argument to fopen, whereas I think for
   read-write access "w+" is valid on all platforms. Using "wr" caused a crash
   on Windows, saying that it's an invalid mode. But I looked it up, and on
   Windows AND Linux, "w+" should be valid.

2. In MachinePool.cpp, to determine if we want to run on the local machine or
   remotely, we also check if the name is equal to "localhost" which is a
   valid name for the local machine on almost all platforms, regardless of
   the actual hostname.

3. I made some changes to FileUtils.cpp to make including windows.h a bit more
   clean and only include what we need, as well as using ::_flushall() to make
   sure we're using it out of the global namespace (like all other function
   calls in that file).

With these changes, vpbmaster works on the local machine.

I didn't test the ssh generation myself because I don't currently have a Windows
machine that has an ssh server on it, but I plan to test that out soon.

I can also throw up a quick page on the VPB wiki to document at least these
command lines, if you want. It might be useful to others, and then you could
just flesh that out when you have some time to document it.

J-S
--
______________________________________________________
Jean-Sebastien Guay     jean-sebastien.guay at polymtl.ca
                        http://whitestar02.webhop.org/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: FileUtils.cpp
Type: application/octet-stream
Size: 3747 bytes
Desc: not available
Url : http://lists.openscenegraph.org/pipermail/osg-submissions-openscenegraph.org/attachments/20080124/ac78615b/attachment-0003.obj 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PropertyFile.cpp
Type: application/octet-stream
Size: 9294 bytes
Desc: not available
Url : http://lists.openscenegraph.org/pipermail/osg-submissions-openscenegraph.org/attachments/20080124/ac78615b/attachment-0004.obj 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: MachinePool.cpp
Type: application/octet-stream
Size: 22300 bytes
Desc: not available
Url : http://lists.openscenegraph.org/pipermail/osg-submissions-openscenegraph.org/attachments/20080124/ac78615b/attachment-0005.obj 


More information about the osg-submissions mailing list