OpenANN  1.1.0
An open source library for artificial neural networks.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Namespaces | Macros | Functions
AssertionMacros.h File Reference
#include <OpenANN/io/Logger.h>
#include <cassert>
#include <cmath>
#include <iostream>

Go to the source code of this file.

Namespaces

 OpenANN
 

Macros

#define OPENANN_CHECK(x)   assert(x)
 
#define OPENANN_CHECK_EQUALS(x, y)
 
#define OPENANN_CHECK_NOT_EQUALS(x, y)   assert((x) != (y))
 
#define OPENANN_CHECK_EQUALS_DELTA(x, y, delta)   assert(OpenANN::equals((x),(y), (delta)))
 
#define OPENANN_CHECK_WITHIN(x, min, max)   assert(((min) <= (x)) && ((x) <= (max)));
 
#define OPENANN_CHECK_NAN(value)
 
#define OPENANN_CHECK_INF(value)
 
#define OPENANN_CHECK_INF_AND_NAN(value)
 

Functions

template<class T >
bool OpenANN::equals (T a, T b, T delta)
 
template<class T >
bool OpenANN::isNaN (T value)
 
template<class T >
bool OpenANN::isInf (T value)
 

Macro Definition Documentation

#define OPENANN_CHECK (   x)    assert(x)
#define OPENANN_CHECK_EQUALS (   x,
 
)
Value:
{ \
if(!((x) == (y))) \
{ \
OPENANN_TRACE((x)); \
OPENANN_TRACE("!="); \
OPENANN_TRACE((y)); \
} \
assert((x) == (y)); \
}
#define OPENANN_CHECK_EQUALS_DELTA (   x,
  y,
  delta 
)    assert(OpenANN::equals((x),(y), (delta)))
#define OPENANN_CHECK_INF (   value)
Value:
if(OpenANN::isInf(value)) { \
OPENANN_TRACE("inf"); \
OPENANN_CHECK(!OpenANN::isInf(value)); \
}
#define OPENANN_CHECK_INF_AND_NAN (   value)
Value:
OPENANN_CHECK_NAN(value);
#define OPENANN_CHECK_NAN (   value)
Value:
if(OpenANN::isNaN(value)) { \
OPENANN_TRACE("nan"); \
OPENANN_CHECK(!OpenANN::isNaN(value)); \
}
#define OPENANN_CHECK_NOT_EQUALS (   x,
 
)    assert((x) != (y))
#define OPENANN_CHECK_WITHIN (   x,
  min,
  max 
)    assert(((min) <= (x)) && ((x) <= (max)));