Source code

Revision control

Copy as Markdown

Other Tools

// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
#pragma once
/** \addtogroup Global
* ONNX Runtime C API
* @{
*/
#ifdef __cplusplus
extern "C" {
#endif
/** \brief Error codes reported by ONNX Runtime.
*
* The error code associated with an ::OrtStatus.
*/
typedef enum OrtErrorCode {
/**
* Success. No error occurred.
*/
ORT_OK,
/**
* Generic failure that does not map to a more specific error code. Consult the error message for details.
*/
ORT_FAIL,
/**
* A caller-supplied argument was invalid (e.g. NULL pointer, out-of-range value, mismatched shape/rank, or bad
* configuration).
*/
ORT_INVALID_ARGUMENT,
/**
* A required file (such as a model file) does not exist.
*/
ORT_NO_SUCHFILE,
/**
* Legacy/unused but retained for ABI compatibility. Historically returned when a model could not be found by name in
* the ONNX Runtime Server (removed in 2022).
*/
ORT_NO_MODEL,
/**
* A hardware accelerator or backend engine reported a failure (e.g. a device crash or other device-level error).
*/
ORT_ENGINE_ERROR,
/**
* A generic runtime exception was caught. The error message is the primary source of detail.
*/
ORT_RUNTIME_EXCEPTION,
/**
* Protobuf parsing or serialization failed.
*/
ORT_INVALID_PROTOBUF,
/**
* Invalid session state for the requested operation. Despite the name, this code does not mean "success, model
* loaded"; it is returned when the session is in the wrong state for the requested call (e.g. a model is already
* loaded, the session is already initialized, or no model has been loaded yet). The name is historical and is
* retained for ABI compatibility; consult the error message for the specific condition.
*/
ORT_MODEL_LOADED,
/**
* The requested functionality is not implemented in this build.
*/
ORT_NOT_IMPLEMENTED,
/**
* The model graph is structurally invalid (e.g. recursive function definitions, invalid tensor dimensions, or
* malformed nodes).
*/
ORT_INVALID_GRAPH,
/**
* An execution provider reported a generic failure.
*/
ORT_EP_FAIL,
/**
* Model loading or session initialization was canceled at the caller's request.
*/
ORT_MODEL_LOAD_CANCELED,
/**
* The model requires compilation by an execution provider, but compilation was disabled via session options.
*/
ORT_MODEL_REQUIRES_COMPILATION,
/**
* A requested resource could not be found.
*/
ORT_NOT_FOUND,
/**
* The execution provider's hardware device has been reset.
*
* The caller should stop using the existing session (and release it) and create a new session.
*/
ORT_DEVICE_RESET,
} OrtErrorCode;
#ifdef __cplusplus
}
#endif
/// @}