HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
data_types_internal.h File Reference
#include <array>
#include <cassert>
#include <cstdint>
#include <string>
#include <type_traits>
#include <vector>
#include "boost/mp11.hpp"
#include "core/common/common.h"
#include "core/framework/to_tensor_proto_element_type.h"
#include "core/common/type_list.h"
#include "core/framework/data_types.h"
#include "core/graph/onnx_protobuf.h"
+ Include dependency graph for data_types_internal.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  onnxruntime::utils::mltype_dispatcher_internal::CallableDispatchableHelper
 
struct  onnxruntime::utils::mltype_dispatcher_internal::UnsupportedTypeDefaultPolicy< Ret >
 
class  onnxruntime::utils::mltype_dispatcher_internal::CallableDispatchableRetHelper< Ret, UnsupportedPolicy >
 
class  onnxruntime::utils::MLTypeCallDispatcher< Types >
 
class  onnxruntime::utils::data_types_internal::TypeNode
 
class  onnxruntime::utils::ContainerChecker
 

Namespaces

 onnxruntime
 
 onnxruntime::utils
 
 onnxruntime::utils::mltype_dispatcher_internal
 
 onnxruntime::utils::data_types_internal
 

Macros

#define DispatchOnTensorType(tensor_type, function,...)
 
#define DispatchOnTensorTypeWithReturn(tensor_type, retval, function,...)
 

Typedefs

template<typename T >
using onnxruntime::utils::mltype_dispatcher_internal::TensorProtoElementTypeConstant = std::integral_constant< ONNX_NAMESPACE::TensorProto_DataType, ToTensorProtoElementType< T >()>
 
using onnxruntime::utils::mltype_dispatcher_internal::UndefinedTensorProtoElementTypeConstant = std::integral_constant< ONNX_NAMESPACE::TensorProto_DataType, ONNX_NAMESPACE::TensorProto_DataType_UNDEFINED >
 
template<typename L >
using onnxruntime::utils::MLTypeCallDispatcherFromTypeList = boost::mp11::mp_apply< MLTypeCallDispatcher, L >
 

Enumerations

enum  onnxruntime::utils::data_types_internal::ContainerType : uint16_t {
  onnxruntime::utils::data_types_internal::ContainerType::kUndefined = 0, onnxruntime::utils::data_types_internal::ContainerType::kTensor = 1, onnxruntime::utils::data_types_internal::ContainerType::kMap = 2, onnxruntime::utils::data_types_internal::ContainerType::kSequence = 3,
  onnxruntime::utils::data_types_internal::ContainerType::kOpaque = 4, onnxruntime::utils::data_types_internal::ContainerType::kOptional = 5
}
 

Functions

bool onnxruntime::utils::IsDataTypeString (MLDataType dt_type)
 Use the following primitives if you have a few types to switch on so you. More...
 
template<class T >
bool onnxruntime::utils::IsPrimitiveDataType (MLDataType dt_type)
 
template<class T >
bool onnxruntime::utils::IsPrimitiveDataType (const PrimitiveDataTypeBase *prim_type)
 
bool onnxruntime::utils::IsOpaqueType (MLDataType ml_type, const char *domain, const char *name)
 

Macro Definition Documentation

#define DispatchOnTensorType (   tensor_type,
  function,
  ... 
)

Definition at line 40 of file data_types_internal.h.

#define DispatchOnTensorTypeWithReturn (   tensor_type,
  retval,
  function,
  ... 
)

Definition at line 100 of file data_types_internal.h.