ICRS Eurobot 2013

Dependencies:   mbed mbed-rtos Servo QEI

Embed: (wiki syntax)

« Back to documentation index

NumericTraits< T > Class Template Reference

NumericTraits< T > Class Template Reference

Traits for integral types for operations. More...

#include <tvmet/NumericTraits.h>


Detailed Description

template<class T>
class tvmet::NumericTraits< T >

Traits for integral types for operations.

double> > NumericTraits.h "tvmet/NumericTraits.h"

long> > NumericTraits.h "tvmet/NumericTraits.h"

int> > NumericTraits.h "tvmet/NumericTraits.h"

> NumericTraits.h "tvmet/NumericTraits.h"

int> NumericTraits.h "tvmet/NumericTraits.h"

NumericTraits.h "tvmet/NumericTraits.h".

For each type we have to specialize this traits.

Note:
Keep in mind that the long types long long and long double doesn't have traits. This is due to the sum_type. We can't give a guarantee that there is a type of holding the sum. Therefore using this traits is only safe if you have long long resp. long double types by working on long ints and doubles. Otherwise you will get not expected result for some circumstances. Anyway, you can use big integer/float libraries and specialize the traits by your own.

Traits specialized for char.

Traits specialized for unsigned char.

Note:
Normally it doesn't make sense to call conj for an unsigned type! An unary minus operator applied to unsigned type will result unsigned. Therefore this function is missing here.

Traits specialized for short int.

Traits specialized for short unsigned int.

Note:
Normally it doesn't make sense to call conj for an unsigned type! An unary minus operator applied to unsigned type will result unsigned. Therefore this function is missing here.

Traits specialized for int.

Traits specialized for unsigned int.

Note:
Normally it doesn't make sense to call conj for an unsigned type! An unary minus operator applied to unsigned type will result unsigned. Therefore this function is missing here.

Traits specialized for long.

Traits specialized for unsigned long.

Note:
Normally it doesn't make sense to call conj for an unsigned type! An unary minus operator applied to unsigned type will result unsigned. Therefore this function is missing here.

Traits specialized for float.

Traits specialized for double.

Traits specialized for long double.

Traits specialized for std::complex<int>.

Traits specialized for std::complex<unsigned int>.

Note:
Normally it doesn't make sense to call conj for an unsigned type! An unary minus operator applied to unsigned type will result unsigned. Therefore this function is missing here.

Traits specialized for std::complex<long>.

Traits specialized for std::complex<unsigned long>.

Note:
Normally it doesn't make sense to call conj for an unsigned type! An unary minus operator applied to unsigned type will result unsigned. Therefore this function is missing here.

Traits specialized for std::complex<float>.

Traits specialized for std::complex<double>.

Definition at line 58 of file NumericTraits.h.