Scyllarus: C++ Hyperspectral Processing Library
Hyperspectral Image Processing Pipeline
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
input.h
Go to the documentation of this file.
1 /****************************************************************************************
2  * SCYLLARUS : C++ HYPERSPECTRAL PROCESSING LIBRARY
3  * input.h - Hyperspectral Image Input Object Base.
4  *
5  * This computer code is subject to copyright:
6  * (c) National ICT Australia Limited (NICTA) 2013-2014 All Rights Reserved.
7  *
8  * Jeremy Oorloff, National ICT Australia (NICTA)
9  *
10  ***************************************************************************************/
11 
12 #include <armadillo>
13 #include <gdal_priv.h>
14 
15 #include "scyllarus_types.h"
16 
17 #ifndef INPUT_H_
18 #define INPUT_H_
19 
20 namespace scyl
21 {
22 
33 class input
34 {
35 
36 
37 public:
38 
39  input();
40  virtual ~input();
41 
42  // Getters
43 
44  virtual arma::fcube I() const;
45 
46  virtual arma::fcube I(const arma::uvec bands) const;
47 
48  virtual arma::fcube I(int r0, int c0, int r1, int c1) const;
49 
50  virtual arma::fcube I(const arma::uvec bands, int r0, int c0, int r1, int c1) const;
51 
52  virtual const arma::fcube * I_ptr() const;
53 
54  virtual arma::fvec illuminant() const;
55 
56  virtual arma::fmat k() const;
57 
58  virtual arma::fmat g() const;
59 
60  virtual arma::fcube s() const;
61 
62  virtual const arma::fcube * s_ptr() const;
63 
64  virtual arma::fmat elements() const;
65 
66  virtual arma::fmat endmembers() const;
67 
68  virtual std::vector<std::string> endmember_labels() const;
69 
70  virtual arma::fcube element_abundances() const;
71 
72  virtual arma::ucube element_abundance_indexes() const;
73 
74  virtual arma::fmat endmember_abundances() const;
75 
76  virtual arma::umat endmember_abundance_indexes() const;
77 
78  virtual arma::fvec wavelengths() const;
79 
80  virtual GDALDataset * gdal_dataset_ptr() const;
81 
82  virtual scyl::INPUT_TYPE type();
83 
84 
85  int height() const;
86  int width() const;
87  int bands() const;
88 
89 protected:
90 
91  unsigned int m_height;
92  unsigned int m_width;
93  unsigned int m_bands;
94 
95 };
96 
97 }
98 #endif /* INPUT_H_ */
virtual arma::fcube s() const
Gets s.
Definition: input.cpp:260
virtual ~input()
Definition: input.cpp:29
Input is a base class from which input classes for the pipeline are derived..
Definition: input.h:33
virtual GDALDataset * gdal_dataset_ptr() const
Gets gdal_dataset_ptr.
Definition: input.cpp:296
virtual const arma::fcube * s_ptr() const
Gets a pointer to s.
Definition: input.cpp:272
int bands() const
Get bands.
Definition: input.cpp:58
virtual arma::fvec illuminant() const
Gets illuminant.
Definition: input.cpp:248
virtual arma::umat endmember_abundance_indexes() const
Gets endmember_abundance_indexes.
Definition: input.cpp:212
INPUT_TYPE
Definition: scyllarus_types.h:21
int height() const
Get height.
Definition: input.cpp:38
virtual arma::fmat elements() const
Gets elements.
Definition: input.cpp:142
virtual arma::fmat g() const
Gets g.
Definition: input.cpp:224
virtual arma::fcube I() const
Gets I.
Definition: input.cpp:70
unsigned int m_width
Definition: input.h:92
virtual arma::fcube element_abundances() const
Gets element_abundances.
Definition: input.cpp:178
virtual const arma::fcube * I_ptr() const
Gets a pointer to I.
Definition: input.cpp:130
virtual arma::ucube element_abundance_indexes() const
Gets element_abundance_indexes.
Definition: input.cpp:190
int width() const
Get width.
Definition: input.cpp:48
input()
Definition: input.cpp:18
virtual arma::fmat endmember_abundances() const
Gets endmember_abundances.
Definition: input.cpp:201
unsigned int m_bands
Definition: input.h:93
virtual arma::fvec wavelengths() const
Gets wavelengths.
Definition: input.cpp:284
virtual arma::fmat endmembers() const
Gets endmembers.
Definition: input.cpp:154
virtual arma::fmat k() const
Gets k.
Definition: input.cpp:236
virtual scyl::INPUT_TYPE type()
Tells you what an object is..... (Why isn't this already a thing?)
Definition: input.cpp:306
unsigned int m_height
Definition: input.h:91
virtual std::vector< std::string > endmember_labels() const
Gets endmember_labels.
Definition: input.cpp:166