cast_helper.h#

namespace onnx_light

Alias that makes onnx-light headers compatible with code that references ONNX_LIGHT_NAMESPACE (the macro used in the standard onnx package).

Set to ONNX_LIGHT_NAMESPACE so both names resolve to the same namespace.

Symbol-visibility attribute for the public onnx-light C++ API.

Maps the upstream compatibility macro to onnx-light’s explicit proto ABI annotation. This keeps declarations from vendored ONNX headers visible when lib_onnx_proto uses hidden visibility by default.

Namespace alias so that ONNX C++ code (and consumers such as onnxruntime) that refers to the literal onnx namespace — rather than the ONNX_NAMESPACE macro — resolves to the onnx-light namespace. The standard onnx package lives in namespace onnx; onnx-light uses onnx_light (via ONNX_LIGHT_NAMESPACE), so this alias keeps onnx-light a true drop-in. It is only introduced when the onnx-light namespace differs from onnx.

namespace core
namespace runtime

Functions

std::uint16_t FloatToFloat16Bits(float f) noexcept#
float Float16BitsToFloat(std::uint16_t h) noexcept#
std::uint16_t FloatToBfloat16Bits(float f) noexcept#
float Bfloat16BitsToFloat(std::uint16_t b) noexcept#
std::uint8_t FloatToFloat4E2M1Nibble(float v)#
float Float4E2M1NibbleToFloat(std::uint8_t nibble) noexcept#
std::uint8_t FloatRoundToFloat4E2M1Nibble(float v) noexcept#
std::vector<std::uint8_t> Pack4Bit(const std::vector<std::int8_t> &values)#
std::vector<std::uint8_t> Pack2Bit(const std::vector<std::int8_t> &values)#
Tensor MakeFloat16Tensor(const std::string &name, const Shape &shape, const std::vector<float> &values, RawBufferAllocator *allocator = nullptr)#
Tensor MakeFloat16Scalar(const std::string &name, float value, RawBufferAllocator *allocator = nullptr)#
Tensor MakeBfloat16Tensor(const std::string &name, const Shape &shape, const std::vector<float> &values, RawBufferAllocator *allocator = nullptr)#
Tensor MakeBfloat16Scalar(const std::string &name, float value, RawBufferAllocator *allocator = nullptr)#
Tensor FloatToFloat16Tensor(const std::string &name, const Tensor &f, RawBufferAllocator *allocator = nullptr)#
Tensor RoundToFloat16(const Tensor &f, RawBufferAllocator *allocator = nullptr)#
Tensor Uint16ZeroPoint(std::uint16_t value, RawBufferAllocator *allocator = nullptr)#
Tensor Int16ZeroPoint(std::int16_t value, RawBufferAllocator *allocator = nullptr)#
Tensor MakeFloat8Tensor(DataType dtype, const Shape &shape, const std::vector<float> &values, std::uint8_t (*encode)(float) noexcept, RawBufferAllocator *allocator = nullptr)#
Tensor MakeSubByteTensor(DataType dtype, const Shape &shape, const std::vector<std::int8_t> &values, int bits, RawBufferAllocator *allocator = nullptr)#
Tensor MakeFloat4E2M1Tensor(const Shape &shape, const std::vector<float> &values, RawBufferAllocator *allocator = nullptr)#