2 * Copyright (c) 2018 Samsung Electronics Co., Ltd. All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
19 * @ingroup COM_AI_RUNTIME
20 * @brief This file defines TANH node
23 #ifndef __INTERNAL_OP_TANH_H__
24 #define __INTERNAL_OP_TANH_H__
26 #include "internal/op/Node.h"
40 * @brief Struct to manipulate parameter for hyperbolic tangent operation
44 int32_t ofm_index; //!< index for output feature map
46 int32_t ifm_index; //!< index for input feature map
49 * @brief Default Constructor
53 * @brief Construct a new Param object
54 * @param[in] inputCount the number of inputs
55 * @param[in] inputs pointer for input data
56 * @param[in] outputCount the number of outputs
57 * @param[in] outputs pointer for input data
59 Param(uint32_t inputCount, const uint32_t *inputs, uint32_t outputCount, const uint32_t *outputs);
63 * @brief Class to define Tanh Operation
65 class Node final : public op::Node
69 * @brief Construct a new Tanh Node object
70 * @param param Parameter for Tanh Node
72 Node(const Param ¶m) : _param(param)
79 * @brief Default Destructor
81 virtual ~Node() = default;
85 * @brief Get parameter
86 * @return Param reference
88 const Param ¶m(void) const { return _param; }
92 * @brief Accept a NodeVisitor so that it can visit this node
93 * @param [in] v Visitor
96 void accept(NodeVisitor &&) const override;
99 const Param _param; //!< parameter for Tanh node
104 } // namespace tflite
105 } // namespace internal
107 #endif // __INTERNAL_OP_TANH_H__