Replaced GCC/VS2010 hacks with code that should compile on both platforms.

This commit is contained in:
David Williams
2011-07-31 08:58:52 +01:00
parent 2e27e957a7
commit 53ae3de413
4 changed files with 16 additions and 29 deletions

View File

@ -37,21 +37,17 @@ template <typename VoxelType>
class VolumeSubclass : public Volume<VoxelType>
{
public:
#if defined(_MSC_VER) //DIRTY HACK!!!
class Sampler : public Volume<VoxelType>::Sampler< VolumeSubclass<VoxelType> >
#else
class Sampler : public Volume<VoxelType>::template Sampler< VolumeSubclass<VoxelType> >
#endif
typedef Volume<VoxelType> VolumeOfVoxelType; //Workaround for GCC/VS2010 differences. See http://goo.gl/qu1wn
class Sampler : public VolumeOfVoxelType::template Sampler< VolumeSubclass<VoxelType> >
{
public:
Sampler(VolumeSubclass<VoxelType>* volume)
:Volume<VoxelType>::template Sampler< VolumeSubclass<VoxelType> >(volume)
{
public:
Sampler(VolumeSubclass<VoxelType>* volume)
:Volume<VoxelType>::template Sampler< VolumeSubclass<VoxelType> >(volume)
{
this->mVolume = volume;
}
//~Sampler();
};
this->mVolume = volume;
}
//~Sampler();
};
/// Constructor for creating a fixed size volume.
VolumeSubclass(const Region& regValid)