• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /**
2  * Copyright 2021 Huawei Technologies Co., Ltd
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 /**
18  * @addtogroup MindSpore
19  * @{
20  *
21  * @brief Provides APIs related to MindSpore Lite model inference.
22  *
23  * @Syscap SystemCapability.Ai.MindSpore
24  * @since 9
25  */
26 
27 /**
28  * @file status.h
29  *
30  * @brief Provides the status codes of MindSpore Lite.
31  * @since 9
32  */
33 #ifndef MINDSPORE_INCLUDE_C_API_STATUS_C_H
34 #define MINDSPORE_INCLUDE_C_API_STATUS_C_H
35 
36 #include <stdint.h>
37 
38 #ifdef __cplusplus
39 extern "C"
40 {
41 #endif
42   /**
43    * @brief Defines MinSpore component codes.
44    *
45    * @since 9
46    */
47   enum OH_AI_CompCode
48   {
49     /** MindSpore Core code */
50     OH_AI_COMPCODE_CORE = 0x00000000u,
51     /** MindSpore Lite code */
52     OH_AI_COMPCODE_LITE = 0xF0000000u,
53   };
54 
55   /**
56    * @brief Defines MindSpore status codes.
57    *
58    * @since 9
59    */
60   typedef enum OH_AI_Status
61   {
62     /** Success */
63     OH_AI_STATUS_SUCCESS = 0,
64 
65     // Core
66     /** MindSpore Core failure */
67     OH_AI_STATUS_CORE_FAILED = OH_AI_COMPCODE_CORE | 0x1,
68 
69     // Lite
70     /** MindSpore Lite error */
71     OH_AI_STATUS_LITE_ERROR = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -1),
72     /** MindSpore Lite null pointer */
73     OH_AI_STATUS_LITE_NULLPTR = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -2),
74     /** MindSpore Lite invalid parameters */
75     OH_AI_STATUS_LITE_PARAM_INVALID = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -3),
76     /** MindSpore Lite no change */
77     OH_AI_STATUS_LITE_NO_CHANGE = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -4),
78     /** MindSpore Lite exit without errors */
79     OH_AI_STATUS_LITE_SUCCESS_EXIT = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -5),
80     /** MindSpore Lite memory allocation failure */
81     OH_AI_STATUS_LITE_MEMORY_FAILED = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -6),
82     /** MindSpore Lite not supported */
83     OH_AI_STATUS_LITE_NOT_SUPPORT = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -7),
84     /** MindSpore Lite thread pool error */
85     OH_AI_STATUS_LITE_THREADPOOL_ERROR = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -8),
86     /** MindSpore Lite uninitialized */
87     OH_AI_STATUS_LITE_UNINITIALIZED_OBJ = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -9),
88 
89     // Executor-related error codes. The value range is **[-100,-200)**.
90     /** MindSpore Lite tensor overflow */
91     OH_AI_STATUS_LITE_OUT_OF_TENSOR_RANGE = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -100),
92     /** MindSpore Lite input tensor error */
93     OH_AI_STATUS_LITE_INPUT_TENSOR_ERROR =
94         OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -101),
95     /** MindSpore Lite reentry error */
96     OH_AI_STATUS_LITE_REENTRANT_ERROR = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -102),
97 
98     // Graph-related error codes. The value range is **[-200,-300)**.
99     /** MindSpore Lite file error */
100     OH_AI_STATUS_LITE_GRAPH_FILE_ERROR = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -200),
101 
102     // Operator-related error codes. The value range is **[-300,-400)**.
103     /** MindSpore Lite operator not found */
104     OH_AI_STATUS_LITE_NOT_FIND_OP = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -300),
105     /** MindSpore Lite invalid operators */
106     OH_AI_STATUS_LITE_INVALID_OP_NAME = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -301),
107     /** MindSpore Lite invalid operator hyperparameters */
108     OH_AI_STATUS_LITE_INVALID_OP_ATTR = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -302),
109     /** MindSpore Lite operator execution failure */
110     OH_AI_STATUS_LITE_OP_EXECUTE_FAILURE =
111         OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -303),
112 
113     // Tensor-related error codes. The value range is **[-400,-500)**.
114     /** MindSpore Lite tensor format error */
115     OH_AI_STATUS_LITE_FORMAT_ERROR = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -400),
116 
117     // Shape inference-related error codes. The value range is **[-500,-600)**.
118     /** MindSpore Lite shape inference error */
119     OH_AI_STATUS_LITE_INFER_ERROR = OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -500),
120     /** MindSpore Lite invalid shape inference */
121     OH_AI_STATUS_LITE_INFER_INVALID =
122         OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -501),
123 
124     // User input-related error codes. The value range is **[-600, 700)**.
125     /** MindSpore Lite invalid input parameters */
126     OH_AI_STATUS_LITE_INPUT_PARAM_INVALID =
127         OH_AI_COMPCODE_LITE | (0x0FFFFFFF & -600),
128 
129   } OH_AI_Status;
130 #ifdef __cplusplus
131 }
132 #endif
133 
134 /** @} */
135 #endif // MINDSPORE_INCLUDE_C_API_STATUS_C_H
136