1 /*---------------------------------------------------------------------------*
2   Project:  Horizon
3   File:     cfg_Result.h
4   Copyright (C)2009 Nintendo Co., Ltd.  All rights reserved.
5   These coded instructions, statements, and computer programs contain
6   proprietary information of Nintendo of America Inc. and/or Nintendo
7   Company Ltd., and are protected by Federal copyright law. They may
8   not be disclosed to third parties or copied or duplicated in any form,
9   in whole or in part, without the prior written consent of Nintendo.
10   $Rev: 33597 $
11  *---------------------------------------------------------------------------
12 
13 
14 */
15 /* Please see man pages for details
16 
17 
18 
19 */
20 
21 #ifndef NN_CFG_CFG_RESULT_H_
22 #define NN_CFG_CFG_RESULT_H_
23 
24 #ifdef __cplusplus
25 
26 #include <nn/Result.h>
27 
28 namespace nn { namespace cfg {
29 
30     /*
31 
32     */
33     enum Description
34     {
35         DESCRIPTION_NOT_VERIFIED                        = 1,        //
36         DESCRIPTION_VERIFICATION_FAILED                 = 2,        //
37         DESCRIPTION_INVALID_NTR_SETTING                 = 3,        //
38         DESCRIPTION_ALREADY_LATEST_VERSION              = 4,        //
39         DESCRIPTION_OBSOLETE_RESULT                     = 1023      //
40     };
41 
42     NN_DEFINE_RESULT_FUNC_LM(MakePermanentResult, Result::LEVEL_PERMANENT, Result::MODULE_NN_CFG);
43 
44 
45     NN_DEFINE_RESULT_CONST(
46         MakeResultOutOfMemory,
47         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_CFG, nn::Result::DESCRIPTION_OUT_OF_MEMORY
48     );
49 
50     NN_DEFINE_RESULT_CONST(
51         MakeResultOutOfRange,
52         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CFG, nn::Result::DESCRIPTION_OUT_OF_RANGE
53     );
54 
55 
56     NN_DEFINE_RESULT_CONST_LM(
57         MakeResultNotInitialized,
58         MakePermanentResult, Result::SUMMARY_INVALID_STATE, nn::Result::DESCRIPTION_NOT_INITIALIZED
59     );
60 
61     NN_DEFINE_RESULT_CONST_LM(
62         MakeResultNotVerified,
63         MakePermanentResult, Result::SUMMARY_INVALID_STATE, DESCRIPTION_NOT_VERIFIED
64     );
65 
66     NN_DEFINE_RESULT_CONST_LM(
67         MakeResultVerificationFailed,
68         MakePermanentResult, Result::SUMMARY_INVALID_STATE, DESCRIPTION_VERIFICATION_FAILED
69     );
70 
71     NN_DEFINE_RESULT_CONST_LM(
72         MakeResultInvalidSize,
73         MakePermanentResult, Result::SUMMARY_WRONG_ARGUMENT, nn::Result::DESCRIPTION_INVALID_SIZE
74     );
75 
76     NN_DEFINE_RESULT_CONST_LM(
77         MakeResultAlreadyExists,
78         MakePermanentResult, Result::SUMMARY_WRONG_ARGUMENT, nn::Result::DESCRIPTION_ALREADY_EXISTS
79     );
80 
81     NN_DEFINE_RESULT_CONST_LM(
82         MakeResultNotFound,
83         MakePermanentResult, Result::SUMMARY_WRONG_ARGUMENT, nn::Result::DESCRIPTION_NOT_FOUND
84     );
85 
86     NN_DEFINE_RESULT_CONST_LM(
87         MakeResultNotAuthorized,
88         MakePermanentResult, Result::SUMMARY_WRONG_ARGUMENT, nn::Result::DESCRIPTION_NOT_AUTHORIZED
89     );
90 
91     NN_DEFINE_RESULT_CONST_LM(
92         MakeResultInvalidNtrSetting,
93         MakePermanentResult, Result::SUMMARY_WRONG_ARGUMENT, DESCRIPTION_INVALID_NTR_SETTING
94     );
95 
96     NN_DEFINE_RESULT_CONST_LM(
97         MakeResultAlreadyInitialized,
98         MakePermanentResult, Result::SUMMARY_INVALID_STATE, nn::Result::DESCRIPTION_ALREADY_INITIALIZED
99     );
100 
101     NN_DEFINE_RESULT_CONST_LM(
102         MakeResultInvalidHandle,
103         MakePermanentResult, Result::SUMMARY_INVALID_STATE, nn::Result::DESCRIPTION_INVALID_HANDLE
104     );
105 
106     NN_DEFINE_RESULT_CONST(
107         MakeResultAlreadyLatestVersion,
108         Result::LEVEL_INFO, Result::SUMMARY_SUCCESS, Result::MODULE_NN_CFG, DESCRIPTION_ALREADY_LATEST_VERSION
109     );
110 }}
111 
112 #endif // __cplusplus
113 
114 #endif /* NN_CFG_CFG_RESULT_H_ */
115