EPR_BandId Struct Reference

The `EPR_BandId` structure contains information about a band within an ENVISAT product file which has been opened with the `epr_open_product()` API function. More...

`#include <epr_api.h>`

## Data Fields

EPR_Magic | magic
| The magic number for this structure.
int | spectr_band_index
| The (zero-based) spectral band index.
EPR_SProductId * | product_id
| The ID of the product to which this band belongs to.
char * | band_name
| The name as presented to the user in a band selection dialog (also known as spectral subset).
EPR_SDatasetRef | dataset_ref
| The reference of the source dataset containing the raw data used to create the band's pixel values.
EPR_ESampleModel | sample_model
| The sample model operation applied to the source dataset for getting the correct samples from the MDS (for example MERIS L2).
EPR_EDataTypeId | data_type
| The data type of the band's pixel values.
EPR_EScalingMethod | scaling_method
| The scaling method which must be applied to the raw source data in order to get the 'real' pixel values in geo-physical units.
float | scaling_offset
| The scaling offset.
float | scaling_factor
| The scaling factor.
epr_boolean | lines_mirrored
| If true (=1) lines will be mirrored (flipped) after read into a raster in order to ensure a pixel ordering in raster X direction from WEST to EAST.
char * | bm_expr
| A bit-mask expression used to filter valid pixels.
EPR_SPtrArray * | flag_coding
| The flag coding is a list of EPR_SFlag instances.
char * | unit
| The geophysical unit for the band's pixel values.
char * | description
| A short description of the band's contents.

## Detailed Description

The `EPR_BandId` structure contains information about a band within an ENVISAT product file which has been opened with the `epr_open_product()` API function.

A new `EPR_BandId` instance can be obtained with the `epr_get_band_id()` API function.

See also
  epr_open_product
  epr_get_band_id

## Field Documentation

## magic

EPR_Magic EPR_BandId::magic

The magic number for this structure.

IMPORTANT: This must always be the first member of this structure.

## spectr_band_index

int EPR_BandId::spectr_band_index

The (zero-based) spectral band index.

-1 if this is not a spectral band.

## product_id

EPR_SProductId* EPR_BandId::product_id

The ID of the product to which this band belongs to.

## band_name

char* EPR_BandId::band_name

The name as presented to the user in a band selection dialog (also known as spectral subset).

## dataset_ref

EPR_SDatasetRef EPR_BandId::dataset_ref

The reference of the source dataset containing the raw data used to create the band's pixel values.

The external format used in the DDDB is `MDS-name.field`, where `field` is a one-based index (field=1 corresponds to the first field)

## sample_model

EPR_ESampleModel EPR_BandId::sample_model

The sample model operation applied to the source dataset for getting the correct samples from the MDS (for example MERIS L2).

Possible values are:

- `*` --> no operation (direct copy)
- `1OF2` --> first byte of 2-byte interleaved MDS
- `2OF2` --> second byte of 2-byte interleaved MDS
- `0123` --> combine 3-bytes interleaved to 4-byte integer

## data_type

EPR_EDataTypeId EPR_BandId::data_type

The data type of the band's pixel values.

Possible values are:

- `*` --> the datatype remains unchanged.
- `uint8_t` --> 8-bit unsigned integer
- `uint32_t` --> 32-bit unsigned integer
- `Float` --> 32-bit IEEE floating point

## scaling_method

EPR_EScalingMethod EPR_BandId::scaling_method

The scaling method which must be applied to the raw source data in order to get the 'real' pixel values in geo-physical units.

Possible values are:

- `*` --> no scaling applied
- `Linear_Scale` --> linear scaling applied: y = offset + scale * x
- `Log_Scale` --> logarithmic scaling applied: y = log10(offset + scale * x)

## scaling_offset

float EPR_BandId::scaling_offset

The scaling offset.

Possible values are:

- `*` --> no offset provided (implies scaling_method=*)
- `const` --> a floating point constant
- `GADS.field[.field2]` --> value is provided in global annotation dataset with name `GADS` in field `field`. Optionally a second element index for multiple-element fields can be given too

## scaling_factor

float EPR_BandId::scaling_factor

The scaling factor.

Possible values are:

- `*` --> no factor provided (implies scaling_method=*)
- `const` --> a floating point constant
- `GADS.field[.field2]` --> value is provided in global annotation dataset with name `GADS` in field `field`. Optionally a second element index for multiple-element fields can be given too

## lines_mirrored

epr_boolean EPR_BandId::lines_mirrored

If true (=1) lines will be mirrored (flipped) after read into a raster in order to ensure a pixel ordering in raster X direction from WEST to EAST.

## bm_expr

char* EPR_BandId::bm_expr

A bit-mask expression used to filter valid pixels.

All others are set to zero.

## flag_coding

EPR_SPtrArray* EPR_BandId::flag_coding

The flag coding is a list of EPR_SFlag instances.

It determines each of the flags used in this band (= flags dataset). Each flag has a name, a bit-index and a description.

## unit

char* EPR_BandId::unit

The geophysical unit for the band's pixel values.

## description

char* EPR_BandId::description

A short description of the band's contents.

The documentation for this struct was generated from the following file:

- epr_api.h