Scyllarus: C++ Hyperspectral Processing Library
Hyperspectral Image Processing Pipeline
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
Public Member Functions | Private Attributes | List of all members
scyl::hsz_input Class Reference

HSZ_Input is an object that facilitates reading in of HSZ files. More...

#include <hsz_input.h>

Inheritance diagram for scyl::hsz_input:
scyl::input

Public Member Functions

 hsz_input (std::string filename, bool hold=true)
 
virtual ~hsz_input ()
 
arma::fcube I () const
 Get I. More...
 
const arma::fcube * I_ptr () const
 Gets a pointer to I. If you ask for a pointer, 'hold' must be true or you will get an exception. More...
 
arma::fvec illuminant () const
 Get illuminant. More...
 
arma::fmat k () const
 Get k. More...
 
arma::fcube s () const
 Get s. More...
 
const arma::fcube * s_ptr () const
 Gets a pointer to s. If you ask for a pointer, 'hold' must be true or you will get an exception. More...
 
arma::fmat elements () const
 Get elements. More...
 
arma::fmat endmembers () const
 Gets endmembers. More...
 
std::vector< std::string > endmember_labels () const
 Gets endmember_labels. More...
 
arma::fcube element_abundances () const
 Get element_abundances. More...
 
arma::ucube element_abundance_indexes () const
 Get element_abundance_indexes. More...
 
arma::fmat endmember_abundances () const
 
arma::umat endmember_abundance_indexes () const
 
arma::fmat g () const
 Get g. More...
 
arma::fvec wavelengths () const
 Get wavelengths. More...
 
scyl::INPUT_TYPE type ()
 Tells you what an object is. More...
 
- Public Member Functions inherited from scyl::input
 input ()
 
virtual ~input ()
 
virtual arma::fcube I (const arma::uvec bands) const
 Gets I (subset of bands) More...
 
virtual arma::fcube I (int r0, int c0, int r1, int c1) const
 Gets I (cropped) More...
 
virtual arma::fcube I (const arma::uvec bands, int r0, int c0, int r1, int c1) const
 Gets I (subset of bands) More...
 
virtual GDALDataset * gdal_dataset_ptr () const
 Gets gdal_dataset_ptr. More...
 
int height () const
 Get height. More...
 
int width () const
 Get width. More...
 
int bands () const
 Get bands. More...
 

Private Attributes

scyl::iotools::hsz m_hsz
 
scyl::iotools::hsz_data * m_data
 
bool m_hold
 
arma::fcube m_I
 
arma::fcube m_s
 

Additional Inherited Members

- Protected Attributes inherited from scyl::input
unsigned int m_height
 
unsigned int m_width
 
unsigned int m_bands
 

Detailed Description

HSZ_Input is an object that facilitates reading in of HSZ files.

At the most basic level, the input can be used as follows:

scyl::input * input = scyl::hsz_input("string/filename/path.hsz");

Class members will extract and reconstruct data from the file as requested. If the data is NURBS encoded, this class will detect that and act accordingly.

Constructor & Destructor Documentation

scyl::hsz_input::hsz_input ( std::string  filename,
bool  hold = true 
)

HSZ_Input Constructor Creates a HSZ_Input object.

Parameters
filenamethe string path to the file to be loaded.
holdif set to true, the HSZ object will hold I and S in memory rather than reconstructing each time it is accessed (Faster, more memory used)
Exceptions
ExceptionInvalid file
scyl::hsz_input::~hsz_input ( )
virtual

HSZ_Input Destructor

Member Function Documentation

arma::ucube scyl::hsz_input::element_abundance_indexes ( ) const
virtual

Get element_abundance_indexes.

Returns
element_abundance_indexes

Reimplemented from scyl::input.

arma::fcube scyl::hsz_input::element_abundances ( ) const
virtual

Get element_abundances.

Returns
element_abundances

Reimplemented from scyl::input.

arma::fmat scyl::hsz_input::elements ( ) const
virtual

Get elements.

Returns
elements

Reimplemented from scyl::input.

arma::umat scyl::hsz_input::endmember_abundance_indexes ( ) const
virtual
Returns

Reimplemented from scyl::input.

arma::fmat scyl::hsz_input::endmember_abundances ( ) const
virtual
Returns

Reimplemented from scyl::input.

std::vector< std::string > scyl::hsz_input::endmember_labels ( ) const
virtual

Gets endmember_labels.

Returns
endmember_labels
Exceptions
ExceptionData does not exist.

Reimplemented from scyl::input.

arma::fmat scyl::hsz_input::endmembers ( ) const
virtual

Gets endmembers.

Returns
endmembers
Exceptions
ExceptionData does not exist.

Reimplemented from scyl::input.

arma::fmat scyl::hsz_input::g ( ) const
virtual

Get g.

Returns
g

Reimplemented from scyl::input.

arma::fcube scyl::hsz_input::I ( ) const
virtual

Get I.

Returns
I

Reimplemented from scyl::input.

const arma::fcube * scyl::hsz_input::I_ptr ( ) const
virtual

Gets a pointer to I. If you ask for a pointer, 'hold' must be true or you will get an exception.

Returns
a pointer to I

Reimplemented from scyl::input.

arma::fvec scyl::hsz_input::illuminant ( ) const
virtual

Get illuminant.

Returns
illuminant

Reimplemented from scyl::input.

arma::fmat scyl::hsz_input::k ( ) const
virtual

Get k.

Returns
k

Reimplemented from scyl::input.

arma::fcube scyl::hsz_input::s ( ) const
virtual

Get s.

Returns
s

Reimplemented from scyl::input.

const arma::fcube * scyl::hsz_input::s_ptr ( ) const
virtual

Gets a pointer to s. If you ask for a pointer, 'hold' must be true or you will get an exception.

Returns
a pointer to s

Reimplemented from scyl::input.

scyl::INPUT_TYPE scyl::hsz_input::type ( )
virtual

Tells you what an object is.

Returns
The type enum of this object.

Reimplemented from scyl::input.

arma::fvec scyl::hsz_input::wavelengths ( ) const
virtual

Get wavelengths.

Returns
wavelengths

Reimplemented from scyl::input.

Member Data Documentation

scyl::iotools::hsz_data* scyl::hsz_input::m_data
private
bool scyl::hsz_input::m_hold
private
scyl::iotools::hsz scyl::hsz_input::m_hsz
private
arma::fcube scyl::hsz_input::m_I
private
arma::fcube scyl::hsz_input::m_s
private

The documentation for this class was generated from the following files: