1 /*---------------------------------------------------------------------------*
2 
3   Copyright (C) Nintendo.  All rights reserved.
4 
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 
11  *---------------------------------------------------------------------------*/
12 
13 #ifndef NN_NGC_CAFE_NGC_RESULT_H_
14 #define NN_NGC_CAFE_NGC_RESULT_H_
15 
16 #include <nn/Result.h>
17 #include <nn/Modules.h>
18 
19 
20 /*! @file
21     @brief  Profanity Filter (NGC) library <tt>Result</tt> classes.
22 */
23 
24 
25 namespace nn {
26 namespace ngc {
27 namespace Cafe {
28 
29 /*!
30     @ingroup  nn_ngc
31     @defgroup nn_ngc_result  Profanity Filter (NGC) Results
32     @brief  <tt>Result</tt> classes used in the Profanity Filter (NGC) library.
33     @{
34 */
35 
36 
37 
38     /*! @private
39     @brief  <tt>Result</tt> code details.
40 */
41     enum Description
42     {
43         DESCRIPTION_NOT_INITIALIZED          = 1,       //!< Not initialized.
44         DESCRIPTION_ALREADY_INITIALIZED      = 2,       //!< Already initialized.
45         DESCRIPTION_INVALID_POINTER          = 3,       //!< Invalid pointer.
46         DESCRIPTION_INVALID_SIZE             = 4,       //!< The size is invalid.
47         DESCRIPTION_MOUNT_CONTENTS_FAILED    = 5,       //!< Failed to mount content.
48         DESCRIPTION_OPEN_CONTENTS_FAILED     = 6,       //!< Failed to open content.
49         DESCRIPTION_READ_CONTENTS_FAILED     = 7,       //!< Failed to read content.
50         DESCRIPTION_MAX
51     };
52 
53 /*!
54     @class  nn::ngc::Cafe::ResultNotInitialized
55     @brief  Indicates that the library is not initialized.
56 */
57     NN_DEFINE_RESULT_CONST(
58         ResultNotInitialized,
59         nn::Result::LEVEL_USAGE, nn::Result::SUMMARY_INVALID_STATE, nn::RESULT_MODULE_NN_NGC, DESCRIPTION_NOT_INITIALIZED
60     );
61 
62 /*! @private
63     @class  nn::ngc::Cafe::ResultAlreadyInitialized
64     @brief  Indicates that the library is already initialized.
65 */
66     NN_DEFINE_RESULT_CONST(
67         ResultAlreadyInitialized,
68         nn::Result::LEVEL_USAGE, nn::Result::SUMMARY_INVALID_STATE, nn::RESULT_MODULE_NN_NGC, DESCRIPTION_ALREADY_INITIALIZED
69     );
70 
71 /*!
72     @class  nn::ngc::Cafe::ResultInvalidPointer
73     @brief  Indicates that the specified pointer is invalid.
74 */
75     NN_DEFINE_RESULT_CONST(
76         ResultInvalidPointer,
77         nn::Result::LEVEL_USAGE, nn::Result::SUMMARY_INVALID_ARGUMENT, nn::RESULT_MODULE_NN_NGC, DESCRIPTION_INVALID_POINTER
78     );
79 
80 /*!
81     @class  nn::ngc::Cafe::ResultInvalidSize
82     @brief  Indicates that the specified size is invalid.
83 */
84     NN_DEFINE_RESULT_CONST(
85         ResultInvalidSize,
86         nn::Result::LEVEL_USAGE, nn::Result::SUMMARY_INVALID_ARGUMENT, nn::RESULT_MODULE_NN_NGC, DESCRIPTION_INVALID_SIZE
87     );
88 
89 /*!
90     @class  nn::ngc::Cafe::ResultMountContentsFailed
91     @brief  Indicates that content mounting failed.
92 */
93     NN_DEFINE_RESULT_CONST(
94         ResultMountContentsFailed,
95         nn::Result::LEVEL_FATAL, nn::Result::SUMMARY_CANCELLED, nn::RESULT_MODULE_NN_NGC, DESCRIPTION_MOUNT_CONTENTS_FAILED
96     );
97 
98 /*! @private
99     @class  nn::ngc::Cafe::ResultOpenContentsFailed
100     @brief  Indicates that opening the content failed.
101 */
102     NN_DEFINE_RESULT_CONST(
103         ResultOpenContentsFailed,
104         nn::Result::LEVEL_FATAL, nn::Result::SUMMARY_CANCELLED, nn::RESULT_MODULE_NN_NGC, DESCRIPTION_OPEN_CONTENTS_FAILED
105     );
106 
107 /*!
108     @class  nn::ngc::Cafe::ResultReadContentsFailed
109     @brief  Indicates that loading the content failed.
110 */
111     NN_DEFINE_RESULT_CONST(
112         ResultReadContentsFailed,
113         nn::Result::LEVEL_FATAL, nn::Result::SUMMARY_CANCELLED, nn::RESULT_MODULE_NN_NGC, DESCRIPTION_READ_CONTENTS_FAILED
114     );
115 
116 
117 /*!
118   @}
119 */
120 
121 } // namespace Cafe
122 } // namespace ngc
123 } // namespace nn
124 
125 #endif //NN_NGC_CAFE_NGC_RESULT_H_
126