Linux compile fixes.

This commit is contained in:
p265186 2012-06-15 17:29:39 +02:00
parent c11b02f354
commit 9fdc30643a
6 changed files with 20 additions and 20 deletions

View File

@ -109,7 +109,7 @@ namespace PolyVox
namespace PolyVox namespace PolyVox
{ {
template<> template<>
typename VoxelTypeTraits<Density8>::DensityType convertToDensity(Density8 voxel); VoxelTypeTraits<Density8>::DensityType convertToDensity(Density8 voxel);
template<> template<>
class ConvertToDensity<Density8> class ConvertToDensity<Density8>

View File

@ -125,10 +125,10 @@ namespace PolyVox
namespace PolyVox namespace PolyVox
{ {
template<> template<>
typename VoxelTypeTraits<MaterialDensityPair44>::DensityType convertToDensity(MaterialDensityPair44 voxel); VoxelTypeTraits<MaterialDensityPair44>::DensityType convertToDensity(MaterialDensityPair44 voxel);
template<> template<>
typename VoxelTypeTraits<MaterialDensityPair88>::DensityType convertToDensity(MaterialDensityPair88 voxel); VoxelTypeTraits<MaterialDensityPair88>::DensityType convertToDensity(MaterialDensityPair88 voxel);
template<> template<>
class ConvertToDensity<MaterialDensityPair44> class ConvertToDensity<MaterialDensityPair44>

View File

@ -206,7 +206,7 @@ namespace PolyVox
typename VolumeType::VoxelType v011; typename VolumeType::VoxelType v011;
typename VolumeType::VoxelType v111; typename VolumeType::VoxelType v111;
ConvertToDensity<VolumeType::VoxelType> DensityConverter; ConvertToDensity<typename VolumeType::VoxelType> DensityConverter;
if(isPrevZAvail) if(isPrevZAvail)
{ {
@ -399,7 +399,7 @@ namespace PolyVox
Array2DInt32& m_pCurrentVertexIndicesY, Array2DInt32& m_pCurrentVertexIndicesY,
Array2DInt32& m_pCurrentVertexIndicesZ) Array2DInt32& m_pCurrentVertexIndicesZ)
{ {
ConvertToMaterial<VolumeType::VoxelType> converter; ConvertToMaterial<typename VolumeType::VoxelType> converter;
int32_t iZVolSpace = m_regSliceCurrent.getLowerCorner().getZ(); int32_t iZVolSpace = m_regSliceCurrent.getLowerCorner().getZ();
const uint32_t uZRegSpace = iZVolSpace - m_regSizeInVoxels.getLowerCorner().getZ(); const uint32_t uZRegSpace = iZVolSpace - m_regSizeInVoxels.getLowerCorner().getZ();
@ -447,9 +447,9 @@ namespace PolyVox
//Choose one of the two materials to use for the vertex (we don't interpolate as interpolation of //Choose one of the two materials to use for the vertex (we don't interpolate as interpolation of
//material IDs does not make sense). We take the largest, so that if we are working on a material-only //material IDs does not make sense). We take the largest, so that if we are working on a material-only
//volume we get the one which is non-zero. Both materials can be non-zero if our volume has a density component. //volume we get the one which is non-zero. Both materials can be non-zero if our volume has a density component.
ConvertToMaterial<VolumeType::VoxelType>::MaterialType uMaterial000 = converter(v000); typename ConvertToMaterial<typename VolumeType::VoxelType>::MaterialType uMaterial000 = converter(v000);
ConvertToMaterial<VolumeType::VoxelType>::MaterialType uMaterial100 = converter(v100); typename ConvertToMaterial<typename VolumeType::VoxelType>::MaterialType uMaterial100 = converter(v100);
ConvertToMaterial<VolumeType::VoxelType>::MaterialType uMaterial = (std::max)(uMaterial000, uMaterial100); typename ConvertToMaterial<typename VolumeType::VoxelType>::MaterialType uMaterial = (std::max)(uMaterial000, uMaterial100);
PositionMaterialNormal surfaceVertex(v3dPosition, v3dNormal, static_cast<float>(uMaterial)); PositionMaterialNormal surfaceVertex(v3dPosition, v3dNormal, static_cast<float>(uMaterial));
uint32_t uLastVertexIndex = m_meshCurrent->addVertex(surfaceVertex); uint32_t uLastVertexIndex = m_meshCurrent->addVertex(surfaceVertex);
@ -473,8 +473,8 @@ namespace PolyVox
//Choose one of the two materials to use for the vertex (we don't interpolate as interpolation of //Choose one of the two materials to use for the vertex (we don't interpolate as interpolation of
//material IDs does not make sense). We take the largest, so that if we are working on a material-only //material IDs does not make sense). We take the largest, so that if we are working on a material-only
//volume we get the one which is non-zero. Both materials can be non-zero if our volume has a density component. //volume we get the one which is non-zero. Both materials can be non-zero if our volume has a density component.
ConvertToMaterial<VolumeType::VoxelType>::MaterialType uMaterial000 = converter(v000); typename ConvertToMaterial<typename VolumeType::VoxelType>::MaterialType uMaterial000 = converter(v000);
ConvertToMaterial<VolumeType::VoxelType>::MaterialType uMaterial010 = converter(v010); typename ConvertToMaterial<typename VolumeType::VoxelType>::MaterialType uMaterial010 = converter(v010);
uint32_t uMaterial = (std::max)(uMaterial000, uMaterial010); uint32_t uMaterial = (std::max)(uMaterial000, uMaterial010);
PositionMaterialNormal surfaceVertex(v3dPosition, v3dNormal, static_cast<float>(uMaterial)); PositionMaterialNormal surfaceVertex(v3dPosition, v3dNormal, static_cast<float>(uMaterial));
@ -499,8 +499,8 @@ namespace PolyVox
//Choose one of the two materials to use for the vertex (we don't interpolate as interpolation of //Choose one of the two materials to use for the vertex (we don't interpolate as interpolation of
//material IDs does not make sense). We take the largest, so that if we are working on a material-only //material IDs does not make sense). We take the largest, so that if we are working on a material-only
//volume we get the one which is non-zero. Both materials can be non-zero if our volume has a density component. //volume we get the one which is non-zero. Both materials can be non-zero if our volume has a density component.
ConvertToMaterial<VolumeType::VoxelType>::MaterialType uMaterial000 = converter(v000); typename ConvertToMaterial<typename VolumeType::VoxelType>::MaterialType uMaterial000 = converter(v000);
ConvertToMaterial<VolumeType::VoxelType>::MaterialType uMaterial001 = converter(v001); typename ConvertToMaterial<typename VolumeType::VoxelType>::MaterialType uMaterial001 = converter(v001);
uint32_t uMaterial = (std::max)(uMaterial000, uMaterial001); uint32_t uMaterial = (std::max)(uMaterial000, uMaterial001);
PositionMaterialNormal surfaceVertex(v3dPosition, v3dNormal, static_cast<float>(uMaterial)); PositionMaterialNormal surfaceVertex(v3dPosition, v3dNormal, static_cast<float>(uMaterial));

View File

@ -26,13 +26,13 @@ freely, subject to the following restrictions:
namespace PolyVox namespace PolyVox
{ {
template<> template<>
typename VoxelTypeTraits<MaterialDensityPair44>::DensityType convertToDensity(MaterialDensityPair44 voxel) VoxelTypeTraits<MaterialDensityPair44>::DensityType convertToDensity(MaterialDensityPair44 voxel)
{ {
return voxel.getDensity(); return voxel.getDensity();
} }
template<> template<>
typename VoxelTypeTraits<MaterialDensityPair88>::DensityType convertToDensity(MaterialDensityPair88 voxel) VoxelTypeTraits<MaterialDensityPair88>::DensityType convertToDensity(MaterialDensityPair88 voxel)
{ {
return voxel.getDensity(); return voxel.getDensity();
} }

View File

@ -44,13 +44,13 @@ void writeDensityValueToVoxel(typename VoxelTypeTraits<VoxelType>::DensityType v
} }
template<> template<>
void writeDensityValueToVoxel(typename VoxelTypeTraits<Density8>::DensityType valueToWrite, Density8& voxel) void writeDensityValueToVoxel(VoxelTypeTraits<Density8>::DensityType valueToWrite, Density8& voxel)
{ {
voxel.setDensity(valueToWrite); voxel.setDensity(valueToWrite);
} }
template<> template<>
void writeDensityValueToVoxel(typename VoxelTypeTraits<MaterialDensityPair88>::DensityType valueToWrite, MaterialDensityPair88& voxel) void writeDensityValueToVoxel(VoxelTypeTraits<MaterialDensityPair88>::DensityType valueToWrite, MaterialDensityPair88& voxel)
{ {
voxel.setDensity(valueToWrite); voxel.setDensity(valueToWrite);
} }
@ -63,7 +63,7 @@ void writeMaterialValueToVoxel(typename VoxelTypeTraits<VoxelType>::MaterialType
} }
template<> template<>
void writeMaterialValueToVoxel(typename VoxelTypeTraits<MaterialDensityPair88>::MaterialType valueToWrite, MaterialDensityPair88& voxel) void writeMaterialValueToVoxel(VoxelTypeTraits<MaterialDensityPair88>::MaterialType valueToWrite, MaterialDensityPair88& voxel)
{ {
voxel.setMaterial(valueToWrite); voxel.setMaterial(valueToWrite);
} }

View File

@ -43,13 +43,13 @@ void writeDensityValueToVoxel(typename VoxelTypeTraits<VoxelType>::DensityType v
} }
template<> template<>
void writeDensityValueToVoxel(typename VoxelTypeTraits<Density8>::DensityType valueToWrite, Density8& voxel) void writeDensityValueToVoxel(VoxelTypeTraits<Density8>::DensityType valueToWrite, Density8& voxel)
{ {
voxel.setDensity(valueToWrite); voxel.setDensity(valueToWrite);
} }
template<> template<>
void writeDensityValueToVoxel(typename VoxelTypeTraits<MaterialDensityPair88>::DensityType valueToWrite, MaterialDensityPair88& voxel) void writeDensityValueToVoxel(VoxelTypeTraits<MaterialDensityPair88>::DensityType valueToWrite, MaterialDensityPair88& voxel)
{ {
voxel.setDensity(valueToWrite); voxel.setDensity(valueToWrite);
} }
@ -62,7 +62,7 @@ void writeMaterialValueToVoxel(typename VoxelTypeTraits<VoxelType>::MaterialType
} }
template<> template<>
void writeMaterialValueToVoxel(typename VoxelTypeTraits<MaterialDensityPair88>::MaterialType valueToWrite, MaterialDensityPair88& voxel) void writeMaterialValueToVoxel(VoxelTypeTraits<MaterialDensityPair88>::MaterialType valueToWrite, MaterialDensityPair88& voxel)
{ {
voxel.setMaterial(valueToWrite); voxel.setMaterial(valueToWrite);
} }