1 /*---------------------------------------------------------------------------*
2   Project:  Horizon
3   File:     cec_result.h
4 
5   Copyright (C)2009 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: 35579 $
14  *---------------------------------------------------------------------------*/
15 #ifndef __CEC_RESULT_H__
16 #define __CEC_RESULT_H__
17 
18 #include <nn/Result.h>
19 
20 namespace nn {
21 namespace cec {
22 
23 enum ResultDescription
24 {
25     DESCRIPTION_UNKNOWN = 100,
26 
27     DESCRIPTION_BOXSIZE_FULL,
28     DESCRIPTION_BOXMESSNUM_FULL,
29     DESCRIPTION_BOXNUM_FULL,
30     DESCRIPTION_BOX_ALREADY_EXISTS,
31 
32     DESCRIPTION_MESS_TOO_LARGE,
33     DESCRIPTION_INVALID_DATA,
34     DESCRIPTION_INVALID_ID,
35 
36     DESCRIPTION_NOT_AGREE_EULA,                 //!< EULA非同意
37     DESCRIPTION_PARENTAL_CONTROL_CEC,                 //!< ParentalControl非同意
38 
39 
40     DESCRIPTION_END
41 }
42 ;
43 
44 NN_DEFINE_RESULT_CONST(
45         ResultAlreadyInitialized,
46         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_CEC, Result::DESCRIPTION_ALREADY_INITIALIZED
47     );
48 NN_DEFINE_RESULT_CONST(
49         MakeResultAlreadyInitialized,
50         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_CEC, Result::DESCRIPTION_ALREADY_INITIALIZED
51     );
52 
53 
54 /*!
55     :category   Result
56     @class nn::cec::ResultNotAgreeEula
57     @brief EULAに同意されていません
58 */
59 NN_DEFINE_RESULT_CONST(
60         ResultNotAgreeEula,
61         Result::LEVEL_USAGE,  Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_CEC, DESCRIPTION_NOT_AGREE_EULA );
62 NN_DEFINE_RESULT_CONST(
63         MakeResultNotAgreeEula,
64         Result::LEVEL_USAGE,  Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_CEC, DESCRIPTION_NOT_AGREE_EULA );
65 
66 
67 /*!
68     :category   Result
69     @class nn::cec::ResultParentalControlCec
70     @brief ParentalControlによって動作が制限されています。
71 */
72 NN_DEFINE_RESULT_CONST(
73         ResultParentalControlCec,
74         Result::LEVEL_USAGE,  Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_CEC, DESCRIPTION_PARENTAL_CONTROL_CEC );
75 NN_DEFINE_RESULT_CONST(
76         MakeResultParentalControlCec,
77         Result::LEVEL_USAGE,  Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_CEC, DESCRIPTION_PARENTAL_CONTROL_CEC );
78 
79 
80 /*!
81     :category   Result
82     @class nn::cec::ResultNotInitialized
83     @brief 初期化されていません。
84 */
85 NN_DEFINE_RESULT_CONST(
86         ResultNotInitialized,
87         Result::LEVEL_USAGE,  Result::SUMMARY_NOT_FOUND, Result::MODULE_NN_CEC, Result::DESCRIPTION_NOT_INITIALIZED );
88 NN_DEFINE_RESULT_CONST(
89         MakeResultNotInitialized,
90         Result::LEVEL_USAGE,  Result::SUMMARY_NOT_FOUND, Result::MODULE_NN_CEC, Result::DESCRIPTION_NOT_INITIALIZED );
91 
92 
93 /*!
94     :category   Result
95     @class nn::cec::ResultAlreadyDone
96     @brief 処理済です。
97 */
98 NN_DEFINE_RESULT_CONST(
99         ResultAlreadyDone,
100         Result::LEVEL_USAGE,  Result::SUMMARY_NOTHING_HAPPENED, Result::MODULE_NN_CEC, Result::DESCRIPTION_ALREADY_DONE );
101 NN_DEFINE_RESULT_CONST(
102         MakeResultAlreadyDone,
103         Result::LEVEL_USAGE,  Result::SUMMARY_NOTHING_HAPPENED, Result::MODULE_NN_CEC, Result::DESCRIPTION_ALREADY_DONE );
104 
105 /*!
106 :private
107     :category   Result
108     @class nn::cec::ResultInvalidState
109     @brief 無効な内部ステートです。
110 */
111 NN_DEFINE_RESULT_CONST(
112         ResultInvalidState,
113         Result::LEVEL_USAGE,  Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_CEC, Result::DESCRIPTION_INVALID_COMBINATION );
114 NN_DEFINE_RESULT_CONST(
115         MakeResultInvalidState,
116         Result::LEVEL_USAGE,  Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_CEC, Result::DESCRIPTION_INVALID_COMBINATION );
117 
118 
119 /*!
120     :category   Result
121     @class nn::cec::ResultInvalidCombination
122     @brief 引数の組み合わせが不正です。
123 */
124 NN_DEFINE_RESULT_CONST(
125         ResultInvalidCombination,
126         Result::LEVEL_USAGE,  Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, Result::DESCRIPTION_INVALID_COMBINATION );
127 NN_DEFINE_RESULT_CONST(
128         MakeResultInvalidCombination,
129         Result::LEVEL_USAGE,  Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, Result::DESCRIPTION_INVALID_COMBINATION );
130 
131 /*!
132     :category   Result
133     @class nn::cec::ResultInvalidArgument
134     @brief 引数が不正です。
135 */
136 NN_DEFINE_RESULT_CONST(
137         ResultInvalidArgument,
138         Result::LEVEL_USAGE,  Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, Result::DESCRIPTION_OUT_OF_RANGE );
139 NN_DEFINE_RESULT_CONST(
140         MakeResultInvalidArgument,
141         Result::LEVEL_USAGE,  Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, Result::DESCRIPTION_OUT_OF_RANGE );
142 /*!
143     :category   Result
144     @class nn::cec::ResultBufferFull
145     @brief メモリの確保に失敗しました。
146 */
147 NN_DEFINE_RESULT_CONST(
148         ResultBufferFull,
149         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_CEC, Result::DESCRIPTION_OUT_OF_MEMORY );
150 
151 NN_DEFINE_RESULT_CONST(
152         MakeResultBufferFull,
153         Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_CEC, Result::DESCRIPTION_OUT_OF_MEMORY );
154 
155 
156 /*!
157     :category   Result
158     @class nn::cec::ResultNoData
159     @brief データがありません。
160 */
161 NN_DEFINE_RESULT_CONST(
162         ResultNoData,
163         Result::LEVEL_STATUS, Result::SUMMARY_NOT_FOUND, Result::MODULE_NN_CEC, Result::DESCRIPTION_NO_DATA );
164 
165 NN_DEFINE_RESULT_CONST(
166         MakeResultNoData,
167         Result::LEVEL_STATUS, Result::SUMMARY_NOT_FOUND, Result::MODULE_NN_CEC, Result::DESCRIPTION_NO_DATA );
168 
169 /*!
170     :category   Result
171     @class nn::cec::ResultNotAuthorized
172     @brief 認証に必要な情報が指定されていないため、アクセスできません。
173 */
174 NN_DEFINE_RESULT_CONST(
175         ResultNotAuthorized,
176         Result::LEVEL_STATUS, Result::SUMMARY_NOT_FOUND, Result::MODULE_NN_CEC, Result::DESCRIPTION_NOT_AUTHORIZED );
177 
178 NN_DEFINE_RESULT_CONST(
179         MakeResultNotAuthorized,
180         Result::LEVEL_STATUS, Result::SUMMARY_NOT_FOUND, Result::MODULE_NN_CEC, Result::DESCRIPTION_NOT_AUTHORIZED );
181 
182 
183 /*!
184     :category   Result
185     @class nn::cec::ResultTooLarge
186     @brief 大きすぎる値が指定されています。
187 */
188 NN_DEFINE_RESULT_CONST(
189         ResultTooLarge,
190         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, Result::DESCRIPTION_TOO_LARGE );
191 
192 NN_DEFINE_RESULT_CONST(
193         MakeResultTooLarge,
194         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, Result::DESCRIPTION_TOO_LARGE );
195 
196 
197 
198 /*!
199     :category   Result
200     @class nn::cec::ResultBoxSizeFull
201     @brief ボックスに格納できる容量を超えています。
202 */
203 NN_DEFINE_RESULT_CONST(
204         ResultBoxSizeFull,
205         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, DESCRIPTION_BOXSIZE_FULL );
206 
207 NN_DEFINE_RESULT_CONST(
208         MakeResultBoxSizeFull,
209         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, DESCRIPTION_BOXSIZE_FULL );
210 
211 /*!
212     :category   Result
213     @class nn::cec::ResultBoxMessNumFull
214     @brief ボックスに格納できる個数を超えています。
215 */
216 NN_DEFINE_RESULT_CONST(
217         ResultBoxMessNumFull,
218         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, DESCRIPTION_BOXMESSNUM_FULL );
219 
220 NN_DEFINE_RESULT_CONST(
221         MakeResultBoxMessNumFull,
222         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, DESCRIPTION_BOXMESSNUM_FULL );
223 
224 /*!
225     :category   Result
226     @class nn::cec::ResultBoxNumFull
227     @brief ボックスの最大個数を超えています。
228 */
229 NN_DEFINE_RESULT_CONST(
230         ResultBoxNumFull,
231         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, DESCRIPTION_BOXNUM_FULL );
232 
233 NN_DEFINE_RESULT_CONST(
234         MakeResultBoxNumFull,
235         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, DESCRIPTION_BOXNUM_FULL );
236 
237 
238 /*!
239     :category   Result
240     @class nn::cec::ResultBoxAlreadyExists
241     @brief ボックスが既に存在します。
242 */
243 NN_DEFINE_RESULT_CONST(
244         ResultBoxAlreadyExists,
245         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, DESCRIPTION_BOX_ALREADY_EXISTS );
246 
247 NN_DEFINE_RESULT_CONST(
248         MakeResultBoxAlreadyExists,
249         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, DESCRIPTION_BOX_ALREADY_EXISTS );
250 /*!
251     :category   Result
252     @class nn::cec::ResultMessTooLarge
253     @brief メッセージのサイズが大きすぎます。
254 */
255 NN_DEFINE_RESULT_CONST(
256         ResultMessTooLarge,
257         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, DESCRIPTION_MESS_TOO_LARGE );
258 
259 NN_DEFINE_RESULT_CONST(
260         MakeResultMessTooLarge,
261         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, DESCRIPTION_MESS_TOO_LARGE );
262 
263 /*!
264     :category   Result
265     @class nn::cec::ResultInvalidId
266     @brief 不正なIDが指定されています。
267 */
268 NN_DEFINE_RESULT_CONST(
269         ResultInvalidId,
270         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, DESCRIPTION_INVALID_ID );
271 
272 NN_DEFINE_RESULT_CONST(
273         MakeResultInvalidId,
274         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, DESCRIPTION_INVALID_ID );
275 
276 /*!
277     :category   Result
278     @class nn::cec::ResultInvalidData
279     @brief 不正なデータが指定されています。
280 */
281 NN_DEFINE_RESULT_CONST(
282         ResultInvalidData,
283         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, DESCRIPTION_INVALID_DATA );
284 
285 NN_DEFINE_RESULT_CONST(
286         MakeResultInvalidData,
287         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, DESCRIPTION_INVALID_DATA );
288 /*!
289     :category   Result
290     @class nn::cec::ResultInvalidPointer
291     @brief 不正なポインタが指定されています。
292 */
293 NN_DEFINE_RESULT_CONST(
294         ResultInvalidPointer,
295         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, Result::DESCRIPTION_INVALID_POINTER);
296 
297 NN_DEFINE_RESULT_CONST(
298         MakeResultInvalidPointer,
299         Result::LEVEL_USAGE, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_CEC, Result::DESCRIPTION_INVALID_POINTER);
300 
301 
302 /*!
303     :category   Result
304     @class nn::cec::ResultStateBusy
305     @brief BUSY状態のため、アクセスできません。
306 */
307 NN_DEFINE_RESULT_CONST(
308         ResultStateBusy,
309         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_CEC, Result::DESCRIPTION_BUSY );
310 
311 NN_DEFINE_RESULT_CONST(
312         MakeResultStateBusy,
313         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_CEC, Result::DESCRIPTION_BUSY );
314 
315 /*!
316     :category   Result
317     @class nn::cec::ResultMisalignedSize
318     @brief サイズに関するアライメントが不正です。
319 */
320 NN_DEFINE_RESULT_CONST(
321         ResultMisalignedSize,
322         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_CEC, Result::DESCRIPTION_MISALIGNED_SIZE );
323 
324 NN_DEFINE_RESULT_CONST(
325         MakeResultMisalignedSize,
326         Result::LEVEL_STATUS, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_CEC, Result::DESCRIPTION_MISALIGNED_SIZE );
327 
328 
329 
330 } // namespace cec
331 } // namespace nn
332 
333 
334 #endif  //__CEC_H__
335 
336