VAPOR3 3.9.4
Classes | Macros | Typedefs | Enumerations | Functions
udunits2.h File Reference
#include "vapor/common.h"
#include <stdarg.h>
#include <stddef.h>
#include "converter.h"

Go to the source code of this file.

Classes

struct  ut_visitor
 

Macros

#define UT_NAMES   4
 
#define UT_DEFINITION   8
 

Typedefs

typedef struct ut_system ut_system
 
typedef union ut_unit ut_unit
 
typedef int(* ut_error_message_handler) (const char *fmt, va_list args)
 

Enumerations

enum  ut_status {
  UT_SUCCESS = 0 , UT_BAD_ARG , UT_EXISTS , UT_NO_UNIT ,
  UT_OS , UT_NOT_SAME_SYSTEM , UT_MEANINGLESS , UT_NO_SECOND ,
  UT_VISIT_ERROR , UT_CANT_FORMAT , UT_SYNTAX , UT_UNKNOWN ,
  UT_OPEN_ARG , UT_OPEN_ENV , UT_OPEN_DEFAULT , UT_PARSE
}
 
enum  ut_encoding { UT_ASCII = 0 , UT_ISO_8859_1 = 1 , UT_LATIN1 = UT_ISO_8859_1 , UT_UTF8 = 2 }
 

Functions

UDUNITS2_API ut_systemut_read_xml (const char *path)
 
UDUNITS2_API ut_systemut_new_system (void)
 
UDUNITS2_API void ut_free_system (ut_system *system)
 
UDUNITS2_API ut_systemut_get_system (const ut_unit *const unit)
 
UDUNITS2_API ut_unitut_get_dimensionless_unit_one (const ut_system *const system)
 
UDUNITS2_API ut_unitut_get_unit_by_name (const ut_system *const system, const char *const name)
 
UDUNITS2_API ut_unitut_get_unit_by_symbol (const ut_system *const system, const char *const symbol)
 
UDUNITS2_API ut_status ut_set_second (const ut_unit *const second)
 
UDUNITS2_API ut_status ut_add_name_prefix (ut_system *const system, const char *const name, const double value)
 
UDUNITS2_API ut_status ut_add_symbol_prefix (ut_system *const system, const char *const symbol, const double value)
 
UDUNITS2_API ut_unitut_new_base_unit (ut_system *const system)
 
UDUNITS2_API ut_unitut_new_dimensionless_unit (ut_system *const system)
 
UDUNITS2_API ut_unitut_clone (const ut_unit *unit)
 
UDUNITS2_API void ut_free (ut_unit *const unit)
 
UDUNITS2_API const char * ut_get_name (const ut_unit *const unit, const ut_encoding encoding)
 
ut_status ut_map_name_to_unit (const char *const name, const ut_encoding encoding, const ut_unit *const unit)
 
UDUNITS2_API ut_status ut_unmap_name_to_unit (ut_system *system, const char *const name, const ut_encoding encoding)
 
UDUNITS2_API ut_status ut_map_unit_to_name (const ut_unit *const unit, const char *const name, ut_encoding encoding)
 
UDUNITS2_API ut_status ut_unmap_unit_to_name (const ut_unit *const unit, ut_encoding encoding)
 
UDUNITS2_API const char * ut_get_symbol (const ut_unit *const unit, const ut_encoding encoding)
 
UDUNITS2_API ut_status ut_map_symbol_to_unit (const char *const symbol, const ut_encoding encoding, const ut_unit *const unit)
 
UDUNITS2_API ut_status ut_unmap_symbol_to_unit (ut_system *system, const char *const symbol, const ut_encoding encoding)
 
UDUNITS2_API ut_status ut_map_unit_to_symbol (const ut_unit *unit, const char *const symbol, ut_encoding encoding)
 
UDUNITS2_API ut_status ut_unmap_unit_to_symbol (const ut_unit *const unit, ut_encoding encoding)
 
UDUNITS2_API int ut_is_dimensionless (const ut_unit *const unit)
 
UDUNITS2_API int ut_same_system (const ut_unit *const unit1, const ut_unit *const unit2)
 
UDUNITS2_API int ut_compare (const ut_unit *const unit1, const ut_unit *const unit2)
 
UDUNITS2_API int ut_are_convertible (const ut_unit *const unit1, const ut_unit *const unit2)
 
UDUNITS2_API cv_converterut_get_converter (ut_unit *const from, ut_unit *const to)
 
UDUNITS2_API ut_unitut_scale (const double factor, const ut_unit *const unit)
 
UDUNITS2_API ut_unitut_offset (const ut_unit *const unit, const double offset)
 
UDUNITS2_API ut_unitut_offset_by_time (const ut_unit *const unit, const double origin)
 
UDUNITS2_API ut_unitut_multiply (const ut_unit *const unit1, const ut_unit *const unit2)
 
UDUNITS2_API ut_unitut_invert (const ut_unit *const unit)
 
UDUNITS2_API ut_unitut_divide (const ut_unit *const numer, const ut_unit *const denom)
 
UDUNITS2_API ut_unitut_raise (const ut_unit *const unit, const int power)
 
UDUNITS2_API ut_unitut_root (const ut_unit *const unit, const int root)
 
UDUNITS2_API ut_unitut_log (const double base, const ut_unit *const reference)
 
UDUNITS2_API ut_unitut_parse (const ut_system *const system, const char *const string, const ut_encoding encoding)
 
UDUNITS2_API char * ut_trim (char *const string, const ut_encoding encoding)
 
UDUNITS2_API int ut_format (const ut_unit *const unit, char *buf, size_t size, unsigned opts)
 
UDUNITS2_API ut_status ut_accept_visitor (const ut_unit *const unit, const ut_visitor *const visitor, void *const arg)
 
UDUNITS2_API double ut_encode_date (int year, int month, int day)
 
UDUNITS2_API double ut_encode_clock (int hours, int minutes, double seconds)
 
UDUNITS2_API double ut_encode_time (const int year, const int month, const int day, const int hour, const int minute, const double second)
 
UDUNITS2_API void ut_decode_time (double value, int *year, int *month, int *day, int *hour, int *minute, double *second, double *resolution)
 
UDUNITS2_API ut_status ut_get_status (void)
 
UDUNITS2_API void ut_set_status (ut_status status)
 
UDUNITS2_API int ut_handle_error_message (const char *const fmt,...)
 
UDUNITS2_API ut_error_message_handler ut_set_error_message_handler (ut_error_message_handler handler)
 
UDUNITS2_API int ut_write_to_stderr (const char *const fmt, va_list args)
 
UDUNITS2_API int ut_ignore (const char *const fmt, va_list args)
 

Macro Definition Documentation

◆ UT_DEFINITION

#define UT_DEFINITION   8

Definition at line 41 of file udunits2.h.

◆ UT_NAMES

#define UT_NAMES   4

Definition at line 40 of file udunits2.h.

Typedef Documentation

◆ ut_error_message_handler

typedef int(* ut_error_message_handler) (const char *fmt, va_list args)

Definition at line 125 of file udunits2.h.

◆ ut_system

typedef struct ut_system ut_system

Definition at line 16 of file udunits2.h.

◆ ut_unit

typedef union ut_unit ut_unit

Definition at line 17 of file udunits2.h.

Enumeration Type Documentation

◆ ut_encoding

Enumerator
UT_ASCII 
UT_ISO_8859_1 
UT_LATIN1 
UT_UTF8 

Definition at line 38 of file udunits2.h.

◆ ut_status

enum ut_status
Enumerator
UT_SUCCESS 
UT_BAD_ARG 
UT_EXISTS 
UT_NO_UNIT 
UT_OS 
UT_NOT_SAME_SYSTEM 
UT_MEANINGLESS 
UT_NO_SECOND 
UT_VISIT_ERROR 
UT_CANT_FORMAT 
UT_SYNTAX 
UT_UNKNOWN 
UT_OPEN_ARG 
UT_OPEN_ENV 
UT_OPEN_DEFAULT 
UT_PARSE 

Definition at line 19 of file udunits2.h.

Function Documentation

◆ ut_accept_visitor()

UDUNITS2_API ut_status ut_accept_visitor ( const ut_unit *const  unit,
const ut_visitor *const  visitor,
void *const  arg 
)

◆ ut_add_name_prefix()

UDUNITS2_API ut_status ut_add_name_prefix ( ut_system *const  system,
const char *const  name,
const double  value 
)

◆ ut_add_symbol_prefix()

UDUNITS2_API ut_status ut_add_symbol_prefix ( ut_system *const  system,
const char *const  symbol,
const double  value 
)

◆ ut_are_convertible()

UDUNITS2_API int ut_are_convertible ( const ut_unit *const  unit1,
const ut_unit *const  unit2 
)

◆ ut_clone()

UDUNITS2_API ut_unit * ut_clone ( const ut_unit unit)

◆ ut_compare()

UDUNITS2_API int ut_compare ( const ut_unit *const  unit1,
const ut_unit *const  unit2 
)

◆ ut_decode_time()

UDUNITS2_API void ut_decode_time ( double  value,
int *  year,
int *  month,
int *  day,
int *  hour,
int *  minute,
double *  second,
double *  resolution 
)

◆ ut_divide()

UDUNITS2_API ut_unit * ut_divide ( const ut_unit *const  numer,
const ut_unit *const  denom 
)

◆ ut_encode_clock()

UDUNITS2_API double ut_encode_clock ( int  hours,
int  minutes,
double  seconds 
)

◆ ut_encode_date()

UDUNITS2_API double ut_encode_date ( int  year,
int  month,
int  day 
)

◆ ut_encode_time()

UDUNITS2_API double ut_encode_time ( const int  year,
const int  month,
const int  day,
const int  hour,
const int  minute,
const double  second 
)

◆ ut_format()

UDUNITS2_API int ut_format ( const ut_unit *const  unit,
char *  buf,
size_t  size,
unsigned  opts 
)

◆ ut_free()

UDUNITS2_API void ut_free ( ut_unit *const  unit)

◆ ut_free_system()

UDUNITS2_API void ut_free_system ( ut_system system)

◆ ut_get_converter()

UDUNITS2_API cv_converter * ut_get_converter ( ut_unit *const  from,
ut_unit *const  to 
)

◆ ut_get_dimensionless_unit_one()

UDUNITS2_API ut_unit * ut_get_dimensionless_unit_one ( const ut_system *const  system)

◆ ut_get_name()

UDUNITS2_API const char * ut_get_name ( const ut_unit *const  unit,
const ut_encoding  encoding 
)

◆ ut_get_status()

UDUNITS2_API ut_status ut_get_status ( void  )

◆ ut_get_symbol()

UDUNITS2_API const char * ut_get_symbol ( const ut_unit *const  unit,
const ut_encoding  encoding 
)

◆ ut_get_system()

UDUNITS2_API ut_system * ut_get_system ( const ut_unit *const  unit)

◆ ut_get_unit_by_name()

UDUNITS2_API ut_unit * ut_get_unit_by_name ( const ut_system *const  system,
const char *const  name 
)

◆ ut_get_unit_by_symbol()

UDUNITS2_API ut_unit * ut_get_unit_by_symbol ( const ut_system *const  system,
const char *const  symbol 
)

◆ ut_handle_error_message()

UDUNITS2_API int ut_handle_error_message ( const char *const  fmt,
  ... 
)

◆ ut_ignore()

UDUNITS2_API int ut_ignore ( const char *const  fmt,
va_list  args 
)

◆ ut_invert()

UDUNITS2_API ut_unit * ut_invert ( const ut_unit *const  unit)

◆ ut_is_dimensionless()

UDUNITS2_API int ut_is_dimensionless ( const ut_unit *const  unit)

◆ ut_log()

UDUNITS2_API ut_unit * ut_log ( const double  base,
const ut_unit *const  reference 
)

◆ ut_map_name_to_unit()

ut_status ut_map_name_to_unit ( const char *const  name,
const ut_encoding  encoding,
const ut_unit *const  unit 
)

◆ ut_map_symbol_to_unit()

UDUNITS2_API ut_status ut_map_symbol_to_unit ( const char *const  symbol,
const ut_encoding  encoding,
const ut_unit *const  unit 
)

◆ ut_map_unit_to_name()

UDUNITS2_API ut_status ut_map_unit_to_name ( const ut_unit *const  unit,
const char *const  name,
ut_encoding  encoding 
)

◆ ut_map_unit_to_symbol()

UDUNITS2_API ut_status ut_map_unit_to_symbol ( const ut_unit unit,
const char *const  symbol,
ut_encoding  encoding 
)

◆ ut_multiply()

UDUNITS2_API ut_unit * ut_multiply ( const ut_unit *const  unit1,
const ut_unit *const  unit2 
)

◆ ut_new_base_unit()

UDUNITS2_API ut_unit * ut_new_base_unit ( ut_system *const  system)

◆ ut_new_dimensionless_unit()

UDUNITS2_API ut_unit * ut_new_dimensionless_unit ( ut_system *const  system)

◆ ut_new_system()

UDUNITS2_API ut_system * ut_new_system ( void  )

◆ ut_offset()

UDUNITS2_API ut_unit * ut_offset ( const ut_unit *const  unit,
const double  offset 
)

◆ ut_offset_by_time()

UDUNITS2_API ut_unit * ut_offset_by_time ( const ut_unit *const  unit,
const double  origin 
)

◆ ut_parse()

UDUNITS2_API ut_unit * ut_parse ( const ut_system *const  system,
const char *const  string,
const ut_encoding  encoding 
)

◆ ut_raise()

UDUNITS2_API ut_unit * ut_raise ( const ut_unit *const  unit,
const int  power 
)

◆ ut_read_xml()

UDUNITS2_API ut_system * ut_read_xml ( const char *  path)

◆ ut_root()

UDUNITS2_API ut_unit * ut_root ( const ut_unit *const  unit,
const int  root 
)

◆ ut_same_system()

UDUNITS2_API int ut_same_system ( const ut_unit *const  unit1,
const ut_unit *const  unit2 
)

◆ ut_scale()

UDUNITS2_API ut_unit * ut_scale ( const double  factor,
const ut_unit *const  unit 
)

◆ ut_set_error_message_handler()

UDUNITS2_API ut_error_message_handler ut_set_error_message_handler ( ut_error_message_handler  handler)

◆ ut_set_second()

UDUNITS2_API ut_status ut_set_second ( const ut_unit *const  second)

◆ ut_set_status()

UDUNITS2_API void ut_set_status ( ut_status  status)

◆ ut_trim()

UDUNITS2_API char * ut_trim ( char *const  string,
const ut_encoding  encoding 
)

◆ ut_unmap_name_to_unit()

UDUNITS2_API ut_status ut_unmap_name_to_unit ( ut_system system,
const char *const  name,
const ut_encoding  encoding 
)

◆ ut_unmap_symbol_to_unit()

UDUNITS2_API ut_status ut_unmap_symbol_to_unit ( ut_system system,
const char *const  symbol,
const ut_encoding  encoding 
)

◆ ut_unmap_unit_to_name()

UDUNITS2_API ut_status ut_unmap_unit_to_name ( const ut_unit *const  unit,
ut_encoding  encoding 
)

◆ ut_unmap_unit_to_symbol()

UDUNITS2_API ut_status ut_unmap_unit_to_symbol ( const ut_unit *const  unit,
ut_encoding  encoding 
)

◆ ut_write_to_stderr()

UDUNITS2_API int ut_write_to_stderr ( const char *const  fmt,
va_list  args 
)