/**
*
* @file TypesBase.hpp
*
* @authors D. Mathieu, M. Laporte
*
* @date 26/04/2010
*
* @version V1.0
*
* @brief Encapsulation de quelques types de base
*
**/
#pragma once
#include <cstdint> // int32_t, int16_t
namespace std
{
template <typename T>
class TypeBase
{
T myVal;
public :
explicit TypeBase (T val = T ()) noexcept : myVal (val) {}
operator T & () noexcept { return myVal; }
operator const T & () const noexcept { return myVal; }
}; // CTypeBase
typedef TypeBase <int32_t>
Integer;
typedef TypeBase <int16_t>
Short;
typedef TypeBase <uint8_t>
Character;
} // namespace std