OTB
9.0.0
Orfeo Toolbox
Modules
Core
Streaming
include
otbNumberOfDivisionsTiledStreamingManager.hxx
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2005-2022 Centre National d'Etudes Spatiales (CNES)
3
*
4
* This file is part of Orfeo Toolbox
5
*
6
* https://www.orfeo-toolbox.org/
7
*
8
* Licensed under the Apache License, Version 2.0 (the "License");
9
* you may not use this file except in compliance with the License.
10
* You may obtain a copy of the License at
11
*
12
* http://www.apache.org/licenses/LICENSE-2.0
13
*
14
* Unless required by applicable law or agreed to in writing, software
15
* distributed under the License is distributed on an "AS IS" BASIS,
16
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17
* See the License for the specific language governing permissions and
18
* limitations under the License.
19
*/
20
21
#ifndef otbNumberOfDivisionsTiledStreamingManager_hxx
22
#define otbNumberOfDivisionsTiledStreamingManager_hxx
23
24
#include "
otbNumberOfDivisionsTiledStreamingManager.h
"
25
#include "
otbMacro.h
"
26
#include "
otbImageRegionSquareTileSplitter.h
"
27
28
namespace
otb
29
{
30
31
template
<
class
TImage>
32
NumberOfDivisionsTiledStreamingManager<TImage>::NumberOfDivisionsTiledStreamingManager
() : m_NumberOfDivisions(0)
33
{
34
}
35
36
template
<
class
TImage>
37
NumberOfDivisionsTiledStreamingManager<TImage>::~NumberOfDivisionsTiledStreamingManager
()
38
{
39
}
40
41
template
<
class
TImage>
42
void
NumberOfDivisionsTiledStreamingManager<TImage>::PrepareStreaming
(itk::DataObject*
/*input*/
,
const
RegionType
& region)
43
{
44
otbMsgDevMacro
(<<
"Activating NumberOfDivisionsTiledStreamingManager streaming mode"
)
if
(m_NumberOfDivisions < 1)
45
{
46
itkWarningMacro(<<
"NumberOfDivisions set to 0 : streaming disabled"
) m_NumberOfDivisions = 1;
47
}
48
49
this->m_Splitter =
otb::ImageRegionSquareTileSplitter
<itkGetStaticConstMacro(ImageDimension)>::New();
50
this->m_ComputedNumberOfSplits = this->m_Splitter->GetNumberOfSplits(region, m_NumberOfDivisions);
51
otbMsgDevMacro
(<<
"Computed number of split : "
<< this->m_ComputedNumberOfSplits)
52
53
// Save the region to generate the splits later
54
this->m_Region = region;
55
}
56
57
}
// End namespace otb
58
59
#endif
otb::NumberOfDivisionsTiledStreamingManager::PrepareStreaming
void PrepareStreaming(itk::DataObject *input, const RegionType ®ion) override
Definition:
otbNumberOfDivisionsTiledStreamingManager.hxx:42
otb::NumberOfDivisionsTiledStreamingManager::NumberOfDivisionsTiledStreamingManager
NumberOfDivisionsTiledStreamingManager()
Definition:
otbNumberOfDivisionsTiledStreamingManager.hxx:32
otb
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.
Definition:
otbJoinContainer.h:32
otb::ImageRegionSquareTileSplitter
Divide a region into several pieces.
Definition:
otbImageRegionSquareTileSplitter.h:75
otbMacro.h
otb::NumberOfDivisionsTiledStreamingManager::~NumberOfDivisionsTiledStreamingManager
~NumberOfDivisionsTiledStreamingManager() override
Definition:
otbNumberOfDivisionsTiledStreamingManager.hxx:37
otb::NumberOfDivisionsTiledStreamingManager::RegionType
Superclass::RegionType RegionType
Definition:
otbNumberOfDivisionsTiledStreamingManager.h:52
otbMsgDevMacro
#define otbMsgDevMacro(x)
Definition:
otbMacro.h:64
otbImageRegionSquareTileSplitter.h
otbNumberOfDivisionsTiledStreamingManager.h
Generated at Wed Feb 28 2024 15:23:11 for
OTB
with
1.8.17