llvm-mos-sdk
Typedefs | Functions
fixedpoint_literals Namespace Reference

Typedefs

using fs8_8 = FixedPoint< 8, 8, true >
 
using fs12_4 = FixedPoint< 12, 4, true >
 
using fs16_8 = FixedPoint< 16, 8, true >
 
using fs8_16 = FixedPoint< 8, 16, true >
 
using fs12_12 = FixedPoint< 12, 12, true >
 
using fs16_16 = FixedPoint< 16, 16, true >
 
using fs24_8 = FixedPoint< 24, 8, true >
 
using fu8_8 = FixedPoint< 8, 8, false >
 
using fu12_4 = FixedPoint< 12, 4, false >
 
using fu16_8 = FixedPoint< 16, 8, false >
 
using fu8_16 = FixedPoint< 8, 16, false >
 
using fu12_12 = FixedPoint< 12, 12, false >
 
using fu16_16 = FixedPoint< 16, 16, false >
 
using fu24_8 = FixedPoint< 24, 8, false >
 
using f8_8 = fs8_8
 
using f12_4 = fs12_4
 
using f16_8 = fs16_8
 
using f8_16 = fs8_16
 
using f12_12 = fs12_12
 
using f16_16 = fs16_16
 
using f24_8 = fs24_8
 

Functions

__fp_consteval fs8_8 operator""_s8_8 (long double fixed)
 
__fp_consteval fs12_4 operator""_s12_4 (long double fixed)
 
__fp_consteval fs16_8 operator""_s16_8 (long double fixed)
 
__fp_consteval fs8_16 operator""_s8_16 (long double fixed)
 
__fp_consteval fs12_12 operator""_s12_12 (long double fixed)
 
__fp_consteval fs16_16 operator""_s16_16 (long double fixed)
 
__fp_consteval fs24_8 operator""_s24_8 (long double fixed)
 
__fp_consteval fu8_8 operator""_u8_8 (long double fixed)
 
__fp_consteval fu12_4 operator""_u12_4 (long double fixed)
 
__fp_consteval fu16_8 operator""_u16_8 (long double fixed)
 
__fp_consteval fu8_16 operator""_u8_16 (long double fixed)
 
__fp_consteval fu12_12 operator""_u12_12 (long double fixed)
 
__fp_consteval fu16_16 operator""_u16_16 (long double fixed)
 
__fp_consteval fu24_8 operator""_u24_8 (long double fixed)
 
__fp_consteval fs8_8 operator""_8_8 (long double fixed)
 
__fp_consteval fs12_4 operator""_12_4 (long double fixed)
 
__fp_consteval fs16_8 operator""_16_8 (long double fixed)
 
__fp_consteval fs8_16 operator""_8_16 (long double fixed)
 
__fp_consteval fs12_12 operator""_12_12 (long double fixed)
 
__fp_consteval fs16_16 operator""_16_16 (long double fixed)
 
__fp_consteval fs24_8 operator""_24_8 (long double fixed)
 

Detailed Description

Helper namespace that contains a few common types and user defined literals for converting from floating point numbers to fixed point numbers at compile time. Usage example:

using namespace fixedpoint::literals; fu8_8 number = 180.44_u8_8; // creates a number at compile-time == 0xb4e1 f8_8 value = -60.89_s8_8; // values can be signed or unsigned auto inferred = 107.3_12_4; // default is signed just like other int types

Typedef Documentation

◆ f12_12

◆ f12_4

◆ f16_16

◆ f16_8

◆ f24_8

◆ f8_16

◆ f8_8

◆ fs12_12

using fixedpoint_literals::fs12_12 = typedef FixedPoint<12, 12, true>

◆ fs12_4

using fixedpoint_literals::fs12_4 = typedef FixedPoint<12, 4, true>

◆ fs16_16

using fixedpoint_literals::fs16_16 = typedef FixedPoint<16, 16, true>

◆ fs16_8

using fixedpoint_literals::fs16_8 = typedef FixedPoint<16, 8, true>

◆ fs24_8

using fixedpoint_literals::fs24_8 = typedef FixedPoint<24, 8, true>

◆ fs8_16

using fixedpoint_literals::fs8_16 = typedef FixedPoint<8, 16, true>

◆ fs8_8

using fixedpoint_literals::fs8_8 = typedef FixedPoint<8, 8, true>

◆ fu12_12

using fixedpoint_literals::fu12_12 = typedef FixedPoint<12, 12, false>

◆ fu12_4

using fixedpoint_literals::fu12_4 = typedef FixedPoint<12, 4, false>

◆ fu16_16

using fixedpoint_literals::fu16_16 = typedef FixedPoint<16, 16, false>

◆ fu16_8

using fixedpoint_literals::fu16_8 = typedef FixedPoint<16, 8, false>

◆ fu24_8

using fixedpoint_literals::fu24_8 = typedef FixedPoint<24, 8, false>

◆ fu8_16

using fixedpoint_literals::fu8_16 = typedef FixedPoint<8, 16, false>

◆ fu8_8

using fixedpoint_literals::fu8_8 = typedef FixedPoint<8, 8, false>

Function Documentation

◆ operator""_12_12()

__fp_consteval fs12_12 fixedpoint_literals::operator""_12_12 ( long double  fixed)

◆ operator""_12_4()

__fp_consteval fs12_4 fixedpoint_literals::operator""_12_4 ( long double  fixed)

◆ operator""_16_16()

__fp_consteval fs16_16 fixedpoint_literals::operator""_16_16 ( long double  fixed)

◆ operator""_16_8()

__fp_consteval fs16_8 fixedpoint_literals::operator""_16_8 ( long double  fixed)

◆ operator""_24_8()

__fp_consteval fs24_8 fixedpoint_literals::operator""_24_8 ( long double  fixed)

◆ operator""_8_16()

__fp_consteval fs8_16 fixedpoint_literals::operator""_8_16 ( long double  fixed)

◆ operator""_8_8()

__fp_consteval fs8_8 fixedpoint_literals::operator""_8_8 ( long double  fixed)

◆ operator""_s12_12()

__fp_consteval fs12_12 fixedpoint_literals::operator""_s12_12 ( long double  fixed)

◆ operator""_s12_4()

__fp_consteval fs12_4 fixedpoint_literals::operator""_s12_4 ( long double  fixed)

◆ operator""_s16_16()

__fp_consteval fs16_16 fixedpoint_literals::operator""_s16_16 ( long double  fixed)

◆ operator""_s16_8()

__fp_consteval fs16_8 fixedpoint_literals::operator""_s16_8 ( long double  fixed)

◆ operator""_s24_8()

__fp_consteval fs24_8 fixedpoint_literals::operator""_s24_8 ( long double  fixed)

◆ operator""_s8_16()

__fp_consteval fs8_16 fixedpoint_literals::operator""_s8_16 ( long double  fixed)

◆ operator""_s8_8()

__fp_consteval fs8_8 fixedpoint_literals::operator""_s8_8 ( long double  fixed)

◆ operator""_u12_12()

__fp_consteval fu12_12 fixedpoint_literals::operator""_u12_12 ( long double  fixed)

◆ operator""_u12_4()

__fp_consteval fu12_4 fixedpoint_literals::operator""_u12_4 ( long double  fixed)

◆ operator""_u16_16()

__fp_consteval fu16_16 fixedpoint_literals::operator""_u16_16 ( long double  fixed)

◆ operator""_u16_8()

__fp_consteval fu16_8 fixedpoint_literals::operator""_u16_8 ( long double  fixed)

◆ operator""_u24_8()

__fp_consteval fu24_8 fixedpoint_literals::operator""_u24_8 ( long double  fixed)

◆ operator""_u8_16()

__fp_consteval fu8_16 fixedpoint_literals::operator""_u8_16 ( long double  fixed)

◆ operator""_u8_8()

__fp_consteval fu8_8 fixedpoint_literals::operator""_u8_8 ( long double  fixed)