Fire Core  8.0.0.alpha
GIS framework per tutti gli usi
 Tutto Classi Namespace Funzioni Variabili Ridefinizioni di tipo (typedef) Tipi enumerati (enum) Valori del tipo enumerato Friend
LayerRaster.hpp
1 #ifndef LAYERRASTER_HPP_INCLUDED
2 #define LAYERRASTER_HPP_INCLUDED
3 
4 #include <string>
5 
6 #include "fire/Object.hpp"
7 #include "fire/gis/export.hpp"
8 #include "fire/gis/data/Size.hpp"
9 #include "fire/source/raster/DriverType.hpp"
10 #include "fire/gear/projection/Projection.hpp"
11 #include "fire/gear/geom/MultiPolygon.hpp"
12 #include "fire/gear/geom/shared/EnvelopeSh.hpp"
13 #include "fire/source/raster/InterpolationType.hpp"
14 
15 
16 namespace fire {
17 namespace source {
18 namespace raster {
19 
20 
21 namespace shared {
22 class LayerRasterSh;
23 } // namespace shared
24 
25 
26 class FIRE_GIS_DLL LayerRaster : public Object {
27 
28  public:
30 
31  LayerRaster();
32  ~LayerRaster();
33 
34  virtual const fire::gear::geom::Envelope::EnvelopeShp getExtent() const = 0;
35  virtual const std::string getName() const;
36  virtual const std::string getMime() const;
37  virtual const int getSrid() const = 0;
38  virtual const fire::gis::data::Size getPixelSize() const = 0;
39  virtual const int getBandCount() const = 0;
40  virtual void getBandValuesAt(gear::geom::Envelope::EnvelopeShp envelope, const gis::data::Size& step, const source::raster::InterpolationType::InterpolationType& interptype, const std::vector< int >& bandindexes, std::vector< double >& band_values) = 0;
41  virtual void getBandValuesAt(double geoX, double geoY, const source::raster::InterpolationType::InterpolationType& interptype, const std::vector<int> &bandindexes, std::vector< double >& band_values) = 0;
42  virtual void setMask(fire::gear::geom::MultiPolygon multipolygon);
43  virtual const DriverType::DriverType getDriverType() const = 0 ;
44 };
45 
46 
47 } // namespace raster
48 } // namespace source
49 } // namespace fire
50 
51 #endif
Definition: EnvelopeSh.hpp:18
Classe per la gestione di un oggetto.
Definition: Object.hpp:29
Definition: LayerRaster.hpp:26
Definition: LayerRasterSh.hpp:18
Definition: MultiPolygon.hpp:48
Classe contenente le informazioni di dimensione.
Definition: Size.hpp:20