Added ImageSequence to .ive plugin, added support for multiple ImageThreads in osgDB::ImagePager

This commit is contained in:
Robert Osfield
2008-07-25 13:45:07 +00:00
parent 0d1656055c
commit ec4d189b64
18 changed files with 293 additions and 65 deletions

View File

@@ -53,6 +53,7 @@
#include "Viewport.h"
#include "Scissor.h"
#include "Image.h"
#include "ImageSequence.h"
#include "PointSprite.h"
#include "Multisample.h"
#include "Fog.h"
@@ -1094,6 +1095,29 @@ void DataOutputStream::writeNode(const osg::Node* node)
}
}
void DataOutputStream::writeImage(osg::Image *image)
{
if ( getVersion() >= VERSION_0029)
{
osg::ImageSequence* is = dynamic_cast<osg::ImageSequence*>(image);
if (is)
{
((ive::ImageSequence*)(is))->write(this);
}
else
{
writeInt(IVEIMAGE);
writeChar(getIncludeImageMode());
writeImage(getIncludeImageMode(),image);
}
}
else
{
writeChar(getIncludeImageMode());
writeImage(getIncludeImageMode(),image);
}
}
void DataOutputStream::writeImage(IncludeImageMode mode, osg::Image *image)
{
switch(mode) {