Definition of a 16-bit float type.  
 More...
#include <DataType.h>
|  | 
|  | Float16 ()=default | 
|  | Default constructor. 
 | 
|  | 
|  | Float16 (const uint16_t sign, const uint16_t fraction, const uint16_t exponent) | 
|  | Creates a new 16-bit float. 
 | 
|  | 
|  | Float16 (const uint16_t binary) | 
|  | Creates a new 16-bit float based on a 16-bit binary value. 
 | 
|  | 
| uint16_t | binary () const | 
|  | Returns the binary representation of this 16-bit float value. 
 | 
|  | 
|  | operator float () const | 
|  | Cast operator to 32-bit float. 
 | 
|  | 
| Float16 | operator- () const | 
|  | Negates the 16-bit float value. 
 | 
|  | 
| bool | operator== (const Float16 &second) const | 
|  | Returns whether two 16-bit float values are identical. 
 | 
|  | 
| bool | operator!= (const Float16 &second) const | 
|  | Returns whether two 16-bit float values are not identical. 
 | 
|  | 
|  | 
| union { |  | 
|  | 
| uint16_t   binary_ = 0u |  | 
|  | The binary representation.  More... 
 | 
|  | 
| struct { |  | 
|  | 
| uint16_t   fraction_: 10 |  | 
|  | The mantissa composed of 10 bits.  More... 
 | 
|  | 
| uint16_t   exponent_: 5 |  | 
|  | The exponent composed of 5 bits.  More... 
 | 
|  | 
| uint16_t   sign_: 1 |  | 
|  | The sign composed of 1 bit.  More... 
 | 
|  | 
| }   ieee_ |  | 
|  | The struct with the IEEE representation.  More... 
 | 
|  | 
| } | data_ |  | 
|  | Union allowing to access the binary representation or the IEEE representation. 
 | 
|  | 
Definition of a 16-bit float type. 
◆ Float16() [1/3]
  
  | 
        
          | Ocean::Float16::Float16 | ( |  | ) |  |  | default | 
 
 
◆ Float16() [2/3]
  
  | 
        
          | Ocean::Float16::Float16 | ( | const uint16_t | sign, |  
          |  |  | const uint16_t | fraction, |  
          |  |  | const uint16_t | exponent |  
          |  | ) |  |  |  | inline | 
 
Creates a new 16-bit float. 
- Parameters
- 
  
    | sign | The 1-bit sign to be used, with range [0, 1] |  | fraction | The 10-bit fraction to be used, with range [0, 1023] |  | exponent | The 5-bit exponent to be used, with range [0, 31] |  
 
 
 
◆ Float16() [3/3]
  
  | 
        
          | Ocean::Float16::Float16 | ( | const uint16_t | binary | ) |  |  | inlineexplicit | 
 
Creates a new 16-bit float based on a 16-bit binary value. 
- Parameters
- 
  
    | binary | The binary value to be used |  
 
 
 
◆ binary()
  
  | 
        
          | uint16_t Ocean::Float16::binary | ( |  | ) | const |  | inline | 
 
Returns the binary representation of this 16-bit float value. 
- Returns
- The value's binary representation 
 
 
◆ infinity()
  
  | 
        
          | Float16 Ocean::Float16::infinity | ( |  | ) |  |  | inlinestatic | 
 
Returns +infinity. 
- Returns
- The 16-bit float representing positive infinity 
 
 
◆ operator float()
  
  | 
        
          | Ocean::Float16::operator float | ( |  | ) | const |  | explicit | 
 
Cast operator to 32-bit float. 
- Returns
- The 32-bit float representation 
 
 
◆ operator!=()
  
  | 
        
          | bool Ocean::Float16::operator!= | ( | const Float16 & | second | ) | const |  | inline | 
 
Returns whether two 16-bit float values are not identical. 
- Parameters
- 
  
    | second | The second value to compare |  
 
- Returns
- True, if so 
 
 
◆ operator-()
  
  | 
        
          | Float16 Ocean::Float16::operator- | ( |  | ) | const |  | inline | 
 
Negates the 16-bit float value. 
- Returns
- The negated value 
 
 
◆ operator==()
  
  | 
        
          | bool Ocean::Float16::operator== | ( | const Float16 & | second | ) | const |  | inline | 
 
Returns whether two 16-bit float values are identical. 
- Parameters
- 
  
    | second | The second value to compare |  
 
- Returns
- True, if so 
 
 
◆ binary_
      
        
          | uint16_t Ocean::Float16::binary_ = 0u | 
      
 
The binary representation. 
 
 
◆ [union]
      
        
          | union  { ... }  Ocean::Float16::data_ | 
      
 
Union allowing to access the binary representation or the IEEE representation. 
 
 
◆ exponent_
      
        
          | uint16_t Ocean::Float16::exponent_ | 
      
 
The exponent composed of 5 bits. 
 
 
◆ fraction_
      
        
          | uint16_t Ocean::Float16::fraction_ | 
      
 
The mantissa composed of 10 bits. 
 
 
◆ [struct]
      
        
          | struct  { ... }  Ocean::Float16::ieee_ | 
      
 
The struct with the IEEE representation. 
 
 
◆ sign_
      
        
          | uint16_t Ocean::Float16::sign_ | 
      
 
The sign composed of 1 bit. 
 
 
The documentation for this class was generated from the following file: