/*---------------------------------------------------------------------------* Copyright (C) 2013-2014 Nintendo. All rights reserved. These coded instructions, statements, and computer programs contain proprietary information of Nintendo of America Inc. and/or Nintendo Company Ltd., and are protected by Federal copyright law. They may not be disclosed to third parties or copied or duplicated in any form, in whole or in part, without the prior written consent of Nintendo. *---------------------------------------------------------------------------*/ #ifndef NN_EC_OPTION_H_ #define NN_EC_OPTION_H_ // Four Character Code #define NN_EC_MAKE_FOURCC(ch1, ch2, ch3, ch4) (((ch1) << 0) | ((ch2) << 8) | ((ch3) << 16) | ((ch4) << 24)) namespace nn { namespace ec { /*! @brief Enumerates the options that are set in the EC library. */ enum Option { /*! @brief This option is for setting the number of simultaneous downloads for metadata. @li Variable type: u32 @li Range: 1 to 5. @li Default: 5. The larger the value, the better the performance when multiple items are downloaded at the same time. */ OPTION_DOWNLOAD_CONNECTIONS = NN_EC_MAKE_FOURCC('D', 'L', 'C', 'N'), /*! @brief This option is for specifying the core of the download thread. @li Variable type: s32 @li Range: -1 / 0 / 1 / 2. @li Default: 2. Specify -1 to run the download thread on the same core as the thread that called @ref Initialize. */ OPTION_DOWNLOAD_THREAD_CORE = NN_EC_MAKE_FOURCC('D', 'L', 'T', 'C'), /*! @brief This option is for specifying the core for the communication thread. @li Variable type: s32 @li Range: -1 / 0 / 1 / 2. @li Default: 2. Specify -1 to run the communication thread on the same core as the thread that called the API. */ OPTION_CONNECTION_THREAD_CORE = NN_EC_MAKE_FOURCC('C', 'N', 'T', 'C'), /*! @brief This option is for setting the priority of the thread on which the EC library runs. @li Variable type: u32 @li Range: 0 to 31. @li Default: 16. Note that operations may become unstable if you change the thread priority. @n Use this option carefully. */ OPTION_THREAD_PRIORITY = NN_EC_MAKE_FOURCC('T', 'H', 'P', 'R'), /*! @brief This option enables or disables query logging. @li Variable type: u32 @li Range: FALSE(0) / TRUE(!=0) @li Default: TRUE(1) */ OPTION_QUERY_LOG_ENABLED = NN_EC_MAKE_FOURCC('Q', 'L', 'O', 'G'), OPTION_FORCE_S32 = 0x7FFFFFFF }; }} // namespace nn::ec #endif // NN_EC_OPTION_H_