Implemented an osg::minimum and osg::maximum template functions to replace

the std::min/max functions previously used in parts of the osg, since the
std::min/max methods do not seem implemented under IRIX.
This commit is contained in:
Robert Osfield
2003-02-24 12:02:00 +00:00
parent 372ca1d227
commit 7877c55770
3 changed files with 18 additions and 11 deletions

View File

@@ -15,8 +15,6 @@
#include <osg/Notify>
#include <osg/GLU>
#include <algorithm>
using namespace osg;
State::State()
@@ -198,8 +196,8 @@ void State::captureCurrentState(StateSet& stateset) const
}
// revert to using std::max for consistency, std::max should be defined by STLport on VS.
// // visual studio 6.0 doesn't appear to define std::max?!? So do our own here..
// revert to using maximum for consistency, maximum should be defined by STLport on VS.
// // visual studio 6.0 doesn't appear to define maximum?!? So do our own here..
// template<class T>
// T mymax(const T& a,const T& b)
// {
@@ -225,9 +223,9 @@ void State::apply(const StateSet* dstate)
const StateSet::TextureAttributeList& ds_textureAttributeList = dstate->getTextureAttributeList();
unsigned int unit;
unsigned int unitMax = std::max(static_cast<unsigned int>(ds_textureModeList.size()),static_cast<unsigned int>(ds_textureAttributeList.size()));
unitMax = std::max(static_cast<unsigned int>(unitMax),static_cast<unsigned int>(_textureModeMapList.size()));
unitMax = std::max(static_cast<unsigned int>(unitMax),static_cast<unsigned int>(_textureAttributeMapList.size()));
unsigned int unitMax = maximum(static_cast<unsigned int>(ds_textureModeList.size()),static_cast<unsigned int>(ds_textureAttributeList.size()));
unitMax = maximum(static_cast<unsigned int>(unitMax),static_cast<unsigned int>(_textureModeMapList.size()));
unitMax = maximum(static_cast<unsigned int>(unitMax),static_cast<unsigned int>(_textureAttributeMapList.size()));
for(unit=0;unit<unitMax;++unit)
{
if (setActiveTextureUnit(unit))
@@ -262,7 +260,7 @@ void State::apply()
applyAttributeMap(_attributeMap);
unsigned int unit;
unsigned int unitMax = std::max(_textureModeMapList.size(),_textureAttributeMapList.size());
unsigned int unitMax = maximum(_textureModeMapList.size(),_textureAttributeMapList.size());
for(unit=0;unit<unitMax;++unit)
{
if (setActiveTextureUnit(unit))