blob: 1333f6c4c4967ba697375c74340f709150ca8763 [file] [log] [blame]
/*
* Copyright (c) 2021 Arm Limited. All rights reserved.
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef TENSORFLOW_LITE_MICRO_LOCAL_HPP
#define TENSORFLOW_LITE_MICRO_LOCAL_HPP
/* We include all our TensorFlow Lite Micro headers here */
/**
* TensorFlow Lite Micro sources can generate a lot of warnings from the usage
* of a single macro (TF_LITE_REMOVE_VIRTUAL_DELETE). Suppress the known ones
* here to prevent them from masking warnings that might be generated by our
* application sources.
*/
#if defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-parameter"
#include "tensorflow/lite/micro/micro_mutable_op_resolver.h"
#include "tensorflow/lite/micro/micro_interpreter.h"
#include "tensorflow/lite/micro/micro_error_reporter.h"
#include "tensorflow/lite/micro/all_ops_resolver.h"
#pragma clang diagnostic pop
#elif defined(__GNUC__)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wunused-parameter"
#include "tensorflow/lite/micro/micro_mutable_op_resolver.h"
#include "tensorflow/lite/micro/micro_interpreter.h"
#include "tensorflow/lite/micro/micro_error_reporter.h"
#include "tensorflow/lite/micro/all_ops_resolver.h"
#pragma GCC diagnostic pop
#else
#include "tensorflow/lite/micro/micro_mutable_op_resolver.h"
#include "tensorflow/lite/micro/micro_interpreter.h"
#include "tensorflow/lite/micro/micro_error_reporter.h"
#include "tensorflow/lite/micro/all_ops_resolver.h"
#endif
#include "tensorflow/lite/c/common.h"
#include "tensorflow/lite/micro/kernels/micro_ops.h"
#include "tensorflow/lite/schema/schema_generated.h"
#if defined (TESTS)
#include "tensorflow/lite/micro/test_helpers.h"
#endif /* defined (TESTS) */
namespace arm {
namespace app {
struct QuantParams {
float scale = 1.0;
int offset = 0;
};
QuantParams GetTensorQuantParams(TfLiteTensor* tensor);
} /* namespace app */
} /* namespace arm */
/**
* @brief Prints the tensor flow version in use to stdout.
*/
void PrintTensorFlowVersion();
#endif /* TENSORFLOW_LITE_MICRO_LOCAL_HPP */