1 /*---------------------------------------------------------------------------* 2 Project: Horizon 3 File: dlp_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: 30928 $ 14 *---------------------------------------------------------------------------*/ 15 #ifndef NN_DLP_CTR_DLP_RESULT_H_ 16 #define NN_DLP_CTR_DLP_RESULT_H_ 17 18 #include <nn/Result.h> 19 20 /*! @file 21 @brief DLP ライブラリの Result 群です。 22 */ 23 24 25 namespace nn { 26 namespace dlp { 27 namespace CTR { 28 29 /* 30 @brief Result コードの詳細 31 */ 32 enum Description 33 { 34 DESCRIPTION_INVALID_STATE = 1, //!< API を使用するのに不適切な内部状態です。 35 DESCRIPTION_INTERNAL_ERROR = 2, //!< アプリケーションからハンドリングできないエラーが発生しました。 36 DESCRIPTION_ALREADY_OCCUPIED_WIRELESS_DEVICE = 3, //!< 無線デバイスが既に占有されています。 37 DESCRIPTION_WIRELESS_OFF = 4, //!< 通信ができない状態です。 38 DESCRIPTION_NOT_FOUND_SERVER = 5, //!< サーバが見つかりません。 39 DESCRIPTION_SERVER_IS_FULL = 6, //!< サーバにこれ以上のクライアントは接続できません。 40 DESCRIPTION_INVALID_MEDIA_TYPE = 7, //!< アクセスするメディアがサポートされていません。 41 DESCRIPTION_FAILED_TO_ACCESS_MEDIA = 8, //!< メディアへのアクセスに失敗しました。 42 DESCRIPTION_CHILD_TOO_LARGE = 9, //!< 子機プログラムのインポートに必要なNAND容量が大きすぎます。 43 DESCRIPTION_INCOMMUTABLE = 10, //!< 相手と通信ができません。 44 DESCRIPTION_INVALID_DLP_VERSION = 11, 45 DESCRIPTION_INVALID_REGION = 12 //!< 子機プロうグラムのリージョンが親機と異なります。 46 }; 47 48 49 NN_DEFINE_RESULT_FUNC_LSM( MakeInvalidStateResult, Result::LEVEL_USAGE, Result::SUMMARY_INVALID_STATE, Result::MODULE_NN_DLP); 50 NN_DEFINE_RESULT_FUNC_LSM( MakeInvalidArgumentResult, Result::LEVEL_PERMANENT, Result::SUMMARY_INVALID_ARGUMENT, Result::MODULE_NN_DLP); 51 NN_DEFINE_RESULT_FUNC_LSM( MakeOutOfResourceResult, Result::LEVEL_PERMANENT, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_DLP); 52 NN_DEFINE_RESULT_FUNC_LSM( MakeInternalResult, Result::LEVEL_PERMANENT, Result::SUMMARY_INTERNAL, Result::MODULE_NN_DLP); 53 NN_DEFINE_RESULT_FUNC_LSM( MakeNotSupportedResult, Result::LEVEL_PERMANENT, Result::SUMMARY_NOT_SUPPORTED, Result::MODULE_NN_DLP); 54 NN_DEFINE_RESULT_FUNC_LSM( MakeNotFoundResult, Result::LEVEL_STATUS, Result::SUMMARY_NOT_FOUND, Result::MODULE_NN_DLP); 55 NN_DEFINE_RESULT_FUNC_LSM( MakeOutOfResourceResulttemporarily, Result::LEVEL_STATUS, Result::SUMMARY_OUT_OF_RESOURCE, Result::MODULE_NN_DLP); 56 NN_DEFINE_RESULT_FUNC_LSM( MakeStatusChangedResult, Result::LEVEL_STATUS, Result::SUMMARY_STATUS_CHANGED, Result::MODULE_NN_DLP); 57 NN_DEFINE_RESULT_FUNC_LSM( MakeCanceledResult, Result::LEVEL_STATUS, Result::SUMMARY_CANCELLED, Result::MODULE_NN_DLP); 58 59 /*! 60 @name Result 値 61 @{ 62 */ 63 64 // LEVEL_USAGE 65 /*! 66 :category Result 67 @class nn::dlp::CTR::ResultAlreadyOccupiedWirelessDevice 68 @brief @ref 無線デバイスが既に占有されています。 69 */ 70 NN_DEFINE_RESULT_CONST_LSM( 71 ResultAlreadyOccupiedWirelessDevice, 72 MakeInvalidStateResult, DESCRIPTION_ALREADY_OCCUPIED_WIRELESS_DEVICE 73 ); 74 75 /*! 76 :category Result 77 @class nn::dlp::CTR::ResultInvalidState 78 @brief @ref API を使用するのに不適切な内部状態です。 79 */ 80 NN_DEFINE_RESULT_CONST_LSM( 81 ResultInvalidState, 82 MakeInvalidStateResult, DESCRIPTION_INVALID_STATE 83 ); 84 85 // LEVEL_PERMANENT 86 /*! 87 :category Result 88 @class nn::dlp::CTR::ResultOutOfRange 89 @brief @ref 使用しているパラメータが範囲外です。 90 */ 91 NN_DEFINE_RESULT_CONST_LSM( 92 ResultOutOfRange, 93 MakeInvalidArgumentResult, Result::DESCRIPTION_OUT_OF_RANGE 94 ); 95 96 /*! 97 :category Result 98 @class nn::dlp::CTR::ResultInvalidPointer 99 @brief @ref 不正なポインタ引数です。 100 */ 101 NN_DEFINE_RESULT_CONST_LSM( 102 ResultInvalidPointer, 103 MakeInvalidArgumentResult, Result::DESCRIPTION_INVALID_POINTER 104 ); 105 106 /*! 107 :category Result 108 @class nn::dlp::CTR::ResultInvalidHandle 109 @brief @ref 不正なハンドル引数です。 110 */ 111 NN_DEFINE_RESULT_CONST_LSM( 112 ResultInvalidHandle, 113 MakeInvalidArgumentResult, Result::DESCRIPTION_INVALID_HANDLE 114 ); 115 116 /*! 117 :category Result 118 @class nn::dlp::CTR::ResultInternalError 119 @brief @ref アプリケーションからハンドリングできないエラーが発生しました。 120 */ 121 NN_DEFINE_RESULT_CONST_LSM( 122 ResultInternalError, 123 MakeInternalResult, DESCRIPTION_INTERNAL_ERROR 124 ); 125 126 NN_DEFINE_RESULT_CONST_LSM( 127 ResultOutOfMemory, 128 MakeOutOfResourceResult, Result::DESCRIPTION_OUT_OF_MEMORY 129 ); 130 131 /*! 132 :category Result 133 @class nn::dlp::CTR::ResultInvalidMediaType 134 @brief @ref アクセスするメディアがサポートされていません。 135 */ 136 NN_DEFINE_RESULT_CONST_LSM( 137 ResultInvalidMediaType, 138 MakeNotSupportedResult, DESCRIPTION_INVALID_MEDIA_TYPE 139 ); 140 141 /*! 142 :category Result 143 @class nn::dlp::CTR::ResultFailedToAccessMedia 144 @brief @ref メディアへのアクセスに失敗しました。 145 */ 146 NN_DEFINE_RESULT_CONST_LSM( 147 ResultFailedToAccessMedia, 148 MakeInternalResult, DESCRIPTION_FAILED_TO_ACCESS_MEDIA 149 ); 150 151 /*! 152 :category Result 153 @class nn::dlp::CTR::ResultChildTooLarge 154 @brief @ref 子機プログラムのインポートに必要なNAND容量が大きすぎます。 155 */ 156 NN_DEFINE_RESULT_CONST_LSM( 157 ResultChildTooLarge, 158 MakeNotSupportedResult, DESCRIPTION_CHILD_TOO_LARGE 159 ); 160 161 /*! 162 :category Result 163 @class nn::dlp::CTR::ResultInvalidRegion 164 @brief @ref 子機プログラムのリージョンが親機と異なります。 165 */ 166 NN_DEFINE_RESULT_CONST_LSM( 167 ResultInvalidRegion, 168 MakeNotSupportedResult, DESCRIPTION_INVALID_REGION 169 ); 170 171 NN_DEFINE_RESULT_CONST_LSM( 172 ResultInvalidDlpVersion, 173 MakeNotSupportedResult, DESCRIPTION_INVALID_DLP_VERSION 174 ); 175 176 /*! 177 :category Result 178 @class nn::dlp::CTR::ResultIncommutable 179 @brief @ref 相手と通信ができません。 180 */ 181 NN_DEFINE_RESULT_CONST_LSM( 182 ResultIncommutable, 183 MakeNotSupportedResult, DESCRIPTION_INCOMMUTABLE 184 ); 185 186 // LEVEL_STATUS 187 /*! 188 :category Result 189 @class nn::dlp::CTR::ResultNoData 190 @brief @ref 対象のデータがありません。 191 */ 192 NN_DEFINE_RESULT_CONST_LSM( 193 ResultNoData, 194 MakeNotFoundResult, Result::DESCRIPTION_NO_DATA 195 ); 196 197 /*! 198 :category Result 199 @class nn::dlp::CTR::ResultWirelessOff 200 @brief @ref 通信ができない状態です。 201 */ 202 NN_DEFINE_RESULT_CONST_LSM( 203 ResultWirelessOff, 204 MakeStatusChangedResult, DESCRIPTION_WIRELESS_OFF 205 ); 206 207 /*! 208 :category Result 209 @class nn::dlp::CTR::ResultNotFoundServer 210 @brief @ref サーバが見つかりません。 211 */ 212 NN_DEFINE_RESULT_CONST_LSM( 213 ResultNotFoundServer, 214 MakeNotFoundResult, DESCRIPTION_NOT_FOUND_SERVER 215 ); 216 217 /*! 218 :category Result 219 @class nn::dlp::CTR::ResultServerIsFull 220 @brief @ref サーバにこれ以上のクライアントは接続できません。 221 */ 222 NN_DEFINE_RESULT_CONST_LSM( 223 ResultServerIsFull, 224 MakeOutOfResourceResulttemporarily, DESCRIPTION_SERVER_IS_FULL 225 ); 226 227 /*! 228 :category Result 229 @class nn::dlp::CTR::ResultDeniedFromServer 230 @brief @ref サーバも接続を拒否されました。 231 */ 232 NN_DEFINE_RESULT_CONST_LSM( 233 ResultDeniedFromServer, 234 MakeCanceledResult, Result::DESCRIPTION_CANCEL_REQUESTED 235 ); 236 237 /*! 238 :category Result 239 @class nn::dlp::CTR::ResultConnectionTimeout 240 @brief @ref 接続の試みがタイムアウトしました。 241 */ 242 NN_DEFINE_RESULT_CONST_LSM( 243 ResultConnectionTimeout, 244 MakeCanceledResult, Result::DESCRIPTION_TIMEOUT 245 ); 246 247 /*! 248 @} 249 */ 250 } 251 } 252 } 253 254 255 #endif /* NN_DLP_CTR_DLP_RESULT_H_ */ 256