From bc46ebd5bb9d91ede994488f3acc063457fadfe5 Mon Sep 17 00:00:00 2001 From: Julien Malik <julien.malik@c-s.fr> Date: Thu, 12 May 2011 17:25:24 +0200 Subject: [PATCH] ENH: add new streaming method to StreamingImageVirtualWriter to fit StreamingImageFileWriter --- Code/IO/otbStreamingImageVirtualWriter.h | 8 +++++++ Code/IO/otbStreamingImageVirtualWriter.txx | 26 ++++++++++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/Code/IO/otbStreamingImageVirtualWriter.h b/Code/IO/otbStreamingImageVirtualWriter.h index ec8d48db97..0b5db086be 100644 --- a/Code/IO/otbStreamingImageVirtualWriter.h +++ b/Code/IO/otbStreamingImageVirtualWriter.h @@ -94,6 +94,14 @@ public: m_StreamingManager = streamingManager; } + /** Set the streaming mode to 'stripped' and configure the number of strips + * which will be used to stream the image */ + void SetNumberOfDivisionsStrippedStreaming(unsigned int nbDivisions); + + /** Set the streaming mode to 'tiled' and configure the number of tiles + * which will be used to stream the image */ + void SetNumberOfDivisionsTiledStreaming(unsigned int nbDivisions); + /** Set the streaming mode to 'stripped' and configure the number of strips * which will be used to stream the image */ void SetNumberOfLinesStrippedStreaming(unsigned int nbLinesPerStrip); diff --git a/Code/IO/otbStreamingImageVirtualWriter.txx b/Code/IO/otbStreamingImageVirtualWriter.txx index bae2553bd0..0bcf560b67 100644 --- a/Code/IO/otbStreamingImageVirtualWriter.txx +++ b/Code/IO/otbStreamingImageVirtualWriter.txx @@ -23,6 +23,8 @@ #include "otbConfigure.h" #include "itkCommand.h" +#include "otbNumberOfDivisionsStrippedStreamingManager.h" +#include "otbNumberOfDivisionsTiledStreamingManager.h" #include "otbNumberOfLinesStrippedStreamingManager.h" #include "otbRAMDrivenStrippedStreamingManager.h" #include "otbTileDimensionTiledStreamingManager.h" @@ -54,6 +56,30 @@ StreamingImageVirtualWriter<TInputImage> Superclass::PrintSelf(os, indent); } +template <class TInputImage> +void +StreamingImageVirtualWriter<TInputImage> +::SetNumberOfDivisionsStrippedStreaming(unsigned int nbDivisions) +{ + typedef NumberOfDivisionsStrippedStreamingManager<TInputImage> NumberOfDivisionsStrippedStreamingManagerType; + typename NumberOfDivisionsStrippedStreamingManagerType::Pointer streamingManager = NumberOfDivisionsStrippedStreamingManagerType::New(); + streamingManager->SetNumberOfDivisions(nbDivisions); + + m_StreamingManager = streamingManager; +} + +template <class TInputImage> +void +StreamingImageVirtualWriter<TInputImage> +::SetNumberOfDivisionsTiledStreaming(unsigned int nbDivisions) +{ + typedef NumberOfDivisionsTiledStreamingManager<TInputImage> NumberOfDivisionsTiledStreamingManagerType; + typename NumberOfDivisionsTiledStreamingManagerType::Pointer streamingManager = NumberOfDivisionsTiledStreamingManagerType::New(); + streamingManager->SetNumberOfDivisions(nbDivisions); + + m_StreamingManager = streamingManager; +} + template <class TInputImage> void StreamingImageVirtualWriter<TInputImage> -- GitLab