temporary_buffer.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
namespace detail
template<typename T>
struct TemporaryTypedBuffer#
#include <temporary_buffer.h>

Public Functions

inline TemporaryTypedBuffer(std::size_t count, RawBufferAllocator *buffer_allocator, const char *name)#
TemporaryTypedBuffer(const TemporaryTypedBuffer&) = delete#
TemporaryTypedBuffer &operator=(const TemporaryTypedBuffer&) = delete#
inline ~TemporaryTypedBuffer()#
inline T *data()#

Returns a pointer to the temporary storage.

The constructor has already completed successfully, so either the allocator-backed buffer or the fallback vector storage is available.

Returns: Pointer to the temporary storage.

inline void CopyFromBytes(const std::uint8_t *bytes)#

Copies size elements from raw input bytes into the temporary storage.

Args: bytes: Raw input bytes to copy from.

Public Members

std::vector<T, DefaultInitAllocator<T>> fallback#
RawBufferAllocator *allocator = nullptr#
RawBuffer *buffer = nullptr#
std::size_t size = 0#