HQP  1.9.6
Mesch Namespace Reference

Wrappers for Meschach data structures allowing use of C++ operators. More...

Classes

class  VECP
 Wrapper for Meschach VEC*. More...
 
class  IVECP
 Wrapper for Meschach IVEC*. More...
 
class  PERMP
 Wrapper for Meschach PERM*. More...
 
class  MATROWP
 Wrapper for a row in Meschach MAT. More...
 
class  MATP
 Wrapper for Meschach MAT*. More...
 

Typedefs

typedef SPMAT * SPMATP
 Place holder for wrapper of Meschach SPMAT*.
 
typedef BAND * BANDP
 Place holder for wrapper of Meschach BAND*.
 

Functions

bool is_finite (Real x)
 check if a number is finite
 
bool is_nan (Real x)
 check for not a number
 
Real sscan_real (const char *str)
 Scan a string for a real number, including infinity (Inf, -Inf); Return the number or NaN in case of error. More...
 

Variables

const Real Inf = (Real)std::numeric_limits<double>::infinity()
 Infinity for non existing constraints and numerical overflow.
 

Detailed Description

Wrappers for Meschach data structures allowing use of C++ operators.

Idea:

  • define for any STRUCT a class STRUCTP
  • data representation of STRUCTP is compatible to STRUCT*
  • overload operators as needed, esp. operator []

C synonym: typedef STRUCT* STRUCTP

Known Problem:

  • Meschach prototypes have no const's –> bad const handling (VEC *v_add(VEC *a, VEC *b, VEC *out) instead of VEC *v_add(const VEC *a, const VEC *b, VEC *out)

Function Documentation

Real Mesch::sscan_real ( const char *  str)
inline

Scan a string for a real number, including infinity (Inf, -Inf); Return the number or NaN in case of error.

References Inf.

Referenced by Hxi::mx_parse_argument().