# MI - Fimex: MetNoFelt::Felt_File Class Reference

# MetNoFelt::Felt_File Class Reference

Felt File access. More...

`#include <Felt_File.h>`

List of all members.

## Public Member Functions

| Felt_File ()
| constructor
| Felt_File (const std::string &filename) throw (Felt_File_Error)
| Felt_File (const std::string &filename, const std::vector< std::string > &dianaParamList, const std::map< std::string, std::string > &options) throw (Felt_File_Error)
virtual | ~Felt_File ()
Felt_Array & | getFeltArray (const std::string &compName) throw (Felt_File_Error)
| retrieve a Felt_Array
std::vector< short > | getDataSlice (const std::string &compName, const epoch_seconds time, const short level) throw (Felt_File_Error)
| retrieve a data slice
boost::shared_ptr < MetNoFimex::Data > | getScaledDataSlice (const std::string &compName, const epoch_seconds time, const short level, double fillValue) throw (Felt_File_Error)
std::vector< Felt_Array > | listFeltArrays ()
std::map< short, std::vector < short > > | getFeltLevels () const
std::map< short, std::vector < pair< short, short > > > | getFeltLevelPairs () const
const ShortPairMap & | getHybridLevels () const
std::vector< epoch_seconds > | getFeltTimes () const
| all time values, sorted
int | getNX () const
| get size in x direction
int | getNY () const
| get size in y direction
boost::shared_ptr < MetNoFimex::Data > | getXData () const throw (Felt_File_Error)
| get the values of the x axis
boost::shared_ptr < MetNoFimex::Data > | getYData () const throw (Felt_File_Error)
| get the values of the y axis
short | getGridType () const throw (Felt_File_Error)
| assumes one set of grid-type for the whole file
const boost::array< float, 6 > & | getGridParameters () const throw (Felt_File_Error)
| assumes one set of grid-parameters for the whole file

## Detailed Description

Felt File access.

Felt_File gives c++ style access to felt files. It uses internally libmi and caches the table of contents

## Constructor & Destructor Documentation

MetNoFelt::Felt_File::Felt_File | ( |  | ) | `[inline]`

constructor

open an empty felt file, just a default constructor, no useful information

MetNoFelt::Felt_File::Felt_File | ( | const std::string & | filename | ) | throw (Felt_File_Error)`[explicit]`

open and read toc of a felt file

Parameters:

  | filename | name of felt file

MetNoFelt::Felt_File::Felt_File | ( | const std::string & | filename,
|  | const std::vector< std::string > & | dianaParamList,
|  | const std::map< std::string, std::string > & | options |
| ) |  |  | throw (Felt_File_Error)`[explicit]`

open and read toc of a felt file

Parameters:

  | paramList | a list of known parameters (in diana format, e.g. 17,2,1000:prod=74), only the known parameters will be read

Warning:
  The diana format is extended by dataType=short|float|double and fillValue=(number in short|float|double) to add the return type of the data. Autoscaling will be turned on for 'getDataSlice'. default is dataType=short:fillValue=-32767

virtual MetNoFelt::Felt_File::~Felt_File | ( |  | ) | `[virtual]`

## Member Function Documentation

Felt_Array& MetNoFelt::Felt_File::getFeltArray | ( | const std::string & | compName | ) | throw (Felt_File_Error)

retrieve a Felt_Array

Parameters:

  | compName | parameter name of felt file as named in diana setup

std::vector<short> MetNoFelt::Felt_File::getDataSlice | ( | const std::string & | compName,
|  | const epoch_seconds | time,
|  | const short | level |
| ) |  |  | throw (Felt_File_Error)

retrieve a data slice

Parameters:

  | compName | parameter name of felt file
  | time | time of slice
  | level | level of slice

boost::shared_ptr<MetNoFimex::Data> MetNoFelt::Felt_File::getScaledDataSlice | ( | const std::string & | compName,
|  | const epoch_seconds | time,
|  | const short | level,
|  | double | fillValue |
| ) |  |  | throw (Felt_File_Error)

retrieve the data prescaled (if float or double) and replaced with the new fill value

Parameters:

  | compName | parameter name of felt file
  | time | time of slice
  | level | level of slice

std::vector<Felt_Array> MetNoFelt::Felt_File::listFeltArrays | ( |  | ) |

retrieve all felt arrays

std::map<short, std::vector<short> > MetNoFelt::Felt_File::getFeltLevels | ( |  | ) | const

Z-axis types and values

Returns:
  map consisting of felt level-ids and a sorted vector of level values

std::map<short, std::vector<pair<short,short> > > MetNoFelt::Felt_File::getFeltLevelPairs | ( |  | ) | const

Z-axis types and values

Returns:
  map consisting of felt level-ids and a sorted vector of level-pairs of values

const ShortPairMap& MetNoFelt::Felt_File::getHybridLevels | ( |  | ) | const`[inline]`

std::vector<epoch_seconds> MetNoFelt::Felt_File::getFeltTimes | ( |  | ) | const

all time values, sorted

int MetNoFelt::Felt_File::getNX | ( |  | ) | const

get size in x direction

int MetNoFelt::Felt_File::getNY | ( |  | ) | const

get size in y direction

boost::shared_ptr<MetNoFimex::Data> MetNoFelt::Felt_File::getXData | ( |  | ) | const throw (Felt_File_Error)

get the values of the x axis

boost::shared_ptr<MetNoFimex::Data> MetNoFelt::Felt_File::getYData | ( |  | ) | const throw (Felt_File_Error)

get the values of the y axis

short MetNoFelt::Felt_File::getGridType | ( |  | ) | const throw (Felt_File_Error)

assumes one set of grid-type for the whole file

const boost::array<float, 6>& MetNoFelt::Felt_File::getGridParameters | ( |  | ) | const throw (Felt_File_Error)

assumes one set of grid-parameters for the whole file

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

- include/fimex/Felt_File.h