1 /*---------------------------------------------------------------------------* 2 Project: Horizon 3 File: ir_Types.h 4 5 Copyright (C)2009-2012 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: 46347 $ 14 *---------------------------------------------------------------------------*/ 15 16 #ifndef NN_IR_CTR_IR_TYPES_H_ 17 #define NN_IR_CTR_IR_TYPES_H_ 18 19 #include <nn/fnd/fnd_TimeSpan.h> 20 21 namespace nn { 22 namespace ir { 23 namespace CTR { 24 25 /* Delimiter, session ID, data size (1-byte or 2-byte), CRC */ 26 const size_t FREE_PACKET_BORDER_SIZE = 64; // 27 const size_t FREE_PACKET_HEADER_FOOTER_SIZE_UNDER_BORDER = 4; // 28 const size_t FREE_PACKET_HEADER_FOOTER_SIZE_OVER_BORDER = 5; // 29 30 const size_t PAYLOAD_SIZE_MAX = 0x3FFF; // 31 const size_t NECESSARY_BUFFER_SIZE_FOR_CONNECTION = 8; // 32 33 const size_t CONNECTION_REQUEST_PACKET_SIZE = 8; // 34 const size_t CONNECTION_REPLY_PACKET_SIZE = 5; // 35 36 const size_t MANAGEMENT_BUFFER_ALLIGNMENT_SIZE = 8; // 37 38 /* Please see man pages for details 39 40 */ 41 enum BaudRate 42 { 43 /* 44 * Defined as constants to maintain compatibility with the previous APIs. 45 * You must be careful not to change the constants when you edit them. 46 */ 47 BAUD_RATE_115200 = 3, 48 BAUD_RATE_96000 = 4, 49 BAUD_RATE_72000 = 5, 50 BAUD_RATE_48000 = 6, 51 BAUD_RATE_36000 = 7, 52 BAUD_RATE_24000 = 8, 53 BAUD_RATE_18000 = 9, 54 BAUD_RATE_12000 = 10, 55 BAUD_RATE_9600 = 11, 56 BAUD_RATE_6000 = 12, 57 BAUD_RATE_3000 = 13, 58 BAUD_RATE_57600 = 14, 59 BAUD_RATE_38400 = 15, 60 BAUD_RATE_19200 = 16, 61 BAUD_RATE_7200 = 17, 62 BAUD_RATE_4800 = 18 63 }; 64 65 66 67 /* Please see man pages for details 68 69 */ 70 enum ConnectionStatus 71 { 72 CONNECTION_STATUS_STOPPED, // 73 CONNECTION_STATUS_TRYING_TO_CONNECT, // 74 CONNECTION_STATUS_CONNECTED, // 75 CONNECTION_STATUS_DISCONNECTING, // 76 CONNECTION_STATUS_FATAL_ERROR // 77 }; 78 79 /* Please see man pages for details 80 81 */ 82 enum TryingToConnectStatus 83 { 84 TRYING_TO_CONNECT_STATUS_NONE, // 85 TRYING_TO_CONNECT_STATUS_SENDING_REQUEST, // 86 TRYING_TO_CONNECT_STATUS_WAITING_REPLY, // 87 TRYING_TO_CONNECT_STATUS_WAITING_REQUEST, // 88 TRYING_TO_CONNECT_STATUS_SENDING_REPLY // 89 }; 90 91 /* Please see man pages for details 92 93 */ 94 enum MachineId 95 { 96 MACHINE_ID_CTR = 0x00 // 97 }; 98 99 /* Please see man pages for details 100 101 */ 102 enum ConnectionRole 103 { 104 CONNECTION_ROLE_NONE, // 105 CONNECTION_ROLE_TO_REQUIRE, // 106 CONNECTION_ROLE_TO_WAIT // 107 }; 108 } 109 } 110 } 111 112 #endif //NN_IR_CTR_IR_TYPES_H_ 113 114