RTEMS
status.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: BSD-2-Clause */
2 
12 /*
13  * Copyright (C) 2014, 2020 embedded brains GmbH (http://www.embedded-brains.de)
14  * Copyright (C) 1989, 2008 On-Line Applications Research Corporation (OAR)
15  *
16  * Redistribution and use in source and binary forms, with or without
17  * modification, are permitted provided that the following conditions
18  * are met:
19  * 1. Redistributions of source code must retain the above copyright
20  * notice, this list of conditions and the following disclaimer.
21  * 2. Redistributions in binary form must reproduce the above copyright
22  * notice, this list of conditions and the following disclaimer in the
23  * documentation and/or other materials provided with the distribution.
24  *
25  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
29  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35  * POSSIBILITY OF SUCH DAMAGE.
36  */
37 
38 /*
39  * Do not manually edit this file. It is part of the RTEMS quality process
40  * and was automatically generated.
41  *
42  * If you find something that needs to be fixed or worded better please
43  * post a report to an RTEMS mailing list or raise a bug report:
44  *
45  * https://docs.rtems.org/branches/master/user/support/bugs.html
46  *
47  * For information on updating and regenerating please refer to:
48  *
49  * https://docs.rtems.org/branches/master/eng/req/howto.html
50  */
51 
52 /* Generated from spec:/rtems/status/if/header */
53 
54 #ifndef _RTEMS_RTEMS_STATUS_H
55 #define _RTEMS_RTEMS_STATUS_H
56 
57 #include <stdbool.h>
58 
59 #ifdef __cplusplus
60 extern "C" {
61 #endif
62 
63 /* Generated from spec:/rtems/status/if/group */
64 
74 /* Generated from spec:/rtems/status/if/code */
75 
82 typedef enum {
87 
92 
97 
102 
107 
113 
118 
124 
129 
134 
139 
144 
150 
155 
161 
166 
172 
178 
184 
190 
195 
201 
206 
212 
221 
227 
233 
238 
245 
257 
258 /* Generated from spec:/rtems/status/if/code-to-errno */
259 
298 
299 /* Generated from spec:/rtems/status/if/first */
300 
307 #define RTEMS_STATUS_CODES_FIRST RTEMS_SUCCESSFUL
308 
309 /* Generated from spec:/rtems/status/if/is-equal */
310 
321 static inline bool rtems_are_statuses_equal(
322  rtems_status_code left_status_code,
323  rtems_status_code right_status_code
324 )
325 {
326  return left_status_code == right_status_code;
327 }
328 
329 /* Generated from spec:/rtems/status/if/is-successful */
330 
339 static inline bool rtems_is_status_successful( rtems_status_code status_code )
340 {
341  return status_code == RTEMS_SUCCESSFUL;
342 }
343 
344 /* Generated from spec:/rtems/status/if/last */
345 
352 #define RTEMS_STATUS_CODES_LAST RTEMS_PROXY_BLOCKING
353 
354 /* Generated from spec:/rtems/status/if/text */
355 
369 const char *rtems_status_text( rtems_status_code status_code );
370 
371 #ifdef __cplusplus
372 }
373 #endif
374 
375 #endif /* _RTEMS_RTEMS_STATUS_H */
This status code indicates you have attempted to create too many instances of a particular object cla...
Definition: status.h:112
This status code indicates an driver IO error.
Definition: status.h:237
This status code is used internally by the implementation when performing operations on behalf of rem...
Definition: status.h:255
This status code indicates that the thread was already suspended.
Definition: status.h:165
This status code indicates that an invalid thread priority was provided.
Definition: status.h:189
This status code indicates that the object still had resources in use.
Definition: status.h:149
This status code indicates that a thread exited.
Definition: status.h:91
This status code indicates that the request was not satisfied.
Definition: status.h:154
static bool rtems_are_statuses_equal(rtems_status_code left_status_code, rtems_status_code right_status_code)
Returns true, if the left hand side status code is equal to the right hand side status code...
Definition: status.h:321
This status code indicates that a specified number was invalid.
Definition: status.h:138
This status code indicates that multiprocessing was not configured.
Definition: status.h:96
This status code indicates the directive or requested portion of the directive is not implemented...
Definition: status.h:220
int rtems_status_code_to_errno(rtems_status_code status_code)
Maps the specified RTEMS status code to a POSIX error number.
This status code indicates successful completion.
Definition: status.h:86
rtems_status_code
This enumeration provides status codes for directives of the Classic API.
Definition: status.h:82
This status code indicates that an object was in wrong state for the requested operation.
Definition: status.h:160
This status code indicates that a specified date/time was invalid.
Definition: status.h:194
const char * rtems_status_text(rtems_status_code status_code)
Returns a text describing the specified status code.
Definition: statustext.c:60
This status code indicates that a specified node identifier was invalid.
Definition: status.h:200
This status code indicates that a specified address was invalid.
Definition: status.h:133
This status code indicates that the operation should not be called from this execution environment...
Definition: status.h:183
This status code indicates that the item has not been initialized.
Definition: status.h:143
This status code indicates that an object identifier was invalid.
Definition: status.h:106
This status code indicates that the caller was not the owner of the resource.
Definition: status.h:211
This status code indicates that the directive was not configured.
Definition: status.h:205
This status code indicates that a blocking directive timed out.
Definition: status.h:117
This status code indicates that the operation was illegal on a remote object.
Definition: status.h:177
This status code indicates the object was deleted while the thread was blocked waiting.
Definition: status.h:123
static bool rtems_is_status_successful(rtems_status_code status_code)
Returns true, if the status code is equal to RTEMS_SUCCESSFUL, otherwise returns false.
Definition: status.h:339
This status code indicates that the directive attempted to allocate memory but was unable to do so...
Definition: status.h:232
This status code indicates that an internal RTEMS inconsistency was detected.
Definition: status.h:226
This status code is used internally by the implementation to indicate a blocking device driver call h...
Definition: status.h:244
This status code indicates that an object name was invalid.
Definition: status.h:101
This status code indicates that the operation was illegal on the calling thread.
Definition: status.h:171
This status code indicates that a specified size was invalid.
Definition: status.h:128