blob: 40bdfc72a6d70879230f509020ae20bcdfb76fc9 [file] [log] [blame]
Zane Shelley876bc2a2019-07-23 12:55:37 -05001#pragma once
2
Zane Shelley01e590b2020-05-08 21:11:46 -05003// The purpose of this file is to include common headers that will be used
4// internally throughout this library. It is advised not to include this in any
5// headers that are installed externally to avoid ballooning the number of
6// headers that are externally exposed.
Zane Shelley876bc2a2019-07-23 12:55:37 -05007
Zane Shelleya61f4c52019-08-01 13:58:49 -05008// Standard library includes
Zane Shelley01e590b2020-05-08 21:11:46 -05009#include <assert.h>
10#include <inttypes.h>
Zane Shelley876bc2a2019-07-23 12:55:37 -050011#include <stdint.h>
Zane Shelleyca9f6252019-10-25 21:17:30 -050012#include <stdlib.h>
13
Zane Shelleyd0af3582019-09-19 10:48:59 -050014#include <map>
Zane Shelleyb406de42019-09-09 16:10:38 -050015#include <vector>
Zane Shelley876bc2a2019-07-23 12:55:37 -050016
Zane Shelley01e590b2020-05-08 21:11:46 -050017// Library includes
Zane Shelleyb406de42019-09-09 16:10:38 -050018#include <hei_chip.hpp>
Zane Shelleyb406de42019-09-09 16:10:38 -050019#include <hei_types.hpp>
Zane Shelley01e590b2020-05-08 21:11:46 -050020#include <hei_user_interface.hpp>
21
22// Common macros used throughout this library
23#define HEI_ASSERT(expression) assert(expression);
24
25#define HEI_ERR(...) \
26 { \
27 libhei::hei_err((char*)__VA_ARGS__); \
28 }
29
30#define HEI_INF(...) \
31 { \
32 libhei::hei_inf((char*)__VA_ARGS__); \
33 }