#ifndef TFMODELSTATE_H #define TFMODELSTATE_H #include #include "tensorflow/core/public/session.h" #include "tensorflow/core/platform/env.h" #include "tensorflow/core/util/memmapped_file_system.h" #include "modelstate.h" struct TFModelState : public ModelState { std::unique_ptr mmap_env_; std::unique_ptr session_; tensorflow::GraphDef graph_def_; TFModelState(); virtual ~TFModelState(); virtual int init(const char* model_path) override; virtual void infer(const std::vector& mfcc, unsigned int n_frames, const std::vector& previous_state_c, const std::vector& previous_state_h, std::vector& logits_output, std::vector& state_c_output, std::vector& state_h_output) override; virtual void compute_mfcc(const std::vector& audio_buffer, std::vector& mfcc_output) override; }; #endif // TFMODELSTATE_H