Speeduino
Loading...
Searching...
No Matches
table3d_typedefs.h
Go to the documentation of this file.
1
17#pragma once
18
19#include <stdint.h>
20
23
26
29
36#define TABLE3D_GENERATOR(GENERATOR, ...) \
37 GENERATOR(6, Rpm, Load, ##__VA_ARGS__) \
38 GENERATOR(4, Rpm, Load, ##__VA_ARGS__) \
39 GENERATOR(8, Rpm, Load, ##__VA_ARGS__) \
40 GENERATOR(8, Rpm, Tps, ##__VA_ARGS__) \
41 GENERATOR(16, Rpm, Load, ##__VA_ARGS__)
42
43// Each 3d table is given a distinct type based on size & axis domains
44// This encapsulates the generation of the type name
45#define TABLE3D_TYPENAME_BASE(size, xDom, yDom) table3d ## size ## xDom ## yDom
46
47#define CAT_HELPER(a, b) a ## b
48#define CONCAT(A, B) CAT_HELPER(A, B)
49
static uint32_t rshift(uint32_t a)
Bitwise right shift - generic, unoptimized, case.
Definition bit_shifts.h:349
int16_t table3d_axis_t
The type of each axis value.
Definition table3d_typedefs.h:28
uint8_t table3d_value_t
The type of each table value.
Definition table3d_typedefs.h:25
uint8_t table3d_dim_t
Encodes the length of the axes.
Definition table3d_typedefs.h:22