Skip to content
Snippets Groups Projects
Commit bd5e478b authored by Julien Michel's avatar Julien Michel
Browse files

COMP: Fixing compilation error

parent bee84ea1
Branches
Tags
No related merge requests found
......@@ -67,10 +67,9 @@ ImageRegionAdaptativeSplitter<VImageDimension>
return m_StreamVector.at(i);
}
// Here we only handle VDimension = 2
template <>
template <unsigned int VImageDimension>
void
ImageRegionAdaptativeSplitter<2>
ImageRegionAdaptativeSplitter<VImageDimension>
::EstimateSplitMap()
{
// Clear previous split map
......@@ -83,8 +82,8 @@ ImageRegionAdaptativeSplitter<2>
m_IsUpToDate = true;
return;
}
// Handle the empty hint case
if(m_TileHint[0] == 0 || m_TileHint[1] == 0)
// Handle the empty hint case and the case where VImageDimension != 2
if(m_TileHint[0] == 0 || m_TileHint[1] == 0 || VImageDimension != 2)
{
// In this case we fallback to the classical tile splitter
typename otb::ImageRegionSquareTileSplitter<2>::Pointer
......@@ -220,26 +219,6 @@ ImageRegionAdaptativeSplitter<2>
return;
}
// When VImageDimension is not 2, we fall back to classical tile splitter
template <unsigned int VImageDimension>
void
ImageRegionAdaptativeSplitter<VImageDimension>
::EstimateSplitMap()
{
// In this case we fallback to the classical tile splitter
typename otb::ImageRegionSquareTileSplitter<VImageDimension>::Pointer
splitter = otb::ImageRegionSquareTileSplitter<VImageDimension>::New();
// Retrieve nb splits
unsigned int nbSplits = splitter->GetNumberOfSplits(m_ImageRegion,m_RequestedNumberOfSplits);
for(unsigned int i = 0; i<nbSplits;++i)
{
m_StreamVector->push_back(splitter->GetSplit(i,m_RequestedNumberOfSplits,m_ImageRegion));
}
m_IsUpToDate = true;
return;
}
/**
*
*/
......
......@@ -21,6 +21,7 @@
#include "otbRAMDrivenAdaptativeStreamingManager.h"
#include "otbMacro.h"
#include "otbImageRegionAdaptativeSplitter.h"
#include "itkMetaDataObject.h"
namespace otb
{
......@@ -44,20 +45,27 @@ RAMDrivenAdaptativeStreamingManager<TImage>::PrepareStreaming( itk::DataObject *
unsigned long nbDivisions =
this->EstimateOptimalNumberOfDivisions(input, region, m_AvailableRAMInMB, m_Bias);
this->m_Splitter = otb::ImageRegionAdaptativeSplitter<itkGetStaticConstMacro(ImageDimension)>::New();
typename otb::ImageRegionAdaptativeSplitter<itkGetStaticConstMacro(ImageDimension)>::SizeType tileHint;
unsigned int tileHintX, tileHintY;
itk::ExposeMetaData<unsigned int>(input->GetMetaDataDictionary(),
MetaDataKey::TileHintX,
tileHint[0]);
tileHintX);
itk::ExposeMetaData<unsigned int>(input->GetMetaDataDictionary(),
MetaDataKey::TileHintY,
tileHint[1]);
tileHintY);
tileHint[0] = tileHintX;
tileHint[1] = tileHintY;
typename otb::ImageRegionAdaptativeSplitter<itkGetStaticConstMacro(ImageDimension)>::Pointer splitter = otb::ImageRegionAdaptativeSplitter<itkGetStaticConstMacro(ImageDimension)>::New();
this->m_Splitter->SetTileHint(tileHint);
splitter->SetTileHint(tileHint);
this->m_Splitter = splitter;
this->m_ComputedNumberOfSplits = this->m_Splitter->GetNumberOfSplits(region, nbDivisions);
otbMsgDevMacro(<< "Number of split : " << this->m_ComputedNumberOfSplits)
this->m_Region = region;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment