Files
2026-07-13 13:33:03 +08:00

6818 lines
231 KiB
C++

// automatically generated by the FlatBuffers compiler, do not modify
#ifndef FLATBUFFERS_GENERATED_CAFFEOP_MNN_H_
#define FLATBUFFERS_GENERATED_CAFFEOP_MNN_H_
#include "Tensor_generated.h"
#include "Type_generated.h"
namespace MNN {
struct Convolution2DCommon;
struct Convolution2DCommonT;
struct Convolution3DCommon;
struct Convolution3DCommonT;
struct SparseCommon;
struct SparseCommonT;
struct IDSTQuan;
struct IDSTQuanT;
struct QuantizedFloatParam;
struct QuantizedFloatParamT;
struct Convolution2D;
struct Convolution2DT;
struct Convolution3D;
struct Convolution3DT;
struct InnerProduct;
struct InnerProductT;
struct Pool;
struct PoolT;
struct Pool3D;
struct Pool3DT;
struct Relu;
struct ReluT;
struct Relu6;
struct Relu6T;
struct PRelu;
struct PReluT;
struct ELU;
struct ELUT;
struct LRN;
struct LRNT;
struct ArgMax;
struct ArgMaxT;
struct Axis;
struct AxisT;
struct Input;
struct InputT;
struct LSTM;
struct LSTMT;
struct Slice;
struct SliceT;
struct BatchNorm;
struct BatchNormT;
struct Scale;
struct ScaleT;
struct Eltwise;
struct EltwiseT;
struct Flatten;
struct FlattenT;
struct Permute;
struct PermuteT;
struct Reshape;
struct ReshapeT;
struct DetectionOutput;
struct DetectionOutputT;
struct RoiParameters;
struct RoiParametersT;
struct Proposal;
struct ProposalT;
struct Interp;
struct InterpT;
struct Resize;
struct ResizeT;
struct PriorBox;
struct PriorBoxT;
struct Normalize;
struct NormalizeT;
struct EltwiseInt8;
struct EltwiseInt8T;
struct CumSum;
struct CumSumT;
inline const flatbuffers::TypeTable *Convolution2DCommonTypeTable();
inline const flatbuffers::TypeTable *Convolution3DCommonTypeTable();
inline const flatbuffers::TypeTable *SparseCommonTypeTable();
inline const flatbuffers::TypeTable *IDSTQuanTypeTable();
inline const flatbuffers::TypeTable *QuantizedFloatParamTypeTable();
inline const flatbuffers::TypeTable *Convolution2DTypeTable();
inline const flatbuffers::TypeTable *Convolution3DTypeTable();
inline const flatbuffers::TypeTable *InnerProductTypeTable();
inline const flatbuffers::TypeTable *PoolTypeTable();
inline const flatbuffers::TypeTable *Pool3DTypeTable();
inline const flatbuffers::TypeTable *ReluTypeTable();
inline const flatbuffers::TypeTable *Relu6TypeTable();
inline const flatbuffers::TypeTable *PReluTypeTable();
inline const flatbuffers::TypeTable *ELUTypeTable();
inline const flatbuffers::TypeTable *LRNTypeTable();
inline const flatbuffers::TypeTable *ArgMaxTypeTable();
inline const flatbuffers::TypeTable *AxisTypeTable();
inline const flatbuffers::TypeTable *InputTypeTable();
inline const flatbuffers::TypeTable *LSTMTypeTable();
inline const flatbuffers::TypeTable *SliceTypeTable();
inline const flatbuffers::TypeTable *BatchNormTypeTable();
inline const flatbuffers::TypeTable *ScaleTypeTable();
inline const flatbuffers::TypeTable *EltwiseTypeTable();
inline const flatbuffers::TypeTable *FlattenTypeTable();
inline const flatbuffers::TypeTable *PermuteTypeTable();
inline const flatbuffers::TypeTable *ReshapeTypeTable();
inline const flatbuffers::TypeTable *DetectionOutputTypeTable();
inline const flatbuffers::TypeTable *RoiParametersTypeTable();
inline const flatbuffers::TypeTable *ProposalTypeTable();
inline const flatbuffers::TypeTable *InterpTypeTable();
inline const flatbuffers::TypeTable *ResizeTypeTable();
inline const flatbuffers::TypeTable *PriorBoxTypeTable();
inline const flatbuffers::TypeTable *NormalizeTypeTable();
inline const flatbuffers::TypeTable *EltwiseInt8TypeTable();
inline const flatbuffers::TypeTable *CumSumTypeTable();
enum PadMode {
PadMode_CAFFE = 0,
PadMode_VALID = 1,
PadMode_SAME = 2,
PadMode_MIN = PadMode_CAFFE,
PadMode_MAX = PadMode_SAME
};
inline const PadMode (&EnumValuesPadMode())[3] {
static const PadMode values[] = {
PadMode_CAFFE,
PadMode_VALID,
PadMode_SAME
};
return values;
}
inline const char * const *EnumNamesPadMode() {
static const char * const names[] = {
"CAFFE",
"VALID",
"SAME",
nullptr
};
return names;
}
inline const char *EnumNamePadMode(PadMode e) {
if (e < PadMode_CAFFE || e > PadMode_SAME) return "";
const size_t index = static_cast<int>(e);
return EnumNamesPadMode()[index];
}
enum SparseAlgo {
SparseAlgo_RANDOM = 0,
SparseAlgo_SIMD_OC = 1,
SparseAlgo_MIN = SparseAlgo_RANDOM,
SparseAlgo_MAX = SparseAlgo_SIMD_OC
};
inline const SparseAlgo (&EnumValuesSparseAlgo())[2] {
static const SparseAlgo values[] = {
SparseAlgo_RANDOM,
SparseAlgo_SIMD_OC
};
return values;
}
inline const char * const *EnumNamesSparseAlgo() {
static const char * const names[] = {
"RANDOM",
"SIMD_OC",
nullptr
};
return names;
}
inline const char *EnumNameSparseAlgo(SparseAlgo e) {
if (e < SparseAlgo_RANDOM || e > SparseAlgo_SIMD_OC) return "";
const size_t index = static_cast<int>(e);
return EnumNamesSparseAlgo()[index];
}
enum ScaleStorageType {
ScaleStorageType_FP32 = 0,
ScaleStorageType_FP16 = 1,
ScaleStorageType_MIN = ScaleStorageType_FP32,
ScaleStorageType_MAX = ScaleStorageType_FP16
};
inline const ScaleStorageType (&EnumValuesScaleStorageType())[2] {
static const ScaleStorageType values[] = {
ScaleStorageType_FP32,
ScaleStorageType_FP16
};
return values;
}
inline const char * const *EnumNamesScaleStorageType() {
static const char * const names[] = {
"FP32",
"FP16",
nullptr
};
return names;
}
inline const char *EnumNameScaleStorageType(ScaleStorageType e) {
if (e < ScaleStorageType_FP32 || e > ScaleStorageType_FP16) return "";
const size_t index = static_cast<int>(e);
return EnumNamesScaleStorageType()[index];
}
enum QuantizeAlgo {
QuantizeAlgo_DEFAULT = 0,
QuantizeAlgo_OVERFLOW_AWARE = 1,
QuantizeAlgo_WINOGRAD_AWARE = 2,
QuantizeAlgo_MIN = QuantizeAlgo_DEFAULT,
QuantizeAlgo_MAX = QuantizeAlgo_WINOGRAD_AWARE
};
inline const QuantizeAlgo (&EnumValuesQuantizeAlgo())[3] {
static const QuantizeAlgo values[] = {
QuantizeAlgo_DEFAULT,
QuantizeAlgo_OVERFLOW_AWARE,
QuantizeAlgo_WINOGRAD_AWARE
};
return values;
}
inline const char * const *EnumNamesQuantizeAlgo() {
static const char * const names[] = {
"DEFAULT",
"OVERFLOW_AWARE",
"WINOGRAD_AWARE",
nullptr
};
return names;
}
inline const char *EnumNameQuantizeAlgo(QuantizeAlgo e) {
if (e < QuantizeAlgo_DEFAULT || e > QuantizeAlgo_WINOGRAD_AWARE) return "";
const size_t index = static_cast<int>(e);
return EnumNamesQuantizeAlgo()[index];
}
enum PoolType {
PoolType_MAXPOOL = 0,
PoolType_AVEPOOL = 1,
PoolType_MIN = PoolType_MAXPOOL,
PoolType_MAX = PoolType_AVEPOOL
};
inline const PoolType (&EnumValuesPoolType())[2] {
static const PoolType values[] = {
PoolType_MAXPOOL,
PoolType_AVEPOOL
};
return values;
}
inline const char * const *EnumNamesPoolType() {
static const char * const names[] = {
"MAXPOOL",
"AVEPOOL",
nullptr
};
return names;
}
inline const char *EnumNamePoolType(PoolType e) {
if (e < PoolType_MAXPOOL || e > PoolType_AVEPOOL) return "";
const size_t index = static_cast<int>(e);
return EnumNamesPoolType()[index];
}
enum PoolPadType {
PoolPadType_CAFFE = 0,
PoolPadType_VALID = 1,
PoolPadType_SAME = 2,
PoolPadType_MIN = PoolPadType_CAFFE,
PoolPadType_MAX = PoolPadType_SAME
};
inline const PoolPadType (&EnumValuesPoolPadType())[3] {
static const PoolPadType values[] = {
PoolPadType_CAFFE,
PoolPadType_VALID,
PoolPadType_SAME
};
return values;
}
inline const char * const *EnumNamesPoolPadType() {
static const char * const names[] = {
"CAFFE",
"VALID",
"SAME",
nullptr
};
return names;
}
inline const char *EnumNamePoolPadType(PoolPadType e) {
if (e < PoolPadType_CAFFE || e > PoolPadType_SAME) return "";
const size_t index = static_cast<int>(e);
return EnumNamesPoolPadType()[index];
}
enum AvgPoolCountType {
AvgPoolCountType_DEFAULT = 0,
AvgPoolCountType_INCLUDE_PADDING = 1,
AvgPoolCountType_EXCLUDE_PADDING = 2,
AvgPoolCountType_MIN = AvgPoolCountType_DEFAULT,
AvgPoolCountType_MAX = AvgPoolCountType_EXCLUDE_PADDING
};
inline const AvgPoolCountType (&EnumValuesAvgPoolCountType())[3] {
static const AvgPoolCountType values[] = {
AvgPoolCountType_DEFAULT,
AvgPoolCountType_INCLUDE_PADDING,
AvgPoolCountType_EXCLUDE_PADDING
};
return values;
}
inline const char * const *EnumNamesAvgPoolCountType() {
static const char * const names[] = {
"DEFAULT",
"INCLUDE_PADDING",
"EXCLUDE_PADDING",
nullptr
};
return names;
}
inline const char *EnumNameAvgPoolCountType(AvgPoolCountType e) {
if (e < AvgPoolCountType_DEFAULT || e > AvgPoolCountType_EXCLUDE_PADDING) return "";
const size_t index = static_cast<int>(e);
return EnumNamesAvgPoolCountType()[index];
}
enum EltwiseType {
EltwiseType_PROD = 0,
EltwiseType_SUM = 1,
EltwiseType_MAXIMUM = 2,
EltwiseType_SUB = 3,
EltwiseType_MIN = EltwiseType_PROD,
EltwiseType_MAX = EltwiseType_SUB
};
inline const EltwiseType (&EnumValuesEltwiseType())[4] {
static const EltwiseType values[] = {
EltwiseType_PROD,
EltwiseType_SUM,
EltwiseType_MAXIMUM,
EltwiseType_SUB
};
return values;
}
inline const char * const *EnumNamesEltwiseType() {
static const char * const names[] = {
"PROD",
"SUM",
"MAXIMUM",
"SUB",
nullptr
};
return names;
}
inline const char *EnumNameEltwiseType(EltwiseType e) {
if (e < EltwiseType_PROD || e > EltwiseType_SUB) return "";
const size_t index = static_cast<int>(e);
return EnumNamesEltwiseType()[index];
}
enum CoordinateTransformationMode {
CoordinateTransformationMode_NotSet = 0,
CoordinateTransformationMode_AlignCorners = 1,
CoordinateTransformationMode_HalfPixels = 2,
CoordinateTransformationMode_PytorchHalfPixels = 3,
CoordinateTransformationMode_Asymmetric = 4,
CoordinateTransformationMode_TensorflowHalfPixels = 5,
CoordinateTransformationMode_TensorflowCropAndResize = 6,
CoordinateTransformationMode_MIN = CoordinateTransformationMode_NotSet,
CoordinateTransformationMode_MAX = CoordinateTransformationMode_TensorflowCropAndResize
};
inline const CoordinateTransformationMode (&EnumValuesCoordinateTransformationMode())[7] {
static const CoordinateTransformationMode values[] = {
CoordinateTransformationMode_NotSet,
CoordinateTransformationMode_AlignCorners,
CoordinateTransformationMode_HalfPixels,
CoordinateTransformationMode_PytorchHalfPixels,
CoordinateTransformationMode_Asymmetric,
CoordinateTransformationMode_TensorflowHalfPixels,
CoordinateTransformationMode_TensorflowCropAndResize
};
return values;
}
inline const char * const *EnumNamesCoordinateTransformationMode() {
static const char * const names[] = {
"NotSet",
"AlignCorners",
"HalfPixels",
"PytorchHalfPixels",
"Asymmetric",
"TensorflowHalfPixels",
"TensorflowCropAndResize",
nullptr
};
return names;
}
inline const char *EnumNameCoordinateTransformationMode(CoordinateTransformationMode e) {
if (e < CoordinateTransformationMode_NotSet || e > CoordinateTransformationMode_TensorflowCropAndResize) return "";
const size_t index = static_cast<int>(e);
return EnumNamesCoordinateTransformationMode()[index];
}
struct Convolution2DCommonT : public flatbuffers::NativeTable {
typedef Convolution2DCommon TableType;
int32_t padX;
int32_t padY;
int32_t kernelX;
int32_t kernelY;
int32_t strideX;
int32_t strideY;
int32_t dilateX;
int32_t dilateY;
PadMode padMode;
int32_t group;
int32_t outputCount;
int32_t inputCount;
bool relu;
bool relu6;
std::vector<int32_t> pads;
std::vector<int32_t> outPads;
bool hasOutputShape;
Convolution2DCommonT()
: padX(0),
padY(0),
kernelX(1),
kernelY(1),
strideX(1),
strideY(1),
dilateX(1),
dilateY(1),
padMode(PadMode_CAFFE),
group(1),
outputCount(0),
inputCount(0),
relu(false),
relu6(false),
hasOutputShape(false) {
}
};
struct Convolution2DCommon FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef Convolution2DCommonT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return Convolution2DCommonTypeTable();
}
int32_t padX() const {
return GetField<int32_t>(4, 0);
}
int32_t padY() const {
return GetField<int32_t>(6, 0);
}
int32_t kernelX() const {
return GetField<int32_t>(8, 1);
}
int32_t kernelY() const {
return GetField<int32_t>(10, 1);
}
int32_t strideX() const {
return GetField<int32_t>(12, 1);
}
int32_t strideY() const {
return GetField<int32_t>(14, 1);
}
int32_t dilateX() const {
return GetField<int32_t>(16, 1);
}
int32_t dilateY() const {
return GetField<int32_t>(18, 1);
}
PadMode padMode() const {
return static_cast<PadMode>(GetField<int8_t>(20, 0));
}
int32_t group() const {
return GetField<int32_t>(22, 1);
}
int32_t outputCount() const {
return GetField<int32_t>(24, 0);
}
int32_t inputCount() const {
return GetField<int32_t>(26, 0);
}
bool relu() const {
return GetField<uint8_t>(28, 0) != 0;
}
bool relu6() const {
return GetField<uint8_t>(30, 0) != 0;
}
const flatbuffers::Vector<int32_t> *pads() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(32);
}
const flatbuffers::Vector<int32_t> *outPads() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(34);
}
bool hasOutputShape() const {
return GetField<uint8_t>(36, 0) != 0;
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyField<int32_t>(verifier, 6) &&
VerifyField<int32_t>(verifier, 8) &&
VerifyField<int32_t>(verifier, 10) &&
VerifyField<int32_t>(verifier, 12) &&
VerifyField<int32_t>(verifier, 14) &&
VerifyField<int32_t>(verifier, 16) &&
VerifyField<int32_t>(verifier, 18) &&
VerifyField<int8_t>(verifier, 20) &&
VerifyField<int32_t>(verifier, 22) &&
VerifyField<int32_t>(verifier, 24) &&
VerifyField<int32_t>(verifier, 26) &&
VerifyField<uint8_t>(verifier, 28) &&
VerifyField<uint8_t>(verifier, 30) &&
VerifyOffset(verifier, 32) &&
verifier.VerifyVector(pads()) &&
VerifyOffset(verifier, 34) &&
verifier.VerifyVector(outPads()) &&
VerifyField<uint8_t>(verifier, 36) &&
verifier.EndTable();
}
Convolution2DCommonT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(Convolution2DCommonT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Convolution2DCommon> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Convolution2DCommonT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct Convolution2DCommonBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_padX(int32_t padX) {
fbb_.AddElement<int32_t>(4, padX, 0);
}
void add_padY(int32_t padY) {
fbb_.AddElement<int32_t>(6, padY, 0);
}
void add_kernelX(int32_t kernelX) {
fbb_.AddElement<int32_t>(8, kernelX, 1);
}
void add_kernelY(int32_t kernelY) {
fbb_.AddElement<int32_t>(10, kernelY, 1);
}
void add_strideX(int32_t strideX) {
fbb_.AddElement<int32_t>(12, strideX, 1);
}
void add_strideY(int32_t strideY) {
fbb_.AddElement<int32_t>(14, strideY, 1);
}
void add_dilateX(int32_t dilateX) {
fbb_.AddElement<int32_t>(16, dilateX, 1);
}
void add_dilateY(int32_t dilateY) {
fbb_.AddElement<int32_t>(18, dilateY, 1);
}
void add_padMode(PadMode padMode) {
fbb_.AddElement<int8_t>(20, static_cast<int8_t>(padMode), 0);
}
void add_group(int32_t group) {
fbb_.AddElement<int32_t>(22, group, 1);
}
void add_outputCount(int32_t outputCount) {
fbb_.AddElement<int32_t>(24, outputCount, 0);
}
void add_inputCount(int32_t inputCount) {
fbb_.AddElement<int32_t>(26, inputCount, 0);
}
void add_relu(bool relu) {
fbb_.AddElement<uint8_t>(28, static_cast<uint8_t>(relu), 0);
}
void add_relu6(bool relu6) {
fbb_.AddElement<uint8_t>(30, static_cast<uint8_t>(relu6), 0);
}
void add_pads(flatbuffers::Offset<flatbuffers::Vector<int32_t>> pads) {
fbb_.AddOffset(32, pads);
}
void add_outPads(flatbuffers::Offset<flatbuffers::Vector<int32_t>> outPads) {
fbb_.AddOffset(34, outPads);
}
void add_hasOutputShape(bool hasOutputShape) {
fbb_.AddElement<uint8_t>(36, static_cast<uint8_t>(hasOutputShape), 0);
}
explicit Convolution2DCommonBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
Convolution2DCommonBuilder &operator=(const Convolution2DCommonBuilder &);
flatbuffers::Offset<Convolution2DCommon> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Convolution2DCommon>(end);
return o;
}
};
inline flatbuffers::Offset<Convolution2DCommon> CreateConvolution2DCommon(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t padX = 0,
int32_t padY = 0,
int32_t kernelX = 1,
int32_t kernelY = 1,
int32_t strideX = 1,
int32_t strideY = 1,
int32_t dilateX = 1,
int32_t dilateY = 1,
PadMode padMode = PadMode_CAFFE,
int32_t group = 1,
int32_t outputCount = 0,
int32_t inputCount = 0,
bool relu = false,
bool relu6 = false,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> pads = 0,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> outPads = 0,
bool hasOutputShape = false) {
Convolution2DCommonBuilder builder_(_fbb);
builder_.add_outPads(outPads);
builder_.add_pads(pads);
builder_.add_inputCount(inputCount);
builder_.add_outputCount(outputCount);
builder_.add_group(group);
builder_.add_dilateY(dilateY);
builder_.add_dilateX(dilateX);
builder_.add_strideY(strideY);
builder_.add_strideX(strideX);
builder_.add_kernelY(kernelY);
builder_.add_kernelX(kernelX);
builder_.add_padY(padY);
builder_.add_padX(padX);
builder_.add_hasOutputShape(hasOutputShape);
builder_.add_relu6(relu6);
builder_.add_relu(relu);
builder_.add_padMode(padMode);
return builder_.Finish();
}
flatbuffers::Offset<Convolution2DCommon> CreateConvolution2DCommon(flatbuffers::FlatBufferBuilder &_fbb, const Convolution2DCommonT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct Convolution3DCommonT : public flatbuffers::NativeTable {
typedef Convolution3DCommon TableType;
std::vector<int32_t> dilates;
std::vector<int32_t> strides;
std::vector<int32_t> kernels;
std::vector<int32_t> pads;
PadMode padMode;
int32_t inputCount;
int32_t outputCount;
bool relu;
bool relu6;
int32_t group;
std::vector<int32_t> outPads;
bool hasOutputShape;
Convolution3DCommonT()
: padMode(PadMode_CAFFE),
inputCount(0),
outputCount(0),
relu(false),
relu6(false),
group(1),
hasOutputShape(false) {
}
};
struct Convolution3DCommon FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef Convolution3DCommonT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return Convolution3DCommonTypeTable();
}
const flatbuffers::Vector<int32_t> *dilates() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(4);
}
const flatbuffers::Vector<int32_t> *strides() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(6);
}
const flatbuffers::Vector<int32_t> *kernels() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(8);
}
const flatbuffers::Vector<int32_t> *pads() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(10);
}
PadMode padMode() const {
return static_cast<PadMode>(GetField<int8_t>(12, 0));
}
int32_t inputCount() const {
return GetField<int32_t>(14, 0);
}
int32_t outputCount() const {
return GetField<int32_t>(16, 0);
}
bool relu() const {
return GetField<uint8_t>(18, 0) != 0;
}
bool relu6() const {
return GetField<uint8_t>(20, 0) != 0;
}
int32_t group() const {
return GetField<int32_t>(22, 1);
}
const flatbuffers::Vector<int32_t> *outPads() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(24);
}
bool hasOutputShape() const {
return GetField<uint8_t>(26, 0) != 0;
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyOffset(verifier, 4) &&
verifier.VerifyVector(dilates()) &&
VerifyOffset(verifier, 6) &&
verifier.VerifyVector(strides()) &&
VerifyOffset(verifier, 8) &&
verifier.VerifyVector(kernels()) &&
VerifyOffset(verifier, 10) &&
verifier.VerifyVector(pads()) &&
VerifyField<int8_t>(verifier, 12) &&
VerifyField<int32_t>(verifier, 14) &&
VerifyField<int32_t>(verifier, 16) &&
VerifyField<uint8_t>(verifier, 18) &&
VerifyField<uint8_t>(verifier, 20) &&
VerifyField<int32_t>(verifier, 22) &&
VerifyOffset(verifier, 24) &&
verifier.VerifyVector(outPads()) &&
VerifyField<uint8_t>(verifier, 26) &&
verifier.EndTable();
}
Convolution3DCommonT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(Convolution3DCommonT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Convolution3DCommon> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Convolution3DCommonT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct Convolution3DCommonBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_dilates(flatbuffers::Offset<flatbuffers::Vector<int32_t>> dilates) {
fbb_.AddOffset(4, dilates);
}
void add_strides(flatbuffers::Offset<flatbuffers::Vector<int32_t>> strides) {
fbb_.AddOffset(6, strides);
}
void add_kernels(flatbuffers::Offset<flatbuffers::Vector<int32_t>> kernels) {
fbb_.AddOffset(8, kernels);
}
void add_pads(flatbuffers::Offset<flatbuffers::Vector<int32_t>> pads) {
fbb_.AddOffset(10, pads);
}
void add_padMode(PadMode padMode) {
fbb_.AddElement<int8_t>(12, static_cast<int8_t>(padMode), 0);
}
void add_inputCount(int32_t inputCount) {
fbb_.AddElement<int32_t>(14, inputCount, 0);
}
void add_outputCount(int32_t outputCount) {
fbb_.AddElement<int32_t>(16, outputCount, 0);
}
void add_relu(bool relu) {
fbb_.AddElement<uint8_t>(18, static_cast<uint8_t>(relu), 0);
}
void add_relu6(bool relu6) {
fbb_.AddElement<uint8_t>(20, static_cast<uint8_t>(relu6), 0);
}
void add_group(int32_t group) {
fbb_.AddElement<int32_t>(22, group, 1);
}
void add_outPads(flatbuffers::Offset<flatbuffers::Vector<int32_t>> outPads) {
fbb_.AddOffset(24, outPads);
}
void add_hasOutputShape(bool hasOutputShape) {
fbb_.AddElement<uint8_t>(26, static_cast<uint8_t>(hasOutputShape), 0);
}
explicit Convolution3DCommonBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
Convolution3DCommonBuilder &operator=(const Convolution3DCommonBuilder &);
flatbuffers::Offset<Convolution3DCommon> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Convolution3DCommon>(end);
return o;
}
};
inline flatbuffers::Offset<Convolution3DCommon> CreateConvolution3DCommon(
flatbuffers::FlatBufferBuilder &_fbb,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> dilates = 0,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> strides = 0,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> kernels = 0,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> pads = 0,
PadMode padMode = PadMode_CAFFE,
int32_t inputCount = 0,
int32_t outputCount = 0,
bool relu = false,
bool relu6 = false,
int32_t group = 1,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> outPads = 0,
bool hasOutputShape = false) {
Convolution3DCommonBuilder builder_(_fbb);
builder_.add_outPads(outPads);
builder_.add_group(group);
builder_.add_outputCount(outputCount);
builder_.add_inputCount(inputCount);
builder_.add_pads(pads);
builder_.add_kernels(kernels);
builder_.add_strides(strides);
builder_.add_dilates(dilates);
builder_.add_hasOutputShape(hasOutputShape);
builder_.add_relu6(relu6);
builder_.add_relu(relu);
builder_.add_padMode(padMode);
return builder_.Finish();
}
flatbuffers::Offset<Convolution3DCommon> CreateConvolution3DCommon(flatbuffers::FlatBufferBuilder &_fbb, const Convolution3DCommonT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct SparseCommonT : public flatbuffers::NativeTable {
typedef SparseCommon TableType;
SparseAlgo method;
std::vector<std::unique_ptr<AttributeT>> args;
SparseCommonT()
: method(SparseAlgo_RANDOM) {
}
};
struct SparseCommon FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef SparseCommonT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return SparseCommonTypeTable();
}
SparseAlgo method() const {
return static_cast<SparseAlgo>(GetField<int8_t>(4, 0));
}
const flatbuffers::Vector<flatbuffers::Offset<Attribute>> *args() const {
return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<Attribute>> *>(6);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int8_t>(verifier, 4) &&
VerifyOffset(verifier, 6) &&
verifier.VerifyVector(args()) &&
verifier.VerifyVectorOfTables(args()) &&
verifier.EndTable();
}
SparseCommonT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(SparseCommonT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<SparseCommon> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparseCommonT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct SparseCommonBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_method(SparseAlgo method) {
fbb_.AddElement<int8_t>(4, static_cast<int8_t>(method), 0);
}
void add_args(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<Attribute>>> args) {
fbb_.AddOffset(6, args);
}
explicit SparseCommonBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
SparseCommonBuilder &operator=(const SparseCommonBuilder &);
flatbuffers::Offset<SparseCommon> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<SparseCommon>(end);
return o;
}
};
inline flatbuffers::Offset<SparseCommon> CreateSparseCommon(
flatbuffers::FlatBufferBuilder &_fbb,
SparseAlgo method = SparseAlgo_RANDOM,
flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<Attribute>>> args = 0) {
SparseCommonBuilder builder_(_fbb);
builder_.add_args(args);
builder_.add_method(method);
return builder_.Finish();
}
flatbuffers::Offset<SparseCommon> CreateSparseCommon(flatbuffers::FlatBufferBuilder &_fbb, const SparseCommonT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct IDSTQuanT : public flatbuffers::NativeTable {
typedef IDSTQuan TableType;
std::vector<int8_t> buffer;
std::vector<float> alpha;
int32_t type;
bool useInt32;
float quantScale;
float scaleIn;
float scaleOut;
int32_t aMaxOrBits;
int32_t aMin;
int32_t readType;
bool has_scaleInt;
bool shapeInt32;
uint32_t weightSize;
std::vector<uint32_t> index;
std::vector<uint16_t> alphaFp16;
ScaleStorageType scaleStorage;
IDSTQuanT()
: type(0),
useInt32(false),
quantScale(0.0f),
scaleIn(0.0f),
scaleOut(0.0f),
aMaxOrBits(0),
aMin(0),
readType(0),
has_scaleInt(false),
shapeInt32(false),
weightSize(0),
scaleStorage(ScaleStorageType_FP32) {
}
};
struct IDSTQuan FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef IDSTQuanT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return IDSTQuanTypeTable();
}
const flatbuffers::Vector<int8_t> *buffer() const {
return GetPointer<const flatbuffers::Vector<int8_t> *>(4);
}
const flatbuffers::Vector<float> *alpha() const {
return GetPointer<const flatbuffers::Vector<float> *>(6);
}
int32_t type() const {
return GetField<int32_t>(8, 0);
}
bool useInt32() const {
return GetField<uint8_t>(10, 0) != 0;
}
float quantScale() const {
return GetField<float>(12, 0.0f);
}
float scaleIn() const {
return GetField<float>(14, 0.0f);
}
float scaleOut() const {
return GetField<float>(16, 0.0f);
}
int32_t aMaxOrBits() const {
return GetField<int32_t>(18, 0);
}
int32_t aMin() const {
return GetField<int32_t>(20, 0);
}
int32_t readType() const {
return GetField<int32_t>(22, 0);
}
bool has_scaleInt() const {
return GetField<uint8_t>(24, 0) != 0;
}
bool shapeInt32() const {
return GetField<uint8_t>(26, 0) != 0;
}
uint32_t weightSize() const {
return GetField<uint32_t>(28, 0);
}
const flatbuffers::Vector<uint32_t> *index() const {
return GetPointer<const flatbuffers::Vector<uint32_t> *>(30);
}
const flatbuffers::Vector<uint16_t> *alphaFp16() const {
return GetPointer<const flatbuffers::Vector<uint16_t> *>(32);
}
ScaleStorageType scaleStorage() const {
return static_cast<ScaleStorageType>(GetField<int8_t>(34, 0));
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyOffset(verifier, 4) &&
verifier.VerifyVector(buffer()) &&
VerifyOffset(verifier, 6) &&
verifier.VerifyVector(alpha()) &&
VerifyField<int32_t>(verifier, 8) &&
VerifyField<uint8_t>(verifier, 10) &&
VerifyField<float>(verifier, 12) &&
VerifyField<float>(verifier, 14) &&
VerifyField<float>(verifier, 16) &&
VerifyField<int32_t>(verifier, 18) &&
VerifyField<int32_t>(verifier, 20) &&
VerifyField<int32_t>(verifier, 22) &&
VerifyField<uint8_t>(verifier, 24) &&
VerifyField<uint8_t>(verifier, 26) &&
VerifyField<uint32_t>(verifier, 28) &&
VerifyOffset(verifier, 30) &&
verifier.VerifyVector(index()) &&
VerifyOffset(verifier, 32) &&
verifier.VerifyVector(alphaFp16()) &&
VerifyField<int8_t>(verifier, 34) &&
verifier.EndTable();
}
IDSTQuanT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(IDSTQuanT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<IDSTQuan> Pack(flatbuffers::FlatBufferBuilder &_fbb, const IDSTQuanT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct IDSTQuanBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_buffer(flatbuffers::Offset<flatbuffers::Vector<int8_t>> buffer) {
fbb_.AddOffset(4, buffer);
}
void add_alpha(flatbuffers::Offset<flatbuffers::Vector<float>> alpha) {
fbb_.AddOffset(6, alpha);
}
void add_type(int32_t type) {
fbb_.AddElement<int32_t>(8, type, 0);
}
void add_useInt32(bool useInt32) {
fbb_.AddElement<uint8_t>(10, static_cast<uint8_t>(useInt32), 0);
}
void add_quantScale(float quantScale) {
fbb_.AddElement<float>(12, quantScale, 0.0f);
}
void add_scaleIn(float scaleIn) {
fbb_.AddElement<float>(14, scaleIn, 0.0f);
}
void add_scaleOut(float scaleOut) {
fbb_.AddElement<float>(16, scaleOut, 0.0f);
}
void add_aMaxOrBits(int32_t aMaxOrBits) {
fbb_.AddElement<int32_t>(18, aMaxOrBits, 0);
}
void add_aMin(int32_t aMin) {
fbb_.AddElement<int32_t>(20, aMin, 0);
}
void add_readType(int32_t readType) {
fbb_.AddElement<int32_t>(22, readType, 0);
}
void add_has_scaleInt(bool has_scaleInt) {
fbb_.AddElement<uint8_t>(24, static_cast<uint8_t>(has_scaleInt), 0);
}
void add_shapeInt32(bool shapeInt32) {
fbb_.AddElement<uint8_t>(26, static_cast<uint8_t>(shapeInt32), 0);
}
void add_weightSize(uint32_t weightSize) {
fbb_.AddElement<uint32_t>(28, weightSize, 0);
}
void add_index(flatbuffers::Offset<flatbuffers::Vector<uint32_t>> index) {
fbb_.AddOffset(30, index);
}
void add_alphaFp16(flatbuffers::Offset<flatbuffers::Vector<uint16_t>> alphaFp16) {
fbb_.AddOffset(32, alphaFp16);
}
void add_scaleStorage(ScaleStorageType scaleStorage) {
fbb_.AddElement<int8_t>(34, static_cast<int8_t>(scaleStorage), 0);
}
explicit IDSTQuanBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
IDSTQuanBuilder &operator=(const IDSTQuanBuilder &);
flatbuffers::Offset<IDSTQuan> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<IDSTQuan>(end);
return o;
}
};
inline flatbuffers::Offset<IDSTQuan> CreateIDSTQuan(
flatbuffers::FlatBufferBuilder &_fbb,
flatbuffers::Offset<flatbuffers::Vector<int8_t>> buffer = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> alpha = 0,
int32_t type = 0,
bool useInt32 = false,
float quantScale = 0.0f,
float scaleIn = 0.0f,
float scaleOut = 0.0f,
int32_t aMaxOrBits = 0,
int32_t aMin = 0,
int32_t readType = 0,
bool has_scaleInt = false,
bool shapeInt32 = false,
uint32_t weightSize = 0,
flatbuffers::Offset<flatbuffers::Vector<uint32_t>> index = 0,
flatbuffers::Offset<flatbuffers::Vector<uint16_t>> alphaFp16 = 0,
ScaleStorageType scaleStorage = ScaleStorageType_FP32) {
IDSTQuanBuilder builder_(_fbb);
builder_.add_alphaFp16(alphaFp16);
builder_.add_index(index);
builder_.add_weightSize(weightSize);
builder_.add_readType(readType);
builder_.add_aMin(aMin);
builder_.add_aMaxOrBits(aMaxOrBits);
builder_.add_scaleOut(scaleOut);
builder_.add_scaleIn(scaleIn);
builder_.add_quantScale(quantScale);
builder_.add_type(type);
builder_.add_alpha(alpha);
builder_.add_buffer(buffer);
builder_.add_scaleStorage(scaleStorage);
builder_.add_shapeInt32(shapeInt32);
builder_.add_has_scaleInt(has_scaleInt);
builder_.add_useInt32(useInt32);
return builder_.Finish();
}
flatbuffers::Offset<IDSTQuan> CreateIDSTQuan(flatbuffers::FlatBufferBuilder &_fbb, const IDSTQuanT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct QuantizedFloatParamT : public flatbuffers::NativeTable {
typedef QuantizedFloatParam TableType;
std::vector<int8_t> weight;
std::vector<int32_t> bias;
std::vector<float> scale;
std::vector<float> tensorScale;
QuantizeAlgo method;
int32_t nbits;
int8_t zeroPoint;
int8_t outputZeroPoint;
int8_t clampMin;
int8_t clampMax;
std::vector<int32_t> winogradAttr;
DataType outputDataType;
std::vector<float> floatzeros;
QuantizedFloatParamT()
: method(QuantizeAlgo_DEFAULT),
nbits(8),
zeroPoint(0),
outputZeroPoint(0),
clampMin(-128),
clampMax(127),
outputDataType(DataType_DT_INT8) {
}
};
struct QuantizedFloatParam FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef QuantizedFloatParamT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return QuantizedFloatParamTypeTable();
}
const flatbuffers::Vector<int8_t> *weight() const {
return GetPointer<const flatbuffers::Vector<int8_t> *>(4);
}
const flatbuffers::Vector<int32_t> *bias() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(6);
}
const flatbuffers::Vector<float> *scale() const {
return GetPointer<const flatbuffers::Vector<float> *>(8);
}
const flatbuffers::Vector<float> *tensorScale() const {
return GetPointer<const flatbuffers::Vector<float> *>(10);
}
QuantizeAlgo method() const {
return static_cast<QuantizeAlgo>(GetField<int8_t>(12, 0));
}
int32_t nbits() const {
return GetField<int32_t>(14, 8);
}
int8_t zeroPoint() const {
return GetField<int8_t>(16, 0);
}
int8_t outputZeroPoint() const {
return GetField<int8_t>(18, 0);
}
int8_t clampMin() const {
return GetField<int8_t>(20, -128);
}
int8_t clampMax() const {
return GetField<int8_t>(22, 127);
}
const flatbuffers::Vector<int32_t> *winogradAttr() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(24);
}
DataType outputDataType() const {
return static_cast<DataType>(GetField<int32_t>(26, 6));
}
const flatbuffers::Vector<float> *floatzeros() const {
return GetPointer<const flatbuffers::Vector<float> *>(28);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyOffset(verifier, 4) &&
verifier.VerifyVector(weight()) &&
VerifyOffset(verifier, 6) &&
verifier.VerifyVector(bias()) &&
VerifyOffset(verifier, 8) &&
verifier.VerifyVector(scale()) &&
VerifyOffset(verifier, 10) &&
verifier.VerifyVector(tensorScale()) &&
VerifyField<int8_t>(verifier, 12) &&
VerifyField<int32_t>(verifier, 14) &&
VerifyField<int8_t>(verifier, 16) &&
VerifyField<int8_t>(verifier, 18) &&
VerifyField<int8_t>(verifier, 20) &&
VerifyField<int8_t>(verifier, 22) &&
VerifyOffset(verifier, 24) &&
verifier.VerifyVector(winogradAttr()) &&
VerifyField<int32_t>(verifier, 26) &&
VerifyOffset(verifier, 28) &&
verifier.VerifyVector(floatzeros()) &&
verifier.EndTable();
}
QuantizedFloatParamT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(QuantizedFloatParamT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<QuantizedFloatParam> Pack(flatbuffers::FlatBufferBuilder &_fbb, const QuantizedFloatParamT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct QuantizedFloatParamBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_weight(flatbuffers::Offset<flatbuffers::Vector<int8_t>> weight) {
fbb_.AddOffset(4, weight);
}
void add_bias(flatbuffers::Offset<flatbuffers::Vector<int32_t>> bias) {
fbb_.AddOffset(6, bias);
}
void add_scale(flatbuffers::Offset<flatbuffers::Vector<float>> scale) {
fbb_.AddOffset(8, scale);
}
void add_tensorScale(flatbuffers::Offset<flatbuffers::Vector<float>> tensorScale) {
fbb_.AddOffset(10, tensorScale);
}
void add_method(QuantizeAlgo method) {
fbb_.AddElement<int8_t>(12, static_cast<int8_t>(method), 0);
}
void add_nbits(int32_t nbits) {
fbb_.AddElement<int32_t>(14, nbits, 8);
}
void add_zeroPoint(int8_t zeroPoint) {
fbb_.AddElement<int8_t>(16, zeroPoint, 0);
}
void add_outputZeroPoint(int8_t outputZeroPoint) {
fbb_.AddElement<int8_t>(18, outputZeroPoint, 0);
}
void add_clampMin(int8_t clampMin) {
fbb_.AddElement<int8_t>(20, clampMin, -128);
}
void add_clampMax(int8_t clampMax) {
fbb_.AddElement<int8_t>(22, clampMax, 127);
}
void add_winogradAttr(flatbuffers::Offset<flatbuffers::Vector<int32_t>> winogradAttr) {
fbb_.AddOffset(24, winogradAttr);
}
void add_outputDataType(DataType outputDataType) {
fbb_.AddElement<int32_t>(26, static_cast<int32_t>(outputDataType), 6);
}
void add_floatzeros(flatbuffers::Offset<flatbuffers::Vector<float>> floatzeros) {
fbb_.AddOffset(28, floatzeros);
}
explicit QuantizedFloatParamBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
QuantizedFloatParamBuilder &operator=(const QuantizedFloatParamBuilder &);
flatbuffers::Offset<QuantizedFloatParam> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<QuantizedFloatParam>(end);
return o;
}
};
inline flatbuffers::Offset<QuantizedFloatParam> CreateQuantizedFloatParam(
flatbuffers::FlatBufferBuilder &_fbb,
flatbuffers::Offset<flatbuffers::Vector<int8_t>> weight = 0,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> bias = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> scale = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> tensorScale = 0,
QuantizeAlgo method = QuantizeAlgo_DEFAULT,
int32_t nbits = 8,
int8_t zeroPoint = 0,
int8_t outputZeroPoint = 0,
int8_t clampMin = -128,
int8_t clampMax = 127,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> winogradAttr = 0,
DataType outputDataType = DataType_DT_INT8,
flatbuffers::Offset<flatbuffers::Vector<float>> floatzeros = 0) {
QuantizedFloatParamBuilder builder_(_fbb);
builder_.add_floatzeros(floatzeros);
builder_.add_outputDataType(outputDataType);
builder_.add_winogradAttr(winogradAttr);
builder_.add_nbits(nbits);
builder_.add_tensorScale(tensorScale);
builder_.add_scale(scale);
builder_.add_bias(bias);
builder_.add_weight(weight);
builder_.add_clampMax(clampMax);
builder_.add_clampMin(clampMin);
builder_.add_outputZeroPoint(outputZeroPoint);
builder_.add_zeroPoint(zeroPoint);
builder_.add_method(method);
return builder_.Finish();
}
flatbuffers::Offset<QuantizedFloatParam> CreateQuantizedFloatParam(flatbuffers::FlatBufferBuilder &_fbb, const QuantizedFloatParamT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct Convolution2DT : public flatbuffers::NativeTable {
typedef Convolution2D TableType;
std::unique_ptr<Convolution2DCommonT> common;
std::vector<float> weight;
std::vector<float> bias;
std::unique_ptr<IDSTQuanT> quanParameter;
std::unique_ptr<QuantizedFloatParamT> symmetricQuan;
std::unique_ptr<SparseCommonT> sparseParameter;
std::vector<int64_t> external;
Convolution2DT() {
}
};
struct Convolution2D FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef Convolution2DT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return Convolution2DTypeTable();
}
const Convolution2DCommon *common() const {
return GetPointer<const Convolution2DCommon *>(4);
}
const flatbuffers::Vector<float> *weight() const {
return GetPointer<const flatbuffers::Vector<float> *>(6);
}
const flatbuffers::Vector<float> *bias() const {
return GetPointer<const flatbuffers::Vector<float> *>(8);
}
const IDSTQuan *quanParameter() const {
return GetPointer<const IDSTQuan *>(10);
}
const QuantizedFloatParam *symmetricQuan() const {
return GetPointer<const QuantizedFloatParam *>(12);
}
const SparseCommon *sparseParameter() const {
return GetPointer<const SparseCommon *>(14);
}
const flatbuffers::Vector<int64_t> *external() const {
return GetPointer<const flatbuffers::Vector<int64_t> *>(16);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyOffset(verifier, 4) &&
verifier.VerifyTable(common()) &&
VerifyOffset(verifier, 6) &&
verifier.VerifyVector(weight()) &&
VerifyOffset(verifier, 8) &&
verifier.VerifyVector(bias()) &&
VerifyOffset(verifier, 10) &&
verifier.VerifyTable(quanParameter()) &&
VerifyOffset(verifier, 12) &&
verifier.VerifyTable(symmetricQuan()) &&
VerifyOffset(verifier, 14) &&
verifier.VerifyTable(sparseParameter()) &&
VerifyOffset(verifier, 16) &&
verifier.VerifyVector(external()) &&
verifier.EndTable();
}
Convolution2DT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(Convolution2DT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Convolution2D> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Convolution2DT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct Convolution2DBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_common(flatbuffers::Offset<Convolution2DCommon> common) {
fbb_.AddOffset(4, common);
}
void add_weight(flatbuffers::Offset<flatbuffers::Vector<float>> weight) {
fbb_.AddOffset(6, weight);
}
void add_bias(flatbuffers::Offset<flatbuffers::Vector<float>> bias) {
fbb_.AddOffset(8, bias);
}
void add_quanParameter(flatbuffers::Offset<IDSTQuan> quanParameter) {
fbb_.AddOffset(10, quanParameter);
}
void add_symmetricQuan(flatbuffers::Offset<QuantizedFloatParam> symmetricQuan) {
fbb_.AddOffset(12, symmetricQuan);
}
void add_sparseParameter(flatbuffers::Offset<SparseCommon> sparseParameter) {
fbb_.AddOffset(14, sparseParameter);
}
void add_external(flatbuffers::Offset<flatbuffers::Vector<int64_t>> external) {
fbb_.AddOffset(16, external);
}
explicit Convolution2DBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
Convolution2DBuilder &operator=(const Convolution2DBuilder &);
flatbuffers::Offset<Convolution2D> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Convolution2D>(end);
return o;
}
};
inline flatbuffers::Offset<Convolution2D> CreateConvolution2D(
flatbuffers::FlatBufferBuilder &_fbb,
flatbuffers::Offset<Convolution2DCommon> common = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> weight = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> bias = 0,
flatbuffers::Offset<IDSTQuan> quanParameter = 0,
flatbuffers::Offset<QuantizedFloatParam> symmetricQuan = 0,
flatbuffers::Offset<SparseCommon> sparseParameter = 0,
flatbuffers::Offset<flatbuffers::Vector<int64_t>> external = 0) {
Convolution2DBuilder builder_(_fbb);
builder_.add_external(external);
builder_.add_sparseParameter(sparseParameter);
builder_.add_symmetricQuan(symmetricQuan);
builder_.add_quanParameter(quanParameter);
builder_.add_bias(bias);
builder_.add_weight(weight);
builder_.add_common(common);
return builder_.Finish();
}
flatbuffers::Offset<Convolution2D> CreateConvolution2D(flatbuffers::FlatBufferBuilder &_fbb, const Convolution2DT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct Convolution3DT : public flatbuffers::NativeTable {
typedef Convolution3D TableType;
std::unique_ptr<Convolution3DCommonT> common;
std::vector<float> weight;
std::vector<float> bias;
std::vector<int64_t> external;
Convolution3DT() {
}
};
struct Convolution3D FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef Convolution3DT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return Convolution3DTypeTable();
}
const Convolution3DCommon *common() const {
return GetPointer<const Convolution3DCommon *>(4);
}
const flatbuffers::Vector<float> *weight() const {
return GetPointer<const flatbuffers::Vector<float> *>(6);
}
const flatbuffers::Vector<float> *bias() const {
return GetPointer<const flatbuffers::Vector<float> *>(8);
}
const flatbuffers::Vector<int64_t> *external() const {
return GetPointer<const flatbuffers::Vector<int64_t> *>(10);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyOffset(verifier, 4) &&
verifier.VerifyTable(common()) &&
VerifyOffset(verifier, 6) &&
verifier.VerifyVector(weight()) &&
VerifyOffset(verifier, 8) &&
verifier.VerifyVector(bias()) &&
VerifyOffset(verifier, 10) &&
verifier.VerifyVector(external()) &&
verifier.EndTable();
}
Convolution3DT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(Convolution3DT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Convolution3D> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Convolution3DT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct Convolution3DBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_common(flatbuffers::Offset<Convolution3DCommon> common) {
fbb_.AddOffset(4, common);
}
void add_weight(flatbuffers::Offset<flatbuffers::Vector<float>> weight) {
fbb_.AddOffset(6, weight);
}
void add_bias(flatbuffers::Offset<flatbuffers::Vector<float>> bias) {
fbb_.AddOffset(8, bias);
}
void add_external(flatbuffers::Offset<flatbuffers::Vector<int64_t>> external) {
fbb_.AddOffset(10, external);
}
explicit Convolution3DBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
Convolution3DBuilder &operator=(const Convolution3DBuilder &);
flatbuffers::Offset<Convolution3D> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Convolution3D>(end);
return o;
}
};
inline flatbuffers::Offset<Convolution3D> CreateConvolution3D(
flatbuffers::FlatBufferBuilder &_fbb,
flatbuffers::Offset<Convolution3DCommon> common = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> weight = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> bias = 0,
flatbuffers::Offset<flatbuffers::Vector<int64_t>> external = 0) {
Convolution3DBuilder builder_(_fbb);
builder_.add_external(external);
builder_.add_bias(bias);
builder_.add_weight(weight);
builder_.add_common(common);
return builder_.Finish();
}
flatbuffers::Offset<Convolution3D> CreateConvolution3D(flatbuffers::FlatBufferBuilder &_fbb, const Convolution3DT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct InnerProductT : public flatbuffers::NativeTable {
typedef InnerProduct TableType;
int32_t outputCount;
int32_t biasTerm;
int32_t weightSize;
std::vector<float> weight;
std::vector<float> bias;
int32_t axis;
bool transpose;
std::unique_ptr<IDSTQuanT> quanParameter;
InnerProductT()
: outputCount(0),
biasTerm(0),
weightSize(0),
axis(0),
transpose(false) {
}
};
struct InnerProduct FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef InnerProductT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return InnerProductTypeTable();
}
int32_t outputCount() const {
return GetField<int32_t>(4, 0);
}
int32_t biasTerm() const {
return GetField<int32_t>(6, 0);
}
int32_t weightSize() const {
return GetField<int32_t>(8, 0);
}
const flatbuffers::Vector<float> *weight() const {
return GetPointer<const flatbuffers::Vector<float> *>(10);
}
const flatbuffers::Vector<float> *bias() const {
return GetPointer<const flatbuffers::Vector<float> *>(12);
}
int32_t axis() const {
return GetField<int32_t>(14, 0);
}
bool transpose() const {
return GetField<uint8_t>(16, 0) != 0;
}
const IDSTQuan *quanParameter() const {
return GetPointer<const IDSTQuan *>(18);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyField<int32_t>(verifier, 6) &&
VerifyField<int32_t>(verifier, 8) &&
VerifyOffset(verifier, 10) &&
verifier.VerifyVector(weight()) &&
VerifyOffset(verifier, 12) &&
verifier.VerifyVector(bias()) &&
VerifyField<int32_t>(verifier, 14) &&
VerifyField<uint8_t>(verifier, 16) &&
VerifyOffset(verifier, 18) &&
verifier.VerifyTable(quanParameter()) &&
verifier.EndTable();
}
InnerProductT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(InnerProductT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<InnerProduct> Pack(flatbuffers::FlatBufferBuilder &_fbb, const InnerProductT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct InnerProductBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_outputCount(int32_t outputCount) {
fbb_.AddElement<int32_t>(4, outputCount, 0);
}
void add_biasTerm(int32_t biasTerm) {
fbb_.AddElement<int32_t>(6, biasTerm, 0);
}
void add_weightSize(int32_t weightSize) {
fbb_.AddElement<int32_t>(8, weightSize, 0);
}
void add_weight(flatbuffers::Offset<flatbuffers::Vector<float>> weight) {
fbb_.AddOffset(10, weight);
}
void add_bias(flatbuffers::Offset<flatbuffers::Vector<float>> bias) {
fbb_.AddOffset(12, bias);
}
void add_axis(int32_t axis) {
fbb_.AddElement<int32_t>(14, axis, 0);
}
void add_transpose(bool transpose) {
fbb_.AddElement<uint8_t>(16, static_cast<uint8_t>(transpose), 0);
}
void add_quanParameter(flatbuffers::Offset<IDSTQuan> quanParameter) {
fbb_.AddOffset(18, quanParameter);
}
explicit InnerProductBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
InnerProductBuilder &operator=(const InnerProductBuilder &);
flatbuffers::Offset<InnerProduct> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<InnerProduct>(end);
return o;
}
};
inline flatbuffers::Offset<InnerProduct> CreateInnerProduct(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t outputCount = 0,
int32_t biasTerm = 0,
int32_t weightSize = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> weight = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> bias = 0,
int32_t axis = 0,
bool transpose = false,
flatbuffers::Offset<IDSTQuan> quanParameter = 0) {
InnerProductBuilder builder_(_fbb);
builder_.add_quanParameter(quanParameter);
builder_.add_axis(axis);
builder_.add_bias(bias);
builder_.add_weight(weight);
builder_.add_weightSize(weightSize);
builder_.add_biasTerm(biasTerm);
builder_.add_outputCount(outputCount);
builder_.add_transpose(transpose);
return builder_.Finish();
}
flatbuffers::Offset<InnerProduct> CreateInnerProduct(flatbuffers::FlatBufferBuilder &_fbb, const InnerProductT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct PoolT : public flatbuffers::NativeTable {
typedef Pool TableType;
int32_t padX;
int32_t padY;
bool isGlobal;
int32_t kernelX;
int32_t kernelY;
int32_t strideX;
int32_t strideY;
PoolType type;
PoolPadType padType;
DataType dataType;
bool ceilModel;
std::vector<int32_t> pads;
AvgPoolCountType countType;
PoolT()
: padX(0),
padY(0),
isGlobal(false),
kernelX(0),
kernelY(0),
strideX(0),
strideY(0),
type(PoolType_MAXPOOL),
padType(PoolPadType_CAFFE),
dataType(DataType_DT_FLOAT),
ceilModel(true),
countType(AvgPoolCountType_DEFAULT) {
}
};
struct Pool FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef PoolT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return PoolTypeTable();
}
int32_t padX() const {
return GetField<int32_t>(4, 0);
}
int32_t padY() const {
return GetField<int32_t>(6, 0);
}
bool isGlobal() const {
return GetField<uint8_t>(8, 0) != 0;
}
int32_t kernelX() const {
return GetField<int32_t>(10, 0);
}
int32_t kernelY() const {
return GetField<int32_t>(12, 0);
}
int32_t strideX() const {
return GetField<int32_t>(14, 0);
}
int32_t strideY() const {
return GetField<int32_t>(16, 0);
}
PoolType type() const {
return static_cast<PoolType>(GetField<int8_t>(18, 0));
}
PoolPadType padType() const {
return static_cast<PoolPadType>(GetField<int8_t>(20, 0));
}
DataType dataType() const {
return static_cast<DataType>(GetField<int32_t>(22, 1));
}
bool ceilModel() const {
return GetField<uint8_t>(24, 1) != 0;
}
const flatbuffers::Vector<int32_t> *pads() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(26);
}
AvgPoolCountType countType() const {
return static_cast<AvgPoolCountType>(GetField<int8_t>(28, 0));
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyField<int32_t>(verifier, 6) &&
VerifyField<uint8_t>(verifier, 8) &&
VerifyField<int32_t>(verifier, 10) &&
VerifyField<int32_t>(verifier, 12) &&
VerifyField<int32_t>(verifier, 14) &&
VerifyField<int32_t>(verifier, 16) &&
VerifyField<int8_t>(verifier, 18) &&
VerifyField<int8_t>(verifier, 20) &&
VerifyField<int32_t>(verifier, 22) &&
VerifyField<uint8_t>(verifier, 24) &&
VerifyOffset(verifier, 26) &&
verifier.VerifyVector(pads()) &&
VerifyField<int8_t>(verifier, 28) &&
verifier.EndTable();
}
PoolT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(PoolT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Pool> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PoolT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct PoolBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_padX(int32_t padX) {
fbb_.AddElement<int32_t>(4, padX, 0);
}
void add_padY(int32_t padY) {
fbb_.AddElement<int32_t>(6, padY, 0);
}
void add_isGlobal(bool isGlobal) {
fbb_.AddElement<uint8_t>(8, static_cast<uint8_t>(isGlobal), 0);
}
void add_kernelX(int32_t kernelX) {
fbb_.AddElement<int32_t>(10, kernelX, 0);
}
void add_kernelY(int32_t kernelY) {
fbb_.AddElement<int32_t>(12, kernelY, 0);
}
void add_strideX(int32_t strideX) {
fbb_.AddElement<int32_t>(14, strideX, 0);
}
void add_strideY(int32_t strideY) {
fbb_.AddElement<int32_t>(16, strideY, 0);
}
void add_type(PoolType type) {
fbb_.AddElement<int8_t>(18, static_cast<int8_t>(type), 0);
}
void add_padType(PoolPadType padType) {
fbb_.AddElement<int8_t>(20, static_cast<int8_t>(padType), 0);
}
void add_dataType(DataType dataType) {
fbb_.AddElement<int32_t>(22, static_cast<int32_t>(dataType), 1);
}
void add_ceilModel(bool ceilModel) {
fbb_.AddElement<uint8_t>(24, static_cast<uint8_t>(ceilModel), 1);
}
void add_pads(flatbuffers::Offset<flatbuffers::Vector<int32_t>> pads) {
fbb_.AddOffset(26, pads);
}
void add_countType(AvgPoolCountType countType) {
fbb_.AddElement<int8_t>(28, static_cast<int8_t>(countType), 0);
}
explicit PoolBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
PoolBuilder &operator=(const PoolBuilder &);
flatbuffers::Offset<Pool> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Pool>(end);
return o;
}
};
inline flatbuffers::Offset<Pool> CreatePool(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t padX = 0,
int32_t padY = 0,
bool isGlobal = false,
int32_t kernelX = 0,
int32_t kernelY = 0,
int32_t strideX = 0,
int32_t strideY = 0,
PoolType type = PoolType_MAXPOOL,
PoolPadType padType = PoolPadType_CAFFE,
DataType dataType = DataType_DT_FLOAT,
bool ceilModel = true,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> pads = 0,
AvgPoolCountType countType = AvgPoolCountType_DEFAULT) {
PoolBuilder builder_(_fbb);
builder_.add_pads(pads);
builder_.add_dataType(dataType);
builder_.add_strideY(strideY);
builder_.add_strideX(strideX);
builder_.add_kernelY(kernelY);
builder_.add_kernelX(kernelX);
builder_.add_padY(padY);
builder_.add_padX(padX);
builder_.add_countType(countType);
builder_.add_ceilModel(ceilModel);
builder_.add_padType(padType);
builder_.add_type(type);
builder_.add_isGlobal(isGlobal);
return builder_.Finish();
}
flatbuffers::Offset<Pool> CreatePool(flatbuffers::FlatBufferBuilder &_fbb, const PoolT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct Pool3DT : public flatbuffers::NativeTable {
typedef Pool3D TableType;
std::vector<int32_t> strides;
std::vector<int32_t> kernels;
std::vector<int32_t> pads;
PoolType type;
PoolPadType padType;
bool isGlobal;
Pool3DT()
: type(PoolType_MAXPOOL),
padType(PoolPadType_CAFFE),
isGlobal(false) {
}
};
struct Pool3D FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef Pool3DT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return Pool3DTypeTable();
}
const flatbuffers::Vector<int32_t> *strides() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(4);
}
const flatbuffers::Vector<int32_t> *kernels() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(6);
}
const flatbuffers::Vector<int32_t> *pads() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(8);
}
PoolType type() const {
return static_cast<PoolType>(GetField<int8_t>(10, 0));
}
PoolPadType padType() const {
return static_cast<PoolPadType>(GetField<int8_t>(12, 0));
}
bool isGlobal() const {
return GetField<uint8_t>(14, 0) != 0;
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyOffset(verifier, 4) &&
verifier.VerifyVector(strides()) &&
VerifyOffset(verifier, 6) &&
verifier.VerifyVector(kernels()) &&
VerifyOffset(verifier, 8) &&
verifier.VerifyVector(pads()) &&
VerifyField<int8_t>(verifier, 10) &&
VerifyField<int8_t>(verifier, 12) &&
VerifyField<uint8_t>(verifier, 14) &&
verifier.EndTable();
}
Pool3DT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(Pool3DT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Pool3D> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Pool3DT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct Pool3DBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_strides(flatbuffers::Offset<flatbuffers::Vector<int32_t>> strides) {
fbb_.AddOffset(4, strides);
}
void add_kernels(flatbuffers::Offset<flatbuffers::Vector<int32_t>> kernels) {
fbb_.AddOffset(6, kernels);
}
void add_pads(flatbuffers::Offset<flatbuffers::Vector<int32_t>> pads) {
fbb_.AddOffset(8, pads);
}
void add_type(PoolType type) {
fbb_.AddElement<int8_t>(10, static_cast<int8_t>(type), 0);
}
void add_padType(PoolPadType padType) {
fbb_.AddElement<int8_t>(12, static_cast<int8_t>(padType), 0);
}
void add_isGlobal(bool isGlobal) {
fbb_.AddElement<uint8_t>(14, static_cast<uint8_t>(isGlobal), 0);
}
explicit Pool3DBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
Pool3DBuilder &operator=(const Pool3DBuilder &);
flatbuffers::Offset<Pool3D> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Pool3D>(end);
return o;
}
};
inline flatbuffers::Offset<Pool3D> CreatePool3D(
flatbuffers::FlatBufferBuilder &_fbb,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> strides = 0,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> kernels = 0,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> pads = 0,
PoolType type = PoolType_MAXPOOL,
PoolPadType padType = PoolPadType_CAFFE,
bool isGlobal = false) {
Pool3DBuilder builder_(_fbb);
builder_.add_pads(pads);
builder_.add_kernels(kernels);
builder_.add_strides(strides);
builder_.add_isGlobal(isGlobal);
builder_.add_padType(padType);
builder_.add_type(type);
return builder_.Finish();
}
flatbuffers::Offset<Pool3D> CreatePool3D(flatbuffers::FlatBufferBuilder &_fbb, const Pool3DT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct ReluT : public flatbuffers::NativeTable {
typedef Relu TableType;
float slope;
ReluT()
: slope(0.0f) {
}
};
struct Relu FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef ReluT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return ReluTypeTable();
}
float slope() const {
return GetField<float>(4, 0.0f);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<float>(verifier, 4) &&
verifier.EndTable();
}
ReluT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(ReluT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Relu> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReluT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct ReluBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_slope(float slope) {
fbb_.AddElement<float>(4, slope, 0.0f);
}
explicit ReluBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
ReluBuilder &operator=(const ReluBuilder &);
flatbuffers::Offset<Relu> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Relu>(end);
return o;
}
};
inline flatbuffers::Offset<Relu> CreateRelu(
flatbuffers::FlatBufferBuilder &_fbb,
float slope = 0.0f) {
ReluBuilder builder_(_fbb);
builder_.add_slope(slope);
return builder_.Finish();
}
flatbuffers::Offset<Relu> CreateRelu(flatbuffers::FlatBufferBuilder &_fbb, const ReluT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct Relu6T : public flatbuffers::NativeTable {
typedef Relu6 TableType;
float minValue;
float maxValue;
Relu6T()
: minValue(0.0f),
maxValue(6.0f) {
}
};
struct Relu6 FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef Relu6T NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return Relu6TypeTable();
}
float minValue() const {
return GetField<float>(4, 0.0f);
}
float maxValue() const {
return GetField<float>(6, 6.0f);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<float>(verifier, 4) &&
VerifyField<float>(verifier, 6) &&
verifier.EndTable();
}
Relu6T *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(Relu6T *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Relu6> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Relu6T* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct Relu6Builder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_minValue(float minValue) {
fbb_.AddElement<float>(4, minValue, 0.0f);
}
void add_maxValue(float maxValue) {
fbb_.AddElement<float>(6, maxValue, 6.0f);
}
explicit Relu6Builder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
Relu6Builder &operator=(const Relu6Builder &);
flatbuffers::Offset<Relu6> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Relu6>(end);
return o;
}
};
inline flatbuffers::Offset<Relu6> CreateRelu6(
flatbuffers::FlatBufferBuilder &_fbb,
float minValue = 0.0f,
float maxValue = 6.0f) {
Relu6Builder builder_(_fbb);
builder_.add_maxValue(maxValue);
builder_.add_minValue(minValue);
return builder_.Finish();
}
flatbuffers::Offset<Relu6> CreateRelu6(flatbuffers::FlatBufferBuilder &_fbb, const Relu6T *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct PReluT : public flatbuffers::NativeTable {
typedef PRelu TableType;
int32_t slopeCount;
std::vector<float> slope;
PReluT()
: slopeCount(0) {
}
};
struct PRelu FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef PReluT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return PReluTypeTable();
}
int32_t slopeCount() const {
return GetField<int32_t>(4, 0);
}
const flatbuffers::Vector<float> *slope() const {
return GetPointer<const flatbuffers::Vector<float> *>(6);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyOffset(verifier, 6) &&
verifier.VerifyVector(slope()) &&
verifier.EndTable();
}
PReluT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(PReluT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<PRelu> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PReluT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct PReluBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_slopeCount(int32_t slopeCount) {
fbb_.AddElement<int32_t>(4, slopeCount, 0);
}
void add_slope(flatbuffers::Offset<flatbuffers::Vector<float>> slope) {
fbb_.AddOffset(6, slope);
}
explicit PReluBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
PReluBuilder &operator=(const PReluBuilder &);
flatbuffers::Offset<PRelu> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<PRelu>(end);
return o;
}
};
inline flatbuffers::Offset<PRelu> CreatePRelu(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t slopeCount = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> slope = 0) {
PReluBuilder builder_(_fbb);
builder_.add_slope(slope);
builder_.add_slopeCount(slopeCount);
return builder_.Finish();
}
flatbuffers::Offset<PRelu> CreatePRelu(flatbuffers::FlatBufferBuilder &_fbb, const PReluT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct ELUT : public flatbuffers::NativeTable {
typedef ELU TableType;
float alpha;
ELUT()
: alpha(0.0f) {
}
};
struct ELU FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef ELUT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return ELUTypeTable();
}
float alpha() const {
return GetField<float>(4, 0.0f);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<float>(verifier, 4) &&
verifier.EndTable();
}
ELUT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(ELUT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<ELU> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ELUT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct ELUBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_alpha(float alpha) {
fbb_.AddElement<float>(4, alpha, 0.0f);
}
explicit ELUBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
ELUBuilder &operator=(const ELUBuilder &);
flatbuffers::Offset<ELU> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<ELU>(end);
return o;
}
};
inline flatbuffers::Offset<ELU> CreateELU(
flatbuffers::FlatBufferBuilder &_fbb,
float alpha = 0.0f) {
ELUBuilder builder_(_fbb);
builder_.add_alpha(alpha);
return builder_.Finish();
}
flatbuffers::Offset<ELU> CreateELU(flatbuffers::FlatBufferBuilder &_fbb, const ELUT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct LRNT : public flatbuffers::NativeTable {
typedef LRN TableType;
int32_t regionType;
int32_t localSize;
float alpha;
float beta;
float bias;
LRNT()
: regionType(0),
localSize(0),
alpha(0.0f),
beta(0.0f),
bias(1.0f) {
}
};
struct LRN FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef LRNT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return LRNTypeTable();
}
int32_t regionType() const {
return GetField<int32_t>(4, 0);
}
int32_t localSize() const {
return GetField<int32_t>(6, 0);
}
float alpha() const {
return GetField<float>(8, 0.0f);
}
float beta() const {
return GetField<float>(10, 0.0f);
}
float bias() const {
return GetField<float>(12, 1.0f);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyField<int32_t>(verifier, 6) &&
VerifyField<float>(verifier, 8) &&
VerifyField<float>(verifier, 10) &&
VerifyField<float>(verifier, 12) &&
verifier.EndTable();
}
LRNT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(LRNT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<LRN> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LRNT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct LRNBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_regionType(int32_t regionType) {
fbb_.AddElement<int32_t>(4, regionType, 0);
}
void add_localSize(int32_t localSize) {
fbb_.AddElement<int32_t>(6, localSize, 0);
}
void add_alpha(float alpha) {
fbb_.AddElement<float>(8, alpha, 0.0f);
}
void add_beta(float beta) {
fbb_.AddElement<float>(10, beta, 0.0f);
}
void add_bias(float bias) {
fbb_.AddElement<float>(12, bias, 1.0f);
}
explicit LRNBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
LRNBuilder &operator=(const LRNBuilder &);
flatbuffers::Offset<LRN> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<LRN>(end);
return o;
}
};
inline flatbuffers::Offset<LRN> CreateLRN(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t regionType = 0,
int32_t localSize = 0,
float alpha = 0.0f,
float beta = 0.0f,
float bias = 1.0f) {
LRNBuilder builder_(_fbb);
builder_.add_bias(bias);
builder_.add_beta(beta);
builder_.add_alpha(alpha);
builder_.add_localSize(localSize);
builder_.add_regionType(regionType);
return builder_.Finish();
}
flatbuffers::Offset<LRN> CreateLRN(flatbuffers::FlatBufferBuilder &_fbb, const LRNT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct ArgMaxT : public flatbuffers::NativeTable {
typedef ArgMax TableType;
int32_t outMaxVal;
int32_t topK;
int32_t axis;
int32_t softmaxThreshold;
ArgMaxT()
: outMaxVal(0),
topK(0),
axis(0),
softmaxThreshold(0) {
}
};
struct ArgMax FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef ArgMaxT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return ArgMaxTypeTable();
}
int32_t outMaxVal() const {
return GetField<int32_t>(4, 0);
}
int32_t topK() const {
return GetField<int32_t>(6, 0);
}
int32_t axis() const {
return GetField<int32_t>(8, 0);
}
int32_t softmaxThreshold() const {
return GetField<int32_t>(10, 0);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyField<int32_t>(verifier, 6) &&
VerifyField<int32_t>(verifier, 8) &&
VerifyField<int32_t>(verifier, 10) &&
verifier.EndTable();
}
ArgMaxT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(ArgMaxT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<ArgMax> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct ArgMaxBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_outMaxVal(int32_t outMaxVal) {
fbb_.AddElement<int32_t>(4, outMaxVal, 0);
}
void add_topK(int32_t topK) {
fbb_.AddElement<int32_t>(6, topK, 0);
}
void add_axis(int32_t axis) {
fbb_.AddElement<int32_t>(8, axis, 0);
}
void add_softmaxThreshold(int32_t softmaxThreshold) {
fbb_.AddElement<int32_t>(10, softmaxThreshold, 0);
}
explicit ArgMaxBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
ArgMaxBuilder &operator=(const ArgMaxBuilder &);
flatbuffers::Offset<ArgMax> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<ArgMax>(end);
return o;
}
};
inline flatbuffers::Offset<ArgMax> CreateArgMax(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t outMaxVal = 0,
int32_t topK = 0,
int32_t axis = 0,
int32_t softmaxThreshold = 0) {
ArgMaxBuilder builder_(_fbb);
builder_.add_softmaxThreshold(softmaxThreshold);
builder_.add_axis(axis);
builder_.add_topK(topK);
builder_.add_outMaxVal(outMaxVal);
return builder_.Finish();
}
flatbuffers::Offset<ArgMax> CreateArgMax(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct AxisT : public flatbuffers::NativeTable {
typedef Axis TableType;
int32_t axis;
AxisT()
: axis(0) {
}
};
struct Axis FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef AxisT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return AxisTypeTable();
}
int32_t axis() const {
return GetField<int32_t>(4, 0);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
verifier.EndTable();
}
AxisT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(AxisT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Axis> Pack(flatbuffers::FlatBufferBuilder &_fbb, const AxisT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct AxisBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_axis(int32_t axis) {
fbb_.AddElement<int32_t>(4, axis, 0);
}
explicit AxisBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
AxisBuilder &operator=(const AxisBuilder &);
flatbuffers::Offset<Axis> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Axis>(end);
return o;
}
};
inline flatbuffers::Offset<Axis> CreateAxis(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t axis = 0) {
AxisBuilder builder_(_fbb);
builder_.add_axis(axis);
return builder_.Finish();
}
flatbuffers::Offset<Axis> CreateAxis(flatbuffers::FlatBufferBuilder &_fbb, const AxisT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct InputT : public flatbuffers::NativeTable {
typedef Input TableType;
std::vector<int32_t> dims;
DataType dtype;
MNN_DATA_FORMAT dformat;
InputT()
: dtype(DataType_DT_FLOAT),
dformat(MNN_DATA_FORMAT_NC4HW4) {
}
};
struct Input FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef InputT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return InputTypeTable();
}
const flatbuffers::Vector<int32_t> *dims() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(4);
}
DataType dtype() const {
return static_cast<DataType>(GetField<int32_t>(6, 1));
}
MNN_DATA_FORMAT dformat() const {
return static_cast<MNN_DATA_FORMAT>(GetField<int8_t>(8, 2));
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyOffset(verifier, 4) &&
verifier.VerifyVector(dims()) &&
VerifyField<int32_t>(verifier, 6) &&
VerifyField<int8_t>(verifier, 8) &&
verifier.EndTable();
}
InputT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(InputT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Input> Pack(flatbuffers::FlatBufferBuilder &_fbb, const InputT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct InputBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_dims(flatbuffers::Offset<flatbuffers::Vector<int32_t>> dims) {
fbb_.AddOffset(4, dims);
}
void add_dtype(DataType dtype) {
fbb_.AddElement<int32_t>(6, static_cast<int32_t>(dtype), 1);
}
void add_dformat(MNN_DATA_FORMAT dformat) {
fbb_.AddElement<int8_t>(8, static_cast<int8_t>(dformat), 2);
}
explicit InputBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
InputBuilder &operator=(const InputBuilder &);
flatbuffers::Offset<Input> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Input>(end);
return o;
}
};
inline flatbuffers::Offset<Input> CreateInput(
flatbuffers::FlatBufferBuilder &_fbb,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> dims = 0,
DataType dtype = DataType_DT_FLOAT,
MNN_DATA_FORMAT dformat = MNN_DATA_FORMAT_NC4HW4) {
InputBuilder builder_(_fbb);
builder_.add_dtype(dtype);
builder_.add_dims(dims);
builder_.add_dformat(dformat);
return builder_.Finish();
}
flatbuffers::Offset<Input> CreateInput(flatbuffers::FlatBufferBuilder &_fbb, const InputT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct LSTMT : public flatbuffers::NativeTable {
typedef LSTM TableType;
int32_t outputCount;
int32_t weightSize;
float clippingThreshold;
std::unique_ptr<BlobT> weightI;
std::unique_ptr<BlobT> weightH;
std::unique_ptr<BlobT> bias;
std::unique_ptr<BlobT> weightIQ;
std::unique_ptr<BlobT> weightIA;
float quantScale;
LSTMT()
: outputCount(0),
weightSize(0),
clippingThreshold(0.0f),
quantScale(0.0f) {
}
};
struct LSTM FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef LSTMT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return LSTMTypeTable();
}
int32_t outputCount() const {
return GetField<int32_t>(4, 0);
}
int32_t weightSize() const {
return GetField<int32_t>(6, 0);
}
float clippingThreshold() const {
return GetField<float>(8, 0.0f);
}
const Blob *weightI() const {
return GetPointer<const Blob *>(10);
}
const Blob *weightH() const {
return GetPointer<const Blob *>(12);
}
const Blob *bias() const {
return GetPointer<const Blob *>(14);
}
const Blob *weightIQ() const {
return GetPointer<const Blob *>(16);
}
const Blob *weightIA() const {
return GetPointer<const Blob *>(18);
}
float quantScale() const {
return GetField<float>(20, 0.0f);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyField<int32_t>(verifier, 6) &&
VerifyField<float>(verifier, 8) &&
VerifyOffset(verifier, 10) &&
verifier.VerifyTable(weightI()) &&
VerifyOffset(verifier, 12) &&
verifier.VerifyTable(weightH()) &&
VerifyOffset(verifier, 14) &&
verifier.VerifyTable(bias()) &&
VerifyOffset(verifier, 16) &&
verifier.VerifyTable(weightIQ()) &&
VerifyOffset(verifier, 18) &&
verifier.VerifyTable(weightIA()) &&
VerifyField<float>(verifier, 20) &&
verifier.EndTable();
}
LSTMT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(LSTMT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<LSTM> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LSTMT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct LSTMBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_outputCount(int32_t outputCount) {
fbb_.AddElement<int32_t>(4, outputCount, 0);
}
void add_weightSize(int32_t weightSize) {
fbb_.AddElement<int32_t>(6, weightSize, 0);
}
void add_clippingThreshold(float clippingThreshold) {
fbb_.AddElement<float>(8, clippingThreshold, 0.0f);
}
void add_weightI(flatbuffers::Offset<Blob> weightI) {
fbb_.AddOffset(10, weightI);
}
void add_weightH(flatbuffers::Offset<Blob> weightH) {
fbb_.AddOffset(12, weightH);
}
void add_bias(flatbuffers::Offset<Blob> bias) {
fbb_.AddOffset(14, bias);
}
void add_weightIQ(flatbuffers::Offset<Blob> weightIQ) {
fbb_.AddOffset(16, weightIQ);
}
void add_weightIA(flatbuffers::Offset<Blob> weightIA) {
fbb_.AddOffset(18, weightIA);
}
void add_quantScale(float quantScale) {
fbb_.AddElement<float>(20, quantScale, 0.0f);
}
explicit LSTMBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
LSTMBuilder &operator=(const LSTMBuilder &);
flatbuffers::Offset<LSTM> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<LSTM>(end);
return o;
}
};
inline flatbuffers::Offset<LSTM> CreateLSTM(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t outputCount = 0,
int32_t weightSize = 0,
float clippingThreshold = 0.0f,
flatbuffers::Offset<Blob> weightI = 0,
flatbuffers::Offset<Blob> weightH = 0,
flatbuffers::Offset<Blob> bias = 0,
flatbuffers::Offset<Blob> weightIQ = 0,
flatbuffers::Offset<Blob> weightIA = 0,
float quantScale = 0.0f) {
LSTMBuilder builder_(_fbb);
builder_.add_quantScale(quantScale);
builder_.add_weightIA(weightIA);
builder_.add_weightIQ(weightIQ);
builder_.add_bias(bias);
builder_.add_weightH(weightH);
builder_.add_weightI(weightI);
builder_.add_clippingThreshold(clippingThreshold);
builder_.add_weightSize(weightSize);
builder_.add_outputCount(outputCount);
return builder_.Finish();
}
flatbuffers::Offset<LSTM> CreateLSTM(flatbuffers::FlatBufferBuilder &_fbb, const LSTMT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct SliceT : public flatbuffers::NativeTable {
typedef Slice TableType;
int32_t axis;
std::vector<int32_t> slicePoints;
NetSource sourceType;
SliceT()
: axis(0),
sourceType(NetSource_CAFFE) {
}
};
struct Slice FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef SliceT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return SliceTypeTable();
}
int32_t axis() const {
return GetField<int32_t>(4, 0);
}
const flatbuffers::Vector<int32_t> *slicePoints() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(6);
}
NetSource sourceType() const {
return static_cast<NetSource>(GetField<int8_t>(8, 0));
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyOffset(verifier, 6) &&
verifier.VerifyVector(slicePoints()) &&
VerifyField<int8_t>(verifier, 8) &&
verifier.EndTable();
}
SliceT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(SliceT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Slice> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SliceT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct SliceBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_axis(int32_t axis) {
fbb_.AddElement<int32_t>(4, axis, 0);
}
void add_slicePoints(flatbuffers::Offset<flatbuffers::Vector<int32_t>> slicePoints) {
fbb_.AddOffset(6, slicePoints);
}
void add_sourceType(NetSource sourceType) {
fbb_.AddElement<int8_t>(8, static_cast<int8_t>(sourceType), 0);
}
explicit SliceBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
SliceBuilder &operator=(const SliceBuilder &);
flatbuffers::Offset<Slice> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Slice>(end);
return o;
}
};
inline flatbuffers::Offset<Slice> CreateSlice(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t axis = 0,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> slicePoints = 0,
NetSource sourceType = NetSource_CAFFE) {
SliceBuilder builder_(_fbb);
builder_.add_slicePoints(slicePoints);
builder_.add_axis(axis);
builder_.add_sourceType(sourceType);
return builder_.Finish();
}
flatbuffers::Offset<Slice> CreateSlice(flatbuffers::FlatBufferBuilder &_fbb, const SliceT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct BatchNormT : public flatbuffers::NativeTable {
typedef BatchNorm TableType;
int32_t channels;
std::vector<float> slopeData;
std::vector<float> meanData;
std::vector<float> varData;
std::vector<float> biasData;
std::vector<float> Adata;
std::vector<float> Bdata;
float epsilon;
BatchNormT()
: channels(0),
epsilon(0.001f) {
}
};
struct BatchNorm FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef BatchNormT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return BatchNormTypeTable();
}
int32_t channels() const {
return GetField<int32_t>(4, 0);
}
const flatbuffers::Vector<float> *slopeData() const {
return GetPointer<const flatbuffers::Vector<float> *>(6);
}
const flatbuffers::Vector<float> *meanData() const {
return GetPointer<const flatbuffers::Vector<float> *>(8);
}
const flatbuffers::Vector<float> *varData() const {
return GetPointer<const flatbuffers::Vector<float> *>(10);
}
const flatbuffers::Vector<float> *biasData() const {
return GetPointer<const flatbuffers::Vector<float> *>(12);
}
const flatbuffers::Vector<float> *Adata() const {
return GetPointer<const flatbuffers::Vector<float> *>(14);
}
const flatbuffers::Vector<float> *Bdata() const {
return GetPointer<const flatbuffers::Vector<float> *>(16);
}
float epsilon() const {
return GetField<float>(18, 0.001f);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyOffset(verifier, 6) &&
verifier.VerifyVector(slopeData()) &&
VerifyOffset(verifier, 8) &&
verifier.VerifyVector(meanData()) &&
VerifyOffset(verifier, 10) &&
verifier.VerifyVector(varData()) &&
VerifyOffset(verifier, 12) &&
verifier.VerifyVector(biasData()) &&
VerifyOffset(verifier, 14) &&
verifier.VerifyVector(Adata()) &&
VerifyOffset(verifier, 16) &&
verifier.VerifyVector(Bdata()) &&
VerifyField<float>(verifier, 18) &&
verifier.EndTable();
}
BatchNormT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(BatchNormT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<BatchNorm> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BatchNormT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct BatchNormBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_channels(int32_t channels) {
fbb_.AddElement<int32_t>(4, channels, 0);
}
void add_slopeData(flatbuffers::Offset<flatbuffers::Vector<float>> slopeData) {
fbb_.AddOffset(6, slopeData);
}
void add_meanData(flatbuffers::Offset<flatbuffers::Vector<float>> meanData) {
fbb_.AddOffset(8, meanData);
}
void add_varData(flatbuffers::Offset<flatbuffers::Vector<float>> varData) {
fbb_.AddOffset(10, varData);
}
void add_biasData(flatbuffers::Offset<flatbuffers::Vector<float>> biasData) {
fbb_.AddOffset(12, biasData);
}
void add_Adata(flatbuffers::Offset<flatbuffers::Vector<float>> Adata) {
fbb_.AddOffset(14, Adata);
}
void add_Bdata(flatbuffers::Offset<flatbuffers::Vector<float>> Bdata) {
fbb_.AddOffset(16, Bdata);
}
void add_epsilon(float epsilon) {
fbb_.AddElement<float>(18, epsilon, 0.001f);
}
explicit BatchNormBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
BatchNormBuilder &operator=(const BatchNormBuilder &);
flatbuffers::Offset<BatchNorm> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<BatchNorm>(end);
return o;
}
};
inline flatbuffers::Offset<BatchNorm> CreateBatchNorm(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t channels = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> slopeData = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> meanData = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> varData = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> biasData = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> Adata = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> Bdata = 0,
float epsilon = 0.001f) {
BatchNormBuilder builder_(_fbb);
builder_.add_epsilon(epsilon);
builder_.add_Bdata(Bdata);
builder_.add_Adata(Adata);
builder_.add_biasData(biasData);
builder_.add_varData(varData);
builder_.add_meanData(meanData);
builder_.add_slopeData(slopeData);
builder_.add_channels(channels);
return builder_.Finish();
}
flatbuffers::Offset<BatchNorm> CreateBatchNorm(flatbuffers::FlatBufferBuilder &_fbb, const BatchNormT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct ScaleT : public flatbuffers::NativeTable {
typedef Scale TableType;
int32_t channels;
std::vector<float> scaleData;
std::vector<float> biasData;
std::vector<int64_t> external;
ScaleT()
: channels(0) {
}
};
struct Scale FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef ScaleT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return ScaleTypeTable();
}
int32_t channels() const {
return GetField<int32_t>(4, 0);
}
const flatbuffers::Vector<float> *scaleData() const {
return GetPointer<const flatbuffers::Vector<float> *>(6);
}
const flatbuffers::Vector<float> *biasData() const {
return GetPointer<const flatbuffers::Vector<float> *>(8);
}
const flatbuffers::Vector<int64_t> *external() const {
return GetPointer<const flatbuffers::Vector<int64_t> *>(10);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyOffset(verifier, 6) &&
verifier.VerifyVector(scaleData()) &&
VerifyOffset(verifier, 8) &&
verifier.VerifyVector(biasData()) &&
VerifyOffset(verifier, 10) &&
verifier.VerifyVector(external()) &&
verifier.EndTable();
}
ScaleT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(ScaleT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Scale> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ScaleT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct ScaleBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_channels(int32_t channels) {
fbb_.AddElement<int32_t>(4, channels, 0);
}
void add_scaleData(flatbuffers::Offset<flatbuffers::Vector<float>> scaleData) {
fbb_.AddOffset(6, scaleData);
}
void add_biasData(flatbuffers::Offset<flatbuffers::Vector<float>> biasData) {
fbb_.AddOffset(8, biasData);
}
void add_external(flatbuffers::Offset<flatbuffers::Vector<int64_t>> external) {
fbb_.AddOffset(10, external);
}
explicit ScaleBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
ScaleBuilder &operator=(const ScaleBuilder &);
flatbuffers::Offset<Scale> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Scale>(end);
return o;
}
};
inline flatbuffers::Offset<Scale> CreateScale(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t channels = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> scaleData = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> biasData = 0,
flatbuffers::Offset<flatbuffers::Vector<int64_t>> external = 0) {
ScaleBuilder builder_(_fbb);
builder_.add_external(external);
builder_.add_biasData(biasData);
builder_.add_scaleData(scaleData);
builder_.add_channels(channels);
return builder_.Finish();
}
flatbuffers::Offset<Scale> CreateScale(flatbuffers::FlatBufferBuilder &_fbb, const ScaleT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct EltwiseT : public flatbuffers::NativeTable {
typedef Eltwise TableType;
EltwiseType type;
std::vector<float> coeff;
EltwiseT()
: type(EltwiseType_PROD) {
}
};
struct Eltwise FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef EltwiseT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return EltwiseTypeTable();
}
EltwiseType type() const {
return static_cast<EltwiseType>(GetField<int8_t>(4, 0));
}
const flatbuffers::Vector<float> *coeff() const {
return GetPointer<const flatbuffers::Vector<float> *>(6);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int8_t>(verifier, 4) &&
VerifyOffset(verifier, 6) &&
verifier.VerifyVector(coeff()) &&
verifier.EndTable();
}
EltwiseT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(EltwiseT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Eltwise> Pack(flatbuffers::FlatBufferBuilder &_fbb, const EltwiseT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct EltwiseBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_type(EltwiseType type) {
fbb_.AddElement<int8_t>(4, static_cast<int8_t>(type), 0);
}
void add_coeff(flatbuffers::Offset<flatbuffers::Vector<float>> coeff) {
fbb_.AddOffset(6, coeff);
}
explicit EltwiseBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
EltwiseBuilder &operator=(const EltwiseBuilder &);
flatbuffers::Offset<Eltwise> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Eltwise>(end);
return o;
}
};
inline flatbuffers::Offset<Eltwise> CreateEltwise(
flatbuffers::FlatBufferBuilder &_fbb,
EltwiseType type = EltwiseType_PROD,
flatbuffers::Offset<flatbuffers::Vector<float>> coeff = 0) {
EltwiseBuilder builder_(_fbb);
builder_.add_coeff(coeff);
builder_.add_type(type);
return builder_.Finish();
}
flatbuffers::Offset<Eltwise> CreateEltwise(flatbuffers::FlatBufferBuilder &_fbb, const EltwiseT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct FlattenT : public flatbuffers::NativeTable {
typedef Flatten TableType;
int32_t axis;
int32_t endAxis;
FlattenT()
: axis(0),
endAxis(0) {
}
};
struct Flatten FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef FlattenT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return FlattenTypeTable();
}
int32_t axis() const {
return GetField<int32_t>(4, 0);
}
int32_t endAxis() const {
return GetField<int32_t>(6, 0);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyField<int32_t>(verifier, 6) &&
verifier.EndTable();
}
FlattenT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(FlattenT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Flatten> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FlattenT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct FlattenBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_axis(int32_t axis) {
fbb_.AddElement<int32_t>(4, axis, 0);
}
void add_endAxis(int32_t endAxis) {
fbb_.AddElement<int32_t>(6, endAxis, 0);
}
explicit FlattenBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
FlattenBuilder &operator=(const FlattenBuilder &);
flatbuffers::Offset<Flatten> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Flatten>(end);
return o;
}
};
inline flatbuffers::Offset<Flatten> CreateFlatten(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t axis = 0,
int32_t endAxis = 0) {
FlattenBuilder builder_(_fbb);
builder_.add_endAxis(endAxis);
builder_.add_axis(axis);
return builder_.Finish();
}
flatbuffers::Offset<Flatten> CreateFlatten(flatbuffers::FlatBufferBuilder &_fbb, const FlattenT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct PermuteT : public flatbuffers::NativeTable {
typedef Permute TableType;
std::vector<int32_t> dims;
PermuteT() {
}
};
struct Permute FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef PermuteT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return PermuteTypeTable();
}
const flatbuffers::Vector<int32_t> *dims() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(4);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyOffset(verifier, 4) &&
verifier.VerifyVector(dims()) &&
verifier.EndTable();
}
PermuteT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(PermuteT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Permute> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PermuteT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct PermuteBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_dims(flatbuffers::Offset<flatbuffers::Vector<int32_t>> dims) {
fbb_.AddOffset(4, dims);
}
explicit PermuteBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
PermuteBuilder &operator=(const PermuteBuilder &);
flatbuffers::Offset<Permute> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Permute>(end);
return o;
}
};
inline flatbuffers::Offset<Permute> CreatePermute(
flatbuffers::FlatBufferBuilder &_fbb,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> dims = 0) {
PermuteBuilder builder_(_fbb);
builder_.add_dims(dims);
return builder_.Finish();
}
flatbuffers::Offset<Permute> CreatePermute(flatbuffers::FlatBufferBuilder &_fbb, const PermuteT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct ReshapeT : public flatbuffers::NativeTable {
typedef Reshape TableType;
std::vector<int32_t> dims;
MNN_DATA_FORMAT dimType;
ReshapeT()
: dimType(MNN_DATA_FORMAT_NCHW) {
}
};
struct Reshape FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef ReshapeT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return ReshapeTypeTable();
}
const flatbuffers::Vector<int32_t> *dims() const {
return GetPointer<const flatbuffers::Vector<int32_t> *>(4);
}
MNN_DATA_FORMAT dimType() const {
return static_cast<MNN_DATA_FORMAT>(GetField<int8_t>(6, 0));
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyOffset(verifier, 4) &&
verifier.VerifyVector(dims()) &&
VerifyField<int8_t>(verifier, 6) &&
verifier.EndTable();
}
ReshapeT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(ReshapeT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Reshape> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct ReshapeBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_dims(flatbuffers::Offset<flatbuffers::Vector<int32_t>> dims) {
fbb_.AddOffset(4, dims);
}
void add_dimType(MNN_DATA_FORMAT dimType) {
fbb_.AddElement<int8_t>(6, static_cast<int8_t>(dimType), 0);
}
explicit ReshapeBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
ReshapeBuilder &operator=(const ReshapeBuilder &);
flatbuffers::Offset<Reshape> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Reshape>(end);
return o;
}
};
inline flatbuffers::Offset<Reshape> CreateReshape(
flatbuffers::FlatBufferBuilder &_fbb,
flatbuffers::Offset<flatbuffers::Vector<int32_t>> dims = 0,
MNN_DATA_FORMAT dimType = MNN_DATA_FORMAT_NCHW) {
ReshapeBuilder builder_(_fbb);
builder_.add_dims(dims);
builder_.add_dimType(dimType);
return builder_.Finish();
}
flatbuffers::Offset<Reshape> CreateReshape(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct DetectionOutputT : public flatbuffers::NativeTable {
typedef DetectionOutput TableType;
int32_t classCount;
float nmsThresholdold;
int32_t nmsTopK;
int32_t keepTopK;
float confidenceThreshold;
int32_t shareLocation;
int32_t backgroundLable;
int32_t varianceEncodedTarget;
int32_t codeType;
float objectnessScore;
DetectionOutputT()
: classCount(0),
nmsThresholdold(0.0f),
nmsTopK(0),
keepTopK(0),
confidenceThreshold(0.0f),
shareLocation(0),
backgroundLable(0),
varianceEncodedTarget(0),
codeType(0),
objectnessScore(0.01f) {
}
};
struct DetectionOutput FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef DetectionOutputT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return DetectionOutputTypeTable();
}
int32_t classCount() const {
return GetField<int32_t>(4, 0);
}
float nmsThresholdold() const {
return GetField<float>(6, 0.0f);
}
int32_t nmsTopK() const {
return GetField<int32_t>(8, 0);
}
int32_t keepTopK() const {
return GetField<int32_t>(10, 0);
}
float confidenceThreshold() const {
return GetField<float>(12, 0.0f);
}
int32_t shareLocation() const {
return GetField<int32_t>(14, 0);
}
int32_t backgroundLable() const {
return GetField<int32_t>(16, 0);
}
int32_t varianceEncodedTarget() const {
return GetField<int32_t>(18, 0);
}
int32_t codeType() const {
return GetField<int32_t>(20, 0);
}
float objectnessScore() const {
return GetField<float>(22, 0.01f);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyField<float>(verifier, 6) &&
VerifyField<int32_t>(verifier, 8) &&
VerifyField<int32_t>(verifier, 10) &&
VerifyField<float>(verifier, 12) &&
VerifyField<int32_t>(verifier, 14) &&
VerifyField<int32_t>(verifier, 16) &&
VerifyField<int32_t>(verifier, 18) &&
VerifyField<int32_t>(verifier, 20) &&
VerifyField<float>(verifier, 22) &&
verifier.EndTable();
}
DetectionOutputT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(DetectionOutputT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<DetectionOutput> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DetectionOutputT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct DetectionOutputBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_classCount(int32_t classCount) {
fbb_.AddElement<int32_t>(4, classCount, 0);
}
void add_nmsThresholdold(float nmsThresholdold) {
fbb_.AddElement<float>(6, nmsThresholdold, 0.0f);
}
void add_nmsTopK(int32_t nmsTopK) {
fbb_.AddElement<int32_t>(8, nmsTopK, 0);
}
void add_keepTopK(int32_t keepTopK) {
fbb_.AddElement<int32_t>(10, keepTopK, 0);
}
void add_confidenceThreshold(float confidenceThreshold) {
fbb_.AddElement<float>(12, confidenceThreshold, 0.0f);
}
void add_shareLocation(int32_t shareLocation) {
fbb_.AddElement<int32_t>(14, shareLocation, 0);
}
void add_backgroundLable(int32_t backgroundLable) {
fbb_.AddElement<int32_t>(16, backgroundLable, 0);
}
void add_varianceEncodedTarget(int32_t varianceEncodedTarget) {
fbb_.AddElement<int32_t>(18, varianceEncodedTarget, 0);
}
void add_codeType(int32_t codeType) {
fbb_.AddElement<int32_t>(20, codeType, 0);
}
void add_objectnessScore(float objectnessScore) {
fbb_.AddElement<float>(22, objectnessScore, 0.01f);
}
explicit DetectionOutputBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
DetectionOutputBuilder &operator=(const DetectionOutputBuilder &);
flatbuffers::Offset<DetectionOutput> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<DetectionOutput>(end);
return o;
}
};
inline flatbuffers::Offset<DetectionOutput> CreateDetectionOutput(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t classCount = 0,
float nmsThresholdold = 0.0f,
int32_t nmsTopK = 0,
int32_t keepTopK = 0,
float confidenceThreshold = 0.0f,
int32_t shareLocation = 0,
int32_t backgroundLable = 0,
int32_t varianceEncodedTarget = 0,
int32_t codeType = 0,
float objectnessScore = 0.01f) {
DetectionOutputBuilder builder_(_fbb);
builder_.add_objectnessScore(objectnessScore);
builder_.add_codeType(codeType);
builder_.add_varianceEncodedTarget(varianceEncodedTarget);
builder_.add_backgroundLable(backgroundLable);
builder_.add_shareLocation(shareLocation);
builder_.add_confidenceThreshold(confidenceThreshold);
builder_.add_keepTopK(keepTopK);
builder_.add_nmsTopK(nmsTopK);
builder_.add_nmsThresholdold(nmsThresholdold);
builder_.add_classCount(classCount);
return builder_.Finish();
}
flatbuffers::Offset<DetectionOutput> CreateDetectionOutput(flatbuffers::FlatBufferBuilder &_fbb, const DetectionOutputT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct RoiParametersT : public flatbuffers::NativeTable {
typedef RoiParameters TableType;
int32_t pooledWidth;
int32_t pooledHeight;
float spatialScale;
int32_t samplingRatio;
bool aligned;
PoolType poolType;
bool outputGrad;
RoiParametersT()
: pooledWidth(0),
pooledHeight(0),
spatialScale(0.0f),
samplingRatio(-1),
aligned(false),
poolType(PoolType_AVEPOOL),
outputGrad(false) {
}
};
struct RoiParameters FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef RoiParametersT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return RoiParametersTypeTable();
}
int32_t pooledWidth() const {
return GetField<int32_t>(4, 0);
}
int32_t pooledHeight() const {
return GetField<int32_t>(6, 0);
}
float spatialScale() const {
return GetField<float>(8, 0.0f);
}
int32_t samplingRatio() const {
return GetField<int32_t>(10, -1);
}
bool aligned() const {
return GetField<uint8_t>(12, 0) != 0;
}
PoolType poolType() const {
return static_cast<PoolType>(GetField<int8_t>(14, 1));
}
bool outputGrad() const {
return GetField<uint8_t>(16, 0) != 0;
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyField<int32_t>(verifier, 6) &&
VerifyField<float>(verifier, 8) &&
VerifyField<int32_t>(verifier, 10) &&
VerifyField<uint8_t>(verifier, 12) &&
VerifyField<int8_t>(verifier, 14) &&
VerifyField<uint8_t>(verifier, 16) &&
verifier.EndTable();
}
RoiParametersT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(RoiParametersT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<RoiParameters> Pack(flatbuffers::FlatBufferBuilder &_fbb, const RoiParametersT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct RoiParametersBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_pooledWidth(int32_t pooledWidth) {
fbb_.AddElement<int32_t>(4, pooledWidth, 0);
}
void add_pooledHeight(int32_t pooledHeight) {
fbb_.AddElement<int32_t>(6, pooledHeight, 0);
}
void add_spatialScale(float spatialScale) {
fbb_.AddElement<float>(8, spatialScale, 0.0f);
}
void add_samplingRatio(int32_t samplingRatio) {
fbb_.AddElement<int32_t>(10, samplingRatio, -1);
}
void add_aligned(bool aligned) {
fbb_.AddElement<uint8_t>(12, static_cast<uint8_t>(aligned), 0);
}
void add_poolType(PoolType poolType) {
fbb_.AddElement<int8_t>(14, static_cast<int8_t>(poolType), 1);
}
void add_outputGrad(bool outputGrad) {
fbb_.AddElement<uint8_t>(16, static_cast<uint8_t>(outputGrad), 0);
}
explicit RoiParametersBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
RoiParametersBuilder &operator=(const RoiParametersBuilder &);
flatbuffers::Offset<RoiParameters> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<RoiParameters>(end);
return o;
}
};
inline flatbuffers::Offset<RoiParameters> CreateRoiParameters(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t pooledWidth = 0,
int32_t pooledHeight = 0,
float spatialScale = 0.0f,
int32_t samplingRatio = -1,
bool aligned = false,
PoolType poolType = PoolType_AVEPOOL,
bool outputGrad = false) {
RoiParametersBuilder builder_(_fbb);
builder_.add_samplingRatio(samplingRatio);
builder_.add_spatialScale(spatialScale);
builder_.add_pooledHeight(pooledHeight);
builder_.add_pooledWidth(pooledWidth);
builder_.add_outputGrad(outputGrad);
builder_.add_poolType(poolType);
builder_.add_aligned(aligned);
return builder_.Finish();
}
flatbuffers::Offset<RoiParameters> CreateRoiParameters(flatbuffers::FlatBufferBuilder &_fbb, const RoiParametersT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct ProposalT : public flatbuffers::NativeTable {
typedef Proposal TableType;
int32_t featStride;
int32_t baseSize;
int32_t preNmsTopN;
int32_t afterNmsTopN;
float nmsThreshold;
int32_t minSize;
std::unique_ptr<BlobT> ratios;
std::unique_ptr<BlobT> scales;
std::unique_ptr<BlobT> anchors;
ProposalT()
: featStride(0),
baseSize(0),
preNmsTopN(0),
afterNmsTopN(0),
nmsThreshold(0.0f),
minSize(0) {
}
};
struct Proposal FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef ProposalT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return ProposalTypeTable();
}
int32_t featStride() const {
return GetField<int32_t>(4, 0);
}
int32_t baseSize() const {
return GetField<int32_t>(6, 0);
}
int32_t preNmsTopN() const {
return GetField<int32_t>(8, 0);
}
int32_t afterNmsTopN() const {
return GetField<int32_t>(10, 0);
}
float nmsThreshold() const {
return GetField<float>(12, 0.0f);
}
int32_t minSize() const {
return GetField<int32_t>(14, 0);
}
const Blob *ratios() const {
return GetPointer<const Blob *>(16);
}
const Blob *scales() const {
return GetPointer<const Blob *>(18);
}
const Blob *anchors() const {
return GetPointer<const Blob *>(20);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyField<int32_t>(verifier, 6) &&
VerifyField<int32_t>(verifier, 8) &&
VerifyField<int32_t>(verifier, 10) &&
VerifyField<float>(verifier, 12) &&
VerifyField<int32_t>(verifier, 14) &&
VerifyOffset(verifier, 16) &&
verifier.VerifyTable(ratios()) &&
VerifyOffset(verifier, 18) &&
verifier.VerifyTable(scales()) &&
VerifyOffset(verifier, 20) &&
verifier.VerifyTable(anchors()) &&
verifier.EndTable();
}
ProposalT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(ProposalT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Proposal> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ProposalT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct ProposalBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_featStride(int32_t featStride) {
fbb_.AddElement<int32_t>(4, featStride, 0);
}
void add_baseSize(int32_t baseSize) {
fbb_.AddElement<int32_t>(6, baseSize, 0);
}
void add_preNmsTopN(int32_t preNmsTopN) {
fbb_.AddElement<int32_t>(8, preNmsTopN, 0);
}
void add_afterNmsTopN(int32_t afterNmsTopN) {
fbb_.AddElement<int32_t>(10, afterNmsTopN, 0);
}
void add_nmsThreshold(float nmsThreshold) {
fbb_.AddElement<float>(12, nmsThreshold, 0.0f);
}
void add_minSize(int32_t minSize) {
fbb_.AddElement<int32_t>(14, minSize, 0);
}
void add_ratios(flatbuffers::Offset<Blob> ratios) {
fbb_.AddOffset(16, ratios);
}
void add_scales(flatbuffers::Offset<Blob> scales) {
fbb_.AddOffset(18, scales);
}
void add_anchors(flatbuffers::Offset<Blob> anchors) {
fbb_.AddOffset(20, anchors);
}
explicit ProposalBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
ProposalBuilder &operator=(const ProposalBuilder &);
flatbuffers::Offset<Proposal> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Proposal>(end);
return o;
}
};
inline flatbuffers::Offset<Proposal> CreateProposal(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t featStride = 0,
int32_t baseSize = 0,
int32_t preNmsTopN = 0,
int32_t afterNmsTopN = 0,
float nmsThreshold = 0.0f,
int32_t minSize = 0,
flatbuffers::Offset<Blob> ratios = 0,
flatbuffers::Offset<Blob> scales = 0,
flatbuffers::Offset<Blob> anchors = 0) {
ProposalBuilder builder_(_fbb);
builder_.add_anchors(anchors);
builder_.add_scales(scales);
builder_.add_ratios(ratios);
builder_.add_minSize(minSize);
builder_.add_nmsThreshold(nmsThreshold);
builder_.add_afterNmsTopN(afterNmsTopN);
builder_.add_preNmsTopN(preNmsTopN);
builder_.add_baseSize(baseSize);
builder_.add_featStride(featStride);
return builder_.Finish();
}
flatbuffers::Offset<Proposal> CreateProposal(flatbuffers::FlatBufferBuilder &_fbb, const ProposalT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct InterpT : public flatbuffers::NativeTable {
typedef Interp TableType;
float widthScale;
float heightScale;
int32_t outputWidth;
int32_t outputHeight;
int32_t resizeType;
bool alignCorners;
bool halfPixelCenters;
float widthOffset;
float heightOffset;
float cubicCoeffA;
CoordinateTransformationMode ctm;
float depthScale;
int32_t outputDepth;
float depthOffset;
InterpT()
: widthScale(0.0f),
heightScale(0.0f),
outputWidth(0),
outputHeight(0),
resizeType(0),
alignCorners(false),
halfPixelCenters(false),
widthOffset(0.0f),
heightOffset(0.0f),
cubicCoeffA(-0.75f),
ctm(CoordinateTransformationMode_NotSet),
depthScale(0.0f),
outputDepth(0),
depthOffset(0.0f) {
}
};
struct Interp FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef InterpT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return InterpTypeTable();
}
float widthScale() const {
return GetField<float>(4, 0.0f);
}
float heightScale() const {
return GetField<float>(6, 0.0f);
}
int32_t outputWidth() const {
return GetField<int32_t>(8, 0);
}
int32_t outputHeight() const {
return GetField<int32_t>(10, 0);
}
int32_t resizeType() const {
return GetField<int32_t>(12, 0);
}
bool alignCorners() const {
return GetField<uint8_t>(14, 0) != 0;
}
bool halfPixelCenters() const {
return GetField<uint8_t>(16, 0) != 0;
}
float widthOffset() const {
return GetField<float>(18, 0.0f);
}
float heightOffset() const {
return GetField<float>(20, 0.0f);
}
float cubicCoeffA() const {
return GetField<float>(22, -0.75f);
}
CoordinateTransformationMode ctm() const {
return static_cast<CoordinateTransformationMode>(GetField<int8_t>(24, 0));
}
float depthScale() const {
return GetField<float>(26, 0.0f);
}
int32_t outputDepth() const {
return GetField<int32_t>(28, 0);
}
float depthOffset() const {
return GetField<float>(30, 0.0f);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<float>(verifier, 4) &&
VerifyField<float>(verifier, 6) &&
VerifyField<int32_t>(verifier, 8) &&
VerifyField<int32_t>(verifier, 10) &&
VerifyField<int32_t>(verifier, 12) &&
VerifyField<uint8_t>(verifier, 14) &&
VerifyField<uint8_t>(verifier, 16) &&
VerifyField<float>(verifier, 18) &&
VerifyField<float>(verifier, 20) &&
VerifyField<float>(verifier, 22) &&
VerifyField<int8_t>(verifier, 24) &&
VerifyField<float>(verifier, 26) &&
VerifyField<int32_t>(verifier, 28) &&
VerifyField<float>(verifier, 30) &&
verifier.EndTable();
}
InterpT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(InterpT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Interp> Pack(flatbuffers::FlatBufferBuilder &_fbb, const InterpT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct InterpBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_widthScale(float widthScale) {
fbb_.AddElement<float>(4, widthScale, 0.0f);
}
void add_heightScale(float heightScale) {
fbb_.AddElement<float>(6, heightScale, 0.0f);
}
void add_outputWidth(int32_t outputWidth) {
fbb_.AddElement<int32_t>(8, outputWidth, 0);
}
void add_outputHeight(int32_t outputHeight) {
fbb_.AddElement<int32_t>(10, outputHeight, 0);
}
void add_resizeType(int32_t resizeType) {
fbb_.AddElement<int32_t>(12, resizeType, 0);
}
void add_alignCorners(bool alignCorners) {
fbb_.AddElement<uint8_t>(14, static_cast<uint8_t>(alignCorners), 0);
}
void add_halfPixelCenters(bool halfPixelCenters) {
fbb_.AddElement<uint8_t>(16, static_cast<uint8_t>(halfPixelCenters), 0);
}
void add_widthOffset(float widthOffset) {
fbb_.AddElement<float>(18, widthOffset, 0.0f);
}
void add_heightOffset(float heightOffset) {
fbb_.AddElement<float>(20, heightOffset, 0.0f);
}
void add_cubicCoeffA(float cubicCoeffA) {
fbb_.AddElement<float>(22, cubicCoeffA, -0.75f);
}
void add_ctm(CoordinateTransformationMode ctm) {
fbb_.AddElement<int8_t>(24, static_cast<int8_t>(ctm), 0);
}
void add_depthScale(float depthScale) {
fbb_.AddElement<float>(26, depthScale, 0.0f);
}
void add_outputDepth(int32_t outputDepth) {
fbb_.AddElement<int32_t>(28, outputDepth, 0);
}
void add_depthOffset(float depthOffset) {
fbb_.AddElement<float>(30, depthOffset, 0.0f);
}
explicit InterpBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
InterpBuilder &operator=(const InterpBuilder &);
flatbuffers::Offset<Interp> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Interp>(end);
return o;
}
};
inline flatbuffers::Offset<Interp> CreateInterp(
flatbuffers::FlatBufferBuilder &_fbb,
float widthScale = 0.0f,
float heightScale = 0.0f,
int32_t outputWidth = 0,
int32_t outputHeight = 0,
int32_t resizeType = 0,
bool alignCorners = false,
bool halfPixelCenters = false,
float widthOffset = 0.0f,
float heightOffset = 0.0f,
float cubicCoeffA = -0.75f,
CoordinateTransformationMode ctm = CoordinateTransformationMode_NotSet,
float depthScale = 0.0f,
int32_t outputDepth = 0,
float depthOffset = 0.0f) {
InterpBuilder builder_(_fbb);
builder_.add_depthOffset(depthOffset);
builder_.add_outputDepth(outputDepth);
builder_.add_depthScale(depthScale);
builder_.add_cubicCoeffA(cubicCoeffA);
builder_.add_heightOffset(heightOffset);
builder_.add_widthOffset(widthOffset);
builder_.add_resizeType(resizeType);
builder_.add_outputHeight(outputHeight);
builder_.add_outputWidth(outputWidth);
builder_.add_heightScale(heightScale);
builder_.add_widthScale(widthScale);
builder_.add_ctm(ctm);
builder_.add_halfPixelCenters(halfPixelCenters);
builder_.add_alignCorners(alignCorners);
return builder_.Finish();
}
flatbuffers::Offset<Interp> CreateInterp(flatbuffers::FlatBufferBuilder &_fbb, const InterpT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct ResizeT : public flatbuffers::NativeTable {
typedef Resize TableType;
float xScale;
float yScale;
ResizeT()
: xScale(0.0f),
yScale(0.0f) {
}
};
struct Resize FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef ResizeT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return ResizeTypeTable();
}
float xScale() const {
return GetField<float>(4, 0.0f);
}
float yScale() const {
return GetField<float>(6, 0.0f);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<float>(verifier, 4) &&
VerifyField<float>(verifier, 6) &&
verifier.EndTable();
}
ResizeT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(ResizeT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Resize> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResizeT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct ResizeBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_xScale(float xScale) {
fbb_.AddElement<float>(4, xScale, 0.0f);
}
void add_yScale(float yScale) {
fbb_.AddElement<float>(6, yScale, 0.0f);
}
explicit ResizeBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
ResizeBuilder &operator=(const ResizeBuilder &);
flatbuffers::Offset<Resize> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Resize>(end);
return o;
}
};
inline flatbuffers::Offset<Resize> CreateResize(
flatbuffers::FlatBufferBuilder &_fbb,
float xScale = 0.0f,
float yScale = 0.0f) {
ResizeBuilder builder_(_fbb);
builder_.add_yScale(yScale);
builder_.add_xScale(xScale);
return builder_.Finish();
}
flatbuffers::Offset<Resize> CreateResize(flatbuffers::FlatBufferBuilder &_fbb, const ResizeT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct PriorBoxT : public flatbuffers::NativeTable {
typedef PriorBox TableType;
std::vector<float> minSizes;
std::vector<float> maxSizes;
std::vector<float> aspectRatios;
std::vector<float> variances;
bool flip;
bool clip;
int32_t imageWidth;
int32_t imageHeight;
int32_t stepWidth;
int32_t stepHeight;
float offset;
PriorBoxT()
: flip(false),
clip(false),
imageWidth(0),
imageHeight(0),
stepWidth(0),
stepHeight(0),
offset(0.0f) {
}
};
struct PriorBox FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef PriorBoxT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return PriorBoxTypeTable();
}
const flatbuffers::Vector<float> *minSizes() const {
return GetPointer<const flatbuffers::Vector<float> *>(4);
}
const flatbuffers::Vector<float> *maxSizes() const {
return GetPointer<const flatbuffers::Vector<float> *>(6);
}
const flatbuffers::Vector<float> *aspectRatios() const {
return GetPointer<const flatbuffers::Vector<float> *>(8);
}
const flatbuffers::Vector<float> *variances() const {
return GetPointer<const flatbuffers::Vector<float> *>(10);
}
bool flip() const {
return GetField<uint8_t>(12, 0) != 0;
}
bool clip() const {
return GetField<uint8_t>(14, 0) != 0;
}
int32_t imageWidth() const {
return GetField<int32_t>(16, 0);
}
int32_t imageHeight() const {
return GetField<int32_t>(18, 0);
}
int32_t stepWidth() const {
return GetField<int32_t>(20, 0);
}
int32_t stepHeight() const {
return GetField<int32_t>(22, 0);
}
float offset() const {
return GetField<float>(24, 0.0f);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyOffset(verifier, 4) &&
verifier.VerifyVector(minSizes()) &&
VerifyOffset(verifier, 6) &&
verifier.VerifyVector(maxSizes()) &&
VerifyOffset(verifier, 8) &&
verifier.VerifyVector(aspectRatios()) &&
VerifyOffset(verifier, 10) &&
verifier.VerifyVector(variances()) &&
VerifyField<uint8_t>(verifier, 12) &&
VerifyField<uint8_t>(verifier, 14) &&
VerifyField<int32_t>(verifier, 16) &&
VerifyField<int32_t>(verifier, 18) &&
VerifyField<int32_t>(verifier, 20) &&
VerifyField<int32_t>(verifier, 22) &&
VerifyField<float>(verifier, 24) &&
verifier.EndTable();
}
PriorBoxT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(PriorBoxT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<PriorBox> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PriorBoxT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct PriorBoxBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_minSizes(flatbuffers::Offset<flatbuffers::Vector<float>> minSizes) {
fbb_.AddOffset(4, minSizes);
}
void add_maxSizes(flatbuffers::Offset<flatbuffers::Vector<float>> maxSizes) {
fbb_.AddOffset(6, maxSizes);
}
void add_aspectRatios(flatbuffers::Offset<flatbuffers::Vector<float>> aspectRatios) {
fbb_.AddOffset(8, aspectRatios);
}
void add_variances(flatbuffers::Offset<flatbuffers::Vector<float>> variances) {
fbb_.AddOffset(10, variances);
}
void add_flip(bool flip) {
fbb_.AddElement<uint8_t>(12, static_cast<uint8_t>(flip), 0);
}
void add_clip(bool clip) {
fbb_.AddElement<uint8_t>(14, static_cast<uint8_t>(clip), 0);
}
void add_imageWidth(int32_t imageWidth) {
fbb_.AddElement<int32_t>(16, imageWidth, 0);
}
void add_imageHeight(int32_t imageHeight) {
fbb_.AddElement<int32_t>(18, imageHeight, 0);
}
void add_stepWidth(int32_t stepWidth) {
fbb_.AddElement<int32_t>(20, stepWidth, 0);
}
void add_stepHeight(int32_t stepHeight) {
fbb_.AddElement<int32_t>(22, stepHeight, 0);
}
void add_offset(float offset) {
fbb_.AddElement<float>(24, offset, 0.0f);
}
explicit PriorBoxBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
PriorBoxBuilder &operator=(const PriorBoxBuilder &);
flatbuffers::Offset<PriorBox> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<PriorBox>(end);
return o;
}
};
inline flatbuffers::Offset<PriorBox> CreatePriorBox(
flatbuffers::FlatBufferBuilder &_fbb,
flatbuffers::Offset<flatbuffers::Vector<float>> minSizes = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> maxSizes = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> aspectRatios = 0,
flatbuffers::Offset<flatbuffers::Vector<float>> variances = 0,
bool flip = false,
bool clip = false,
int32_t imageWidth = 0,
int32_t imageHeight = 0,
int32_t stepWidth = 0,
int32_t stepHeight = 0,
float offset = 0.0f) {
PriorBoxBuilder builder_(_fbb);
builder_.add_offset(offset);
builder_.add_stepHeight(stepHeight);
builder_.add_stepWidth(stepWidth);
builder_.add_imageHeight(imageHeight);
builder_.add_imageWidth(imageWidth);
builder_.add_variances(variances);
builder_.add_aspectRatios(aspectRatios);
builder_.add_maxSizes(maxSizes);
builder_.add_minSizes(minSizes);
builder_.add_clip(clip);
builder_.add_flip(flip);
return builder_.Finish();
}
flatbuffers::Offset<PriorBox> CreatePriorBox(flatbuffers::FlatBufferBuilder &_fbb, const PriorBoxT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct NormalizeT : public flatbuffers::NativeTable {
typedef Normalize TableType;
int32_t acrossSpatial;
int32_t channelShared;
float eps;
std::vector<float> scale;
NormalizeT()
: acrossSpatial(0),
channelShared(0),
eps(0.0f) {
}
};
struct Normalize FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef NormalizeT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return NormalizeTypeTable();
}
int32_t acrossSpatial() const {
return GetField<int32_t>(4, 0);
}
int32_t channelShared() const {
return GetField<int32_t>(6, 0);
}
float eps() const {
return GetField<float>(8, 0.0f);
}
const flatbuffers::Vector<float> *scale() const {
return GetPointer<const flatbuffers::Vector<float> *>(10);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int32_t>(verifier, 4) &&
VerifyField<int32_t>(verifier, 6) &&
VerifyField<float>(verifier, 8) &&
VerifyOffset(verifier, 10) &&
verifier.VerifyVector(scale()) &&
verifier.EndTable();
}
NormalizeT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(NormalizeT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<Normalize> Pack(flatbuffers::FlatBufferBuilder &_fbb, const NormalizeT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct NormalizeBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_acrossSpatial(int32_t acrossSpatial) {
fbb_.AddElement<int32_t>(4, acrossSpatial, 0);
}
void add_channelShared(int32_t channelShared) {
fbb_.AddElement<int32_t>(6, channelShared, 0);
}
void add_eps(float eps) {
fbb_.AddElement<float>(8, eps, 0.0f);
}
void add_scale(flatbuffers::Offset<flatbuffers::Vector<float>> scale) {
fbb_.AddOffset(10, scale);
}
explicit NormalizeBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
NormalizeBuilder &operator=(const NormalizeBuilder &);
flatbuffers::Offset<Normalize> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<Normalize>(end);
return o;
}
};
inline flatbuffers::Offset<Normalize> CreateNormalize(
flatbuffers::FlatBufferBuilder &_fbb,
int32_t acrossSpatial = 0,
int32_t channelShared = 0,
float eps = 0.0f,
flatbuffers::Offset<flatbuffers::Vector<float>> scale = 0) {
NormalizeBuilder builder_(_fbb);
builder_.add_scale(scale);
builder_.add_eps(eps);
builder_.add_channelShared(channelShared);
builder_.add_acrossSpatial(acrossSpatial);
return builder_.Finish();
}
flatbuffers::Offset<Normalize> CreateNormalize(flatbuffers::FlatBufferBuilder &_fbb, const NormalizeT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct EltwiseInt8T : public flatbuffers::NativeTable {
typedef EltwiseInt8 TableType;
EltwiseType type;
std::unique_ptr<QuantizedFloatParamT> inputQuan0;
std::unique_ptr<QuantizedFloatParamT> inputQuan1;
std::unique_ptr<QuantizedFloatParamT> outputQuan;
EltwiseInt8T()
: type(EltwiseType_PROD) {
}
};
struct EltwiseInt8 FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef EltwiseInt8T NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return EltwiseInt8TypeTable();
}
EltwiseType type() const {
return static_cast<EltwiseType>(GetField<int8_t>(4, 0));
}
const QuantizedFloatParam *inputQuan0() const {
return GetPointer<const QuantizedFloatParam *>(6);
}
const QuantizedFloatParam *inputQuan1() const {
return GetPointer<const QuantizedFloatParam *>(8);
}
const QuantizedFloatParam *outputQuan() const {
return GetPointer<const QuantizedFloatParam *>(10);
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<int8_t>(verifier, 4) &&
VerifyOffset(verifier, 6) &&
verifier.VerifyTable(inputQuan0()) &&
VerifyOffset(verifier, 8) &&
verifier.VerifyTable(inputQuan1()) &&
VerifyOffset(verifier, 10) &&
verifier.VerifyTable(outputQuan()) &&
verifier.EndTable();
}
EltwiseInt8T *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(EltwiseInt8T *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<EltwiseInt8> Pack(flatbuffers::FlatBufferBuilder &_fbb, const EltwiseInt8T* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct EltwiseInt8Builder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_type(EltwiseType type) {
fbb_.AddElement<int8_t>(4, static_cast<int8_t>(type), 0);
}
void add_inputQuan0(flatbuffers::Offset<QuantizedFloatParam> inputQuan0) {
fbb_.AddOffset(6, inputQuan0);
}
void add_inputQuan1(flatbuffers::Offset<QuantizedFloatParam> inputQuan1) {
fbb_.AddOffset(8, inputQuan1);
}
void add_outputQuan(flatbuffers::Offset<QuantizedFloatParam> outputQuan) {
fbb_.AddOffset(10, outputQuan);
}
explicit EltwiseInt8Builder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
EltwiseInt8Builder &operator=(const EltwiseInt8Builder &);
flatbuffers::Offset<EltwiseInt8> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<EltwiseInt8>(end);
return o;
}
};
inline flatbuffers::Offset<EltwiseInt8> CreateEltwiseInt8(
flatbuffers::FlatBufferBuilder &_fbb,
EltwiseType type = EltwiseType_PROD,
flatbuffers::Offset<QuantizedFloatParam> inputQuan0 = 0,
flatbuffers::Offset<QuantizedFloatParam> inputQuan1 = 0,
flatbuffers::Offset<QuantizedFloatParam> outputQuan = 0) {
EltwiseInt8Builder builder_(_fbb);
builder_.add_outputQuan(outputQuan);
builder_.add_inputQuan1(inputQuan1);
builder_.add_inputQuan0(inputQuan0);
builder_.add_type(type);
return builder_.Finish();
}
flatbuffers::Offset<EltwiseInt8> CreateEltwiseInt8(flatbuffers::FlatBufferBuilder &_fbb, const EltwiseInt8T *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
struct CumSumT : public flatbuffers::NativeTable {
typedef CumSum TableType;
bool exclusive;
bool reverse;
CumSumT()
: exclusive(false),
reverse(false) {
}
};
struct CumSum FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
typedef CumSumT NativeTableType;
static const flatbuffers::TypeTable *MiniReflectTypeTable() {
return CumSumTypeTable();
}
bool exclusive() const {
return GetField<uint8_t>(4, 0) != 0;
}
bool reverse() const {
return GetField<uint8_t>(6, 0) != 0;
}
bool Verify(flatbuffers::Verifier &verifier) const {
return VerifyTableStart(verifier) &&
VerifyField<uint8_t>(verifier, 4) &&
VerifyField<uint8_t>(verifier, 6) &&
verifier.EndTable();
}
CumSumT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
void UnPackTo(CumSumT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
static flatbuffers::Offset<CumSum> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CumSumT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
};
struct CumSumBuilder {
flatbuffers::FlatBufferBuilder &fbb_;
flatbuffers::uoffset_t start_;
void add_exclusive(bool exclusive) {
fbb_.AddElement<uint8_t>(4, static_cast<uint8_t>(exclusive), 0);
}
void add_reverse(bool reverse) {
fbb_.AddElement<uint8_t>(6, static_cast<uint8_t>(reverse), 0);
}
explicit CumSumBuilder(flatbuffers::FlatBufferBuilder &_fbb)
: fbb_(_fbb) {
start_ = fbb_.StartTable();
}
CumSumBuilder &operator=(const CumSumBuilder &);
flatbuffers::Offset<CumSum> Finish() {
const auto end = fbb_.EndTable(start_);
auto o = flatbuffers::Offset<CumSum>(end);
return o;
}
};
inline flatbuffers::Offset<CumSum> CreateCumSum(
flatbuffers::FlatBufferBuilder &_fbb,
bool exclusive = false,
bool reverse = false) {
CumSumBuilder builder_(_fbb);
builder_.add_reverse(reverse);
builder_.add_exclusive(exclusive);
return builder_.Finish();
}
flatbuffers::Offset<CumSum> CreateCumSum(flatbuffers::FlatBufferBuilder &_fbb, const CumSumT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
inline Convolution2DCommonT *Convolution2DCommon::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new Convolution2DCommonT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Convolution2DCommon::UnPackTo(Convolution2DCommonT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = padX(); _o->padX = _e; };
{ auto _e = padY(); _o->padY = _e; };
{ auto _e = kernelX(); _o->kernelX = _e; };
{ auto _e = kernelY(); _o->kernelY = _e; };
{ auto _e = strideX(); _o->strideX = _e; };
{ auto _e = strideY(); _o->strideY = _e; };
{ auto _e = dilateX(); _o->dilateX = _e; };
{ auto _e = dilateY(); _o->dilateY = _e; };
{ auto _e = padMode(); _o->padMode = _e; };
{ auto _e = group(); _o->group = _e; };
{ auto _e = outputCount(); _o->outputCount = _e; };
{ auto _e = inputCount(); _o->inputCount = _e; };
{ auto _e = relu(); _o->relu = _e; };
{ auto _e = relu6(); _o->relu6 = _e; };
{ auto _e = pads(); if (_e) { _o->pads.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->pads[_i] = _e->Get(_i); } } };
{ auto _e = outPads(); if (_e) { _o->outPads.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->outPads[_i] = _e->Get(_i); } } };
{ auto _e = hasOutputShape(); _o->hasOutputShape = _e; };
}
inline flatbuffers::Offset<Convolution2DCommon> Convolution2DCommon::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Convolution2DCommonT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateConvolution2DCommon(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Convolution2DCommon> CreateConvolution2DCommon(flatbuffers::FlatBufferBuilder &_fbb, const Convolution2DCommonT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Convolution2DCommonT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _padX = _o->padX;
auto _padY = _o->padY;
auto _kernelX = _o->kernelX;
auto _kernelY = _o->kernelY;
auto _strideX = _o->strideX;
auto _strideY = _o->strideY;
auto _dilateX = _o->dilateX;
auto _dilateY = _o->dilateY;
auto _padMode = _o->padMode;
auto _group = _o->group;
auto _outputCount = _o->outputCount;
auto _inputCount = _o->inputCount;
auto _relu = _o->relu;
auto _relu6 = _o->relu6;
auto _pads = _o->pads.size() ? _fbb.CreateVector(_o->pads) : 0;
auto _outPads = _o->outPads.size() ? _fbb.CreateVector(_o->outPads) : 0;
auto _hasOutputShape = _o->hasOutputShape;
return MNN::CreateConvolution2DCommon(
_fbb,
_padX,
_padY,
_kernelX,
_kernelY,
_strideX,
_strideY,
_dilateX,
_dilateY,
_padMode,
_group,
_outputCount,
_inputCount,
_relu,
_relu6,
_pads,
_outPads,
_hasOutputShape);
}
inline Convolution3DCommonT *Convolution3DCommon::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new Convolution3DCommonT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Convolution3DCommon::UnPackTo(Convolution3DCommonT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = dilates(); if (_e) { _o->dilates.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->dilates[_i] = _e->Get(_i); } } };
{ auto _e = strides(); if (_e) { _o->strides.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->strides[_i] = _e->Get(_i); } } };
{ auto _e = kernels(); if (_e) { _o->kernels.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->kernels[_i] = _e->Get(_i); } } };
{ auto _e = pads(); if (_e) { _o->pads.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->pads[_i] = _e->Get(_i); } } };
{ auto _e = padMode(); _o->padMode = _e; };
{ auto _e = inputCount(); _o->inputCount = _e; };
{ auto _e = outputCount(); _o->outputCount = _e; };
{ auto _e = relu(); _o->relu = _e; };
{ auto _e = relu6(); _o->relu6 = _e; };
{ auto _e = group(); _o->group = _e; };
{ auto _e = outPads(); if (_e) { _o->outPads.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->outPads[_i] = _e->Get(_i); } } };
{ auto _e = hasOutputShape(); _o->hasOutputShape = _e; };
}
inline flatbuffers::Offset<Convolution3DCommon> Convolution3DCommon::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Convolution3DCommonT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateConvolution3DCommon(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Convolution3DCommon> CreateConvolution3DCommon(flatbuffers::FlatBufferBuilder &_fbb, const Convolution3DCommonT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Convolution3DCommonT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _dilates = _o->dilates.size() ? _fbb.CreateVector(_o->dilates) : 0;
auto _strides = _o->strides.size() ? _fbb.CreateVector(_o->strides) : 0;
auto _kernels = _o->kernels.size() ? _fbb.CreateVector(_o->kernels) : 0;
auto _pads = _o->pads.size() ? _fbb.CreateVector(_o->pads) : 0;
auto _padMode = _o->padMode;
auto _inputCount = _o->inputCount;
auto _outputCount = _o->outputCount;
auto _relu = _o->relu;
auto _relu6 = _o->relu6;
auto _group = _o->group;
auto _outPads = _o->outPads.size() ? _fbb.CreateVector(_o->outPads) : 0;
auto _hasOutputShape = _o->hasOutputShape;
return MNN::CreateConvolution3DCommon(
_fbb,
_dilates,
_strides,
_kernels,
_pads,
_padMode,
_inputCount,
_outputCount,
_relu,
_relu6,
_group,
_outPads,
_hasOutputShape);
}
inline SparseCommonT *SparseCommon::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new SparseCommonT();
UnPackTo(_o, _resolver);
return _o;
}
inline void SparseCommon::UnPackTo(SparseCommonT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = method(); _o->method = _e; };
{ auto _e = args(); if (_e) { _o->args.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->args[_i] = std::unique_ptr<AttributeT>(_e->Get(_i)->UnPack(_resolver)); } } };
}
inline flatbuffers::Offset<SparseCommon> SparseCommon::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparseCommonT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateSparseCommon(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<SparseCommon> CreateSparseCommon(flatbuffers::FlatBufferBuilder &_fbb, const SparseCommonT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SparseCommonT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _method = _o->method;
auto _args = _o->args.size() ? _fbb.CreateVector<flatbuffers::Offset<Attribute>> (_o->args.size(), [](size_t i, _VectorArgs *__va) { return CreateAttribute(*__va->__fbb, __va->__o->args[i].get(), __va->__rehasher); }, &_va ) : 0;
return MNN::CreateSparseCommon(
_fbb,
_method,
_args);
}
inline IDSTQuanT *IDSTQuan::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new IDSTQuanT();
UnPackTo(_o, _resolver);
return _o;
}
inline void IDSTQuan::UnPackTo(IDSTQuanT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = buffer(); if (_e) { _o->buffer.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->buffer[_i] = _e->Get(_i); } } };
{ auto _e = alpha(); if (_e) { _o->alpha.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->alpha[_i] = _e->Get(_i); } } };
{ auto _e = type(); _o->type = _e; };
{ auto _e = useInt32(); _o->useInt32 = _e; };
{ auto _e = quantScale(); _o->quantScale = _e; };
{ auto _e = scaleIn(); _o->scaleIn = _e; };
{ auto _e = scaleOut(); _o->scaleOut = _e; };
{ auto _e = aMaxOrBits(); _o->aMaxOrBits = _e; };
{ auto _e = aMin(); _o->aMin = _e; };
{ auto _e = readType(); _o->readType = _e; };
{ auto _e = has_scaleInt(); _o->has_scaleInt = _e; };
{ auto _e = shapeInt32(); _o->shapeInt32 = _e; };
{ auto _e = weightSize(); _o->weightSize = _e; };
{ auto _e = index(); if (_e) { _o->index.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->index[_i] = _e->Get(_i); } } };
{ auto _e = alphaFp16(); if (_e) { _o->alphaFp16.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->alphaFp16[_i] = _e->Get(_i); } } };
{ auto _e = scaleStorage(); _o->scaleStorage = _e; };
}
inline flatbuffers::Offset<IDSTQuan> IDSTQuan::Pack(flatbuffers::FlatBufferBuilder &_fbb, const IDSTQuanT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateIDSTQuan(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<IDSTQuan> CreateIDSTQuan(flatbuffers::FlatBufferBuilder &_fbb, const IDSTQuanT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const IDSTQuanT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _buffer = _o->buffer.size() ? _fbb.CreateVector(_o->buffer) : 0;
auto _alpha = _o->alpha.size() ? _fbb.CreateVector(_o->alpha) : 0;
auto _type = _o->type;
auto _useInt32 = _o->useInt32;
auto _quantScale = _o->quantScale;
auto _scaleIn = _o->scaleIn;
auto _scaleOut = _o->scaleOut;
auto _aMaxOrBits = _o->aMaxOrBits;
auto _aMin = _o->aMin;
auto _readType = _o->readType;
auto _has_scaleInt = _o->has_scaleInt;
auto _shapeInt32 = _o->shapeInt32;
auto _weightSize = _o->weightSize;
auto _index = _o->index.size() ? _fbb.CreateVector(_o->index) : 0;
auto _alphaFp16 = _o->alphaFp16.size() ? _fbb.CreateVector(_o->alphaFp16) : 0;
auto _scaleStorage = _o->scaleStorage;
return MNN::CreateIDSTQuan(
_fbb,
_buffer,
_alpha,
_type,
_useInt32,
_quantScale,
_scaleIn,
_scaleOut,
_aMaxOrBits,
_aMin,
_readType,
_has_scaleInt,
_shapeInt32,
_weightSize,
_index,
_alphaFp16,
_scaleStorage);
}
inline QuantizedFloatParamT *QuantizedFloatParam::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new QuantizedFloatParamT();
UnPackTo(_o, _resolver);
return _o;
}
inline void QuantizedFloatParam::UnPackTo(QuantizedFloatParamT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = weight(); if (_e) { _o->weight.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->weight[_i] = _e->Get(_i); } } };
{ auto _e = bias(); if (_e) { _o->bias.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->bias[_i] = _e->Get(_i); } } };
{ auto _e = scale(); if (_e) { _o->scale.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->scale[_i] = _e->Get(_i); } } };
{ auto _e = tensorScale(); if (_e) { _o->tensorScale.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->tensorScale[_i] = _e->Get(_i); } } };
{ auto _e = method(); _o->method = _e; };
{ auto _e = nbits(); _o->nbits = _e; };
{ auto _e = zeroPoint(); _o->zeroPoint = _e; };
{ auto _e = outputZeroPoint(); _o->outputZeroPoint = _e; };
{ auto _e = clampMin(); _o->clampMin = _e; };
{ auto _e = clampMax(); _o->clampMax = _e; };
{ auto _e = winogradAttr(); if (_e) { _o->winogradAttr.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->winogradAttr[_i] = _e->Get(_i); } } };
{ auto _e = outputDataType(); _o->outputDataType = _e; };
{ auto _e = floatzeros(); if (_e) { _o->floatzeros.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->floatzeros[_i] = _e->Get(_i); } } };
}
inline flatbuffers::Offset<QuantizedFloatParam> QuantizedFloatParam::Pack(flatbuffers::FlatBufferBuilder &_fbb, const QuantizedFloatParamT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateQuantizedFloatParam(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<QuantizedFloatParam> CreateQuantizedFloatParam(flatbuffers::FlatBufferBuilder &_fbb, const QuantizedFloatParamT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const QuantizedFloatParamT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _weight = _o->weight.size() ? _fbb.CreateVector(_o->weight) : 0;
auto _bias = _o->bias.size() ? _fbb.CreateVector(_o->bias) : 0;
auto _scale = _o->scale.size() ? _fbb.CreateVector(_o->scale) : 0;
auto _tensorScale = _o->tensorScale.size() ? _fbb.CreateVector(_o->tensorScale) : 0;
auto _method = _o->method;
auto _nbits = _o->nbits;
auto _zeroPoint = _o->zeroPoint;
auto _outputZeroPoint = _o->outputZeroPoint;
auto _clampMin = _o->clampMin;
auto _clampMax = _o->clampMax;
auto _winogradAttr = _o->winogradAttr.size() ? _fbb.CreateVector(_o->winogradAttr) : 0;
auto _outputDataType = _o->outputDataType;
auto _floatzeros = _o->floatzeros.size() ? _fbb.CreateVector(_o->floatzeros) : 0;
return MNN::CreateQuantizedFloatParam(
_fbb,
_weight,
_bias,
_scale,
_tensorScale,
_method,
_nbits,
_zeroPoint,
_outputZeroPoint,
_clampMin,
_clampMax,
_winogradAttr,
_outputDataType,
_floatzeros);
}
inline Convolution2DT *Convolution2D::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new Convolution2DT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Convolution2D::UnPackTo(Convolution2DT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = common(); if (_e) _o->common = std::unique_ptr<Convolution2DCommonT>(_e->UnPack(_resolver)); };
{ auto _e = weight(); if (_e) { _o->weight.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->weight[_i] = _e->Get(_i); } } };
{ auto _e = bias(); if (_e) { _o->bias.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->bias[_i] = _e->Get(_i); } } };
{ auto _e = quanParameter(); if (_e) _o->quanParameter = std::unique_ptr<IDSTQuanT>(_e->UnPack(_resolver)); };
{ auto _e = symmetricQuan(); if (_e) _o->symmetricQuan = std::unique_ptr<QuantizedFloatParamT>(_e->UnPack(_resolver)); };
{ auto _e = sparseParameter(); if (_e) _o->sparseParameter = std::unique_ptr<SparseCommonT>(_e->UnPack(_resolver)); };
{ auto _e = external(); if (_e) { _o->external.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->external[_i] = _e->Get(_i); } } };
}
inline flatbuffers::Offset<Convolution2D> Convolution2D::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Convolution2DT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateConvolution2D(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Convolution2D> CreateConvolution2D(flatbuffers::FlatBufferBuilder &_fbb, const Convolution2DT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Convolution2DT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _common = _o->common ? CreateConvolution2DCommon(_fbb, _o->common.get(), _rehasher) : 0;
auto _weight = _o->weight.size() ? _fbb.CreateVector(_o->weight) : 0;
auto _bias = _o->bias.size() ? _fbb.CreateVector(_o->bias) : 0;
auto _quanParameter = _o->quanParameter ? CreateIDSTQuan(_fbb, _o->quanParameter.get(), _rehasher) : 0;
auto _symmetricQuan = _o->symmetricQuan ? CreateQuantizedFloatParam(_fbb, _o->symmetricQuan.get(), _rehasher) : 0;
auto _sparseParameter = _o->sparseParameter ? CreateSparseCommon(_fbb, _o->sparseParameter.get(), _rehasher) : 0;
auto _external = _o->external.size() ? _fbb.CreateVector(_o->external) : 0;
return MNN::CreateConvolution2D(
_fbb,
_common,
_weight,
_bias,
_quanParameter,
_symmetricQuan,
_sparseParameter,
_external);
}
inline Convolution3DT *Convolution3D::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new Convolution3DT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Convolution3D::UnPackTo(Convolution3DT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = common(); if (_e) _o->common = std::unique_ptr<Convolution3DCommonT>(_e->UnPack(_resolver)); };
{ auto _e = weight(); if (_e) { _o->weight.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->weight[_i] = _e->Get(_i); } } };
{ auto _e = bias(); if (_e) { _o->bias.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->bias[_i] = _e->Get(_i); } } };
{ auto _e = external(); if (_e) { _o->external.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->external[_i] = _e->Get(_i); } } };
}
inline flatbuffers::Offset<Convolution3D> Convolution3D::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Convolution3DT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateConvolution3D(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Convolution3D> CreateConvolution3D(flatbuffers::FlatBufferBuilder &_fbb, const Convolution3DT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Convolution3DT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _common = _o->common ? CreateConvolution3DCommon(_fbb, _o->common.get(), _rehasher) : 0;
auto _weight = _o->weight.size() ? _fbb.CreateVector(_o->weight) : 0;
auto _bias = _o->bias.size() ? _fbb.CreateVector(_o->bias) : 0;
auto _external = _o->external.size() ? _fbb.CreateVector(_o->external) : 0;
return MNN::CreateConvolution3D(
_fbb,
_common,
_weight,
_bias,
_external);
}
inline InnerProductT *InnerProduct::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new InnerProductT();
UnPackTo(_o, _resolver);
return _o;
}
inline void InnerProduct::UnPackTo(InnerProductT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = outputCount(); _o->outputCount = _e; };
{ auto _e = biasTerm(); _o->biasTerm = _e; };
{ auto _e = weightSize(); _o->weightSize = _e; };
{ auto _e = weight(); if (_e) { _o->weight.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->weight[_i] = _e->Get(_i); } } };
{ auto _e = bias(); if (_e) { _o->bias.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->bias[_i] = _e->Get(_i); } } };
{ auto _e = axis(); _o->axis = _e; };
{ auto _e = transpose(); _o->transpose = _e; };
{ auto _e = quanParameter(); if (_e) _o->quanParameter = std::unique_ptr<IDSTQuanT>(_e->UnPack(_resolver)); };
}
inline flatbuffers::Offset<InnerProduct> InnerProduct::Pack(flatbuffers::FlatBufferBuilder &_fbb, const InnerProductT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateInnerProduct(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<InnerProduct> CreateInnerProduct(flatbuffers::FlatBufferBuilder &_fbb, const InnerProductT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const InnerProductT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _outputCount = _o->outputCount;
auto _biasTerm = _o->biasTerm;
auto _weightSize = _o->weightSize;
auto _weight = _o->weight.size() ? _fbb.CreateVector(_o->weight) : 0;
auto _bias = _o->bias.size() ? _fbb.CreateVector(_o->bias) : 0;
auto _axis = _o->axis;
auto _transpose = _o->transpose;
auto _quanParameter = _o->quanParameter ? CreateIDSTQuan(_fbb, _o->quanParameter.get(), _rehasher) : 0;
return MNN::CreateInnerProduct(
_fbb,
_outputCount,
_biasTerm,
_weightSize,
_weight,
_bias,
_axis,
_transpose,
_quanParameter);
}
inline PoolT *Pool::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new PoolT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Pool::UnPackTo(PoolT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = padX(); _o->padX = _e; };
{ auto _e = padY(); _o->padY = _e; };
{ auto _e = isGlobal(); _o->isGlobal = _e; };
{ auto _e = kernelX(); _o->kernelX = _e; };
{ auto _e = kernelY(); _o->kernelY = _e; };
{ auto _e = strideX(); _o->strideX = _e; };
{ auto _e = strideY(); _o->strideY = _e; };
{ auto _e = type(); _o->type = _e; };
{ auto _e = padType(); _o->padType = _e; };
{ auto _e = dataType(); _o->dataType = _e; };
{ auto _e = ceilModel(); _o->ceilModel = _e; };
{ auto _e = pads(); if (_e) { _o->pads.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->pads[_i] = _e->Get(_i); } } };
{ auto _e = countType(); _o->countType = _e; };
}
inline flatbuffers::Offset<Pool> Pool::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PoolT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreatePool(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Pool> CreatePool(flatbuffers::FlatBufferBuilder &_fbb, const PoolT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PoolT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _padX = _o->padX;
auto _padY = _o->padY;
auto _isGlobal = _o->isGlobal;
auto _kernelX = _o->kernelX;
auto _kernelY = _o->kernelY;
auto _strideX = _o->strideX;
auto _strideY = _o->strideY;
auto _type = _o->type;
auto _padType = _o->padType;
auto _dataType = _o->dataType;
auto _ceilModel = _o->ceilModel;
auto _pads = _o->pads.size() ? _fbb.CreateVector(_o->pads) : 0;
auto _countType = _o->countType;
return MNN::CreatePool(
_fbb,
_padX,
_padY,
_isGlobal,
_kernelX,
_kernelY,
_strideX,
_strideY,
_type,
_padType,
_dataType,
_ceilModel,
_pads,
_countType);
}
inline Pool3DT *Pool3D::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new Pool3DT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Pool3D::UnPackTo(Pool3DT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = strides(); if (_e) { _o->strides.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->strides[_i] = _e->Get(_i); } } };
{ auto _e = kernels(); if (_e) { _o->kernels.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->kernels[_i] = _e->Get(_i); } } };
{ auto _e = pads(); if (_e) { _o->pads.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->pads[_i] = _e->Get(_i); } } };
{ auto _e = type(); _o->type = _e; };
{ auto _e = padType(); _o->padType = _e; };
{ auto _e = isGlobal(); _o->isGlobal = _e; };
}
inline flatbuffers::Offset<Pool3D> Pool3D::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Pool3DT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreatePool3D(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Pool3D> CreatePool3D(flatbuffers::FlatBufferBuilder &_fbb, const Pool3DT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Pool3DT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _strides = _o->strides.size() ? _fbb.CreateVector(_o->strides) : 0;
auto _kernels = _o->kernels.size() ? _fbb.CreateVector(_o->kernels) : 0;
auto _pads = _o->pads.size() ? _fbb.CreateVector(_o->pads) : 0;
auto _type = _o->type;
auto _padType = _o->padType;
auto _isGlobal = _o->isGlobal;
return MNN::CreatePool3D(
_fbb,
_strides,
_kernels,
_pads,
_type,
_padType,
_isGlobal);
}
inline ReluT *Relu::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new ReluT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Relu::UnPackTo(ReluT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = slope(); _o->slope = _e; };
}
inline flatbuffers::Offset<Relu> Relu::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReluT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateRelu(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Relu> CreateRelu(flatbuffers::FlatBufferBuilder &_fbb, const ReluT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReluT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _slope = _o->slope;
return MNN::CreateRelu(
_fbb,
_slope);
}
inline Relu6T *Relu6::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new Relu6T();
UnPackTo(_o, _resolver);
return _o;
}
inline void Relu6::UnPackTo(Relu6T *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = minValue(); _o->minValue = _e; };
{ auto _e = maxValue(); _o->maxValue = _e; };
}
inline flatbuffers::Offset<Relu6> Relu6::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Relu6T* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateRelu6(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Relu6> CreateRelu6(flatbuffers::FlatBufferBuilder &_fbb, const Relu6T *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Relu6T* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _minValue = _o->minValue;
auto _maxValue = _o->maxValue;
return MNN::CreateRelu6(
_fbb,
_minValue,
_maxValue);
}
inline PReluT *PRelu::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new PReluT();
UnPackTo(_o, _resolver);
return _o;
}
inline void PRelu::UnPackTo(PReluT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = slopeCount(); _o->slopeCount = _e; };
{ auto _e = slope(); if (_e) { _o->slope.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->slope[_i] = _e->Get(_i); } } };
}
inline flatbuffers::Offset<PRelu> PRelu::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PReluT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreatePRelu(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<PRelu> CreatePRelu(flatbuffers::FlatBufferBuilder &_fbb, const PReluT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PReluT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _slopeCount = _o->slopeCount;
auto _slope = _o->slope.size() ? _fbb.CreateVector(_o->slope) : 0;
return MNN::CreatePRelu(
_fbb,
_slopeCount,
_slope);
}
inline ELUT *ELU::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new ELUT();
UnPackTo(_o, _resolver);
return _o;
}
inline void ELU::UnPackTo(ELUT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = alpha(); _o->alpha = _e; };
}
inline flatbuffers::Offset<ELU> ELU::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ELUT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateELU(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<ELU> CreateELU(flatbuffers::FlatBufferBuilder &_fbb, const ELUT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ELUT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _alpha = _o->alpha;
return MNN::CreateELU(
_fbb,
_alpha);
}
inline LRNT *LRN::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new LRNT();
UnPackTo(_o, _resolver);
return _o;
}
inline void LRN::UnPackTo(LRNT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = regionType(); _o->regionType = _e; };
{ auto _e = localSize(); _o->localSize = _e; };
{ auto _e = alpha(); _o->alpha = _e; };
{ auto _e = beta(); _o->beta = _e; };
{ auto _e = bias(); _o->bias = _e; };
}
inline flatbuffers::Offset<LRN> LRN::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LRNT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateLRN(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<LRN> CreateLRN(flatbuffers::FlatBufferBuilder &_fbb, const LRNT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LRNT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _regionType = _o->regionType;
auto _localSize = _o->localSize;
auto _alpha = _o->alpha;
auto _beta = _o->beta;
auto _bias = _o->bias;
return MNN::CreateLRN(
_fbb,
_regionType,
_localSize,
_alpha,
_beta,
_bias);
}
inline ArgMaxT *ArgMax::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new ArgMaxT();
UnPackTo(_o, _resolver);
return _o;
}
inline void ArgMax::UnPackTo(ArgMaxT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = outMaxVal(); _o->outMaxVal = _e; };
{ auto _e = topK(); _o->topK = _e; };
{ auto _e = axis(); _o->axis = _e; };
{ auto _e = softmaxThreshold(); _o->softmaxThreshold = _e; };
}
inline flatbuffers::Offset<ArgMax> ArgMax::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateArgMax(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<ArgMax> CreateArgMax(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ArgMaxT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _outMaxVal = _o->outMaxVal;
auto _topK = _o->topK;
auto _axis = _o->axis;
auto _softmaxThreshold = _o->softmaxThreshold;
return MNN::CreateArgMax(
_fbb,
_outMaxVal,
_topK,
_axis,
_softmaxThreshold);
}
inline AxisT *Axis::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new AxisT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Axis::UnPackTo(AxisT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = axis(); _o->axis = _e; };
}
inline flatbuffers::Offset<Axis> Axis::Pack(flatbuffers::FlatBufferBuilder &_fbb, const AxisT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateAxis(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Axis> CreateAxis(flatbuffers::FlatBufferBuilder &_fbb, const AxisT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const AxisT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _axis = _o->axis;
return MNN::CreateAxis(
_fbb,
_axis);
}
inline InputT *Input::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new InputT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Input::UnPackTo(InputT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = dims(); if (_e) { _o->dims.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->dims[_i] = _e->Get(_i); } } };
{ auto _e = dtype(); _o->dtype = _e; };
{ auto _e = dformat(); _o->dformat = _e; };
}
inline flatbuffers::Offset<Input> Input::Pack(flatbuffers::FlatBufferBuilder &_fbb, const InputT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateInput(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Input> CreateInput(flatbuffers::FlatBufferBuilder &_fbb, const InputT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const InputT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _dims = _o->dims.size() ? _fbb.CreateVector(_o->dims) : 0;
auto _dtype = _o->dtype;
auto _dformat = _o->dformat;
return MNN::CreateInput(
_fbb,
_dims,
_dtype,
_dformat);
}
inline LSTMT *LSTM::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new LSTMT();
UnPackTo(_o, _resolver);
return _o;
}
inline void LSTM::UnPackTo(LSTMT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = outputCount(); _o->outputCount = _e; };
{ auto _e = weightSize(); _o->weightSize = _e; };
{ auto _e = clippingThreshold(); _o->clippingThreshold = _e; };
{ auto _e = weightI(); if (_e) _o->weightI = std::unique_ptr<BlobT>(_e->UnPack(_resolver)); };
{ auto _e = weightH(); if (_e) _o->weightH = std::unique_ptr<BlobT>(_e->UnPack(_resolver)); };
{ auto _e = bias(); if (_e) _o->bias = std::unique_ptr<BlobT>(_e->UnPack(_resolver)); };
{ auto _e = weightIQ(); if (_e) _o->weightIQ = std::unique_ptr<BlobT>(_e->UnPack(_resolver)); };
{ auto _e = weightIA(); if (_e) _o->weightIA = std::unique_ptr<BlobT>(_e->UnPack(_resolver)); };
{ auto _e = quantScale(); _o->quantScale = _e; };
}
inline flatbuffers::Offset<LSTM> LSTM::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LSTMT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateLSTM(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<LSTM> CreateLSTM(flatbuffers::FlatBufferBuilder &_fbb, const LSTMT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LSTMT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _outputCount = _o->outputCount;
auto _weightSize = _o->weightSize;
auto _clippingThreshold = _o->clippingThreshold;
auto _weightI = _o->weightI ? CreateBlob(_fbb, _o->weightI.get(), _rehasher) : 0;
auto _weightH = _o->weightH ? CreateBlob(_fbb, _o->weightH.get(), _rehasher) : 0;
auto _bias = _o->bias ? CreateBlob(_fbb, _o->bias.get(), _rehasher) : 0;
auto _weightIQ = _o->weightIQ ? CreateBlob(_fbb, _o->weightIQ.get(), _rehasher) : 0;
auto _weightIA = _o->weightIA ? CreateBlob(_fbb, _o->weightIA.get(), _rehasher) : 0;
auto _quantScale = _o->quantScale;
return MNN::CreateLSTM(
_fbb,
_outputCount,
_weightSize,
_clippingThreshold,
_weightI,
_weightH,
_bias,
_weightIQ,
_weightIA,
_quantScale);
}
inline SliceT *Slice::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new SliceT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Slice::UnPackTo(SliceT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = axis(); _o->axis = _e; };
{ auto _e = slicePoints(); if (_e) { _o->slicePoints.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->slicePoints[_i] = _e->Get(_i); } } };
{ auto _e = sourceType(); _o->sourceType = _e; };
}
inline flatbuffers::Offset<Slice> Slice::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SliceT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateSlice(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Slice> CreateSlice(flatbuffers::FlatBufferBuilder &_fbb, const SliceT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SliceT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _axis = _o->axis;
auto _slicePoints = _o->slicePoints.size() ? _fbb.CreateVector(_o->slicePoints) : 0;
auto _sourceType = _o->sourceType;
return MNN::CreateSlice(
_fbb,
_axis,
_slicePoints,
_sourceType);
}
inline BatchNormT *BatchNorm::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new BatchNormT();
UnPackTo(_o, _resolver);
return _o;
}
inline void BatchNorm::UnPackTo(BatchNormT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = channels(); _o->channels = _e; };
{ auto _e = slopeData(); if (_e) { _o->slopeData.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->slopeData[_i] = _e->Get(_i); } } };
{ auto _e = meanData(); if (_e) { _o->meanData.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->meanData[_i] = _e->Get(_i); } } };
{ auto _e = varData(); if (_e) { _o->varData.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->varData[_i] = _e->Get(_i); } } };
{ auto _e = biasData(); if (_e) { _o->biasData.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->biasData[_i] = _e->Get(_i); } } };
{ auto _e = Adata(); if (_e) { _o->Adata.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->Adata[_i] = _e->Get(_i); } } };
{ auto _e = Bdata(); if (_e) { _o->Bdata.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->Bdata[_i] = _e->Get(_i); } } };
{ auto _e = epsilon(); _o->epsilon = _e; };
}
inline flatbuffers::Offset<BatchNorm> BatchNorm::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BatchNormT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateBatchNorm(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<BatchNorm> CreateBatchNorm(flatbuffers::FlatBufferBuilder &_fbb, const BatchNormT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BatchNormT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _channels = _o->channels;
auto _slopeData = _o->slopeData.size() ? _fbb.CreateVector(_o->slopeData) : 0;
auto _meanData = _o->meanData.size() ? _fbb.CreateVector(_o->meanData) : 0;
auto _varData = _o->varData.size() ? _fbb.CreateVector(_o->varData) : 0;
auto _biasData = _o->biasData.size() ? _fbb.CreateVector(_o->biasData) : 0;
auto _Adata = _o->Adata.size() ? _fbb.CreateVector(_o->Adata) : 0;
auto _Bdata = _o->Bdata.size() ? _fbb.CreateVector(_o->Bdata) : 0;
auto _epsilon = _o->epsilon;
return MNN::CreateBatchNorm(
_fbb,
_channels,
_slopeData,
_meanData,
_varData,
_biasData,
_Adata,
_Bdata,
_epsilon);
}
inline ScaleT *Scale::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new ScaleT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Scale::UnPackTo(ScaleT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = channels(); _o->channels = _e; };
{ auto _e = scaleData(); if (_e) { _o->scaleData.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->scaleData[_i] = _e->Get(_i); } } };
{ auto _e = biasData(); if (_e) { _o->biasData.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->biasData[_i] = _e->Get(_i); } } };
{ auto _e = external(); if (_e) { _o->external.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->external[_i] = _e->Get(_i); } } };
}
inline flatbuffers::Offset<Scale> Scale::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ScaleT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateScale(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Scale> CreateScale(flatbuffers::FlatBufferBuilder &_fbb, const ScaleT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ScaleT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _channels = _o->channels;
auto _scaleData = _o->scaleData.size() ? _fbb.CreateVector(_o->scaleData) : 0;
auto _biasData = _o->biasData.size() ? _fbb.CreateVector(_o->biasData) : 0;
auto _external = _o->external.size() ? _fbb.CreateVector(_o->external) : 0;
return MNN::CreateScale(
_fbb,
_channels,
_scaleData,
_biasData,
_external);
}
inline EltwiseT *Eltwise::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new EltwiseT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Eltwise::UnPackTo(EltwiseT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = type(); _o->type = _e; };
{ auto _e = coeff(); if (_e) { _o->coeff.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->coeff[_i] = _e->Get(_i); } } };
}
inline flatbuffers::Offset<Eltwise> Eltwise::Pack(flatbuffers::FlatBufferBuilder &_fbb, const EltwiseT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateEltwise(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Eltwise> CreateEltwise(flatbuffers::FlatBufferBuilder &_fbb, const EltwiseT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const EltwiseT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _type = _o->type;
auto _coeff = _o->coeff.size() ? _fbb.CreateVector(_o->coeff) : 0;
return MNN::CreateEltwise(
_fbb,
_type,
_coeff);
}
inline FlattenT *Flatten::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new FlattenT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Flatten::UnPackTo(FlattenT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = axis(); _o->axis = _e; };
{ auto _e = endAxis(); _o->endAxis = _e; };
}
inline flatbuffers::Offset<Flatten> Flatten::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FlattenT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateFlatten(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Flatten> CreateFlatten(flatbuffers::FlatBufferBuilder &_fbb, const FlattenT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FlattenT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _axis = _o->axis;
auto _endAxis = _o->endAxis;
return MNN::CreateFlatten(
_fbb,
_axis,
_endAxis);
}
inline PermuteT *Permute::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new PermuteT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Permute::UnPackTo(PermuteT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = dims(); if (_e) { _o->dims.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->dims[_i] = _e->Get(_i); } } };
}
inline flatbuffers::Offset<Permute> Permute::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PermuteT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreatePermute(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Permute> CreatePermute(flatbuffers::FlatBufferBuilder &_fbb, const PermuteT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PermuteT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _dims = _o->dims.size() ? _fbb.CreateVector(_o->dims) : 0;
return MNN::CreatePermute(
_fbb,
_dims);
}
inline ReshapeT *Reshape::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new ReshapeT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Reshape::UnPackTo(ReshapeT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = dims(); if (_e) { _o->dims.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->dims[_i] = _e->Get(_i); } } };
{ auto _e = dimType(); _o->dimType = _e; };
}
inline flatbuffers::Offset<Reshape> Reshape::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateReshape(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Reshape> CreateReshape(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReshapeT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _dims = _o->dims.size() ? _fbb.CreateVector(_o->dims) : 0;
auto _dimType = _o->dimType;
return MNN::CreateReshape(
_fbb,
_dims,
_dimType);
}
inline DetectionOutputT *DetectionOutput::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new DetectionOutputT();
UnPackTo(_o, _resolver);
return _o;
}
inline void DetectionOutput::UnPackTo(DetectionOutputT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = classCount(); _o->classCount = _e; };
{ auto _e = nmsThresholdold(); _o->nmsThresholdold = _e; };
{ auto _e = nmsTopK(); _o->nmsTopK = _e; };
{ auto _e = keepTopK(); _o->keepTopK = _e; };
{ auto _e = confidenceThreshold(); _o->confidenceThreshold = _e; };
{ auto _e = shareLocation(); _o->shareLocation = _e; };
{ auto _e = backgroundLable(); _o->backgroundLable = _e; };
{ auto _e = varianceEncodedTarget(); _o->varianceEncodedTarget = _e; };
{ auto _e = codeType(); _o->codeType = _e; };
{ auto _e = objectnessScore(); _o->objectnessScore = _e; };
}
inline flatbuffers::Offset<DetectionOutput> DetectionOutput::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DetectionOutputT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateDetectionOutput(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<DetectionOutput> CreateDetectionOutput(flatbuffers::FlatBufferBuilder &_fbb, const DetectionOutputT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DetectionOutputT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _classCount = _o->classCount;
auto _nmsThresholdold = _o->nmsThresholdold;
auto _nmsTopK = _o->nmsTopK;
auto _keepTopK = _o->keepTopK;
auto _confidenceThreshold = _o->confidenceThreshold;
auto _shareLocation = _o->shareLocation;
auto _backgroundLable = _o->backgroundLable;
auto _varianceEncodedTarget = _o->varianceEncodedTarget;
auto _codeType = _o->codeType;
auto _objectnessScore = _o->objectnessScore;
return MNN::CreateDetectionOutput(
_fbb,
_classCount,
_nmsThresholdold,
_nmsTopK,
_keepTopK,
_confidenceThreshold,
_shareLocation,
_backgroundLable,
_varianceEncodedTarget,
_codeType,
_objectnessScore);
}
inline RoiParametersT *RoiParameters::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new RoiParametersT();
UnPackTo(_o, _resolver);
return _o;
}
inline void RoiParameters::UnPackTo(RoiParametersT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = pooledWidth(); _o->pooledWidth = _e; };
{ auto _e = pooledHeight(); _o->pooledHeight = _e; };
{ auto _e = spatialScale(); _o->spatialScale = _e; };
{ auto _e = samplingRatio(); _o->samplingRatio = _e; };
{ auto _e = aligned(); _o->aligned = _e; };
{ auto _e = poolType(); _o->poolType = _e; };
{ auto _e = outputGrad(); _o->outputGrad = _e; };
}
inline flatbuffers::Offset<RoiParameters> RoiParameters::Pack(flatbuffers::FlatBufferBuilder &_fbb, const RoiParametersT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateRoiParameters(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<RoiParameters> CreateRoiParameters(flatbuffers::FlatBufferBuilder &_fbb, const RoiParametersT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const RoiParametersT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _pooledWidth = _o->pooledWidth;
auto _pooledHeight = _o->pooledHeight;
auto _spatialScale = _o->spatialScale;
auto _samplingRatio = _o->samplingRatio;
auto _aligned = _o->aligned;
auto _poolType = _o->poolType;
auto _outputGrad = _o->outputGrad;
return MNN::CreateRoiParameters(
_fbb,
_pooledWidth,
_pooledHeight,
_spatialScale,
_samplingRatio,
_aligned,
_poolType,
_outputGrad);
}
inline ProposalT *Proposal::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new ProposalT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Proposal::UnPackTo(ProposalT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = featStride(); _o->featStride = _e; };
{ auto _e = baseSize(); _o->baseSize = _e; };
{ auto _e = preNmsTopN(); _o->preNmsTopN = _e; };
{ auto _e = afterNmsTopN(); _o->afterNmsTopN = _e; };
{ auto _e = nmsThreshold(); _o->nmsThreshold = _e; };
{ auto _e = minSize(); _o->minSize = _e; };
{ auto _e = ratios(); if (_e) _o->ratios = std::unique_ptr<BlobT>(_e->UnPack(_resolver)); };
{ auto _e = scales(); if (_e) _o->scales = std::unique_ptr<BlobT>(_e->UnPack(_resolver)); };
{ auto _e = anchors(); if (_e) _o->anchors = std::unique_ptr<BlobT>(_e->UnPack(_resolver)); };
}
inline flatbuffers::Offset<Proposal> Proposal::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ProposalT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateProposal(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Proposal> CreateProposal(flatbuffers::FlatBufferBuilder &_fbb, const ProposalT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ProposalT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _featStride = _o->featStride;
auto _baseSize = _o->baseSize;
auto _preNmsTopN = _o->preNmsTopN;
auto _afterNmsTopN = _o->afterNmsTopN;
auto _nmsThreshold = _o->nmsThreshold;
auto _minSize = _o->minSize;
auto _ratios = _o->ratios ? CreateBlob(_fbb, _o->ratios.get(), _rehasher) : 0;
auto _scales = _o->scales ? CreateBlob(_fbb, _o->scales.get(), _rehasher) : 0;
auto _anchors = _o->anchors ? CreateBlob(_fbb, _o->anchors.get(), _rehasher) : 0;
return MNN::CreateProposal(
_fbb,
_featStride,
_baseSize,
_preNmsTopN,
_afterNmsTopN,
_nmsThreshold,
_minSize,
_ratios,
_scales,
_anchors);
}
inline InterpT *Interp::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new InterpT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Interp::UnPackTo(InterpT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = widthScale(); _o->widthScale = _e; };
{ auto _e = heightScale(); _o->heightScale = _e; };
{ auto _e = outputWidth(); _o->outputWidth = _e; };
{ auto _e = outputHeight(); _o->outputHeight = _e; };
{ auto _e = resizeType(); _o->resizeType = _e; };
{ auto _e = alignCorners(); _o->alignCorners = _e; };
{ auto _e = halfPixelCenters(); _o->halfPixelCenters = _e; };
{ auto _e = widthOffset(); _o->widthOffset = _e; };
{ auto _e = heightOffset(); _o->heightOffset = _e; };
{ auto _e = cubicCoeffA(); _o->cubicCoeffA = _e; };
{ auto _e = ctm(); _o->ctm = _e; };
{ auto _e = depthScale(); _o->depthScale = _e; };
{ auto _e = outputDepth(); _o->outputDepth = _e; };
{ auto _e = depthOffset(); _o->depthOffset = _e; };
}
inline flatbuffers::Offset<Interp> Interp::Pack(flatbuffers::FlatBufferBuilder &_fbb, const InterpT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateInterp(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Interp> CreateInterp(flatbuffers::FlatBufferBuilder &_fbb, const InterpT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const InterpT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _widthScale = _o->widthScale;
auto _heightScale = _o->heightScale;
auto _outputWidth = _o->outputWidth;
auto _outputHeight = _o->outputHeight;
auto _resizeType = _o->resizeType;
auto _alignCorners = _o->alignCorners;
auto _halfPixelCenters = _o->halfPixelCenters;
auto _widthOffset = _o->widthOffset;
auto _heightOffset = _o->heightOffset;
auto _cubicCoeffA = _o->cubicCoeffA;
auto _ctm = _o->ctm;
auto _depthScale = _o->depthScale;
auto _outputDepth = _o->outputDepth;
auto _depthOffset = _o->depthOffset;
return MNN::CreateInterp(
_fbb,
_widthScale,
_heightScale,
_outputWidth,
_outputHeight,
_resizeType,
_alignCorners,
_halfPixelCenters,
_widthOffset,
_heightOffset,
_cubicCoeffA,
_ctm,
_depthScale,
_outputDepth,
_depthOffset);
}
inline ResizeT *Resize::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new ResizeT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Resize::UnPackTo(ResizeT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = xScale(); _o->xScale = _e; };
{ auto _e = yScale(); _o->yScale = _e; };
}
inline flatbuffers::Offset<Resize> Resize::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResizeT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateResize(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Resize> CreateResize(flatbuffers::FlatBufferBuilder &_fbb, const ResizeT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ResizeT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _xScale = _o->xScale;
auto _yScale = _o->yScale;
return MNN::CreateResize(
_fbb,
_xScale,
_yScale);
}
inline PriorBoxT *PriorBox::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new PriorBoxT();
UnPackTo(_o, _resolver);
return _o;
}
inline void PriorBox::UnPackTo(PriorBoxT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = minSizes(); if (_e) { _o->minSizes.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->minSizes[_i] = _e->Get(_i); } } };
{ auto _e = maxSizes(); if (_e) { _o->maxSizes.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->maxSizes[_i] = _e->Get(_i); } } };
{ auto _e = aspectRatios(); if (_e) { _o->aspectRatios.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->aspectRatios[_i] = _e->Get(_i); } } };
{ auto _e = variances(); if (_e) { _o->variances.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->variances[_i] = _e->Get(_i); } } };
{ auto _e = flip(); _o->flip = _e; };
{ auto _e = clip(); _o->clip = _e; };
{ auto _e = imageWidth(); _o->imageWidth = _e; };
{ auto _e = imageHeight(); _o->imageHeight = _e; };
{ auto _e = stepWidth(); _o->stepWidth = _e; };
{ auto _e = stepHeight(); _o->stepHeight = _e; };
{ auto _e = offset(); _o->offset = _e; };
}
inline flatbuffers::Offset<PriorBox> PriorBox::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PriorBoxT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreatePriorBox(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<PriorBox> CreatePriorBox(flatbuffers::FlatBufferBuilder &_fbb, const PriorBoxT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PriorBoxT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _minSizes = _o->minSizes.size() ? _fbb.CreateVector(_o->minSizes) : 0;
auto _maxSizes = _o->maxSizes.size() ? _fbb.CreateVector(_o->maxSizes) : 0;
auto _aspectRatios = _o->aspectRatios.size() ? _fbb.CreateVector(_o->aspectRatios) : 0;
auto _variances = _o->variances.size() ? _fbb.CreateVector(_o->variances) : 0;
auto _flip = _o->flip;
auto _clip = _o->clip;
auto _imageWidth = _o->imageWidth;
auto _imageHeight = _o->imageHeight;
auto _stepWidth = _o->stepWidth;
auto _stepHeight = _o->stepHeight;
auto _offset = _o->offset;
return MNN::CreatePriorBox(
_fbb,
_minSizes,
_maxSizes,
_aspectRatios,
_variances,
_flip,
_clip,
_imageWidth,
_imageHeight,
_stepWidth,
_stepHeight,
_offset);
}
inline NormalizeT *Normalize::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new NormalizeT();
UnPackTo(_o, _resolver);
return _o;
}
inline void Normalize::UnPackTo(NormalizeT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = acrossSpatial(); _o->acrossSpatial = _e; };
{ auto _e = channelShared(); _o->channelShared = _e; };
{ auto _e = eps(); _o->eps = _e; };
{ auto _e = scale(); if (_e) { _o->scale.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->scale[_i] = _e->Get(_i); } } };
}
inline flatbuffers::Offset<Normalize> Normalize::Pack(flatbuffers::FlatBufferBuilder &_fbb, const NormalizeT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateNormalize(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<Normalize> CreateNormalize(flatbuffers::FlatBufferBuilder &_fbb, const NormalizeT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const NormalizeT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _acrossSpatial = _o->acrossSpatial;
auto _channelShared = _o->channelShared;
auto _eps = _o->eps;
auto _scale = _o->scale.size() ? _fbb.CreateVector(_o->scale) : 0;
return MNN::CreateNormalize(
_fbb,
_acrossSpatial,
_channelShared,
_eps,
_scale);
}
inline EltwiseInt8T *EltwiseInt8::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new EltwiseInt8T();
UnPackTo(_o, _resolver);
return _o;
}
inline void EltwiseInt8::UnPackTo(EltwiseInt8T *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = type(); _o->type = _e; };
{ auto _e = inputQuan0(); if (_e) _o->inputQuan0 = std::unique_ptr<QuantizedFloatParamT>(_e->UnPack(_resolver)); };
{ auto _e = inputQuan1(); if (_e) _o->inputQuan1 = std::unique_ptr<QuantizedFloatParamT>(_e->UnPack(_resolver)); };
{ auto _e = outputQuan(); if (_e) _o->outputQuan = std::unique_ptr<QuantizedFloatParamT>(_e->UnPack(_resolver)); };
}
inline flatbuffers::Offset<EltwiseInt8> EltwiseInt8::Pack(flatbuffers::FlatBufferBuilder &_fbb, const EltwiseInt8T* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateEltwiseInt8(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<EltwiseInt8> CreateEltwiseInt8(flatbuffers::FlatBufferBuilder &_fbb, const EltwiseInt8T *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const EltwiseInt8T* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _type = _o->type;
auto _inputQuan0 = _o->inputQuan0 ? CreateQuantizedFloatParam(_fbb, _o->inputQuan0.get(), _rehasher) : 0;
auto _inputQuan1 = _o->inputQuan1 ? CreateQuantizedFloatParam(_fbb, _o->inputQuan1.get(), _rehasher) : 0;
auto _outputQuan = _o->outputQuan ? CreateQuantizedFloatParam(_fbb, _o->outputQuan.get(), _rehasher) : 0;
return MNN::CreateEltwiseInt8(
_fbb,
_type,
_inputQuan0,
_inputQuan1,
_outputQuan);
}
inline CumSumT *CumSum::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
auto _o = new CumSumT();
UnPackTo(_o, _resolver);
return _o;
}
inline void CumSum::UnPackTo(CumSumT *_o, const flatbuffers::resolver_function_t *_resolver) const {
(void)_o;
(void)_resolver;
{ auto _e = exclusive(); _o->exclusive = _e; };
{ auto _e = reverse(); _o->reverse = _e; };
}
inline flatbuffers::Offset<CumSum> CumSum::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CumSumT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
return CreateCumSum(_fbb, _o, _rehasher);
}
inline flatbuffers::Offset<CumSum> CreateCumSum(flatbuffers::FlatBufferBuilder &_fbb, const CumSumT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
(void)_rehasher;
(void)_o;
struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CumSumT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
auto _exclusive = _o->exclusive;
auto _reverse = _o->reverse;
return MNN::CreateCumSum(
_fbb,
_exclusive,
_reverse);
}
inline const flatbuffers::TypeTable *PadModeTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 }
};
static const flatbuffers::TypeFunction type_refs[] = {
PadModeTypeTable
};
static const char * const names[] = {
"CAFFE",
"VALID",
"SAME"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_ENUM, 3, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *SparseAlgoTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 }
};
static const flatbuffers::TypeFunction type_refs[] = {
SparseAlgoTypeTable
};
static const char * const names[] = {
"RANDOM",
"SIMD_OC"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_ENUM, 2, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *ScaleStorageTypeTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 }
};
static const flatbuffers::TypeFunction type_refs[] = {
ScaleStorageTypeTypeTable
};
static const char * const names[] = {
"FP32",
"FP16"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_ENUM, 2, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *QuantizeAlgoTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 }
};
static const flatbuffers::TypeFunction type_refs[] = {
QuantizeAlgoTypeTable
};
static const char * const names[] = {
"DEFAULT",
"OVERFLOW_AWARE",
"WINOGRAD_AWARE"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_ENUM, 3, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *PoolTypeTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 }
};
static const flatbuffers::TypeFunction type_refs[] = {
PoolTypeTypeTable
};
static const char * const names[] = {
"MAXPOOL",
"AVEPOOL"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_ENUM, 2, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *PoolPadTypeTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 }
};
static const flatbuffers::TypeFunction type_refs[] = {
PoolPadTypeTypeTable
};
static const char * const names[] = {
"CAFFE",
"VALID",
"SAME"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_ENUM, 3, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *AvgPoolCountTypeTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 }
};
static const flatbuffers::TypeFunction type_refs[] = {
AvgPoolCountTypeTypeTable
};
static const char * const names[] = {
"DEFAULT",
"INCLUDE_PADDING",
"EXCLUDE_PADDING"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_ENUM, 3, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *EltwiseTypeTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 }
};
static const flatbuffers::TypeFunction type_refs[] = {
EltwiseTypeTypeTable
};
static const char * const names[] = {
"PROD",
"SUM",
"MAXIMUM",
"SUB"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_ENUM, 4, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *CoordinateTransformationModeTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 0 }
};
static const flatbuffers::TypeFunction type_refs[] = {
CoordinateTransformationModeTypeTable
};
static const char * const names[] = {
"NotSet",
"AlignCorners",
"HalfPixels",
"PytorchHalfPixels",
"Asymmetric",
"TensorflowHalfPixels",
"TensorflowCropAndResize"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_ENUM, 7, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *Convolution2DCommonTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_BOOL, 0, -1 }
};
static const flatbuffers::TypeFunction type_refs[] = {
PadModeTypeTable
};
static const char * const names[] = {
"padX",
"padY",
"kernelX",
"kernelY",
"strideX",
"strideY",
"dilateX",
"dilateY",
"padMode",
"group",
"outputCount",
"inputCount",
"relu",
"relu6",
"pads",
"outPads",
"hasOutputShape"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 17, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *Convolution3DCommonTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_BOOL, 0, -1 }
};
static const flatbuffers::TypeFunction type_refs[] = {
PadModeTypeTable
};
static const char * const names[] = {
"dilates",
"strides",
"kernels",
"pads",
"padMode",
"inputCount",
"outputCount",
"relu",
"relu6",
"group",
"outPads",
"hasOutputShape"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 12, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *SparseCommonTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_SEQUENCE, 1, 1 }
};
static const flatbuffers::TypeFunction type_refs[] = {
SparseAlgoTypeTable,
AttributeTypeTable
};
static const char * const names[] = {
"method",
"args"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 2, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *IDSTQuanTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_CHAR, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_UINT, 0, -1 },
{ flatbuffers::ET_UINT, 1, -1 },
{ flatbuffers::ET_USHORT, 1, -1 },
{ flatbuffers::ET_CHAR, 0, 0 }
};
static const flatbuffers::TypeFunction type_refs[] = {
ScaleStorageTypeTypeTable
};
static const char * const names[] = {
"buffer",
"alpha",
"type",
"useInt32",
"quantScale",
"scaleIn",
"scaleOut",
"aMaxOrBits",
"aMin",
"readType",
"has_scaleInt",
"shapeInt32",
"weightSize",
"index",
"alphaFp16",
"scaleStorage"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 16, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *QuantizedFloatParamTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_CHAR, 1, -1 },
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_CHAR, 0, -1 },
{ flatbuffers::ET_CHAR, 0, -1 },
{ flatbuffers::ET_CHAR, 0, -1 },
{ flatbuffers::ET_CHAR, 0, -1 },
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_INT, 0, 1 },
{ flatbuffers::ET_FLOAT, 1, -1 }
};
static const flatbuffers::TypeFunction type_refs[] = {
QuantizeAlgoTypeTable,
DataTypeTypeTable
};
static const char * const names[] = {
"weight",
"bias",
"scale",
"tensorScale",
"method",
"nbits",
"zeroPoint",
"outputZeroPoint",
"clampMin",
"clampMax",
"winogradAttr",
"outputDataType",
"floatzeros"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 13, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *Convolution2DTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_SEQUENCE, 0, 0 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_SEQUENCE, 0, 1 },
{ flatbuffers::ET_SEQUENCE, 0, 2 },
{ flatbuffers::ET_SEQUENCE, 0, 3 },
{ flatbuffers::ET_LONG, 1, -1 }
};
static const flatbuffers::TypeFunction type_refs[] = {
Convolution2DCommonTypeTable,
IDSTQuanTypeTable,
QuantizedFloatParamTypeTable,
SparseCommonTypeTable
};
static const char * const names[] = {
"common",
"weight",
"bias",
"quanParameter",
"symmetricQuan",
"sparseParameter",
"external"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 7, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *Convolution3DTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_SEQUENCE, 0, 0 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_LONG, 1, -1 }
};
static const flatbuffers::TypeFunction type_refs[] = {
Convolution3DCommonTypeTable
};
static const char * const names[] = {
"common",
"weight",
"bias",
"external"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 4, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *InnerProductTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_SEQUENCE, 0, 0 }
};
static const flatbuffers::TypeFunction type_refs[] = {
IDSTQuanTypeTable
};
static const char * const names[] = {
"outputCount",
"biasTerm",
"weightSize",
"weight",
"bias",
"axis",
"transpose",
"quanParameter"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 8, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *PoolTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 1 },
{ flatbuffers::ET_INT, 0, 2 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_CHAR, 0, 3 }
};
static const flatbuffers::TypeFunction type_refs[] = {
PoolTypeTypeTable,
PoolPadTypeTypeTable,
DataTypeTypeTable,
AvgPoolCountTypeTypeTable
};
static const char * const names[] = {
"padX",
"padY",
"isGlobal",
"kernelX",
"kernelY",
"strideX",
"strideY",
"type",
"padType",
"dataType",
"ceilModel",
"pads",
"countType"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 13, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *Pool3DTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 1 },
{ flatbuffers::ET_BOOL, 0, -1 }
};
static const flatbuffers::TypeFunction type_refs[] = {
PoolTypeTypeTable,
PoolPadTypeTypeTable
};
static const char * const names[] = {
"strides",
"kernels",
"pads",
"type",
"padType",
"isGlobal"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 6, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *ReluTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_FLOAT, 0, -1 }
};
static const char * const names[] = {
"slope"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 1, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *Relu6TypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 }
};
static const char * const names[] = {
"minValue",
"maxValue"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 2, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *PReluTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 }
};
static const char * const names[] = {
"slopeCount",
"slope"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 2, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *ELUTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_FLOAT, 0, -1 }
};
static const char * const names[] = {
"alpha"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 1, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *LRNTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 }
};
static const char * const names[] = {
"regionType",
"localSize",
"alpha",
"beta",
"bias"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 5, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *ArgMaxTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 }
};
static const char * const names[] = {
"outMaxVal",
"topK",
"axis",
"softmaxThreshold"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 4, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *AxisTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 }
};
static const char * const names[] = {
"axis"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 1, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *InputTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_INT, 0, 0 },
{ flatbuffers::ET_CHAR, 0, 1 }
};
static const flatbuffers::TypeFunction type_refs[] = {
DataTypeTypeTable,
MNN_DATA_FORMATTypeTable
};
static const char * const names[] = {
"dims",
"dtype",
"dformat"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 3, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *LSTMTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_SEQUENCE, 0, 0 },
{ flatbuffers::ET_SEQUENCE, 0, 0 },
{ flatbuffers::ET_SEQUENCE, 0, 0 },
{ flatbuffers::ET_SEQUENCE, 0, 0 },
{ flatbuffers::ET_SEQUENCE, 0, 0 },
{ flatbuffers::ET_FLOAT, 0, -1 }
};
static const flatbuffers::TypeFunction type_refs[] = {
BlobTypeTable
};
static const char * const names[] = {
"outputCount",
"weightSize",
"clippingThreshold",
"weightI",
"weightH",
"bias",
"weightIQ",
"weightIA",
"quantScale"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 9, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *SliceTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_CHAR, 0, 0 }
};
static const flatbuffers::TypeFunction type_refs[] = {
NetSourceTypeTable
};
static const char * const names[] = {
"axis",
"slicePoints",
"sourceType"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 3, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *BatchNormTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 }
};
static const char * const names[] = {
"channels",
"slopeData",
"meanData",
"varData",
"biasData",
"Adata",
"Bdata",
"epsilon"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 8, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *ScaleTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_LONG, 1, -1 }
};
static const char * const names[] = {
"channels",
"scaleData",
"biasData",
"external"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 4, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *EltwiseTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_FLOAT, 1, -1 }
};
static const flatbuffers::TypeFunction type_refs[] = {
EltwiseTypeTypeTable
};
static const char * const names[] = {
"type",
"coeff"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 2, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *FlattenTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 }
};
static const char * const names[] = {
"axis",
"endAxis"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 2, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *PermuteTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 1, -1 }
};
static const char * const names[] = {
"dims"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 1, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *ReshapeTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 1, -1 },
{ flatbuffers::ET_CHAR, 0, 0 }
};
static const flatbuffers::TypeFunction type_refs[] = {
MNN_DATA_FORMATTypeTable
};
static const char * const names[] = {
"dims",
"dimType"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 2, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *DetectionOutputTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 }
};
static const char * const names[] = {
"classCount",
"nmsThresholdold",
"nmsTopK",
"keepTopK",
"confidenceThreshold",
"shareLocation",
"backgroundLable",
"varianceEncodedTarget",
"codeType",
"objectnessScore"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 10, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *RoiParametersTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_BOOL, 0, -1 }
};
static const flatbuffers::TypeFunction type_refs[] = {
PoolTypeTypeTable
};
static const char * const names[] = {
"pooledWidth",
"pooledHeight",
"spatialScale",
"samplingRatio",
"aligned",
"poolType",
"outputGrad"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 7, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *ProposalTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_SEQUENCE, 0, 0 },
{ flatbuffers::ET_SEQUENCE, 0, 0 },
{ flatbuffers::ET_SEQUENCE, 0, 0 }
};
static const flatbuffers::TypeFunction type_refs[] = {
BlobTypeTable
};
static const char * const names[] = {
"featStride",
"baseSize",
"preNmsTopN",
"afterNmsTopN",
"nmsThreshold",
"minSize",
"ratios",
"scales",
"anchors"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 9, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *InterpTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 }
};
static const flatbuffers::TypeFunction type_refs[] = {
CoordinateTransformationModeTypeTable
};
static const char * const names[] = {
"widthScale",
"heightScale",
"outputWidth",
"outputHeight",
"resizeType",
"alignCorners",
"halfPixelCenters",
"widthOffset",
"heightOffset",
"cubicCoeffA",
"ctm",
"depthScale",
"outputDepth",
"depthOffset"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 14, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *ResizeTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 }
};
static const char * const names[] = {
"xScale",
"yScale"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 2, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *PriorBoxTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 }
};
static const char * const names[] = {
"minSizes",
"maxSizes",
"aspectRatios",
"variances",
"flip",
"clip",
"imageWidth",
"imageHeight",
"stepWidth",
"stepHeight",
"offset"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 11, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *NormalizeTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_INT, 0, -1 },
{ flatbuffers::ET_FLOAT, 0, -1 },
{ flatbuffers::ET_FLOAT, 1, -1 }
};
static const char * const names[] = {
"acrossSpatial",
"channelShared",
"eps",
"scale"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 4, type_codes, nullptr, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *EltwiseInt8TypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_CHAR, 0, 0 },
{ flatbuffers::ET_SEQUENCE, 0, 1 },
{ flatbuffers::ET_SEQUENCE, 0, 1 },
{ flatbuffers::ET_SEQUENCE, 0, 1 }
};
static const flatbuffers::TypeFunction type_refs[] = {
EltwiseTypeTypeTable,
QuantizedFloatParamTypeTable
};
static const char * const names[] = {
"type",
"inputQuan0",
"inputQuan1",
"outputQuan"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 4, type_codes, type_refs, nullptr, names
};
return &tt;
}
inline const flatbuffers::TypeTable *CumSumTypeTable() {
static const flatbuffers::TypeCode type_codes[] = {
{ flatbuffers::ET_BOOL, 0, -1 },
{ flatbuffers::ET_BOOL, 0, -1 }
};
static const char * const names[] = {
"exclusive",
"reverse"
};
static const flatbuffers::TypeTable tt = {
flatbuffers::ST_TABLE, 2, type_codes, nullptr, nullptr, names
};
return &tt;
}
} // namespace MNN
#endif // FLATBUFFERS_GENERATED_CAFFEOP_MNN_H_