#pragma once

/**
 * @file  hei_includes.hpp
 * @brief The purpose of this file is to include common headers that will be
 *        used throughout this library.
 */

// Standard library includes
#include <stdlib.h>
#include <stdint.h>
#include <map>
#include <vector>

// The user application must define "hei_user_defines.hpp" with the following
// macros:
//
//   Tracing (inputs same as printf() from <cstdio>):
//      HEI_INF( ... ) // Generic informational trace
//      HEI_ERR( ... ) // Error path trace
//
//  Assertion (at a minimum should work like assert() from <cassert>):
//      HEI_ASSERT( expression )
//
#include <hei_user_defines.hpp>

// Internal includes
#include <hei_chip.hpp>
#include <hei_return_code.hpp>
#include <hei_types.hpp>

