raster.h
Go to the documentation of this file.
1 /* Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil.
2 
3  This file is part of the TerraLib - a Framework for building GIS enabled applications.
4 
5  TerraLib is free software: you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation, either version 3 of the License,
8  or (at your option) any later version.
9 
10  TerraLib is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License
16  along with TerraLib. See COPYING. If not, write to
17  TerraLib Team at <terralib-team@terralib.org>.
18  */
19 
20 /*!
21  \file raster_h.h
22 
23  \brief This file contains include headers for the Raster module.
24  */
25 
26 #ifndef __TERRALIB_RASTER_INTERNAL_RASTER_H_H
27 #define __TERRALIB_RASTER_INTERNAL_RASTER_H_H
28 
29 // TerraLib
30 #include "raster/Band.h"
31 #include "raster/BandIterator.h"
33 #include "raster/BandProperty.h"
34 #include "raster/BandSummary.h"
35 #include "raster/BlockUtils.h"
36 #include "raster/BandProperty.h"
37 #include "raster/Config.h"
38 #include "raster/Exception.h"
39 #include "raster/Grid.h"
40 #include "raster/Interpolator.h"
42 #include "raster/ProxyRaster.h"
43 #include "raster/Raster.h"
44 #include "raster/RasterFactory.h"
45 #include "raster/RasterIterator.h"
46 #include "raster/RasterProperty.h"
47 #include "raster/RasterSummary.h"
50 #include "raster/Reprojection.h"
54 #include "raster/TileIndexer.h"
55 #include "raster/Utils.h"
56 #include "raster/Vectorizer.h"
58 
59 /*!
60  \defgroup rst Raster
61 
62  \brief This module can be used to manage geographical data with raster representation.
63 
64  The TerraLib Raster module provides the base classes foundation for handling geographical data such as remote sensing imagery data.
65  The raster data structure can be viewed as a matrix of cells or pixels associated with spatial locations forming a regular grid.
66  By design each cell can be viewed, individually, as a multi-dimensional data.
67 
68  This module defines only the abstract classes and therefore implementations must be provided.
69  We call these implementations: raster drivers. TerraLib provides raster drivers on top of other libraries (e.g. GDAL), DBMS (e.g. PostGIS Raster)
70  and an In-Memory implementation.
71 
72  The main classes/concepts in this module are listed here. The namespace associated to the Raster module is te::rst.
73  To know more about it, see the te::rst namespace documentation.
74 */
75 
76 namespace te
77 {
78  /*!
79  \brief Namespace for the Raster module of TerraLib.
80  */
81  namespace rst
82  {
83  } // end namespace rst
84 } // end namespa
85 
86 #endif // __TERRALIB_RASTER_INTERNAL_RASTER_H_H
87 
It implements and iterator to "navigate" over a single band, optimized by a window structure (e....
It implements an iterator to "navigate" over a single band (const or not const).
It describes one band (or dimension) of a raster.
A struct that can be used to keep the summary of a raster band (most statistics).
Utility functions for dealing with raster data blocks.
It interpolates one pixel based on a selected algorithm.
A proxy class for bands of several rasters over the same region.
It implements and iterator to "navigate" over a raster, with a predefined number of bands.
Raster property.
A singleton for keeping raster summaries (most statistics).
RasterSummary is just a typedef of a boost::ptr_vector.
An access synchronizer to be used in SynchronizedRaster raster instances.
It contains the algorithm to reproject raster data.
Synchronized raster raster band blocks manager.
Syncrhonized raster band.
An adapter class to allow concurrent access to raster data by multiple threads.
Polygon tile indexing class for optmized geometrical relational tests.
A polygon container node class.
It implements the vectorizer, based on TerraLib 4 algorithm.
TerraLib.
It gives access to values in one band (dimension) of a raster.
An exception class for the Raster module.
A rectified grid is the spatial support for raster data.
This is the abstract factory for Rasters.
An abstract class for raster data strucutures.
Configuration flags for the Raster module of TerraLib.
Utility functions for the raster module.