1 /*---------------------------------------------------------------------------*
2   Project:  Horizon
3   File:     os_Result.h
4 
5   Copyright (C)2009-2012 Nintendo Co., Ltd.  All rights reserved.
6 
7   These coded instructions, statements, and computer programs contain
8   proprietary information of Nintendo of America Inc. and/or Nintendo
9   Company Ltd., and are protected by Federal copyright law.  They may
10   not be disclosed to third parties or copied or duplicated in any form,
11   in whole or in part, without the prior written consent of Nintendo.
12 
13   $Rev: 46347 $
14  *---------------------------------------------------------------------------*/
15 
16 /* Please see man pages for details
17 
18 
19 
20 */
21 
22 #ifndef NN_OS_OS_RESULT_H_
23 #define NN_OS_OS_RESULT_H_
24 
25 #ifdef __cplusplus
26 
27 #include <nn/Result.h>
28 
29 namespace nn { namespace os {
30 
31     /* Please see man pages for details
32 
33 
34 
35 */
36     enum Description
37     {
38         DESCRIPTION_FAILED_TO_ALLOCATE_MEMORY           = 1,        //
39         DESCRIPTION_FAILED_TO_ALLOCATE_SHARED_MEMORY    = 2,        //
40         DESCRIPTION_FAILED_TO_ALLOCATE_THREAD           = 3,        //
41         DESCRIPTION_FAILED_TO_ALLOCATE_MUTEX            = 4,        //
42         DESCRIPTION_FAILED_TO_ALLOCATE_SEMAPHORE        = 5,        //
43         DESCRIPTION_FAILED_TO_ALLOCATE_EVENT            = 6,        //
44         DESCRIPTION_FAILED_TO_ALLOCATE_TIMER            = 7,        //
45         DESCRIPTION_FAILED_TO_ALLOCATE_PORT             = 8,        //
46         DESCRIPTION_FAILED_TO_ALLOCATE_SESSION          = 9,        //
47         DESCRIPTION_EXCEED_MEMORY_LIMIT                 = 10,       //
48         DESCRIPTION_EXCEED_SHARED_MEMORY_LIMIT          = 11,       //
49         DESCRIPTION_EXCEED_THREAD_LIMIT                 = 12,       //
50         DESCRIPTION_EXCEED_MUTEX_LIMIT                  = 13,       //
51         DESCRIPTION_EXCEED_SEMAPHORE_LIMIT              = 14,       //
52         DESCRIPTION_EXCEED_EVENT_LIMIT                  = 15,       //
53         DESCRIPTION_EXCEED_TIMER_LIMIT                  = 16,       //
54         DESCRIPTION_EXCEED_PORT_LIMIT                   = 17,       //
55         DESCRIPTION_EXCEED_SESSION_LIMIT                = 18,       //
56         DESCRIPTION_MAX_HANDLE                          = 19,       //
57         DESCRIPTION_INACCESSIBLE_PAGE                   = 20,       //
58         DESCRIPTION_ABANDONED                           = 21,       //
59         // 22 Eliminated
60         // 23 Eliminated
61         DESCRIPTION_INVALID_PROCESS_ID                  = 24,       //
62         DESCRIPTION_INVALID_THREAD_ID                   = 25,       //
63         DESCRIPTION_SESSION_CLOSED                      = 26,       //
64         DESCRIPTION_INVALID_MESSAGE                     = 28,       //
65         DESCRIPTION_MANUAL_RESET_EVENT_REQUIRED         = 29,       //
66         DESCRIPTION_TOO_LONG_NAME                       = 30,       //
67         DESCRIPTION_NOT_OWNED                           = 31,       //
68         DESCRIPTION_PROCESS_TERMINATED                  = 32,       //
69         DESCRIPTION_INVALID_TLS_INDEX                   = 33,       //
70         DESCRIPTION_NO_RUNNABLE_PROCESSOR               = 34,       //
71         DESCRIPTION_NO_SESSION                          = 35,       //
72         DESCRIPTION_USING_REGION                        = 36,       //
73         DESCRIPTION_ALREADY_RECEIVED                    = 37,       //
74         DESCRIPTION_CANCEL_REQUESTD                     = 38,       //
75         DESCRIPTION_NOT_RECEIVED                        = 39,       //
76         // 40 Eliminated
77         DESCRIPTION_DELIVER_ARG_NOT_READY               = 41,       //
78         DESCRIPTION_DELIVER_ARG_OVER_SIZE               = 42,       //
79         DESCRIPTION_INVALID_DELIVER_ARG                 = 43,       //
80         DESCRIPTION_I_AM_OWNER                          = 44,       //
81         DESCRIPTION_EXCEEDS_SHARED_LIMIT                = 45,
82         DESCRIPTION_UNEXPECTED_PERMISSION               = 46,
83         DESCRIPTION_INVALID_TAG                         = 47,
84         DESCRIPTION_INVALID_FORMAT                      = 48,
85         DESCRIPTION_OTHER_HANDLE                        = 49,
86         DESCRIPTION_FAILED_TO_ALLOCATE_ADDRESS_ARBITER  = 50,
87         DESCRIPTION_EXCEED_ADDRESS_ARBITER_LIMIT        = 51,
88         DESCRIPTION_OVER_PORT_CAPACITY                  = 52,
89         DESCRIPTION_NOT_MAPPED                          = 53,
90         DESCRIPTION_BUFFER_TOO_FLAGMENTED               = 54,
91         DESCRIPTION_NO_ADDRESS_SPACE                    = 55,
92         DESCRIPTION_EXCEED_TLS_LIMIT                    = 56,
93         DESCRIPTION_CANT_START                          = 57,
94         DESCRIPTION_LOCKED                              = 58,
95 
96         DESCRIPTION_OBSOLETE_RESULT                     = 1023      //
97     };
98 
99     NN_DEFINE_RESULT_FUNC_LM(
100         MakePermanentResult,
101         Result::LEVEL_PERMANENT, Result::MODULE_NN_FND
102     );
103 
104     NN_DEFINE_RESULT_CONST(
105         ResultNoRunnableProcessor,
106         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_OS, DESCRIPTION_NO_RUNNABLE_PROCESSOR
107     );
108 
109     NN_DEFINE_RESULT_CONST(
110         ResultNoSession,
111         Result::LEVEL_PERMANENT, Result::SUMMARY_WOULD_BLOCK, Result::MODULE_NN_OS, DESCRIPTION_NO_SESSION
112     );
113 
114     NN_DEFINE_RESULT_CONST(
115         ResultAlreadyInitialized,
116         Result::LEVEL_INFO, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_ALREADY_INITIALIZED
117     );
118 
119     NN_DEFINE_RESULT_CONST(
120         ResultNotInitialized,
121         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_NOT_INITIALIZED
122     );
123 
124     NN_DEFINE_RESULT_CONST_LM(
125         ResultInvalidTLSIndex,
126         MakePermanentResult, Result::SUMMARY_INVALID_ARGUMENT, DESCRIPTION_INVALID_TLS_INDEX
127     );
128 
129     NN_DEFINE_RESULT_CONST_LM(
130         ResultOutOfMemory,
131         MakePermanentResult, Result::SUMMARY_OUT_OF_RESOURCE, nn::Result::DESCRIPTION_OUT_OF_MEMORY
132     );
133 
134     NN_DEFINE_RESULT_FUNC_LSM(
135         MakeResultInvalidArgument,
136         Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_OS
137     );
138 
139     NN_DEFINE_RESULT_FUNC_LSM(
140         MakeResultWrongArgument,
141         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT, Result::MODULE_NN_OS
142     );
143 
144     NN_DEFINE_RESULT_CONST(
145         ResultNotImplemented,
146         Result::LEVEL_USAGE, Result::SUMMARY_NOT_SUPPORTED, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_NOT_IMPLEMENTED
147     );
148 
149     NN_DEFINE_RESULT_CONST_LM(
150         ResultResourceLimitAlreadyAttached,
151         MakePermanentResult, Result::SUMMARY_INVALID_STATE, nn::Result::DESCRIPTION_ALREADY_INITIALIZED
152     );
153 
154     NN_DEFINE_RESULT_CONST_LM(
155         ResultMaxHandle,
156         MakePermanentResult, Result::SUMMARY_OUT_OF_RESOURCE, DESCRIPTION_MAX_HANDLE
157     );
158 
159     NN_DEFINE_RESULT_CONST_LM(
160         ResultResourceLimitNotAttached,
161         MakePermanentResult, Result::SUMMARY_INVALID_STATE, nn::Result::DESCRIPTION_NOT_INITIALIZED
162     );
163 
164     NN_DEFINE_RESULT_CONST(
165         ResultMisalignedAddress,
166         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_MISALIGNED_ADDRESS
167     );
168 
169     NN_DEFINE_RESULT_CONST(
170         ResultMisalignedSize,
171         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_MISALIGNED_SIZE
172     );
173 
174     NN_DEFINE_RESULT_CONST(
175         ResultInvalidAddress,
176         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_INVALID_ADDRESS
177     );
178 
179     NN_DEFINE_RESULT_CONST(
180         ResultInvalidCombination,
181         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_INVALID_COMBINATION
182     );
183 
184     NN_DEFINE_RESULT_CONST(
185         ResultBusy,
186         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_BUSY
187     );
188 
189     NN_DEFINE_RESULT_CONST(
190         ResultTooLongName,
191         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_OS, DESCRIPTION_TOO_LONG_NAME
192     );
193 
194     NN_DEFINE_RESULT_CONST(
195         ResultInaccessiblePage,
196         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT, Result::MODULE_NN_OS, DESCRIPTION_INACCESSIBLE_PAGE
197     );
198 
199     NN_DEFINE_RESULT_CONST(
200         ResultNotFound,
201         Result::LEVEL_PERMANENT, Result::SUMMARY_NOT_FOUND, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_NOT_FOUND
202     );
203 
204     NN_DEFINE_RESULT_CONST(
205         ResultInvalidHandle,
206         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_INVALID_HANDLE
207     );
208 
209     NN_DEFINE_RESULT_CONST(
210         ResultInvalidThreadId,
211         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT, Result::MODULE_NN_OS, DESCRIPTION_INVALID_THREAD_ID
212     );
213 
214     NN_DEFINE_RESULT_CONST(
215         ResultNoData,
216         Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_NO_DATA
217     );
218 
219     NN_DEFINE_RESULT_CONST(
220         ResultOutOfRange,
221         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_OUT_OF_RANGE
222     );
223 
224     NN_DEFINE_RESULT_CONST(
225         ResultInvalidProcessId,
226         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT, Result::MODULE_NN_OS, DESCRIPTION_INVALID_PROCESS_ID
227     );
228 
229     NN_DEFINE_RESULT_CONST(
230         ResultAlreadyExists,
231         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_ALREADY_EXISTS
232     );
233 
234     NN_DEFINE_RESULT_CONST(
235         ResultSessionClosed,
236         Result::LEVEL_STATUS, Result::SUMMARY_CANCELLED, Result::MODULE_NN_OS, DESCRIPTION_SESSION_CLOSED
237     );
238 
239     NN_DEFINE_RESULT_CONST(
240         ResultNotAuthorized,
241         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_NOT_AUTHORIZED
242     );
243 
244     NN_DEFINE_RESULT_CONST(
245         ResultDeliverArgNotReady,
246         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_OS, DESCRIPTION_DELIVER_ARG_NOT_READY
247     );
248 
249     NN_DEFINE_RESULT_CONST(
250         ResultDeliverArgOverSize,
251         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_OS, DESCRIPTION_DELIVER_ARG_OVER_SIZE
252     );
253 
254     NN_DEFINE_RESULT_CONST(
255         ResultInvalidDeliverArg,
256         Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_OS, DESCRIPTION_INVALID_DELIVER_ARG
257     );
258 
259     NN_DEFINE_RESULT_CONST(
260         ResultIAmOwner,
261         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT, Result::MODULE_NN_OS, DESCRIPTION_I_AM_OWNER
262     );
263 
264     NN_DEFINE_RESULT_CONST(
265         ResultExceedsSharedLimit,
266         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT, Result::MODULE_NN_OS, DESCRIPTION_EXCEEDS_SHARED_LIMIT
267     );
268 
269     NN_DEFINE_RESULT_CONST(
270         ResultUnexpectedPermission,
271         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT, Result::MODULE_NN_OS, DESCRIPTION_UNEXPECTED_PERMISSION
272     );
273 
274     NN_DEFINE_RESULT_CONST(
275         ResultInvalidTag,
276         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT, Result::MODULE_NN_OS, DESCRIPTION_INVALID_TAG
277     );
278 
279     NN_DEFINE_RESULT_CONST(
280         ResultInvalidFormat,
281         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT, Result::MODULE_NN_OS, DESCRIPTION_INVALID_FORMAT
282     );
283 
284     NN_DEFINE_RESULT_CONST(
285         ResultOtherHandle,
286         Result::LEVEL_PERMANENT, Result::SUMMARY_WRONG_ARGUMENT, Result::MODULE_NN_OS, DESCRIPTION_OTHER_HANDLE
287     );
288 
289 
290 
291     NN_DEFINE_RESULT_CONST(
292         ResultFailedToAllocateMemory,
293         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_FAILED_TO_ALLOCATE_MEMORY
294     );
295 
296     NN_DEFINE_RESULT_CONST(
297         ResultFailedToAllocateSharedMemory,
298         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_FAILED_TO_ALLOCATE_SHARED_MEMORY
299     );
300 
301     NN_DEFINE_RESULT_CONST(
302         ResultFailedToAllocateThread,
303         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_FAILED_TO_ALLOCATE_THREAD
304     );
305 
306     NN_DEFINE_RESULT_CONST(
307         ResultFailedToAllocateMutex,
308         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_FAILED_TO_ALLOCATE_MUTEX
309     );
310 
311     NN_DEFINE_RESULT_CONST(
312         ResultFailedToAllocateSemaphore,
313         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_FAILED_TO_ALLOCATE_SEMAPHORE
314     );
315 
316     NN_DEFINE_RESULT_CONST(
317         ResultFailedToAllocateEvent,
318         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_FAILED_TO_ALLOCATE_EVENT
319     );
320 
321     NN_DEFINE_RESULT_CONST(
322         ResultFailedToAllocateTimer,
323         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_FAILED_TO_ALLOCATE_TIMER
324     );
325 
326     NN_DEFINE_RESULT_CONST(
327         ResultFailedToAllocatePort,
328         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_FAILED_TO_ALLOCATE_PORT
329     );
330 
331     NN_DEFINE_RESULT_CONST(
332         ResultFailedToAllocateSession,
333         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_FAILED_TO_ALLOCATE_SESSION
334     );
335 
336     NN_DEFINE_RESULT_CONST(
337         ResultExceedMemoryLimit,
338         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_EXCEED_MEMORY_LIMIT
339     );
340 
341     NN_DEFINE_RESULT_CONST(
342         ResultExceedSharedMemoryLimit,
343         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_EXCEED_SHARED_MEMORY_LIMIT
344     );
345 
346     NN_DEFINE_RESULT_CONST(
347         ResultExceedThreadLimit,
348         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_EXCEED_THREAD_LIMIT
349     );
350 
351     NN_DEFINE_RESULT_CONST(
352         ResultExceedMutexLimit,
353         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_EXCEED_MUTEX_LIMIT
354     );
355 
356     NN_DEFINE_RESULT_CONST(
357         ResultExceedSemaphoreLimit,
358         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_EXCEED_SEMAPHORE_LIMIT
359     );
360 
361     NN_DEFINE_RESULT_CONST(
362         ResultExceedEventLimit,
363         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_EXCEED_EVENT_LIMIT
364     );
365 
366     NN_DEFINE_RESULT_CONST(
367         ResultExceedTimerLimit,
368         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_EXCEED_TIMER_LIMIT
369     );
370 
371     NN_DEFINE_RESULT_CONST(
372         ResultExceedPortLimit,
373         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_EXCEED_PORT_LIMIT
374     );
375 
376     NN_DEFINE_RESULT_CONST(
377         ResultExceedSessionLimit,
378         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_EXCEED_SESSION_LIMIT
379     );
380 
381     NN_DEFINE_RESULT_CONST(
382         ResultFailedToAllocateAddressArbiter,
383         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_FAILED_TO_ALLOCATE_ADDRESS_ARBITER
384     );
385 
386     NN_DEFINE_RESULT_CONST(
387         ResultExceedAddressArbiterLimit,
388         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_EXCEED_ADDRESS_ARBITER_LIMIT
389     );
390 
391     NN_DEFINE_RESULT_CONST(
392         ResultExceedTlsLimit,
393         Result::LEVEL_PERMANENT, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_EXCEED_TLS_LIMIT
394     );
395 
396     NN_DEFINE_RESULT_CONST(
397         ResultOverPortCapacity,
398         Result::LEVEL_TEMPORARY, Result::SUMMARY_WOULD_BLOCK, Result::MODULE_NN_OS, DESCRIPTION_OVER_PORT_CAPACITY
399     );
400 
401     NN_DEFINE_RESULT_CONST(
402         ResultInvalidAddressState,
403         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_OS, nn::Result::DESCRIPTION_INVALID_ADDRESS
404     );
405 
406     NN_DEFINE_RESULT_CONST(
407         ResultNotMapped,
408         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_OS, DESCRIPTION_NOT_MAPPED
409     );
410 
411     NN_DEFINE_RESULT_CONST(
412         ResultBufferTooFragmented,
413         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_OS, DESCRIPTION_BUFFER_TOO_FLAGMENTED
414     );
415 
416     NN_DEFINE_RESULT_CONST(
417         ResultNoAddressSpace,
418         Result::LEVEL_PERMANENT, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_OS, DESCRIPTION_NO_ADDRESS_SPACE
419     );
420 
421 
422     NN_DEFINE_RESULT_CONST(
423         ResultNotSupported,
424         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_OS, Result::DESCRIPTION_NOT_IMPLEMENTED
425     );
426 
427     NN_DEFINE_RESULT_CONST(
428         ResultCantStart,
429         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_OS, DESCRIPTION_CANT_START
430     );
431 
432     NN_DEFINE_RESULT_CONST(
433         ResultLocked,
434         Result::LEVEL_TEMPORARY, Result::SUMMARY_WOULD_BLOCK, Result::MODULE_NN_OS, DESCRIPTION_LOCKED
435     );
436 }}
437 
438 #endif // __cplusplus
439 
440 #endif /* NN_OS_OS_RESULT_H_ */
441