Tasmota/lib/libesp32/berry_tasmota/src/be_TFL_lib.c
Christian Baars 83f039cdf7
Berry: add tensorflow lite for microcontrollers (#18119)
Co-authored-by: Christian Baars <christianbaars@MacBook-Pro-von-Christian.local>
2023-03-05 16:46:18 +01:00

48 lines
1.6 KiB
C

/********************************************************************
* Tasmota lib
*
* To use: import TFL`
*******************************************************************/
#include "be_constobj.h"
#include "be_mapping.h"
#ifdef USE_BERRY_TF_LITE
extern const char* be_TFL_log(struct bvm *vm);
BE_FUNC_CTYPE_DECLARE(be_TFL_log, "s", "@");
extern const char* be_TFL_stats(struct bvm *vm);
BE_FUNC_CTYPE_DECLARE(be_TFL_stats, "s", "@");
extern bbool be_TFL_begin(struct bvm *vm, const char* type, const uint8_t *descriptor, size_t size);
BE_FUNC_CTYPE_DECLARE(be_TFL_begin, "b", "@s[(bytes)~]");
extern bbool be_TFL_load(struct bvm *vm, const uint8_t *model_buf, size_t model_size, const uint8_t *output_buf, size_t output_size,int arena);
BE_FUNC_CTYPE_DECLARE(be_TFL_load, "b", "@(bytes)~(bytes)~[i]");
extern bbool be_TFL_input(struct bvm *vm, const uint8_t *buf, size_t size);
BE_FUNC_CTYPE_DECLARE(be_TFL_input, "b", "@(bytes)~");
extern bbool be_TFL_output(struct bvm *vm, const uint8_t *buf, size_t size);
BE_FUNC_CTYPE_DECLARE(be_TFL_output, "b", "@(bytes)~");
extern void be_TFL_rec(struct bvm *vm, const char* filename, size_t seconds);
BE_FUNC_CTYPE_DECLARE(be_TFL_rec, "", "@si");
#include "be_fixed_TFL.h"
/* @const_object_info_begin
module TFL (scope: global) {
begin, ctype_func(be_TFL_begin)
load, ctype_func(be_TFL_load)
input, ctype_func(be_TFL_input)
output, ctype_func(be_TFL_output)
log, ctype_func(be_TFL_log)
stats, ctype_func(be_TFL_stats)
rec, ctype_func(be_TFL_rec)
}
@const_object_info_end */
#endif // USE_BERRY_TF_LITE