From 9a9c90a08c2e57fdebbc688f599d8a62e26015ed Mon Sep 17 00:00:00 2001 From: Lauszus Date: Wed, 18 Nov 2020 19:17:17 +0000 Subject: [PATCH] deploy: c8ef5d55500a1b7a74dc83bdac88cd4959fe98c3 --- _b_t_d_8cpp.html | 55 +- _b_t_d_8cpp__incl.map | 6 +- _b_t_d_8cpp__incl.md5 | 2 +- _b_t_d_8cpp__incl.png | Bin 10782 -> 11790 bytes _b_t_d_8cpp_source.html | 51 +- _b_t_d_8h.html | 897 ++- _b_t_d_8h__dep__incl.map | 20 +- _b_t_d_8h__dep__incl.md5 | 2 +- _b_t_d_8h__dep__incl.png | Bin 15916 -> 19106 bytes _b_t_d_8h__incl.map | 6 +- _b_t_d_8h__incl.md5 | 2 +- _b_t_d_8h__incl.png | Bin 9492 -> 9242 bytes _b_t_d_8h_source.html | 49 +- _b_t_h_i_d_8cpp.html | 57 +- _b_t_h_i_d_8cpp__incl.map | 8 +- _b_t_h_i_d_8cpp__incl.md5 | 2 +- _b_t_h_i_d_8cpp__incl.png | Bin 15498 -> 15940 bytes _b_t_h_i_d_8cpp_source.html | 49 +- _b_t_h_i_d_8h.html | 77 +- _b_t_h_i_d_8h__dep__incl.map | 4 +- _b_t_h_i_d_8h__dep__incl.md5 | 2 +- _b_t_h_i_d_8h__dep__incl.png | Bin 4933 -> 6746 bytes _b_t_h_i_d_8h__incl.map | 6 +- _b_t_h_i_d_8h__incl.md5 | 2 +- _b_t_h_i_d_8h__incl.png | Bin 12961 -> 13122 bytes _b_t_h_i_d_8h_source.html | 49 +- _p_s3_b_t_8cpp.html | 63 +- _p_s3_b_t_8cpp__incl.map | 14 +- _p_s3_b_t_8cpp__incl.md5 | 2 +- _p_s3_b_t_8cpp__incl.png | Bin 17741 -> 18678 bytes _p_s3_b_t_8cpp_source.html | 49 +- _p_s3_b_t_8h.html | 69 +- _p_s3_b_t_8h__dep__incl.map | 2 +- _p_s3_b_t_8h__dep__incl.md5 | 2 +- _p_s3_b_t_8h__dep__incl.png | Bin 2515 -> 2690 bytes _p_s3_b_t_8h__incl.map | 12 +- _p_s3_b_t_8h__incl.md5 | 2 +- _p_s3_b_t_8h__incl.png | Bin 15971 -> 16749 bytes _p_s3_b_t_8h_source.html | 49 +- _p_s3_enums_8h.html | 161 +- _p_s3_enums_8h__dep__incl.map | 8 +- _p_s3_enums_8h__dep__incl.md5 | 2 +- _p_s3_enums_8h__dep__incl.png | Bin 6765 -> 7583 bytes _p_s3_enums_8h__incl.map | 2 +- _p_s3_enums_8h__incl.md5 | 2 +- _p_s3_enums_8h__incl.png | Bin 2680 -> 3095 bytes _p_s3_enums_8h_source.html | 49 +- _p_s3_u_s_b_8cpp.html | 61 +- _p_s3_u_s_b_8cpp__incl.map | 12 +- _p_s3_u_s_b_8cpp__incl.md5 | 2 +- _p_s3_u_s_b_8cpp__incl.png | Bin 14904 -> 15417 bytes _p_s3_u_s_b_8cpp_source.html | 49 +- _p_s3_u_s_b_8h.html | 115 +- _p_s3_u_s_b_8h__dep__incl.map | 2 +- _p_s3_u_s_b_8h__dep__incl.md5 | 2 +- _p_s3_u_s_b_8h__dep__incl.png | Bin 2503 -> 3125 bytes _p_s3_u_s_b_8h__incl.map | 10 +- _p_s3_u_s_b_8h__incl.md5 | 2 +- _p_s3_u_s_b_8h__incl.png | Bin 13257 -> 13515 bytes _p_s3_u_s_b_8h_source.html | 49 +- _p_s4_b_t_8h.html | 63 +- _p_s4_b_t_8h__incl.map | 14 +- _p_s4_b_t_8h__incl.md5 | 2 +- _p_s4_b_t_8h__incl.png | Bin 25008 -> 26120 bytes _p_s4_b_t_8h_source.html | 49 +- _p_s4_parser_8cpp.html | 115 +- _p_s4_parser_8cpp__incl.map | 6 +- _p_s4_parser_8cpp__incl.md5 | 2 +- _p_s4_parser_8cpp__incl.png | Bin 6946 -> 7509 bytes _p_s4_parser_8cpp_source.html | 51 +- _p_s4_parser_8h.html | 65 +- _p_s4_parser_8h__dep__incl.map | 6 +- _p_s4_parser_8h__dep__incl.md5 | 2 +- _p_s4_parser_8h__dep__incl.png | Bin 5726 -> 5666 bytes _p_s4_parser_8h__incl.map | 4 +- _p_s4_parser_8h__incl.md5 | 2 +- _p_s4_parser_8h__incl.png | Bin 4574 -> 5348 bytes _p_s4_parser_8h_source.html | 61 +- _p_s4_u_s_b_8h.html | 79 +- _p_s4_u_s_b_8h__incl.map | 12 +- _p_s4_u_s_b_8h__incl.md5 | 2 +- _p_s4_u_s_b_8h__incl.png | Bin 16789 -> 16604 bytes _p_s4_u_s_b_8h_source.html | 49 +- _p_s_buzz_8cpp.html | 61 +- _p_s_buzz_8cpp__incl.map | 12 +- _p_s_buzz_8cpp__incl.md5 | 2 +- _p_s_buzz_8cpp__incl.png | Bin 14378 -> 14718 bytes _p_s_buzz_8cpp_source.html | 51 +- _p_s_buzz_8h.html | 73 +- _p_s_buzz_8h__dep__incl.map | 2 +- _p_s_buzz_8h__dep__incl.md5 | 2 +- _p_s_buzz_8h__dep__incl.png | Bin 2284 -> 2591 bytes _p_s_buzz_8h__incl.map | 10 +- _p_s_buzz_8h__incl.md5 | 2 +- _p_s_buzz_8h__incl.png | Bin 12733 -> 11717 bytes _p_s_buzz_8h_source.html | 51 +- _r_e_a_d_m_e_8md.html | 49 +- _r_e_a_d_m_e_8md_source.html | 51 +- _s_p_p_8cpp.html | 65 +- _s_p_p_8cpp__incl.map | 10 +- _s_p_p_8cpp__incl.md5 | 2 +- _s_p_p_8cpp__incl.png | Bin 12773 -> 12947 bytes _s_p_p_8cpp_source.html | 49 +- _s_p_p_8h.html | 123 +- _s_p_p_8h__dep__incl.map | 2 +- _s_p_p_8h__dep__incl.md5 | 2 +- _s_p_p_8h__dep__incl.png | Bin 1966 -> 1917 bytes _s_p_p_8h__incl.map | 6 +- _s_p_p_8h__incl.md5 | 2 +- _s_p_p_8h__incl.png | Bin 10492 -> 10332 bytes _s_p_p_8h_source.html | 49 +- _u_h_s2__gpio_8cpp.html | 53 +- _u_h_s2__gpio_8cpp__incl.map | 4 +- _u_h_s2__gpio_8cpp__incl.md5 | 2 +- _u_h_s2__gpio_8cpp__incl.png | Bin 4332 -> 4812 bytes _u_h_s2__gpio_8cpp_source.html | 49 +- _u_h_s2__gpio_8h.html | 53 +- _u_h_s2__gpio_8h__dep__incl.map | 2 +- _u_h_s2__gpio_8h__dep__incl.md5 | 2 +- _u_h_s2__gpio_8h__dep__incl.png | Bin 3182 -> 3276 bytes _u_h_s2__gpio_8h__incl.map | 2 +- _u_h_s2__gpio_8h__incl.md5 | 2 +- _u_h_s2__gpio_8h__incl.png | Bin 2339 -> 2833 bytes _u_h_s2__gpio_8h_source.html | 49 +- _usb_8cpp.html | 51 +- _usb_8cpp__incl.map | 2 +- _usb_8cpp__incl.md5 | 2 +- _usb_8cpp__incl.png | Bin 1752 -> 1956 bytes _usb_8cpp_source.html | 49 +- _usb_8h.html | 147 +- _usb_8h__dep__incl.map | 98 +- _usb_8h__dep__incl.md5 | 2 +- _usb_8h__dep__incl.png | Bin 145423 -> 151232 bytes _usb_8h_source.html | 49 +- _usb_core_8h.html | 407 +- _usb_core_8h_source.html | 55 +- _wii_8cpp.html | 77 +- _wii_8cpp__incl.map | 10 +- _wii_8cpp__incl.md5 | 2 +- _wii_8cpp__incl.png | Bin 15588 -> 15444 bytes _wii_8cpp_source.html | 49 +- _wii_8h.html | 123 +- _wii_8h__dep__incl.md5 | 2 +- _wii_8h__dep__incl.png | Bin 1662 -> 1873 bytes _wii_8h__incl.map | 8 +- _wii_8h__incl.md5 | 2 +- _wii_8h__incl.png | Bin 12949 -> 12484 bytes _wii_8h_source.html | 49 +- _wii_camera_readme_8md.html | 49 +- _wii_camera_readme_8md_source.html | 49 +- _x_b_o_x_o_l_d_8cpp.html | 63 +- _x_b_o_x_o_l_d_8cpp__incl.map | 8 +- _x_b_o_x_o_l_d_8cpp__incl.md5 | 2 +- _x_b_o_x_o_l_d_8cpp__incl.png | Bin 14722 -> 13628 bytes _x_b_o_x_o_l_d_8cpp_source.html | 49 +- _x_b_o_x_o_l_d_8h.html | 131 +- _x_b_o_x_o_l_d_8h__dep__incl.map | 2 +- _x_b_o_x_o_l_d_8h__dep__incl.md5 | 2 +- _x_b_o_x_o_l_d_8h__dep__incl.png | Bin 2555 -> 2907 bytes _x_b_o_x_o_l_d_8h__incl.map | 8 +- _x_b_o_x_o_l_d_8h__incl.md5 | 2 +- _x_b_o_x_o_l_d_8h__incl.png | Bin 12763 -> 13306 bytes _x_b_o_x_o_l_d_8h_source.html | 49 +- _x_b_o_x_o_n_e_8cpp.html | 57 +- _x_b_o_x_o_n_e_8cpp__incl.map | 8 +- _x_b_o_x_o_n_e_8cpp__incl.md5 | 2 +- _x_b_o_x_o_n_e_8cpp__incl.png | Bin 7498 -> 9035 bytes _x_b_o_x_o_n_e_8cpp_source.html | 49 +- _x_b_o_x_o_n_e_8h.html | 201 +- _x_b_o_x_o_n_e_8h__dep__incl.map | 2 +- _x_b_o_x_o_n_e_8h__dep__incl.md5 | 2 +- _x_b_o_x_o_n_e_8h__dep__incl.png | Bin 2570 -> 2875 bytes _x_b_o_x_o_n_e_8h__incl.map | 6 +- _x_b_o_x_o_n_e_8h__incl.md5 | 2 +- _x_b_o_x_o_n_e_8h__incl.png | Bin 6495 -> 6994 bytes _x_b_o_x_o_n_e_8h_source.html | 49 +- _x_b_o_x_o_n_e_s_b_t_8h.html | 63 +- _x_b_o_x_o_n_e_s_b_t_8h__incl.map | 14 +- _x_b_o_x_o_n_e_s_b_t_8h__incl.md5 | 2 +- _x_b_o_x_o_n_e_s_b_t_8h__incl.png | Bin 25487 -> 27110 bytes _x_b_o_x_o_n_e_s_b_t_8h_source.html | 49 +- _x_b_o_x_o_n_e_s_parser_8cpp.html | 121 +- _x_b_o_x_o_n_e_s_parser_8cpp__incl.map | 6 +- _x_b_o_x_o_n_e_s_parser_8cpp__incl.md5 | 2 +- _x_b_o_x_o_n_e_s_parser_8cpp__incl.png | Bin 8153 -> 8855 bytes _x_b_o_x_o_n_e_s_parser_8cpp_source.html | 51 +- _x_b_o_x_o_n_e_s_parser_8h.html | 57 +- _x_b_o_x_o_n_e_s_parser_8h__dep__incl.map | 4 +- _x_b_o_x_o_n_e_s_parser_8h__dep__incl.md5 | 2 +- _x_b_o_x_o_n_e_s_parser_8h__dep__incl.png | Bin 6137 -> 6267 bytes _x_b_o_x_o_n_e_s_parser_8h__incl.map | 4 +- _x_b_o_x_o_n_e_s_parser_8h__incl.md5 | 2 +- _x_b_o_x_o_n_e_s_parser_8h__incl.png | Bin 5161 -> 6092 bytes _x_b_o_x_o_n_e_s_parser_8h_source.html | 49 +- _x_b_o_x_r_e_c_v_8cpp.html | 57 +- _x_b_o_x_r_e_c_v_8cpp__incl.map | 8 +- _x_b_o_x_r_e_c_v_8cpp__incl.md5 | 2 +- _x_b_o_x_r_e_c_v_8cpp__incl.png | Bin 8024 -> 9799 bytes _x_b_o_x_r_e_c_v_8cpp_source.html | 49 +- _x_b_o_x_r_e_c_v_8h.html | 153 +- _x_b_o_x_r_e_c_v_8h__dep__incl.map | 2 +- _x_b_o_x_r_e_c_v_8h__dep__incl.md5 | 2 +- _x_b_o_x_r_e_c_v_8h__dep__incl.png | Bin 3111 -> 3632 bytes _x_b_o_x_r_e_c_v_8h__incl.map | 6 +- _x_b_o_x_r_e_c_v_8h__incl.md5 | 2 +- _x_b_o_x_r_e_c_v_8h__incl.png | Bin 6837 -> 7439 bytes _x_b_o_x_r_e_c_v_8h_source.html | 49 +- _x_b_o_x_u_s_b_8cpp.html | 61 +- _x_b_o_x_u_s_b_8cpp__incl.map | 12 +- _x_b_o_x_u_s_b_8cpp__incl.md5 | 2 +- _x_b_o_x_u_s_b_8cpp__incl.png | Bin 15252 -> 15608 bytes _x_b_o_x_u_s_b_8cpp_source.html | 49 +- _x_b_o_x_u_s_b_8h.html | 169 +- _x_b_o_x_u_s_b_8h__dep__incl.map | 2 +- _x_b_o_x_u_s_b_8h__dep__incl.md5 | 2 +- _x_b_o_x_u_s_b_8h__dep__incl.png | Bin 2848 -> 3484 bytes _x_b_o_x_u_s_b_8h__incl.map | 10 +- _x_b_o_x_u_s_b_8h__incl.md5 | 2 +- _x_b_o_x_u_s_b_8h__incl.png | Bin 13466 -> 13514 bytes _x_b_o_x_u_s_b_8h_source.html | 49 +- address_8h.html | 109 +- address_8h_source.html | 51 +- adk_8cpp.html | 53 +- adk_8cpp__incl.map | 4 +- adk_8cpp__incl.md5 | 2 +- adk_8cpp__incl.png | Bin 3136 -> 3377 bytes adk_8cpp_source.html | 49 +- adk_8h.html | 149 +- adk_8h__dep__incl.map | 2 +- adk_8h__dep__incl.md5 | 2 +- adk_8h__dep__incl.png | Bin 2086 -> 2219 bytes adk_8h__incl.map | 2 +- adk_8h__incl.md5 | 2 +- adk_8h__incl.png | Bin 1683 -> 1725 bytes adk_8h_source.html | 49 +- annotated.html | 51 +- arrowdown.png | Bin 246 -> 0 bytes arrowright.png | Bin 229 -> 0 bytes avrpins_8h.html | 49 +- avrpins_8h_source.html | 51 +- cdc___x_r21_b1411_8cpp.html | 55 +- cdc___x_r21_b1411_8cpp__incl.map | 6 +- cdc___x_r21_b1411_8cpp__incl.md5 | 2 +- cdc___x_r21_b1411_8cpp__incl.png | Bin 5247 -> 5910 bytes cdc___x_r21_b1411_8cpp_source.html | 49 +- cdc___x_r21_b1411_8h.html | 391 +- cdc___x_r21_b1411_8h__dep__incl.map | 2 +- cdc___x_r21_b1411_8h__dep__incl.md5 | 2 +- cdc___x_r21_b1411_8h__dep__incl.png | Bin 3046 -> 3559 bytes cdc___x_r21_b1411_8h__incl.map | 4 +- cdc___x_r21_b1411_8h__incl.md5 | 2 +- cdc___x_r21_b1411_8h__incl.png | Bin 3975 -> 4413 bytes cdc___x_r21_b1411_8h_source.html | 49 +- cdcacm_8cpp.html | 53 +- cdcacm_8cpp__incl.map | 4 +- cdcacm_8cpp__incl.md5 | 2 +- cdcacm_8cpp__incl.png | Bin 3350 -> 3649 bytes cdcacm_8cpp_source.html | 49 +- cdcacm_8h.html | 385 +- cdcacm_8h__dep__incl.map | 10 +- cdcacm_8h__dep__incl.md5 | 2 +- cdcacm_8h__dep__incl.png | Bin 9677 -> 9795 bytes cdcacm_8h__incl.map | 2 +- cdcacm_8h__incl.md5 | 2 +- cdcacm_8h__incl.png | Bin 2097 -> 2027 bytes cdcacm_8h_source.html | 51 +- cdcftdi_8cpp.html | 53 +- cdcftdi_8cpp__incl.map | 4 +- cdcftdi_8cpp__incl.md5 | 2 +- cdcftdi_8cpp__incl.png | Bin 3043 -> 3352 bytes cdcftdi_8cpp_source.html | 49 +- cdcftdi_8h.html | 323 +- cdcftdi_8h__dep__incl.map | 2 +- cdcftdi_8h__dep__incl.md5 | 2 +- cdcftdi_8h__dep__incl.png | Bin 1846 -> 2042 bytes cdcftdi_8h__incl.map | 2 +- cdcftdi_8h__incl.md5 | 2 +- cdcftdi_8h__incl.png | Bin 1927 -> 2118 bytes cdcftdi_8h_source.html | 49 +- cdcprolific_8cpp.html | 55 +- cdcprolific_8cpp__incl.map | 6 +- cdcprolific_8cpp__incl.md5 | 2 +- cdcprolific_8cpp__incl.png | Bin 4730 -> 4499 bytes cdcprolific_8cpp_source.html | 49 +- cdcprolific_8h.html | 454 +- cdcprolific_8h__dep__incl.map | 2 +- cdcprolific_8h__dep__incl.md5 | 2 +- cdcprolific_8h__dep__incl.png | Bin 2401 -> 2526 bytes cdcprolific_8h__incl.map | 4 +- cdcprolific_8h__incl.md5 | 2 +- cdcprolific_8h__incl.png | Bin 3355 -> 3735 bytes cdcprolific_8h_source.html | 49 +- class_a_c_m-members.html | 51 +- class_a_c_m.html | 319 +- class_a_c_m__coll__graph.map | 14 +- class_a_c_m__coll__graph.md5 | 2 +- class_a_c_m__coll__graph.png | Bin 19180 -> 19485 bytes class_a_c_m__inherit__graph.map | 8 +- class_a_c_m__inherit__graph.md5 | 2 +- class_a_c_m__inherit__graph.png | Bin 9117 -> 10591 bytes class_a_d_k-members.html | 51 +- class_a_d_k.html | 187 +- class_a_d_k__coll__graph.map | 10 +- class_a_d_k__coll__graph.md5 | 2 +- class_a_d_k__coll__graph.png | Bin 11849 -> 13439 bytes class_a_d_k__inherit__graph.map | 4 +- class_a_d_k__inherit__graph.md5 | 2 +- class_a_d_k__inherit__graph.png | Bin 5307 -> 5617 bytes class_address_pool-members.html | 51 +- class_address_pool.html | 69 +- class_address_pool__inherit__graph.map | 4 +- class_address_pool__inherit__graph.md5 | 2 +- class_address_pool__inherit__graph.png | Bin 8020 -> 8977 bytes class_address_pool_impl-members.html | 51 +- class_address_pool_impl.html | 87 +- class_address_pool_impl__coll__graph.map | 2 +- class_address_pool_impl__coll__graph.md5 | 2 +- class_address_pool_impl__coll__graph.png | Bin 5355 -> 6084 bytes class_address_pool_impl__inherit__graph.map | 2 +- class_address_pool_impl__inherit__graph.md5 | 2 +- class_address_pool_impl__inherit__graph.png | Bin 5355 -> 6084 bytes class_b_t_d-members.html | 51 +- class_b_t_d.html | 535 +- class_b_t_d__coll__graph.map | 10 +- class_b_t_d__coll__graph.md5 | 2 +- class_b_t_d__coll__graph.png | Bin 11611 -> 13277 bytes class_b_t_d__inherit__graph.map | 4 +- class_b_t_d__inherit__graph.md5 | 2 +- class_b_t_d__inherit__graph.png | Bin 5101 -> 5487 bytes class_b_t_h_i_d-members.html | 51 +- class_b_t_h_i_d.html | 199 +- class_b_t_h_i_d__coll__graph.map | 14 +- class_b_t_h_i_d__coll__graph.md5 | 2 +- class_b_t_h_i_d__coll__graph.png | Bin 15553 -> 17651 bytes class_b_t_h_i_d__inherit__graph.map | 6 +- class_b_t_h_i_d__inherit__graph.md5 | 2 +- class_b_t_h_i_d__inherit__graph.png | Bin 6311 -> 6556 bytes class_bluetooth_service-members.html | 51 +- class_bluetooth_service.html | 145 +- class_bluetooth_service__coll__graph.map | 12 +- class_bluetooth_service__coll__graph.md5 | 2 +- class_bluetooth_service__coll__graph.png | Bin 14338 -> 16319 bytes class_bluetooth_service__inherit__graph.map | 12 +- class_bluetooth_service__inherit__graph.md5 | 2 +- class_bluetooth_service__inherit__graph.png | Bin 11719 -> 11182 bytes class_bulk_only-members.html | 51 +- class_bulk_only.html | 325 +- class_bulk_only__coll__graph.map | 10 +- class_bulk_only__coll__graph.md5 | 2 +- class_bulk_only__coll__graph.png | Bin 12058 -> 13690 bytes class_bulk_only__inherit__graph.map | 4 +- class_bulk_only__inherit__graph.md5 | 2 +- class_bulk_only__inherit__graph.png | Bin 5622 -> 5955 bytes class_byte_skipper-members.html | 51 +- class_byte_skipper.html | 71 +- class_c_d_c_async_oper-members.html | 51 +- class_c_d_c_async_oper.html | 59 +- class_config_desc_parser-members.html | 51 +- class_config_desc_parser.html | 75 +- class_config_desc_parser__coll__graph.map | 2 +- class_config_desc_parser__coll__graph.md5 | 2 +- class_config_desc_parser__coll__graph.png | Bin 5798 -> 6418 bytes class_config_desc_parser__inherit__graph.map | 2 +- class_config_desc_parser__inherit__graph.md5 | 2 +- class_config_desc_parser__inherit__graph.png | Bin 5798 -> 6418 bytes class_f_t_d_i-members.html | 51 +- class_f_t_d_i.html | 157 +- class_f_t_d_i__coll__graph.map | 4 +- class_f_t_d_i__coll__graph.md5 | 2 +- class_f_t_d_i__coll__graph.png | Bin 4985 -> 5370 bytes class_f_t_d_i__inherit__graph.map | 4 +- class_f_t_d_i__inherit__graph.md5 | 2 +- class_f_t_d_i__inherit__graph.png | Bin 4985 -> 5370 bytes class_f_t_d_i_async_oper-members.html | 51 +- class_f_t_d_i_async_oper.html | 65 +- class_h_i_d_boot-members.html | 51 +- class_h_i_d_boot.html | 129 +- class_h_i_d_boot__coll__graph.map | 10 +- class_h_i_d_boot__coll__graph.md5 | 2 +- class_h_i_d_boot__coll__graph.png | Bin 11859 -> 13439 bytes class_h_i_d_boot__inherit__graph.map | 6 +- class_h_i_d_boot__inherit__graph.md5 | 2 +- class_h_i_d_boot__inherit__graph.png | Bin 7894 -> 9283 bytes class_h_i_d_composite-members.html | 51 +- class_h_i_d_composite.html | 177 +- class_h_i_d_composite__coll__graph.map | 12 +- class_h_i_d_composite__coll__graph.md5 | 2 +- class_h_i_d_composite__coll__graph.png | Bin 15878 -> 19814 bytes class_h_i_d_composite__inherit__graph.map | 6 +- class_h_i_d_composite__inherit__graph.md5 | 2 +- class_h_i_d_composite__inherit__graph.png | Bin 7426 -> 8756 bytes class_h_i_d_report_parser-members.html | 51 +- class_h_i_d_report_parser.html | 63 +- class_h_i_d_report_parser__inherit__graph.map | 6 +- class_h_i_d_report_parser__inherit__graph.md5 | 2 +- class_h_i_d_report_parser__inherit__graph.png | Bin 7443 -> 7316 bytes class_h_i_d_universal-members.html | 51 +- class_h_i_d_universal.html | 177 +- class_h_i_d_universal__coll__graph.map | 12 +- class_h_i_d_universal__coll__graph.md5 | 2 +- class_h_i_d_universal__coll__graph.png | Bin 15669 -> 19361 bytes class_h_i_d_universal__inherit__graph.map | 10 +- class_h_i_d_universal__inherit__graph.md5 | 2 +- class_h_i_d_universal__inherit__graph.png | Bin 10413 -> 10521 bytes class_hex_dumper-members.html | 51 +- class_hex_dumper.html | 71 +- class_hex_dumper__coll__graph.md5 | 2 +- class_hex_dumper__coll__graph.png | Bin 4817 -> 5408 bytes class_hex_dumper__inherit__graph.md5 | 2 +- class_hex_dumper__inherit__graph.png | Bin 4817 -> 5408 bytes class_keyboard_report_parser-members.html | 51 +- class_keyboard_report_parser.html | 159 +- class_keyboard_report_parser__coll__graph.map | 6 +- class_keyboard_report_parser__coll__graph.md5 | 2 +- class_keyboard_report_parser__coll__graph.png | Bin 8743 -> 9729 bytes ...keyboard_report_parser__inherit__graph.map | 2 +- ...keyboard_report_parser__inherit__graph.md5 | 2 +- ...keyboard_report_parser__inherit__graph.png | Bin 3437 -> 3890 bytes class_m_a_x3421e-members.html | 51 +- class_m_a_x3421e.html | 155 +- class_m_a_x3421e__inherit__graph.map | 2 +- class_m_a_x3421e__inherit__graph.md5 | 2 +- class_m_a_x3421e__inherit__graph.png | Bin 4088 -> 4565 bytes class_max___l_c_d-members.html | 51 +- class_max___l_c_d.html | 179 +- class_max___l_c_d__coll__graph.md5 | 2 +- class_max___l_c_d__coll__graph.png | Bin 1935 -> 2065 bytes class_max___l_c_d__inherit__graph.md5 | 2 +- class_max___l_c_d__inherit__graph.png | Bin 1935 -> 2065 bytes class_mouse_report_parser-members.html | 51 +- class_mouse_report_parser.html | 119 +- class_mouse_report_parser__coll__graph.map | 4 +- class_mouse_report_parser__coll__graph.md5 | 2 +- class_mouse_report_parser__coll__graph.png | Bin 7185 -> 7885 bytes class_mouse_report_parser__inherit__graph.map | 2 +- class_mouse_report_parser__inherit__graph.md5 | 2 +- class_mouse_report_parser__inherit__graph.png | Bin 3166 -> 3531 bytes class_multi_byte_value_parser-members.html | 51 +- class_multi_byte_value_parser.html | 77 +- class_p_l2303-members.html | 51 +- class_p_l2303.html | 87 +- class_p_l2303__coll__graph.map | 16 +- class_p_l2303__coll__graph.md5 | 2 +- class_p_l2303__coll__graph.png | Bin 20885 -> 21341 bytes class_p_l2303__inherit__graph.map | 6 +- class_p_l2303__inherit__graph.md5 | 2 +- class_p_l2303__inherit__graph.png | Bin 6847 -> 8133 bytes class_p_s3_b_t-members.html | 51 +- class_p_s3_b_t.html | 261 +- class_p_s3_b_t__coll__graph.map | 14 +- class_p_s3_b_t__coll__graph.md5 | 2 +- class_p_s3_b_t__coll__graph.png | Bin 15869 -> 18074 bytes class_p_s3_b_t__inherit__graph.map | 2 +- class_p_s3_b_t__inherit__graph.md5 | 2 +- class_p_s3_b_t__inherit__graph.png | Bin 2547 -> 2843 bytes class_p_s3_u_s_b-members.html | 51 +- class_p_s3_u_s_b.html | 297 +- class_p_s3_u_s_b__coll__graph.map | 8 +- class_p_s3_u_s_b__coll__graph.md5 | 2 +- class_p_s3_u_s_b__coll__graph.png | Bin 9233 -> 10211 bytes class_p_s3_u_s_b__inherit__graph.map | 2 +- class_p_s3_u_s_b__inherit__graph.md5 | 2 +- class_p_s3_u_s_b__inherit__graph.png | Bin 3019 -> 3308 bytes class_p_s4_b_t-members.html | 51 +- class_p_s4_b_t.html | 113 +- class_p_s4_b_t__coll__graph.map | 18 +- class_p_s4_b_t__coll__graph.md5 | 2 +- class_p_s4_b_t__coll__graph.png | Bin 19041 -> 22210 bytes class_p_s4_b_t__inherit__graph.map | 6 +- class_p_s4_b_t__inherit__graph.md5 | 2 +- class_p_s4_b_t__inherit__graph.png | Bin 6434 -> 7090 bytes class_p_s4_parser-members.html | 51 +- class_p_s4_parser.html | 211 +- class_p_s4_parser__inherit__graph.map | 4 +- class_p_s4_parser__inherit__graph.md5 | 2 +- class_p_s4_parser__inherit__graph.png | Bin 4443 -> 3691 bytes class_p_s4_u_s_b-members.html | 51 +- class_p_s4_u_s_b.html | 121 +- class_p_s4_u_s_b__coll__graph.map | 16 +- class_p_s4_u_s_b__coll__graph.md5 | 2 +- class_p_s4_u_s_b__coll__graph.png | Bin 19326 -> 23675 bytes class_p_s4_u_s_b__inherit__graph.map | 10 +- class_p_s4_u_s_b__inherit__graph.md5 | 2 +- class_p_s4_u_s_b__inherit__graph.png | Bin 10390 -> 12284 bytes class_p_s_buzz-members.html | 51 +- class_p_s_buzz.html | 165 +- class_p_s_buzz__coll__graph.map | 14 +- class_p_s_buzz__coll__graph.md5 | 2 +- class_p_s_buzz__coll__graph.png | Bin 17131 -> 21077 bytes class_p_s_buzz__inherit__graph.map | 8 +- class_p_s_buzz__inherit__graph.md5 | 2 +- class_p_s_buzz__inherit__graph.png | Bin 8794 -> 8841 bytes class_p_t_p_list_parser-members.html | 51 +- class_p_t_p_list_parser.html | 83 +- class_report_desc_parser-members.html | 51 +- class_report_desc_parser.html | 67 +- class_report_desc_parser2-members.html | 51 +- class_report_desc_parser2.html | 79 +- class_report_desc_parser2__coll__graph.map | 10 +- class_report_desc_parser2__coll__graph.md5 | 2 +- class_report_desc_parser2__coll__graph.png | Bin 14484 -> 15423 bytes class_report_desc_parser2__inherit__graph.map | 4 +- class_report_desc_parser2__inherit__graph.md5 | 2 +- class_report_desc_parser2__inherit__graph.png | Bin 5984 -> 6579 bytes class_report_desc_parser__coll__graph.map | 10 +- class_report_desc_parser__coll__graph.md5 | 2 +- class_report_desc_parser__coll__graph.png | Bin 14323 -> 15234 bytes class_report_desc_parser__inherit__graph.map | 4 +- class_report_desc_parser__inherit__graph.md5 | 2 +- class_report_desc_parser__inherit__graph.png | Bin 5826 -> 6392 bytes class_report_desc_parser_base-members.html | 51 +- class_report_desc_parser_base.html | 598 +- ...s_report_desc_parser_base__coll__graph.map | 8 +- ...s_report_desc_parser_base__coll__graph.md5 | 2 +- ...s_report_desc_parser_base__coll__graph.png | Bin 12002 -> 12686 bytes ...eport_desc_parser_base__inherit__graph.map | 6 +- ...eport_desc_parser_base__inherit__graph.md5 | 2 +- ...eport_desc_parser_base__inherit__graph.png | Bin 8448 -> 8897 bytes class_s_p_p-members.html | 51 +- class_s_p_p.html | 165 +- class_s_p_p__coll__graph.map | 14 +- class_s_p_p__coll__graph.md5 | 2 +- class_s_p_p__coll__graph.png | Bin 17830 -> 19973 bytes class_s_p_p__inherit__graph.map | 2 +- class_s_p_p__inherit__graph.md5 | 2 +- class_s_p_p__inherit__graph.png | Bin 4392 -> 4726 bytes class_s_pi-members.html | 51 +- class_s_pi.html | 59 +- class_sink_parser-members.html | 51 +- class_sink_parser.html | 71 +- class_sink_parser__coll__graph.md5 | 2 +- class_sink_parser__coll__graph.png | Bin 4688 -> 5412 bytes class_sink_parser__inherit__graph.md5 | 2 +- class_sink_parser__inherit__graph.png | Bin 4688 -> 5412 bytes class_u_h_s2___g_p_i_o-members.html | 51 +- class_u_h_s2___g_p_i_o.html | 77 +- class_u_s_b-members.html | 51 +- class_u_s_b.html | 213 +- class_u_s_b__coll__graph.map | 2 +- class_u_s_b__coll__graph.md5 | 2 +- class_u_s_b__coll__graph.png | Bin 2154 -> 2698 bytes class_u_s_b__inherit__graph.map | 2 +- class_u_s_b__inherit__graph.md5 | 2 +- class_u_s_b__inherit__graph.png | Bin 2154 -> 2698 bytes class_u_s_b_device_config-members.html | 51 +- class_u_s_b_device_config.html | 147 +- class_u_s_b_device_config__inherit__graph.map | 40 +- class_u_s_b_device_config__inherit__graph.md5 | 2 +- class_u_s_b_device_config__inherit__graph.png | Bin 38708 -> 44737 bytes class_u_s_b_h___m_i_d_i-members.html | 51 +- class_u_s_b_h___m_i_d_i.html | 279 +- class_u_s_b_h___m_i_d_i__coll__graph.map | 8 +- class_u_s_b_h___m_i_d_i__coll__graph.md5 | 2 +- class_u_s_b_h___m_i_d_i__coll__graph.png | Bin 9288 -> 10218 bytes class_u_s_b_h___m_i_d_i__inherit__graph.map | 2 +- class_u_s_b_h___m_i_d_i__inherit__graph.md5 | 2 +- class_u_s_b_h___m_i_d_i__inherit__graph.png | Bin 3076 -> 3334 bytes class_u_s_b_h_i_d-members.html | 51 +- class_u_s_b_h_i_d.html | 199 +- class_u_s_b_h_i_d__coll__graph.map | 8 +- class_u_s_b_h_i_d__coll__graph.md5 | 2 +- class_u_s_b_h_i_d__coll__graph.png | Bin 9349 -> 10755 bytes class_u_s_b_h_i_d__inherit__graph.map | 14 +- class_u_s_b_h_i_d__inherit__graph.md5 | 2 +- class_u_s_b_h_i_d__inherit__graph.png | Bin 14352 -> 16899 bytes class_u_s_b_hub-members.html | 51 +- class_u_s_b_hub.html | 151 +- class_u_s_b_hub__coll__graph.map | 2 +- class_u_s_b_hub__coll__graph.md5 | 2 +- class_u_s_b_hub__coll__graph.png | Bin 2947 -> 3197 bytes class_u_s_b_hub__inherit__graph.map | 2 +- class_u_s_b_hub__inherit__graph.md5 | 2 +- class_u_s_b_hub__inherit__graph.png | Bin 2947 -> 3197 bytes class_u_s_b_read_parser-members.html | 51 +- class_u_s_b_read_parser.html | 65 +- class_u_s_b_read_parser__inherit__graph.map | 8 +- class_u_s_b_read_parser__inherit__graph.md5 | 2 +- class_u_s_b_read_parser__inherit__graph.png | Bin 13142 -> 16206 bytes class_universal_report_parser-members.html | 51 +- class_universal_report_parser.html | 63 +- ...s_universal_report_parser__coll__graph.map | 2 +- ...s_universal_report_parser__coll__graph.md5 | 2 +- ...s_universal_report_parser__coll__graph.png | Bin 3332 -> 3624 bytes ...niversal_report_parser__inherit__graph.map | 2 +- ...niversal_report_parser__inherit__graph.md5 | 2 +- ...niversal_report_parser__inherit__graph.png | Bin 3332 -> 3624 bytes class_usb_config_xtracter-members.html | 51 +- class_usb_config_xtracter.html | 87 +- class_usb_config_xtracter__inherit__graph.map | 28 +- class_usb_config_xtracter__inherit__graph.md5 | 2 +- class_usb_config_xtracter__inherit__graph.png | Bin 23973 -> 29671 bytes class_w_i_i-members.html | 51 +- class_w_i_i.html | 507 +- class_w_i_i__coll__graph.map | 14 +- class_w_i_i__coll__graph.md5 | 2 +- class_w_i_i__coll__graph.png | Bin 15516 -> 17576 bytes class_w_i_i__inherit__graph.map | 2 +- class_w_i_i__inherit__graph.md5 | 2 +- class_w_i_i__inherit__graph.png | Bin 2228 -> 2393 bytes class_x_b_o_x_o_l_d-members.html | 51 +- class_x_b_o_x_o_l_d.html | 165 +- class_x_b_o_x_o_l_d__coll__graph.map | 8 +- class_x_b_o_x_o_l_d__coll__graph.md5 | 2 +- class_x_b_o_x_o_l_d__coll__graph.png | Bin 9243 -> 10235 bytes class_x_b_o_x_o_l_d__inherit__graph.map | 2 +- class_x_b_o_x_o_l_d__inherit__graph.md5 | 2 +- class_x_b_o_x_o_l_d__inherit__graph.png | Bin 3026 -> 3324 bytes class_x_b_o_x_o_n_e-members.html | 51 +- class_x_b_o_x_o_n_e.html | 205 +- class_x_b_o_x_o_n_e__coll__graph.map | 10 +- class_x_b_o_x_o_n_e__coll__graph.md5 | 2 +- class_x_b_o_x_o_n_e__coll__graph.png | Bin 11985 -> 13683 bytes class_x_b_o_x_o_n_e__inherit__graph.map | 4 +- class_x_b_o_x_o_n_e__inherit__graph.md5 | 2 +- class_x_b_o_x_o_n_e__inherit__graph.png | Bin 5574 -> 5967 bytes class_x_b_o_x_o_n_e_s_b_t-members.html | 51 +- class_x_b_o_x_o_n_e_s_b_t.html | 107 +- class_x_b_o_x_o_n_e_s_b_t__coll__graph.map | 18 +- class_x_b_o_x_o_n_e_s_b_t__coll__graph.md5 | 2 +- class_x_b_o_x_o_n_e_s_b_t__coll__graph.png | Bin 20814 -> 21165 bytes class_x_b_o_x_o_n_e_s_b_t__inherit__graph.map | 6 +- class_x_b_o_x_o_n_e_s_b_t__inherit__graph.md5 | 2 +- class_x_b_o_x_o_n_e_s_b_t__inherit__graph.png | Bin 7233 -> 8254 bytes class_x_b_o_x_o_n_e_s_parser-members.html | 51 +- class_x_b_o_x_o_n_e_s_parser.html | 91 +- ...x_b_o_x_o_n_e_s_parser__inherit__graph.map | 2 +- ...x_b_o_x_o_n_e_s_parser__inherit__graph.md5 | 2 +- ...x_b_o_x_o_n_e_s_parser__inherit__graph.png | Bin 3576 -> 3658 bytes class_x_b_o_x_r_e_c_v-members.html | 51 +- class_x_b_o_x_r_e_c_v.html | 231 +- class_x_b_o_x_r_e_c_v__coll__graph.map | 8 +- class_x_b_o_x_r_e_c_v__coll__graph.md5 | 2 +- class_x_b_o_x_r_e_c_v__coll__graph.png | Bin 9593 -> 10661 bytes class_x_b_o_x_r_e_c_v__inherit__graph.map | 2 +- class_x_b_o_x_r_e_c_v__inherit__graph.md5 | 2 +- class_x_b_o_x_r_e_c_v__inherit__graph.png | Bin 3338 -> 3692 bytes class_x_b_o_x_u_s_b-members.html | 51 +- class_x_b_o_x_u_s_b.html | 201 +- class_x_b_o_x_u_s_b__coll__graph.map | 8 +- class_x_b_o_x_u_s_b__coll__graph.md5 | 2 +- class_x_b_o_x_u_s_b__coll__graph.png | Bin 9452 -> 10406 bytes class_x_b_o_x_u_s_b__inherit__graph.map | 2 +- class_x_b_o_x_u_s_b__inherit__graph.md5 | 2 +- class_x_b_o_x_u_s_b__inherit__graph.png | Bin 3166 -> 3475 bytes class_x_r21_b1411-members.html | 51 +- class_x_r21_b1411.html | 135 +- class_x_r21_b1411__coll__graph.map | 16 +- class_x_r21_b1411__coll__graph.md5 | 2 +- class_x_r21_b1411__coll__graph.png | Bin 21055 -> 21578 bytes class_x_r21_b1411__inherit__graph.map | 6 +- class_x_r21_b1411__inherit__graph.md5 | 2 +- class_x_r21_b1411__inherit__graph.png | Bin 6995 -> 8390 bytes classes.html | 138 +- confdescparser_8h.html | 73 +- confdescparser_8h_source.html | 49 +- controller_enums_8h.html | 423 +- controller_enums_8h__dep__incl.map | 50 +- controller_enums_8h__dep__incl.png | Bin 38705 -> 45011 bytes controller_enums_8h_source.html | 49 +- doxygen.css | 139 +- files.html | 49 +- functions.html | 92 +- functions_a.html | 92 +- functions_b.html | 92 +- functions_c.html | 92 +- functions_d.html | 92 +- functions_e.html | 92 +- functions_enum.html | 61 +- functions_eval.html | 61 +- functions_f.html | 92 +- functions_func.html | 89 +- functions_func_b.html | 89 +- functions_func_c.html | 89 +- functions_func_d.html | 89 +- functions_func_e.html | 89 +- functions_func_f.html | 89 +- functions_func_g.html | 89 +- functions_func_h.html | 89 +- functions_func_i.html | 89 +- functions_func_k.html | 89 +- functions_func_l.html | 89 +- functions_func_m.html | 89 +- functions_func_n.html | 89 +- functions_func_o.html | 89 +- functions_func_p.html | 89 +- functions_func_r.html | 89 +- functions_func_s.html | 89 +- functions_func_t.html | 89 +- functions_func_u.html | 89 +- functions_func_v.html | 89 +- functions_func_w.html | 89 +- functions_func_x.html | 89 +- functions_g.html | 92 +- functions_h.html | 92 +- functions_i.html | 92 +- functions_k.html | 92 +- functions_l.html | 92 +- functions_m.html | 92 +- functions_n.html | 92 +- functions_o.html | 92 +- functions_p.html | 92 +- functions_q.html | 92 +- functions_r.html | 92 +- functions_s.html | 92 +- functions_t.html | 92 +- functions_type.html | 61 +- functions_u.html | 92 +- functions_v.html | 92 +- functions_vars.html | 92 +- functions_vars_a.html | 92 +- functions_vars_b.html | 92 +- functions_vars_c.html | 92 +- functions_vars_d.html | 92 +- functions_vars_e.html | 92 +- functions_vars_f.html | 92 +- functions_vars_g.html | 92 +- functions_vars_h.html | 92 +- functions_vars_i.html | 92 +- functions_vars_k.html | 92 +- functions_vars_l.html | 92 +- functions_vars_m.html | 92 +- functions_vars_n.html | 92 +- functions_vars_o.html | 92 +- functions_vars_p.html | 92 +- functions_vars_q.html | 92 +- functions_vars_r.html | 92 +- functions_vars_s.html | 92 +- functions_vars_t.html | 92 +- functions_vars_u.html | 92 +- functions_vars_v.html | 92 +- functions_vars_w.html | 92 +- functions_vars_x.html | 92 +- functions_vars_y.html | 92 +- functions_w.html | 92 +- functions_x.html | 92 +- functions_y.html | 92 +- globals.html | 92 +- globals_a.html | 92 +- globals_b.html | 92 +- globals_c.html | 92 +- globals_d.html | 92 +- globals_defs.html | 90 +- globals_defs_a.html | 90 +- globals_defs_b.html | 90 +- globals_defs_c.html | 90 +- globals_defs_d.html | 90 +- globals_defs_e.html | 90 +- globals_defs_f.html | 90 +- globals_defs_g.html | 90 +- globals_defs_h.html | 90 +- globals_defs_i.html | 90 +- globals_defs_j.html | 90 +- globals_defs_k.html | 90 +- globals_defs_l.html | 90 +- globals_defs_m.html | 90 +- globals_defs_n.html | 90 +- globals_defs_o.html | 90 +- globals_defs_p.html | 90 +- globals_defs_r.html | 90 +- globals_defs_s.html | 90 +- globals_defs_t.html | 90 +- globals_defs_u.html | 90 +- globals_defs_v.html | 90 +- globals_defs_w.html | 90 +- globals_defs_x.html | 90 +- globals_e.html | 92 +- globals_enum.html | 60 +- globals_eval.html | 130 +- globals_f.html | 92 +- globals_func.html | 60 +- globals_g.html | 92 +- globals_h.html | 92 +- globals_i.html | 92 +- globals_j.html | 92 +- globals_k.html | 92 +- globals_l.html | 92 +- globals_m.html | 92 +- globals_n.html | 92 +- globals_o.html | 92 +- globals_p.html | 92 +- globals_r.html | 92 +- globals_s.html | 92 +- globals_t.html | 92 +- globals_type.html | 60 +- globals_u.html | 92 +- globals_v.html | 92 +- globals_vars.html | 71 +- globals_vars_r.html | 71 +- globals_vars_u.html | 71 +- globals_vars_w.html | 71 +- globals_vars_x.html | 71 +- globals_w.html | 92 +- globals_x.html | 92 +- globals_y.html | 92 +- globals_z.html | 92 +- graph_legend.html | 51 +- graph_legend.png | Bin 17247 -> 19465 bytes hexdump_8h.html | 55 +- hexdump_8h_source.html | 49 +- hidboot_8cpp.html | 57 +- hidboot_8cpp__incl.map | 8 +- hidboot_8cpp__incl.md5 | 2 +- hidboot_8cpp__incl.png | Bin 8390 -> 8903 bytes hidboot_8cpp_source.html | 49 +- hidboot_8h.html | 129 +- hidboot_8h__dep__incl.map | 8 +- hidboot_8h__dep__incl.md5 | 2 +- hidboot_8h__dep__incl.png | Bin 9325 -> 10116 bytes hidboot_8h__incl.map | 6 +- hidboot_8h__incl.md5 | 2 +- hidboot_8h__incl.png | Bin 7847 -> 6961 bytes hidboot_8h_source.html | 73 +- hidcomposite_8cpp.html | 57 +- hidcomposite_8cpp__incl.map | 8 +- hidcomposite_8cpp__incl.md5 | 2 +- hidcomposite_8cpp__incl.png | Bin 10276 -> 11009 bytes hidcomposite_8cpp_source.html | 49 +- hidcomposite_8h.html | 57 +- hidcomposite_8h__dep__incl.map | 2 +- hidcomposite_8h__dep__incl.md5 | 2 +- hidcomposite_8h__dep__incl.png | Bin 2862 -> 3600 bytes hidcomposite_8h__incl.map | 6 +- hidcomposite_8h__incl.md5 | 2 +- hidcomposite_8h__incl.png | Bin 7737 -> 8069 bytes hidcomposite_8h_source.html | 49 +- hidescriptorparser_8cpp.html | 57 +- hidescriptorparser_8cpp__incl.map | 8 +- hidescriptorparser_8cpp__incl.md5 | 2 +- hidescriptorparser_8cpp__incl.png | Bin 9693 -> 10342 bytes hidescriptorparser_8cpp_source.html | 51 +- hidescriptorparser_8h.html | 57 +- hidescriptorparser_8h__dep__incl.map | 2 +- hidescriptorparser_8h__dep__incl.md5 | 2 +- hidescriptorparser_8h__dep__incl.png | Bin 3537 -> 3584 bytes hidescriptorparser_8h__incl.map | 6 +- hidescriptorparser_8h__incl.md5 | 2 +- hidescriptorparser_8h__incl.png | Bin 7951 -> 9171 bytes hidescriptorparser_8h_source.html | 49 +- hiduniversal_8cpp.html | 57 +- hiduniversal_8cpp__incl.map | 8 +- hiduniversal_8cpp__incl.md5 | 2 +- hiduniversal_8cpp__incl.png | Bin 9343 -> 10919 bytes hiduniversal_8cpp_source.html | 49 +- hiduniversal_8h.html | 63 +- hiduniversal_8h__dep__incl.map | 8 +- hiduniversal_8h__dep__incl.md5 | 2 +- hiduniversal_8h__dep__incl.png | Bin 8980 -> 9529 bytes hiduniversal_8h__incl.map | 6 +- hiduniversal_8h__incl.md5 | 2 +- hiduniversal_8h__incl.png | Bin 8357 -> 7861 bytes hiduniversal_8h_source.html | 49 +- hidusagestr_8h.html | 5269 +++++++++++------ hidusagestr_8h__dep__incl.map | 64 +- hidusagestr_8h__dep__incl.md5 | 2 +- hidusagestr_8h__dep__incl.png | Bin 54252 -> 64775 bytes hidusagestr_8h__incl.map | 2 +- hidusagestr_8h__incl.md5 | 2 +- hidusagestr_8h__incl.png | Bin 2543 -> 2744 bytes hidusagestr_8h_source.html | 49 +- hidusagetitlearrays_8cpp.html | 59 +- hidusagetitlearrays_8cpp__incl.map | 4 +- hidusagetitlearrays_8cpp__incl.md5 | 2 +- hidusagetitlearrays_8cpp__incl.png | Bin 4771 -> 5298 bytes hidusagetitlearrays_8cpp_source.html | 49 +- hierarchy.html | 51 +- index.html | 65 +- inherit_graph_0.map | 2 +- inherit_graph_0.md5 | 2 +- inherit_graph_0.png | Bin 1397 -> 1847 bytes inherit_graph_1.map | 6 +- inherit_graph_1.md5 | 2 +- inherit_graph_1.png | Bin 8442 -> 8434 bytes inherit_graph_10.map | 2 +- inherit_graph_10.md5 | 2 +- inherit_graph_10.png | Bin 1157 -> 1362 bytes inherit_graph_11.map | 2 +- inherit_graph_11.md5 | 2 +- inherit_graph_11.png | Bin 1588 -> 1847 bytes inherit_graph_12.map | 2 +- inherit_graph_12.md5 | 2 +- inherit_graph_12.png | Bin 1206 -> 1667 bytes inherit_graph_13.map | 4 +- inherit_graph_13.md5 | 2 +- inherit_graph_13.png | Bin 2551 -> 2999 bytes inherit_graph_14.map | 2 +- inherit_graph_14.md5 | 2 +- inherit_graph_14.png | Bin 1850 -> 2171 bytes inherit_graph_15.map | 2 +- inherit_graph_15.md5 | 2 +- inherit_graph_15.png | Bin 663 -> 837 bytes inherit_graph_16.map | 2 +- inherit_graph_16.md5 | 2 +- inherit_graph_16.png | Bin 1428 -> 1732 bytes inherit_graph_17.map | 4 +- inherit_graph_17.md5 | 2 +- inherit_graph_17.png | Bin 6836 -> 7822 bytes inherit_graph_18.map | 2 +- inherit_graph_18.md5 | 2 +- inherit_graph_18.png | Bin 2010 -> 2395 bytes inherit_graph_19.map | 2 +- inherit_graph_19.md5 | 2 +- inherit_graph_19.png | Bin 1030 -> 1125 bytes inherit_graph_2.map | 2 +- inherit_graph_2.md5 | 2 +- inherit_graph_2.png | Bin 1032 -> 1322 bytes inherit_graph_20.map | 8 +- inherit_graph_20.md5 | 2 +- inherit_graph_20.png | Bin 7180 -> 8806 bytes inherit_graph_21.map | 2 +- inherit_graph_21.md5 | 2 +- inherit_graph_21.png | Bin 1209 -> 1412 bytes inherit_graph_22.map | 2 +- inherit_graph_22.md5 | 2 +- inherit_graph_22.png | Bin 980 -> 997 bytes inherit_graph_23.map | 2 +- inherit_graph_23.md5 | 2 +- inherit_graph_23.png | Bin 1311 -> 1702 bytes inherit_graph_24.map | 2 +- inherit_graph_24.md5 | 2 +- inherit_graph_24.png | Bin 1004 -> 1149 bytes inherit_graph_25.map | 2 +- inherit_graph_25.md5 | 2 +- inherit_graph_25.png | Bin 921 -> 1007 bytes inherit_graph_26.map | 2 +- inherit_graph_26.md5 | 2 +- inherit_graph_26.png | Bin 1050 -> 1256 bytes inherit_graph_27.map | 2 +- inherit_graph_27.md5 | 2 +- inherit_graph_27.png | Bin 1224 -> 1446 bytes inherit_graph_28.map | 4 +- inherit_graph_28.md5 | 2 +- inherit_graph_28.png | Bin 3113 -> 3560 bytes inherit_graph_29.map | 2 +- inherit_graph_29.md5 | 2 +- inherit_graph_29.png | Bin 1931 -> 1941 bytes inherit_graph_3.map | 2 +- inherit_graph_3.md5 | 2 +- inherit_graph_3.png | Bin 1180 -> 1290 bytes inherit_graph_30.map | 2 +- inherit_graph_30.md5 | 2 +- inherit_graph_30.png | Bin 1247 -> 1687 bytes inherit_graph_31.map | 2 +- inherit_graph_31.md5 | 2 +- inherit_graph_31.png | Bin 1159 -> 1261 bytes inherit_graph_32.map | 2 +- inherit_graph_32.md5 | 2 +- inherit_graph_32.png | Bin 1673 -> 1920 bytes inherit_graph_33.map | 2 +- inherit_graph_33.md5 | 2 +- inherit_graph_33.png | Bin 1190 -> 1385 bytes inherit_graph_34.map | 2 +- inherit_graph_34.md5 | 2 +- inherit_graph_34.png | Bin 1090 -> 1471 bytes inherit_graph_35.map | 2 +- inherit_graph_35.md5 | 2 +- inherit_graph_35.png | Bin 908 -> 1026 bytes inherit_graph_36.map | 2 +- inherit_graph_36.md5 | 2 +- inherit_graph_36.png | Bin 1045 -> 1236 bytes inherit_graph_37.map | 2 +- inherit_graph_37.md5 | 2 +- inherit_graph_37.png | Bin 964 -> 1091 bytes inherit_graph_38.map | 2 +- inherit_graph_38.md5 | 2 +- inherit_graph_38.png | Bin 1455 -> 1562 bytes inherit_graph_39.md5 | 2 +- inherit_graph_39.png | Bin 906 -> 1073 bytes inherit_graph_4.map | 2 +- inherit_graph_4.md5 | 2 +- inherit_graph_4.png | Bin 1817 -> 2220 bytes inherit_graph_40.map | 2 +- inherit_graph_40.md5 | 2 +- inherit_graph_40.png | Bin 1501 -> 1757 bytes inherit_graph_41.map | 2 +- inherit_graph_41.md5 | 2 +- inherit_graph_41.png | Bin 827 -> 1074 bytes inherit_graph_42.map | 2 +- inherit_graph_42.md5 | 2 +- inherit_graph_42.png | Bin 1907 -> 2240 bytes inherit_graph_43.map | 2 +- inherit_graph_43.md5 | 2 +- inherit_graph_43.png | Bin 1580 -> 1701 bytes inherit_graph_44.map | 2 +- inherit_graph_44.md5 | 2 +- inherit_graph_44.png | Bin 1180 -> 1408 bytes inherit_graph_45.map | 2 +- inherit_graph_45.md5 | 2 +- inherit_graph_45.png | Bin 1054 -> 1128 bytes inherit_graph_46.map | 2 +- inherit_graph_46.md5 | 2 +- inherit_graph_46.png | Bin 1106 -> 1372 bytes inherit_graph_47.map | 2 +- inherit_graph_47.md5 | 2 +- inherit_graph_47.png | Bin 2202 -> 2383 bytes inherit_graph_48.map | 2 +- inherit_graph_48.md5 | 2 +- inherit_graph_48.png | Bin 1634 -> 2068 bytes inherit_graph_49.map | 2 +- inherit_graph_49.md5 | 2 +- inherit_graph_49.png | Bin 1646 -> 1953 bytes inherit_graph_5.map | 2 +- inherit_graph_5.md5 | 2 +- inherit_graph_5.png | Bin 957 -> 1163 bytes inherit_graph_50.map | 2 +- inherit_graph_50.md5 | 2 +- inherit_graph_50.png | Bin 1448 -> 1708 bytes inherit_graph_51.map | 2 +- inherit_graph_51.md5 | 2 +- inherit_graph_51.png | Bin 1954 -> 2108 bytes inherit_graph_52.map | 2 +- inherit_graph_52.md5 | 2 +- inherit_graph_52.png | Bin 1140 -> 1228 bytes inherit_graph_53.map | 2 +- inherit_graph_53.md5 | 2 +- inherit_graph_53.png | Bin 1481 -> 1614 bytes inherit_graph_54.map | 10 +- inherit_graph_54.md5 | 2 +- inherit_graph_54.png | Bin 14648 -> 16219 bytes inherit_graph_55.map | 2 +- inherit_graph_55.md5 | 2 +- inherit_graph_55.png | Bin 1655 -> 1903 bytes inherit_graph_56.map | 2 +- inherit_graph_56.md5 | 2 +- inherit_graph_56.png | Bin 1606 -> 1721 bytes inherit_graph_57.map | 62 +- inherit_graph_57.md5 | 2 +- inherit_graph_57.png | Bin 95605 -> 98343 bytes inherit_graph_6.map | 2 +- inherit_graph_6.md5 | 2 +- inherit_graph_6.png | Bin 846 -> 933 bytes inherit_graph_7.map | 2 +- inherit_graph_7.md5 | 2 +- inherit_graph_7.png | Bin 830 -> 986 bytes inherit_graph_8.md5 | 2 +- inherit_graph_8.png | Bin 825 -> 930 bytes inherit_graph_9.map | 2 +- inherit_graph_9.md5 | 2 +- inherit_graph_9.png | Bin 1300 -> 1549 bytes inherits.html | 247 +- jquery.js | 35 +- macros_8h.html | 219 +- macros_8h__dep__incl.map | 2 +- macros_8h__dep__incl.png | Bin 2247 -> 2378 bytes macros_8h_source.html | 49 +- masstorage_8cpp.html | 53 +- masstorage_8cpp__incl.map | 4 +- masstorage_8cpp__incl.md5 | 2 +- masstorage_8cpp__incl.png | Bin 4511 -> 4852 bytes masstorage_8cpp_source.html | 57 +- masstorage_8h.html | 827 ++- masstorage_8h__dep__incl.map | 2 +- masstorage_8h__dep__incl.md5 | 2 +- masstorage_8h__dep__incl.png | Bin 2997 -> 3292 bytes masstorage_8h__incl.map | 2 +- masstorage_8h__incl.md5 | 2 +- masstorage_8h__incl.png | Bin 2391 -> 2504 bytes masstorage_8h_source.html | 102 +- max3421e_8h.html | 949 +-- max3421e_8h_source.html | 49 +- max___l_c_d_8cpp.html | 107 +- max___l_c_d_8cpp__incl.map | 4 +- max___l_c_d_8cpp__incl.md5 | 2 +- max___l_c_d_8cpp__incl.png | Bin 8179 -> 8788 bytes max___l_c_d_8cpp_source.html | 49 +- max___l_c_d_8h.html | 221 +- max___l_c_d_8h__dep__incl.map | 2 +- max___l_c_d_8h__dep__incl.md5 | 2 +- max___l_c_d_8h__dep__incl.png | Bin 2582 -> 2845 bytes max___l_c_d_8h__incl.map | 2 +- max___l_c_d_8h__incl.md5 | 2 +- max___l_c_d_8h__incl.png | Bin 4217 -> 4093 bytes max___l_c_d_8h_source.html | 49 +- ...aReadme.html => md__wii_camera_readme.html | 43 +- menu.js | 26 + menudata.js | 173 + message_8cpp.html | 87 +- message_8cpp__incl.map | 2 +- message_8cpp__incl.md5 | 2 +- message_8cpp__incl.png | Bin 2562 -> 2774 bytes message_8cpp_source.html | 49 +- message_8h.html | 163 +- message_8h_source.html | 49 +- pages.html | 45 +- parsetools_8cpp.html | 51 +- parsetools_8cpp__incl.map | 2 +- parsetools_8cpp__incl.md5 | 2 +- parsetools_8cpp__incl.png | Bin 2512 -> 2502 bytes parsetools_8cpp_source.html | 49 +- parsetools_8h.html | 55 +- parsetools_8h_source.html | 49 +- printhex_8h.html | 91 +- printhex_8h_source.html | 49 +- search/all_0.html | 2 +- search/all_1.html | 2 +- search/all_10.html | 2 +- search/all_11.html | 2 +- search/all_12.html | 2 +- search/all_13.html | 2 +- search/all_14.html | 2 +- search/all_15.html | 2 +- search/all_15.js | 2 +- search/all_16.html | 2 +- search/all_17.html | 2 +- search/all_17.js | 2 +- search/all_18.html | 2 +- search/all_19.html | 2 +- search/all_1a.html | 2 +- search/all_2.html | 2 +- search/all_3.html | 2 +- search/all_4.html | 2 +- search/all_5.html | 2 +- search/all_6.html | 2 +- search/all_7.html | 2 +- search/all_8.html | 2 +- search/all_9.html | 2 +- search/all_a.html | 2 +- search/all_b.html | 2 +- search/all_c.html | 2 +- search/all_d.html | 2 +- search/all_e.html | 2 +- search/all_f.html | 2 +- search/classes_0.html | 2 +- search/classes_1.html | 2 +- search/classes_10.html | 2 +- search/classes_2.html | 2 +- search/classes_3.html | 2 +- search/classes_4.html | 2 +- search/classes_5.html | 2 +- search/classes_6.html | 2 +- search/classes_7.html | 2 +- search/classes_8.html | 2 +- search/classes_9.html | 2 +- search/classes_a.html | 2 +- search/classes_b.html | 2 +- search/classes_c.html | 2 +- search/classes_d.html | 2 +- search/classes_e.html | 2 +- search/classes_f.html | 2 +- search/defines_0.html | 2 +- search/defines_1.html | 2 +- search/defines_10.html | 2 +- search/defines_11.html | 2 +- search/defines_12.html | 2 +- search/defines_13.html | 2 +- search/defines_14.html | 2 +- search/defines_15.html | 2 +- search/defines_16.html | 2 +- search/defines_17.html | 2 +- search/defines_2.html | 2 +- search/defines_3.html | 2 +- search/defines_4.html | 2 +- search/defines_5.html | 2 +- search/defines_6.html | 2 +- search/defines_7.html | 2 +- search/defines_8.html | 2 +- search/defines_9.html | 2 +- search/defines_a.html | 2 +- search/defines_b.html | 2 +- search/defines_c.html | 2 +- search/defines_d.html | 2 +- search/defines_e.html | 2 +- search/defines_f.html | 2 +- search/enums_0.html | 2 +- search/enums_1.html | 2 +- search/enums_2.html | 2 +- search/enums_3.html | 2 +- search/enums_4.html | 2 +- search/enums_5.html | 2 +- search/enums_6.html | 2 +- search/enums_7.html | 2 +- search/enums_8.html | 2 +- search/enums_9.html | 2 +- search/enums_a.html | 2 +- search/enumvalues_0.html | 2 +- search/enumvalues_1.html | 2 +- search/enumvalues_10.html | 2 +- search/enumvalues_11.html | 2 +- search/enumvalues_12.html | 2 +- search/enumvalues_13.html | 2 +- search/enumvalues_14.html | 2 +- search/enumvalues_15.html | 2 +- search/enumvalues_16.html | 2 +- search/enumvalues_2.html | 2 +- search/enumvalues_3.html | 2 +- search/enumvalues_4.html | 2 +- search/enumvalues_5.html | 2 +- search/enumvalues_6.html | 2 +- search/enumvalues_7.html | 2 +- search/enumvalues_8.html | 2 +- search/enumvalues_9.html | 2 +- search/enumvalues_a.html | 2 +- search/enumvalues_b.html | 2 +- search/enumvalues_c.html | 2 +- search/enumvalues_d.html | 2 +- search/enumvalues_e.html | 2 +- search/enumvalues_f.html | 2 +- search/files_0.html | 2 +- search/files_1.html | 2 +- search/files_2.html | 2 +- search/files_3.html | 2 +- search/files_4.html | 2 +- search/files_5.html | 2 +- search/files_6.html | 2 +- search/files_7.html | 2 +- search/files_8.html | 2 +- search/files_9.html | 2 +- search/files_a.html | 2 +- search/files_b.html | 2 +- search/functions_0.html | 2 +- search/functions_1.html | 2 +- search/functions_10.html | 2 +- search/functions_11.html | 2 +- search/functions_12.html | 2 +- search/functions_13.html | 2 +- search/functions_14.html | 2 +- search/functions_15.html | 2 +- search/functions_2.html | 2 +- search/functions_3.html | 2 +- search/functions_4.html | 2 +- search/functions_5.html | 2 +- search/functions_6.html | 2 +- search/functions_7.html | 2 +- search/functions_8.html | 2 +- search/functions_9.html | 2 +- search/functions_a.html | 2 +- search/functions_b.html | 2 +- search/functions_c.html | 2 +- search/functions_d.html | 2 +- search/functions_e.html | 2 +- search/functions_f.html | 2 +- search/pages_0.html | 2 +- search/pages_0.js | 2 +- search/pages_1.html | 2 +- search/pages_1.js | 2 +- search/search.css | 12 +- search/typedefs_0.html | 2 +- search/typedefs_1.html | 2 +- search/typedefs_2.html | 2 +- search/typedefs_3.html | 2 +- search/typedefs_4.html | 2 +- search/typedefs_5.html | 2 +- search/typedefs_6.html | 2 +- search/variables_0.html | 2 +- search/variables_1.html | 2 +- search/variables_10.html | 2 +- search/variables_11.html | 2 +- search/variables_12.html | 2 +- search/variables_13.html | 2 +- search/variables_14.html | 2 +- search/variables_15.html | 2 +- search/variables_16.html | 2 +- search/variables_17.html | 2 +- search/variables_18.html | 2 +- search/variables_2.html | 2 +- search/variables_3.html | 2 +- search/variables_4.html | 2 +- search/variables_5.html | 2 +- search/variables_6.html | 2 +- search/variables_7.html | 2 +- search/variables_8.html | 2 +- search/variables_9.html | 2 +- search/variables_a.html | 2 +- search/variables_b.html | 2 +- search/variables_c.html | 2 +- search/variables_d.html | 2 +- search/variables_e.html | 2 +- search/variables_f.html | 2 +- settings_8h.html | 141 +- settings_8h__incl.map | 4 +- settings_8h__incl.md5 | 2 +- settings_8h__incl.png | Bin 8777 -> 9470 bytes settings_8h_source.html | 51 +- sink__parser_8h.html | 55 +- sink__parser_8h_source.html | 49 +- ...t_a_c_m___f_u_n_c___d_e_s_c_r-members.html | 51 +- struct_a_c_m___f_u_n_c___d_e_s_c_r.html | 77 +- struct_b_a_s_i_c_c_d_b-members.html | 51 +- struct_b_a_s_i_c_c_d_b.html | 77 +- ...g_m_n_t___f_u_n_c___d_e_s_c_r-members.html | 51 +- ...l_l___m_g_m_n_t___f_u_n_c___d_e_s_c_r.html | 83 +- struct_c_d_b10-members.html | 51 +- struct_c_d_b10.html | 131 +- struct_c_d_b12-members.html | 51 +- struct_c_d_b12.html | 113 +- struct_c_d_b6-members.html | 51 +- struct_c_d_b6.html | 107 +- struct_c_d_b___l_b_a32__16-members.html | 51 +- struct_c_d_b___l_b_a32__16.html | 155 +- struct_c_d_b___l_b_a64__16-members.html | 51 +- struct_c_d_b___l_b_a64__16.html | 149 +- ...s_s___n_o_t_i_f_i_c_a_t_i_o_n-members.html | 51 +- ...t_c_l_a_s_s___n_o_t_i_f_i_c_a_t_i_o_n.html | 89 +- struct_capacity-members.html | 51 +- struct_capacity.html | 59 +- struct_command_block_wrapper-members.html | 51 +- struct_command_block_wrapper.html | 119 +- struct_command_block_wrapper__coll__graph.map | 2 +- struct_command_block_wrapper__coll__graph.md5 | 2 +- struct_command_block_wrapper__coll__graph.png | Bin 4245 -> 4946 bytes ..._command_block_wrapper__inherit__graph.map | 2 +- ..._command_block_wrapper__inherit__graph.md5 | 2 +- ..._command_block_wrapper__inherit__graph.png | Bin 4245 -> 4946 bytes ...ct_command_block_wrapper_base-members.html | 51 +- struct_command_block_wrapper_base.html | 91 +- ...and_block_wrapper_base__inherit__graph.map | 2 +- ...and_block_wrapper_base__inherit__graph.md5 | 2 +- ...and_block_wrapper_base__inherit__graph.png | Bin 4319 -> 4963 bytes struct_command_status_wrapper-members.html | 51 +- struct_command_status_wrapper.html | 77 +- struct_ep_info-members.html | 51 +- struct_ep_info.html | 93 +- ...o_r___l_e_n___a_n_d___t_y_p_e-members.html | 51 +- ...r_i_p_t_o_r___l_e_n___a_n_d___t_y_p_e.html | 65 +- struct_hid_item_prefix-members.html | 51 +- struct_hid_item_prefix.html | 71 +- struct_hub_descriptor-members.html | 51 +- struct_hub_descriptor.html | 123 +- struct_hub_event-members.html | 51 +- struct_hub_event.html | 81 +- struct_inquiry_response-members.html | 51 +- struct_inquiry_response.html | 269 +- struct_k_b_d_i_n_f_o-members.html | 51 +- struct_k_b_d_i_n_f_o.html | 117 +- struct_k_b_d_l_e_d_s-members.html | 51 +- struct_k_b_d_l_e_d_s.html | 89 +- struct_l_i_n_e___c_o_d_i_n_g-members.html | 51 +- struct_l_i_n_e___c_o_d_i_n_g.html | 77 +- struct_m_o_d_i_f_i_e_r_k_e_y_s-members.html | 51 +- struct_m_o_d_i_f_i_e_r_k_e_y_s.html | 101 +- struct_m_o_u_s_e_i_n_f_o-members.html | 51 +- struct_m_o_u_s_e_i_n_f_o.html | 93 +- struct_main_item_i_o_feature-members.html | 51 +- struct_main_item_i_o_feature.html | 101 +- struct_multi_value_buffer-members.html | 51 +- struct_multi_value_buffer.html | 71 +- struct_p_s4_data-members.html | 51 +- struct_p_s4_data.html | 143 +- struct_p_s4_data__coll__graph.map | 6 +- struct_p_s4_data__coll__graph.png | Bin 7380 -> 7962 bytes struct_p_s4_output-members.html | 51 +- struct_p_s4_output.html | 101 +- struct_p_s4_status-members.html | 51 +- struct_p_s4_status.html | 83 +- struct_request_sense_responce-members.html | 51 +- struct_request_sense_responce.html | 137 +- struct_s_e_t_u_p___p_k_t-members.html | 51 +- struct_s_e_t_u_p___p_k_t.html | 121 +- ...n_g_e_r___f_u_n_c___d_e_s_c_r-members.html | 51 +- ...l___r_i_n_g_e_r___f_u_n_c___d_e_s_c_r.html | 83 +- ...t_i_o_n___d_e_s_c_r_i_p_t_o_r-members.html | 51 +- ...g_u_r_a_t_i_o_n___d_e_s_c_r_i_p_t_o_r.html | 101 +- ...v_i_c_e___d_e_s_c_r_i_p_t_o_r-members.html | 51 +- ...b___d_e_v_i_c_e___d_e_s_c_r_i_p_t_o_r.html | 137 +- ...o_i_n_t___d_e_s_c_r_i_p_t_o_r-members.html | 51 +- ...e_n_d_p_o_i_n_t___d_e_s_c_r_i_p_t_o_r.html | 89 +- ...__h_i_d___d_e_s_c_r_i_p_t_o_r-members.html | 51 +- ...t_u_s_b___h_i_d___d_e_s_c_r_i_p_t_o_r.html | 95 +- ...f_a_c_e___d_e_s_c_r_i_p_t_o_r-members.html | 51 +- ...n_t_e_r_f_a_c_e___d_e_s_c_r_i_p_t_o_r.html | 107 +- struct_usb_device-members.html | 51 +- struct_usb_device.html | 81 +- struct_usb_device__coll__graph.map | 4 +- struct_usb_device__coll__graph.png | Bin 6178 -> 6674 bytes struct_usb_device_address-members.html | 51 +- struct_usb_device_address.html | 87 +- struct_xbox_one_s_data-members.html | 51 +- struct_xbox_one_s_data.html | 73 +- struct_xbox_one_s_data__coll__graph.map | 2 +- struct_xbox_one_s_data__coll__graph.png | Bin 4609 -> 5065 bytes structtouchpad_x_y-members.html | 51 +- structtouchpad_x_y.html | 87 +- structtty__features-members.html | 51 +- structtty__features.html | 99 +- tabs.css | 61 +- union_p_s4_buttons-members.html | 51 +- union_p_s4_buttons.html | 159 +- union_p_s_b_u_z_z_buttons-members.html | 51 +- union_p_s_b_u_z_z_buttons.html | 93 +- union_xbox_one_s_buttons-members.html | 51 +- union_xbox_one_s_buttons.html | 141 +- usb__ch9_8h.html | 337 +- usb__ch9_8h_source.html | 51 +- usbh__midi_8cpp.html | 53 +- usbh__midi_8cpp__incl.map | 4 +- usbh__midi_8cpp__incl.md5 | 2 +- usbh__midi_8cpp__incl.png | Bin 3602 -> 4041 bytes usbh__midi_8cpp_source.html | 51 +- usbh__midi_8h.html | 83 +- usbh__midi_8h__dep__incl.map | 2 +- usbh__midi_8h__dep__incl.md5 | 2 +- usbh__midi_8h__dep__incl.png | Bin 2288 -> 2603 bytes usbh__midi_8h__incl.map | 2 +- usbh__midi_8h__incl.md5 | 2 +- usbh__midi_8h__incl.png | Bin 1998 -> 2357 bytes usbh__midi_8h_source.html | 49 +- usbhid_8cpp.html | 55 +- usbhid_8cpp__incl.map | 6 +- usbhid_8cpp__incl.md5 | 2 +- usbhid_8cpp__incl.png | Bin 8007 -> 7712 bytes usbhid_8cpp_source.html | 49 +- usbhid_8h.html | 527 +- usbhid_8h__dep__incl.map | 60 +- usbhid_8h__dep__incl.md5 | 2 +- usbhid_8h__dep__incl.png | Bin 48980 -> 57616 bytes usbhid_8h__incl.map | 4 +- usbhid_8h__incl.md5 | 2 +- usbhid_8h__incl.png | Bin 6609 -> 6816 bytes usbhid_8h_source.html | 59 +- usbhost_8h.html | 61 +- usbhost_8h_source.html | 53 +- usbhub_8cpp.html | 59 +- usbhub_8cpp__incl.map | 4 +- usbhub_8cpp__incl.md5 | 2 +- usbhub_8cpp__incl.png | Bin 2962 -> 3216 bytes usbhub_8cpp_source.html | 49 +- usbhub_8h.html | 525 +- usbhub_8h__dep__incl.map | 2 +- usbhub_8h__dep__incl.md5 | 2 +- usbhub_8h__dep__incl.png | Bin 2063 -> 2067 bytes usbhub_8h__incl.map | 2 +- usbhub_8h__incl.md5 | 2 +- usbhub_8h__incl.png | Bin 1761 -> 1784 bytes usbhub_8h_source.html | 49 +- version__helper_8h.html | 351 +- version__helper_8h__dep__incl.map | 2 +- version__helper_8h__dep__incl.md5 | 2 +- version__helper_8h__dep__incl.png | Bin 2404 -> 2660 bytes version__helper_8h__incl.md5 | 2 +- version__helper_8h__incl.png | Bin 5141 -> 4968 bytes version__helper_8h_source.html | 49 +- xbox_enums_8h.html | 93 +- xbox_enums_8h__dep__incl.map | 12 +- xbox_enums_8h__dep__incl.md5 | 2 +- xbox_enums_8h__dep__incl.png | Bin 10810 -> 11764 bytes xbox_enums_8h__incl.map | 2 +- xbox_enums_8h__incl.md5 | 2 +- xbox_enums_8h__incl.png | Bin 2633 -> 2967 bytes xbox_enums_8h_source.html | 49 +- 1438 files changed, 23176 insertions(+), 33443 deletions(-) delete mode 100644 arrowdown.png delete mode 100644 arrowright.png rename md_WiiCameraReadme.html => md__wii_camera_readme.html (73%) create mode 100644 menu.js create mode 100644 menudata.js diff --git a/_b_t_d_8cpp.html b/_b_t_d_8cpp.html index c652f3a7..8a4bb934 100644 --- a/_b_t_d_8cpp.html +++ b/_b_t_d_8cpp.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: BTD.cpp File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + +
- - - + + +
@@ -105,7 +82,7 @@ Include dependency graph for BTD.cpp: diff --git a/_b_t_d_8cpp__incl.map b/_b_t_d_8cpp__incl.map index f7186e4f..0ccb9c58 100644 --- a/_b_t_d_8cpp__incl.map +++ b/_b_t_d_8cpp__incl.map @@ -1,6 +1,6 @@ - - - + + + diff --git a/_b_t_d_8cpp__incl.md5 b/_b_t_d_8cpp__incl.md5 index a355a3b6..34060dfc 100644 --- a/_b_t_d_8cpp__incl.md5 +++ b/_b_t_d_8cpp__incl.md5 @@ -1 +1 @@ -958bad8ed4b3f7ba0b3843a14e09d10f \ No newline at end of file +7f7897af29f53461811904a15cf045bb \ No newline at end of file diff --git a/_b_t_d_8cpp__incl.png b/_b_t_d_8cpp__incl.png index b753a3bff201eae0724a94b5cae67b002edfb33b..dc4b21565e2d38bd12c790d2745cc65e427014ee 100644 GIT binary patch literal 11790 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 literal 10782 zcmc(FbyQSQwD%yXlmgN%-3Sbw(%nd>2!jI%44on%Aky6_LkkR@f`9_jH8e!F{TnYiGrx=w5}@rKA!CMEp>oBmad^*Fd4Q{ELrtnnwF;9n90eR&+!gYJuxMQ<58 zECYRhw{~3J!ZrpP+fSOil3n*_{KIlso>=fG(x$qD#=<%vT{)p%uBYzeS zj=3t!VEKH@UleGv{|=r#Ihr*ZNdLfqn9HBOe(v^x7{1{~p9?M!s5FXI70GnBWBwp> zfJqK^S{SIs_9MSt2$javr@)|k4JCE6Kv)h3O@vA-i29AxH#91-<+mRZbMn(GPzYgzpcGV=OIduKUCG% zn^###o0(-!nc{I#H9lR)7MrPrUn zSo^UewbYkyF81dk2&A(}D8fwz+SIhS)ESI|f|A(;+#fFJIA@pce|flER#tX-dHE^~ zPfu5ObF9+5z0GN{4S0NVLIS0jXH}OQj_8(^3i9~*;ICh7bac5o^|LcG6O)s5YLXuN zb4i@WCZ?t+pi=$v(XW+;H9ei3D4;6uv+ah4h7fELa`oP-c*oXy6i`WNX*88+QcO&h z!xY!5Q^4tFECKy%A3ZjXj*e{}2Mbx^KEE@B zYdnvv{F>TKsRbQPWMn>=a8;I;-mFA&pOT&L&gdBaJsRH*W${|~xTSotWS;kPs;RDi zf`|7dGIEDUQu?VFwT9qAQbNM`zNfK`jg7VSDiYz4o|d*glwGNTkBuGq<;$cUf4+QF znxKn8QBb^`15<@mjyC)!H)I8bSf&UGi!Fz?xj?A9FZy{&*mly z#7E!tXB{!k7@fEjG{p?{zpuKH-# zg4b(Q3e918UQN*Zg(|X)LzNxNcD25-sfU4yE92#xr@;~yF+q#7Je&Vxll*=0|ECjD zRO!bX*-qIKcggpwQ4}E(5?|`-h?}ChxF%_Qd7c+ak|wwv;k0wbXL8>Cf#Hs7JViwY7W;Wr`&J!=#t{L zTp#G9#QO?uYHuGN()hGMgY%M9bM`Y?umCx2C|o?}5mB>Bf@8#8fE~>!c0lMX06l1a{G( zfQ&c=ta~hq<~njd@*)fkkL08A9)X-2|4e`DRBa5BejM*0RiuHB3TnBAR23GI1v^^A zSdNoFjaAe&GExqh`52zR`XMdNJUu zbHJ*VL14tQhY$v(TusvF&kHH?ULap(tH%`pn^jS<@A_eh+uZ^|i7)(t~ z1))f{)gD~yW8>GaKYskUyU==bHf6q8Yp>JnML+k95>Fy3LzqcBeZb#M{ zmCNK#*Fk58b2Dcv>fN?R%>(Wb^Oe7|C9|`#%nS{M{ckUUq&&RL6#AIu1qj5z%=7{EtiHo>5Z&TGP(;wYNmJM)DA8_wd7lyq2z)*A<0R%h7te zll!)Nqsji#((t~4%<`h>!@%Gm1qDU(4ofIqj;yV-o15>&yhmncrYOunTYEHx*V^JT z*z&RFxW1kq!slW?2sH``86F;{O;m1wxWCC)h`!&Dd>Hvkh_?Mnh;(`w4!+B2&&-_1 z=5BFb>IlL+Aw&Z*8y#^Zu#tUsCOMgzng7KKIX-DAKF$_=bS3KZA{6moiR1sef4ioS z>VPax6L1?_q0JgWizW7Ma)YPDF)}>-S-7m*bGU9C85x&GR!ZFsR3~1^GB@X@a3D*( zxke?62MF)(pRd`D5whQ4Ftt5@pNootK~5$C0qk!Eq-Z>c3+KHw=tJTg=Vgj~($W?2 zOt{yVt78z@j^c1i79Q%~;z|P^=#>hMqF^Q_F`yDp3m;&_A=fM|uc%O>kHx2gC_<^J z&s{h0fVyI0ollTzO^TMIKbsvuY==m&M4*7Ita~S>1pRLI^!UvzhXakEsi{{$exQ<{ zfjL)w{^HL{w>-7IjluuL@@b$M6g|`&dD?Q+!=j_}J4>9zviYMlhBksVaoe~)Lgbx1 z?DgxEazj2~A}eaev!%e+4`Lp6^^{Wt?8IC zT-vgCvhn9iKAALL)z*G_a!jO2)s=$+M>;NY;o+X`j&qKE4MWFhx?Oz84EaNV!KgUl zzN3GXBTb#z6v7bhv6vZ?=Dl%!_DIppGA2kJy0!*;IkOrQ^Bax};_-GH#^ye~0iwp! z@;wJF^Y26Hv8*}*E6NyWsw}l_Z96O5*N69?V=!)x1CRYySs5?YaqzvBj*fb@7t?9h zy=gCZFohaT8v)BDo2YreTHtd*O)crDt15&eDqR4M$h*HTwOQ(@C>`wW<$dWg{e=py zT$m=`%fljFP*+nrdpv9jv4uw{vm=@D{pJnWg3j87Mw=f}mjO&4ow) zkF?a(pTbCltDLOO)R5J{INc_#U zh(~*5PFNS+RAsj3^{Kg_Bhknk!e9^)Bwq0k3JTXLl2WwpVX4#1xc*+X(hx^ivzU|l zD+f=EEwIK`R+vni&uPU?Wt!jMFyxe$*VVzx%0zgoj8~iXUb+5EU z;|r{)o11$Xk!SHYXlm(2bIo6cVB5qvtE5Qj9B`vlhbs&bWH~oAW#99;GuzjNSYzS> zE2mVAo)sI%EyTmY#FKDj^dLk3|@*+(^iGBQSQZ>N3uKsyNqfgBu864@1) zn9NFwi^mGbCj=N7Zm&18J=2Ms153ehT@=vaNpL9`)KUG0`!U+>d^0yo;sw0x=OpAW(F#X|wwPb9RQf54bchPrcrdNzefA z-?gQ6-@hw6IVlv&ZC>uxw>Y)88tIH_8mnw#`W!5BD`@ifc;-w&tN!hV^+9GnK5WIf zg5rP-=9%GP6D_TcO*`}nl+Q;UeopKx#fL{hrFF%{-2(%UK!N(Rzx8!YTE9K{1kque zaPf+&uSad62Z5B7A_oW6gfrZ!ySqPjvvV1u%Oai=>qGdBXlNS3JlYRs+E;rGj15y$ zQ=EUQiKYKc%ud9m=Iy|fjHu(4j1yvRfcM=xGZkP+eQitoR6gC+DqNgoU zV=ApfAgZeD9*FR~k4|ePU731jXLI#%zfv4_RiS-?u(SK%*l#H`3ke%$iXhxOK+nQX zbe)0ijEj3Yj9v%QgHEtaV1S-tUG_#-lJhZXF52g?ut~N*D#Ry6m4YhKG&j=eQGhze z#~E1dj|Ng-DaL_7F%0h?B=(c4(WhbQoMJaaAG+u~_9B4H7ETM2)AH<#67NV;$zf5> zEq?$08#tpJ4&U0HsUeRFb;tbhp`$=4OY*_QcWV@;F(iWA^LUc0DFjq~TR#ibs&Ree z*U-BqX(X2_|S7NUB+h zM&%ewH1X-J(Fq9&eSL~WtrqB23$yp7U~I*6Uh!uQkQ#(Qm<`PsVNfxcI=X)&U8XvE zE4)K{cC{Dx{G6(#R(i#-`LSqof7Sf$VIA8!`Vzdn?JIx&YpK4#={Wakx;Kwon-vDw zoaX^P#eo3QyRp$|-9(9=_16c_qm>`S!73S&%nUE(S`BF>el`UHVM~Uix(d|y9!&P<7}N;w*UR@)#>ReKrxP1dn;dm z%S%L*8`rO|t-X2k#}b^kI^$B(_3r1-pFNkuY|;1miVVt% ziY#1Qj%R!G%^t8R09aUkd!5ad+z*>NJ3I50XipUQ_PVV7=y#^*p2#`J3k;rPvYSWZ z&5oj8$2LYrMv97`va`+mk$t@z2l+cctiGu-jeW%qk(m!^Z1l3Wwq|#DnW`F)Us-uj z^F-hsnldQKgmACff^$Hc@0kW>*Nq0f}UE^`g< zuTQ7Ue4y8-Ta%NM>0qdc^HQLM-|6N^ZfLP|EWGxbCa0K*# zNq_AZJ78ed2SUs~FGA!zvl(^PIJIqLMi1w4x3vGo_+wIk25uNq;0Ua|W> z+#Tjf+dg~tjB1^q_sFpMe7MTel3l+AXR%TOjRTRI`aV5<1{RU8TS6)_KAV!k_ZF|B z96DFK^)U)J;C$DzifTu+Lz^Po2|3-DmlI>enV9@FMN)FE?^Y%0vnC5E99D$OECVhDYTY+ZMe$tQ#Clv*Ij^q`Tl@WLX4+Mf>$_baHzc{R_sogaRbd6(> zc<|kip<8fW_l>ePai@6=u{H+w4V%cs=j~+|;hS^L<1^To&$lJDr@VV#&RDON=a~}O z9zALj+WfJRet-C?HZxPs=8wTOst2zrXxoRvcpIFke6l3%B_%b5zxEu<6BAF?fgc%y z9iJs;Uo=uLf!^Izo*Tp&ka%;^ug9h~Wuz_s`}d^6m$I1tQW9=;t65De4U{BgS(zsc z_D(BZmranD?#If0mg&~on)Bvx#O`kOT7SDisc2SmSM4Lj26I%3h( zv{9Z0QqoPArH<-SgA*%j{8c%wO!Oq=JLq6(=}aCtTy|m5wwBS-GVA7oTNt)|UZlpn zSv{i=SO}(|hy?Iv((Q!`!!ehK;_TWFk~_&8j_u}yiv1baSoxY(>eqY*VDLIyVo{sf z%nXVi(%w!pDM4&oJ*?KWNFBEvZa>#>loAzn)#BBo-hTd`wgeZXX*%E0fGp4s(N`I% z0IKx&kRby-al`ieVyTYwmy93XZ(8wRL&id+%PSn6J>D)^Ad(adT_hIAySk`DkEW;p z!gGg7%G%mLQRL6D@;@!0wOoK*K^?2TXED1J(ZFn;xK2XfhjiW?Xr%I5JG-5F06;n> zVpE_)J6)=SS!w0SdcC=jApDU$Ur8A4Cn{0fC`z&_i_W%Yk2h3{!(l;%;5Y`fM-mhm z(goTgVUoy@F1m}|)QdS+$CLFvcCLyKM*7hhR+LW_6iOo^z6c6Q7dAC5FLxPv|Gl<% z)&F8%`|aD#-I;KFnwPiZW$1axjLdSfhj~}mH4vzn6Hd*}zR(#AK)gO-SArS7=h(^un&S%4JmQGHo87bAd0Eg#M5skaMyk0S z|H{iNVN^M1PxOTMNd^{!nVCDg!UPU?DS~B3&*TzJftr34Mw92Xz+qCqU&WgaxxsVZ zsr&VdnH)Es-SzmG$lqUa2TT==;pKa?H#$CE*3e+Rsq&W7c>>5j?CjYc?B97@ykIaG z>PnLC(8A4%h4`r0P2CgM+%yi$`g>YM?EK}9~uG+m1mR= znhbC*c{yC;*6R+0gWvTfM+1Z~d{o?)aio9{(oJ$7=xlCsh6 z>gx2{U@@u6SvIyTegWPpdo%i2AJ6IZ^z=M#B*?dItNnor>fk_4cBR)J+vhMvjYD&< z<>*Kj+(rj#Lb61}{Up7VOj0%+p@T+Bbx3+Tr^@G>R#{|o^>u|{d*tV}v9Wrc{vfee z^}!^WhSZ>gct%r{8HzVnqZCN~7d`iLr}jh+f>3KDLi_dn?F-Es=?JtKN)q6r&00>r09Kgv}y(^hvnv?==@+ z-zExM3wVRSn5`t8R9*98F_?2~^0*8EnPH(3|q02^Q9VwO;== zr2KNb)NIxuumbGl)C=J5?$Wu}vvdQWNUB6-ft5xt z?_lx~fZd*`XPXJyd=dl&cG=%CFS-0&Xp(sxgvuh&OMdpT001Bi2TvwFXj ztE-!B9URC!4P?l^r_*KI140`a;l13Zy9ufJ##@g-^bIKp^0CCSutZq7&KJGy#%jkV zSx{Cr+1z)075DL;<5e63pjoihv~>cr*0D$xqKt;V6{GlTU{FntUetyWfTOfb8q{uQ z5EEbDgqj+usj8BRG#dW~ee3crRH(<{E;I8pPO-`Jse;NEYH{z=O)aC_EsoAk8+&-6s_oTJW(92> zLeirkE_!-;BkGaxJjat0S1wM!&$}roaNUJF;Zi_cF>7{@A`TG24$D6~Eu#{9y}UD9 zW55W|nevGMj)!ui`AW4nQD(RE+!_^Jo6Qw}m|6ue)PRq-yZ2A?_ zRS*5SEac>bP@4#Lu<)w5u+L@!frxr%r)21Y^@TU*wpXeE9NYIB$O-g8&0iJiErkYf zdU!sK%g4!DK%*@PJLQ+gjOjOi3xww+&e}l@W9*7dH zQyOlw7E*HZUmGWYxCZzQZsA^DUVLwV*Vfn9*VSc7_<6rsTa5obI5@~|P%%!n*yh)~ z@JYY)ZZki+rL}c$cQ=W{P}|)6fn&AF7;9zg1Ly-S06*pEwff(%Vr13o&}vhFXoaTt zep59-g8leqnlmH=B*evAtE*jZFOS&u%k0kfCd-Xaj*qLWt1Hagv(nO#xrqOX*qmtK~`FVMHqJZ7d;&rm}R* z*N8Za+z5TCY*9gdYcBIJKR@y8p{cJsT-{bj|G+))GW)Bq&^HPmbOhl91OyS0k=c4y zYHCr<&CUDB-d<)wK?4uJi+$79*uX$gxNKgtJ_}J+Ru;zR`m=(ns^Lp!0jb%=r>66h z?d`^|f(aJBkVeVhEJ+JrCxdej4+wxr1FE92AA9^yUteFhskXK@Dx?3-6SCX5TKw;> zH%Ib;=wp4Ts;m2}Tb@=|zjShPnn$z|fusO;L`o{K!jI@l2qPmS@a7*~`FD@yyEGs; zo8!b!m%gvLRM%Jv6rrOh0yGKirf9sfzMho*aB*b-gv}JIYxRhn{9ZywI@eQ#fQ+2n z8}Nl9A|e1Gkx?aSlK^l=TAi1_-&`D&PHdNyutmw|t9Za*oGdKEraLMqAV8ocA|l#! zAo9C+kE-8`|Grb0r;`qchgVh-iXoI3T=2qd^is$`9T~!|R#sL3%TQ%9u6N9o5dVL0 zl44ypP!<cl_0HmAS;ZcYeO15vtLUw2+gl&wW|}h+H8nM0 zIaUFBwu=iASmqLU09^yb@r@%-VEWAcuL>pZ4wt*`@9)K^xfvK3I62jlJ=X`w0s;cK zl6RJuV`E}+hUTWH8{W;l%sj%Eyp8E!+a47lSCf&E0cImL)zI1b5b)!0NdZ8h0e$xl z>3v_u47spwuD!#3{A5|^&q8Z*`{l}td4L~QmnQ(yK!JWY#3NQ}^+rXQJfiW-)LGUCiz@VqUXjmNlW?;Q2Vs4eu_5^JC)BxA(m ze=B2k9k|`ACdI4<0HNIcR+234mxzzFpMp^3>K&hR8l8%nf*l;vfBh=4ubfo|U<|Tj zPLzd}70|Fbbu>%=4MfT5QVy=Gu0_-earN+!^ggwlrHVbIRpN8lF~}18sSEcWnxO)c zJE!E!LnA7J6+=zUtIPM|rWlL_jfI7&>FKzp7$~4-_q}ar+fe!H8kI0SzoA(lXWR8` zmi~~z3e#qz`x2aDPL2UWkn;@~+AFS9_#_}8Iji~T&*c$?P7y;x!*oGW4?Pxh2Q5zV z;N;}@v9bI0L765TWd?D?s}g+&$@|OGGy%+w0kSLr$xb;n*)FvLV<%XVUcF5O7@=fV zE}=(rkc<`~)m^48n}(_hkJmA6(Y!PYUl%~4vw&FWxN%6ba#xm?c#p0=3b3&eBNf~q z+ujb%4ltWiD8NY3NjHGOUP+_iqOccg3xjgrA__3^Od>zuvN3d@45X$=2&nd{svz6j z(*cH{_nPHl?nUpqZG zQ135Im(9a^vQ4HUd3?goq;|b~v3NiuQtLZWGUBHO31kHn)ll4%+_jjqte3B@`wt$O zj)Fjsd;j(VaL*7j?XDa(z~SFs$Y1jA;qmbl)g3w?wff+*vo*n_=>Jy2ciD6kcC|DC zzTQVGcREEMGei)R^Ycme(WJqt7XUXJ&Xr(Lx;;|3FHk~lepgWNXC$6^@Lk0$AYqv| z9)}GK+-gWh0dghj*gg-AH7q^xd1XLAy(73t8xDB%lUz@SezB1OAp^AUc;>}!ZB!g! z86QeMtft4lZxW$26L~N_wfS zH+nHe%&T70&ToIt_%(#;`>p#TS9_BZ!xM~N*bTDU*vO)R>=Ec=*v=oBG-gUx4&@UabWZGCR6&C$)%$WM{{8Nnb3E_9oAdK01L>fR+lA zZzCg1pJ0oAQ==0ku@58SZZ1UEFNPjkI0XeJXDx*H=+fsdA9}v%?04My@EpR&OV`!q z$8DZOn%Z7eB%NC@+{p3s@7Vs7cwT4Q;`6;L zD<#30m0L+|_6UvDF)`oQCqN$Cv$O?nN2@B-cmk@b<;Q+}bbHiGAuRmn?U1dwrzRe7 z@=xozk>bPsfjvT3Ge$)-CVl@Rw)^^78j*J0VR%Cdg1rH&VzNR!At~vm6H_Od%kSAJs+Aj0Wu3>Ony?FlPWhy> z5GBG06{N{F0rV1KfdU&FSwXZceTY2z=sXt0^_JxZQ0S7mRmR2&{~CZLoP2x%$Xap0 zbG*IY3AvU90?IqkUN0c%Fb=_$L&+RB%GEKp$Z=@SZ$p!AXq*|y5T15^rd%k(w9W%s zI^AlIi>ufqII1>2 z3g|cp2$*_Ih(TJ%9ot7p;6GuPrR>%DfguhJ=r+m_`nH4O#A6zGl|%%3O1XQ#;1fSf zwKxhdH<#R~@DE{&o9MBBPCcuPTQ#PXoL9aqRDZtGE4^D=LjBFEFK=cb zC*%dzO3hFnu%nH+dKs}~BrTqiZjM$Hk3kR=U{(HiI!rz-(AljzH6D;u`K15Jpc7zQ zD+TY6=37PrEa&_@3HTQfvdOIewap(u4l4@C+;9=@Pih@sF7BOmVx|znN~HaCwi9rB zV26!?&heKGh?%rNChYF8Gg4>9)IVou15Sy6z*>bNUr!Z$wb#j{ksdlb#HjRv;W1tq zrSMCOi+$nGPKX1Ys{MNZjm#s1%7y;lTzYVR-}|xm0ef%=9M* zRPMxV^9TyU+=*F;1kwdH1jMM*v$%ks0}N2$-!_pUGCmBA455yZXA0^T)E|<%icUYt z=8cYO8>v1(6TjVWycT>Qvl=Ix0U?(RD$r*`i%NTK%3e(V1vmK2Hoq}G<1NTBhFhJ?hx)YNb7SK{Z- zIDXealb7Q{OKM^wW1@0BbaryTbz>-7Lqnsotc+69|2E<|yJq8OUh)Wi5D0KmsMdL7 zSpJhw8T$e45~lMoclWy29F9{!d)Acc)YR0;)h%8t(9TtKN76wW81xsCfB`C~Y7c?X zKQ!yC{rMRW@IE>^I)8tEI9%iFA3uOUkpNB%Q#``KkmXjCDC(b`^5U+-x(V~IAam9V z7)<>Mv-M6so}QZ(uU@?Z<_aKB&uD1cZGIB?0cNQ0T}XO5#Y-n%exNT%ztRlo*YdkM zUPJyn0M7^@9D)m;uP&gvy1MG>Uz7_Ufnqr8)`4!UzQ4SNn2?aqW8cJ2gj!@vnx`ra zpeTv!>+4SKcjo|-27&Ib&wMsAJ%~A8=iHnlrp(d-!VL_-!eS{174y_1idtNRpI^67 zdl2Yb1Kg9%`5rf#>#2H1X6B(Zfk^rELq#Q}@XwzMF8+oD_JTIW4ClYMi~Vg<{I9OX zVaWxs@1=8W@!O0^9c}Hn*w~=n*%;{)6B$)i98;gQXS4+2w9wj~TI@j>1%@@~|7dwU adN8X#j8#rjdIKbBkdmCbY=w-)hyMTrGe}wh diff --git a/_b_t_d_8cpp_source.html b/_b_t_d_8cpp_source.html index f4569c38..63fd5ff5 100644 --- a/_b_t_d_8cpp_source.html +++ b/_b_t_d_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: BTD.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + +
BTD.cpp
-Go to the documentation of this file.
1 /* Copyright (C) 2012 Kristian Lauszus, TKJ Electronics. All rights reserved.
2 
3  This software may be distributed and modified under the terms of the GNU
4  General Public License version 2 (GPL2) as published by the Free Software
5  Foundation and appearing in the file GPL2.TXT included in the packaging of
6  this file. Please note that GPL2 Section 2[b] requires that all works based
7  on this software must also be made publicly available under the terms of
8  the GPL2 ("Copyleft").
9 
10  Contact information
11  -------------------
12 
13  Kristian Lauszus, TKJ Electronics
14  Web : http://www.tkjelectronics.com
15  e-mail : kristianl@tkjelectronics.com
16  */
17 
18 #include "BTD.h"
19 // To enable serial debugging see "settings.h"
20 //#define EXTRADEBUG // Uncomment to get even more debugging data
21 
22 const uint8_t BTD::BTD_CONTROL_PIPE = 0;
23 const uint8_t BTD::BTD_EVENT_PIPE = 1;
24 const uint8_t BTD::BTD_DATAIN_PIPE = 2;
25 const uint8_t BTD::BTD_DATAOUT_PIPE = 3;
26 
28 connectToWii(false),
29 pairWithWii(false),
30 connectToHIDDevice(false),
31 pairWithHIDDevice(false),
32 useSimplePairing(false),
33 pUsb(p), // Pointer to USB class instance - mandatory
34 bAddress(0), // Device address - mandatory
35 bNumEP(1), // If config descriptor needs to be parsed
36 qNextPollTime(0), // Reset NextPollTime
37 pollInterval(0),
38 simple_pairing_supported(false),
39 bPollEnable(false) // Don't start polling before dongle is connected
40 {
41  for(uint8_t i = 0; i < BTD_NUM_SERVICES; i++)
42  btService[i] = NULL;
43 
44  Initialize(); // Set all variables, endpoint structs etc. to default values
45 
46  if(pUsb) // Register in USB subsystem
47  pUsb->RegisterDeviceClass(this); // Set devConfig[] entry
48 }
49 
50 uint8_t BTD::ConfigureDevice(uint8_t parent, uint8_t port, bool lowspeed) {
51  const uint8_t constBufSize = sizeof (USB_DEVICE_DESCRIPTOR);
52  uint8_t buf[constBufSize];
53  USB_DEVICE_DESCRIPTOR * udd = reinterpret_cast<USB_DEVICE_DESCRIPTOR*>(buf);
54  uint8_t rcode;
55  UsbDevice *p = NULL;
56  EpInfo *oldep_ptr = NULL;
57 
58  Initialize(); // Set all variables, endpoint structs etc. to default values
59 
60  AddressPool &addrPool = pUsb->GetAddressPool(); // Get memory address of USB device address pool
61 #ifdef EXTRADEBUG
62  Notify(PSTR("\r\nBTD ConfigureDevice"), 0x80);
63 #endif
64 
65  if(bAddress) { // Check if address has already been assigned to an instance
66 #ifdef DEBUG_USB_HOST
67  Notify(PSTR("\r\nAddress in use"), 0x80);
68 #endif
70  }
71 
72  p = addrPool.GetUsbDevicePtr(0); // Get pointer to pseudo device with address 0 assigned
73  if(!p) {
74 #ifdef DEBUG_USB_HOST
75  Notify(PSTR("\r\nAddress not found"), 0x80);
76 #endif
78  }
79 
80  if(!p->epinfo) {
81 #ifdef DEBUG_USB_HOST
82  Notify(PSTR("\r\nepinfo is null"), 0x80);
83 #endif
85  }
86 
87  oldep_ptr = p->epinfo; // Save old pointer to EP_RECORD of address 0
88  p->epinfo = epInfo; // Temporary assign new pointer to epInfo to p->epinfo in order to avoid toggle inconsistence
89  p->lowspeed = lowspeed;
90  rcode = pUsb->getDevDescr(0, 0, constBufSize, (uint8_t*)buf); // Get device descriptor - addr, ep, nbytes, data
91 
92  p->epinfo = oldep_ptr; // Restore p->epinfo
93 
94  if(rcode)
95  goto FailGetDevDescr;
96 
97  bAddress = addrPool.AllocAddress(parent, false, port); // Allocate new address according to device class
98 
99  if(!bAddress) {
100 #ifdef DEBUG_USB_HOST
101  Notify(PSTR("\r\nOut of address space"), 0x80);
102 #endif
104  }
105 
106  if (udd->bDeviceClass == 0x09) // Some dongles have an USB hub inside
107  goto FailHub;
108 
109  epInfo[0].maxPktSize = udd->bMaxPacketSize0; // Extract Max Packet Size from device descriptor
110  epInfo[1].epAddr = udd->bNumConfigurations; // Steal and abuse from epInfo structure to save memory
111 
112  VID = udd->idVendor;
113  PID = udd->idProduct;
114 
116 
117 FailHub:
118 #ifdef DEBUG_USB_HOST
119  Notify(PSTR("\r\nPlease create a hub instance in your code: \"USBHub Hub1(&Usb);\""), 0x80);
120 #endif
121  pUsb->setAddr(bAddress, 0, 0); // Reset address
123  Release();
124  return rcode;
125 
126 FailGetDevDescr:
127 #ifdef DEBUG_USB_HOST
128  NotifyFailGetDevDescr(rcode);
129 #endif
130  if(rcode != hrJERR)
132  Release();
133  return rcode;
134 };
135 
136 uint8_t BTD::Init(uint8_t parent __attribute__((unused)), uint8_t port __attribute__((unused)), bool lowspeed) {
137  uint8_t rcode;
138  uint8_t num_of_conf = epInfo[1].epAddr; // Number of configurations
139  epInfo[1].epAddr = 0;
140 
141  AddressPool &addrPool = pUsb->GetAddressPool();
142 #ifdef EXTRADEBUG
143  Notify(PSTR("\r\nBTD Init"), 0x80);
144 #endif
145  UsbDevice *p = addrPool.GetUsbDevicePtr(bAddress); // Get pointer to assigned address record
146 
147  if(!p) {
148 #ifdef DEBUG_USB_HOST
149  Notify(PSTR("\r\nAddress not found"), 0x80);
150 #endif
152  }
153 
154  delay(300); // Assign new address to the device
155 
156  rcode = pUsb->setAddr(0, 0, bAddress); // Assign new address to the device
157  if(rcode) {
158 #ifdef DEBUG_USB_HOST
159  Notify(PSTR("\r\nsetAddr: "), 0x80);
160  D_PrintHex<uint8_t > (rcode, 0x80);
161 #endif
162  p->lowspeed = false;
163  goto Fail;
164  }
165 #ifdef EXTRADEBUG
166  Notify(PSTR("\r\nAddr: "), 0x80);
167  D_PrintHex<uint8_t > (bAddress, 0x80);
168 #endif
169 
170  p->lowspeed = false;
171 
172  p = addrPool.GetUsbDevicePtr(bAddress); // Get pointer to assigned address record
173  if(!p) {
174 #ifdef DEBUG_USB_HOST
175  Notify(PSTR("\r\nAddress not found"), 0x80);
176 #endif
178  }
179 
180  p->lowspeed = lowspeed;
181 
182  rcode = pUsb->setEpInfoEntry(bAddress, 1, epInfo); // Assign epInfo to epinfo pointer - only EP0 is known
183  if(rcode)
184  goto FailSetDevTblEntry;
185 
186  if(VID == PS3_VID && (PID == PS3_PID || PID == PS3NAVIGATION_PID || PID == PS3MOVE_PID)) {
187  delay(100);
188  rcode = pUsb->setConf(bAddress, epInfo[ BTD_CONTROL_PIPE ].epAddr, 1); // We only need the Control endpoint, so we don't have to initialize the other endpoints of device
189  if(rcode)
190  goto FailSetConfDescr;
191 
192 #ifdef DEBUG_USB_HOST
193  if(PID == PS3_PID || PID == PS3NAVIGATION_PID) {
194  if(PID == PS3_PID)
195  Notify(PSTR("\r\nDualshock 3 Controller Connected"), 0x80);
196  else // It must be a navigation controller
197  Notify(PSTR("\r\nNavigation Controller Connected"), 0x80);
198  } else // It must be a Motion controller
199  Notify(PSTR("\r\nMotion Controller Connected"), 0x80);
200 #endif
201 
202  if(my_bdaddr[0] == 0x00 && my_bdaddr[1] == 0x00 && my_bdaddr[2] == 0x00 && my_bdaddr[3] == 0x00 && my_bdaddr[4] == 0x00 && my_bdaddr[5] == 0x00) {
203 #ifdef DEBUG_USB_HOST
204  Notify(PSTR("\r\nPlease plug in the dongle before trying to pair with the PS3 Controller\r\nor set the Bluetooth address in the constructor of the PS3BT class"), 0x80);
205 #endif
206  } else {
207  if(PID == PS3_PID || PID == PS3NAVIGATION_PID)
208  setBdaddr(my_bdaddr); // Set internal Bluetooth address
209  else
210  setMoveBdaddr(my_bdaddr); // Set internal Bluetooth address
211 #ifdef DEBUG_USB_HOST
212  Notify(PSTR("\r\nBluetooth Address was set to: "), 0x80);
213  for(int8_t i = 5; i > 0; i--) {
214  D_PrintHex<uint8_t > (my_bdaddr[i], 0x80);
215  Notify(PSTR(":"), 0x80);
216  }
217  D_PrintHex<uint8_t > (my_bdaddr[0], 0x80);
218 #endif
219  }
220 
221  pUsb->setConf(bAddress, epInfo[ BTD_CONTROL_PIPE ].epAddr, 0); // Reset configuration value
222  pUsb->setAddr(bAddress, 0, 0); // Reset address
223  Release(); // Release device
225  } else {
226  // Check if attached device is a Bluetooth dongle and fill endpoint data structure
227  // First interface in the configuration must have Bluetooth assigned Class/Subclass/Protocol
228  // And 3 endpoints - interrupt-IN, bulk-IN, bulk-OUT, not necessarily in this order
229  for(uint8_t i = 0; i < num_of_conf; i++) {
230  if((VID == IOGEAR_GBU521_VID && PID == IOGEAR_GBU521_PID) || (VID == BELKIN_F8T065BF_VID && PID == BELKIN_F8T065BF_PID)) {
231  ConfigDescParser<USB_CLASS_VENDOR_SPECIFIC, WI_SUBCLASS_RF, WI_PROTOCOL_BT, CP_MASK_COMPARE_ALL> confDescrParser(this); // Workaround issue with some dongles
232  rcode = pUsb->getConfDescr(bAddress, 0, i, &confDescrParser);
233  } else {
234  ConfigDescParser<USB_CLASS_WIRELESS_CTRL, WI_SUBCLASS_RF, WI_PROTOCOL_BT, CP_MASK_COMPARE_ALL> confDescrParser(this); // Set class id according to the specification
235  rcode = pUsb->getConfDescr(bAddress, 0, i, &confDescrParser);
236  }
237  if(rcode) // Check error code
238  goto FailGetConfDescr;
239  if(bNumEP >= BTD_MAX_ENDPOINTS) // All endpoints extracted
240  break;
241  }
242 
244  goto FailUnknownDevice;
245 
246  // Assign epInfo to epinfo pointer - this time all 3 endpoins
247  rcode = pUsb->setEpInfoEntry(bAddress, bNumEP, epInfo);
248  if(rcode)
249  goto FailSetDevTblEntry;
250 
251  // Set Configuration Value
252  rcode = pUsb->setConf(bAddress, epInfo[ BTD_CONTROL_PIPE ].epAddr, bConfNum);
253  if(rcode)
254  goto FailSetConfDescr;
255 
256  hci_num_reset_loops = 100; // only loop 100 times before trying to send the hci reset command
257  hci_counter = 0;
258  hci_state = HCI_INIT_STATE;
259  waitingForConnection = false;
260  bPollEnable = true;
261 
262 #ifdef DEBUG_USB_HOST
263  Notify(PSTR("\r\nBluetooth Dongle Initialized"), 0x80);
264 #endif
265  }
266  return 0; // Successful configuration
267 
268  /* Diagnostic messages */
269 FailSetDevTblEntry:
270 #ifdef DEBUG_USB_HOST
272  goto Fail;
273 #endif
274 
275 FailGetConfDescr:
276 #ifdef DEBUG_USB_HOST
278  goto Fail;
279 #endif
280 
281 FailSetConfDescr:
282 #ifdef DEBUG_USB_HOST
284 #endif
285  goto Fail;
286 
287 FailUnknownDevice:
288 #ifdef DEBUG_USB_HOST
289  NotifyFailUnknownDevice(VID, PID);
290 #endif
291  pUsb->setAddr(bAddress, 0, 0); // Reset address
293 Fail:
294 #ifdef DEBUG_USB_HOST
295  Notify(PSTR("\r\nBTD Init Failed, error code: "), 0x80);
296  NotifyFail(rcode);
297 #endif
298  Release();
299  return rcode;
300 }
301 
302 void BTD::Initialize() {
303  uint8_t i;
304  for(i = 0; i < BTD_MAX_ENDPOINTS; i++) {
305  epInfo[i].epAddr = 0;
306  epInfo[i].maxPktSize = (i) ? 0 : 8;
307  epInfo[i].bmSndToggle = 0;
308  epInfo[i].bmRcvToggle = 0;
310  }
311  for(i = 0; i < BTD_NUM_SERVICES; i++) {
312  if(btService[i])
313  btService[i]->Reset(); // Reset all Bluetooth services
314  }
315 
316  connectToWii = false;
317  incomingWii = false;
318  connectToHIDDevice = false;
319  incomingHIDDevice = false;
320  incomingPS4 = false;
321  bAddress = 0; // Clear device address
322  bNumEP = 1; // Must have to be reset to 1
323  qNextPollTime = 0; // Reset next poll time
324  pollInterval = 0;
325  bPollEnable = false; // Don't start polling before dongle is connected
326  simple_pairing_supported = false;
327 }
328 
329 /* Extracts interrupt-IN, bulk-IN, bulk-OUT endpoint information from config descriptor */
330 void BTD::EndpointXtract(uint8_t conf, uint8_t iface __attribute__((unused)), uint8_t alt, uint8_t proto __attribute__((unused)), const USB_ENDPOINT_DESCRIPTOR *pep) {
331  //ErrorMessage<uint8_t>(PSTR("Conf.Val"),conf);
332  //ErrorMessage<uint8_t>(PSTR("Iface Num"),iface);
333  //ErrorMessage<uint8_t>(PSTR("Alt.Set"),alt);
334 
335  if(alt) // Wrong interface - by BT spec, no alt setting
336  return;
337 
338  bConfNum = conf;
339  uint8_t index;
340 
341  if((pep->bmAttributes & bmUSB_TRANSFER_TYPE) == USB_TRANSFER_TYPE_INTERRUPT && (pep->bEndpointAddress & 0x80) == 0x80) { // Interrupt In endpoint found
342  index = BTD_EVENT_PIPE;
344  } else if((pep->bmAttributes & bmUSB_TRANSFER_TYPE) == USB_TRANSFER_TYPE_BULK) // Bulk endpoint found
345  index = ((pep->bEndpointAddress & 0x80) == 0x80) ? BTD_DATAIN_PIPE : BTD_DATAOUT_PIPE;
346  else
347  return;
348 
349  // Fill the rest of endpoint data structure
350  epInfo[index].epAddr = (pep->bEndpointAddress & 0x0F);
351  epInfo[index].maxPktSize = (uint8_t)pep->wMaxPacketSize;
352 #ifdef EXTRADEBUG
354 #endif
355  if(pollInterval < pep->bInterval) // Set the polling interval as the largest polling interval obtained from endpoints
356  pollInterval = pep->bInterval;
357  bNumEP++;
358 }
359 
360 void BTD::PrintEndpointDescriptor(const USB_ENDPOINT_DESCRIPTOR* ep_ptr __attribute__((unused))) {
361 #ifdef EXTRADEBUG
362  Notify(PSTR("\r\nEndpoint descriptor:"), 0x80);
363  Notify(PSTR("\r\nLength:\t\t"), 0x80);
364  D_PrintHex<uint8_t > (ep_ptr->bLength, 0x80);
365  Notify(PSTR("\r\nType:\t\t"), 0x80);
366  D_PrintHex<uint8_t > (ep_ptr->bDescriptorType, 0x80);
367  Notify(PSTR("\r\nAddress:\t"), 0x80);
368  D_PrintHex<uint8_t > (ep_ptr->bEndpointAddress, 0x80);
369  Notify(PSTR("\r\nAttributes:\t"), 0x80);
370  D_PrintHex<uint8_t > (ep_ptr->bmAttributes, 0x80);
371  Notify(PSTR("\r\nMaxPktSize:\t"), 0x80);
372  D_PrintHex<uint16_t > (ep_ptr->wMaxPacketSize, 0x80);
373  Notify(PSTR("\r\nPoll Intrv:\t"), 0x80);
374  D_PrintHex<uint8_t > (ep_ptr->bInterval, 0x80);
375 #endif
376 }
377 
378 /* Performs a cleanup after failed Init() attempt */
379 uint8_t BTD::Release() {
380  Initialize(); // Set all variables, endpoint structs etc. to default values
382  return 0;
383 }
384 
385 uint8_t BTD::Poll() {
386  if(!bPollEnable)
387  return 0;
388  if((int32_t)((uint32_t)millis() - qNextPollTime) >= 0L) { // Don't poll if shorter than polling interval
389  qNextPollTime = (uint32_t)millis() + pollInterval; // Set new poll time
390  HCI_event_task(); // Poll the HCI event pipe
391  HCI_task(); // HCI state machine
392  ACL_event_task(); // Poll the ACL input pipe too
393  }
394  return 0;
395 }
396 
398  for(uint8_t i = 0; i < BTD_NUM_SERVICES; i++)
399  if(btService[i])
400  btService[i]->disconnect();
401 };
402 
403 void BTD::HCI_event_task() {
404  uint16_t length = BULK_MAXPKTSIZE; // Request more than 16 bytes anyway, the inTransfer routine will take care of this
405  uint8_t rcode = pUsb->inTransfer(bAddress, epInfo[ BTD_EVENT_PIPE ].epAddr, &length, hcibuf, pollInterval); // Input on endpoint 1
406 
407  if(!rcode || rcode == hrNAK) { // Check for errors
408  switch(hcibuf[0]) { // Switch on event type
409  case EV_COMMAND_COMPLETE:
410  if(!hcibuf[5]) { // Check if command succeeded
411  hci_set_flag(HCI_FLAG_CMD_COMPLETE); // Set command complete flag
412  if((hcibuf[3] == 0x01) && (hcibuf[4] == 0x10)) { // Parameters from read local version information
413  hci_version = hcibuf[6]; // Used to check if it supports 2.0+EDR - see http://www.bluetooth.org/Technical/AssignedNumbers/hci.htm
414 #ifdef EXTRADEBUG
416  Notify(PSTR("\r\nHCI version: "), 0x80);
417  D_PrintHex<uint8_t > (hci_version, 0x80);
418  }
419 #endif
421  } else if((hcibuf[3] == 0x04) && (hcibuf[4] == 0x10)) { // Parameters from read local extended features
423 #ifdef EXTRADEBUG
424  Notify(PSTR("\r\nPage number: "), 0x80);
425  D_PrintHex<uint8_t > (hcibuf[6], 0x80);
426  Notify(PSTR("\r\nMaximum page number: "), 0x80);
427  D_PrintHex<uint8_t > (hcibuf[7], 0x80);
428  Notify(PSTR("\r\nExtended LMP features:"), 0x80);
429  for(uint8_t i = 0; i < 8; i++) {
430  Notify(PSTR(" "), 0x80);
431  D_PrintHex<uint8_t > (hcibuf[8 + i], 0x80);
432  }
433 #endif
434  if(hcibuf[6] == 0) { // Page 0
435 #ifdef DEBUG_USB_HOST
436  Notify(PSTR("\r\nDongle "), 0x80);
437 #endif
438  if(hcibuf[8 + 6] & (1U << 3)) {
439  simple_pairing_supported = true;
440 #ifdef DEBUG_USB_HOST
441  Notify(PSTR("supports"), 0x80);
442 #endif
443  } else {
444  simple_pairing_supported = false;
445 #ifdef DEBUG_USB_HOST
446  Notify(PSTR("does NOT support"), 0x80);
447 #endif
448  }
449 #ifdef DEBUG_USB_HOST
450  Notify(PSTR(" secure simple pairing (controller support)"), 0x80);
451 #endif
452  } else if(hcibuf[6] == 1) { // Page 1
453 #ifdef DEBUG_USB_HOST
454  Notify(PSTR("\r\nDongle "), 0x80);
455  if(hcibuf[8 + 0] & (1U << 0))
456  Notify(PSTR("supports"), 0x80);
457  else
458  Notify(PSTR("does NOT support"), 0x80);
459  Notify(PSTR(" secure simple pairing (host support)"), 0x80);
460 #endif
461  }
462  }
463 
465  } else if((hcibuf[3] == 0x09) && (hcibuf[4] == 0x10)) { // Parameters from read local bluetooth address
466  for(uint8_t i = 0; i < 6; i++)
467  my_bdaddr[i] = hcibuf[6 + i];
469  }
470  }
471  break;
472 
473  case EV_COMMAND_STATUS:
474  if(hcibuf[2]) { // Show status on serial if not OK
475 #ifdef DEBUG_USB_HOST
476  Notify(PSTR("\r\nHCI Command Failed: "), 0x80);
477  D_PrintHex<uint8_t > (hcibuf[2], 0x80);
478  Notify(PSTR("\r\nNum HCI Command Packets: "), 0x80);
479  D_PrintHex<uint8_t > (hcibuf[3], 0x80);
480  Notify(PSTR("\r\nCommand Opcode: "), 0x80);
481  D_PrintHex<uint8_t > (hcibuf[4], 0x80);
482  Notify(PSTR(" "), 0x80);
483  D_PrintHex<uint8_t > (hcibuf[5], 0x80);
484 #endif
485  }
486  break;
487 
488  case EV_INQUIRY_COMPLETE:
489  if(inquiry_counter >= 5 && (pairWithWii || pairWithHIDDevice)) {
490  inquiry_counter = 0;
491 #ifdef DEBUG_USB_HOST
492  if(pairWithWii)
493  Notify(PSTR("\r\nCouldn't find Wiimote"), 0x80);
494  else
495  Notify(PSTR("\r\nCouldn't find HID device"), 0x80);
496 #endif
497  connectToWii = false;
498  pairWithWii = false;
499  connectToHIDDevice = false;
500  pairWithHIDDevice = false;
501  hci_state = HCI_SCANNING_STATE;
502  }
503  inquiry_counter++;
504  break;
505 
506  case EV_INQUIRY_RESULT:
507  if(hcibuf[2]) { // Check that there is more than zero responses
508 #ifdef EXTRADEBUG
509  Notify(PSTR("\r\nNumber of responses: "), 0x80);
510  Notify(hcibuf[2], 0x80);
511 #endif
512  for(uint8_t i = 0; i < hcibuf[2]; i++) {
513  uint8_t offset = 8 * hcibuf[2] + 3 * i;
514 
515  for(uint8_t j = 0; j < 3; j++)
516  classOfDevice[j] = hcibuf[j + 4 + offset];
517 
518 #ifdef EXTRADEBUG
519  Notify(PSTR("\r\nClass of device: "), 0x80);
520  D_PrintHex<uint8_t > (classOfDevice[2], 0x80);
521  Notify(PSTR(" "), 0x80);
522  D_PrintHex<uint8_t > (classOfDevice[1], 0x80);
523  Notify(PSTR(" "), 0x80);
524  D_PrintHex<uint8_t > (classOfDevice[0], 0x80);
525 #endif
526 
527  if(pairWithWii && classOfDevice[2] == 0x00 && (classOfDevice[1] == 0x05) && (classOfDevice[0] & 0x0C)) { // See http://wiibrew.org/wiki/Wiimote#SDP_information
528  checkRemoteName = true; // Check remote name to distinguish between the different controllers
529 
530  for(uint8_t j = 0; j < 6; j++)
531  disc_bdaddr[j] = hcibuf[j + 3 + 6 * i];
532 
534  break;
535  } else if(pairWithHIDDevice && (classOfDevice[1] & 0x0F) == 0x05 && (classOfDevice[0] & 0xC8)) { // Check if it is a mouse, keyboard or a gamepad - see: http://bluetooth-pentest.narod.ru/software/bluetooth_class_of_device-service_generator.html
536 #ifdef DEBUG_USB_HOST
537  checkRemoteName = true; // Used to print name in the serial monitor if serial debugging is enabled
538 
539  if(classOfDevice[0] & 0x80)
540  Notify(PSTR("\r\nMouse found"), 0x80);
541  if(classOfDevice[0] & 0x40)
542  Notify(PSTR("\r\nKeyboard found"), 0x80);
543  if(classOfDevice[0] & 0x08)
544  Notify(PSTR("\r\nGamepad found"), 0x80);
545 #endif
546  for(uint8_t j = 0; j < 6; j++)
547  disc_bdaddr[j] = hcibuf[j + 3 + 6 * i];
548 
550  break;
551  }
552  }
553  }
554  break;
555 
556  case EV_CONNECT_COMPLETE:
558  if(!hcibuf[2]) { // Check if connected OK
559 #ifdef EXTRADEBUG
560  Notify(PSTR("\r\nConnection established"), 0x80);
561 #endif
562  hci_handle = hcibuf[3] | ((hcibuf[4] & 0x0F) << 8); // Store the handle for the ACL connection
563  hci_set_flag(HCI_FLAG_CONNECT_COMPLETE); // Set connection complete flag
564  } else {
565  hci_state = HCI_CHECK_DEVICE_SERVICE;
566 #ifdef DEBUG_USB_HOST
567  Notify(PSTR("\r\nConnection Failed: "), 0x80);
568  D_PrintHex<uint8_t > (hcibuf[2], 0x80);
569 #endif
570  }
571  break;
572 
574  if(!hcibuf[2]) { // Check if disconnected OK
575  hci_set_flag(HCI_FLAG_DISCONNECT_COMPLETE); // Set disconnect command complete flag
576  hci_clear_flag(HCI_FLAG_CONNECT_COMPLETE); // Clear connection complete flag
577  }
578  break;
579 
581  if(!hcibuf[2]) { // Check if reading is OK
582  for(uint8_t i = 0; i < min(sizeof (remote_name), sizeof (hcibuf) - 9); i++) {
583  remote_name[i] = hcibuf[9 + i];
584  if(remote_name[i] == '\0') // End of string
585  break;
586  }
587  // TODO: Always set '\0' in remote name!
589  }
590  break;
591 
592  case EV_INCOMING_CONNECT:
593  for(uint8_t i = 0; i < 6; i++)
594  disc_bdaddr[i] = hcibuf[i + 2];
595 
596  for(uint8_t i = 0; i < 3; i++)
597  classOfDevice[i] = hcibuf[i + 8];
598 
599  if((classOfDevice[1] & 0x0F) == 0x05 && (classOfDevice[0] & 0xC8)) { // Check if it is a mouse, keyboard or a gamepad
600 #ifdef DEBUG_USB_HOST
601  if(classOfDevice[0] & 0x80)
602  Notify(PSTR("\r\nMouse is connecting"), 0x80);
603  if(classOfDevice[0] & 0x40)
604  Notify(PSTR("\r\nKeyboard is connecting"), 0x80);
605  if(classOfDevice[0] & 0x08)
606  Notify(PSTR("\r\nGamepad is connecting"), 0x80);
607 #endif
608  incomingHIDDevice = true;
609  }
610 
611 #ifdef EXTRADEBUG
612  Notify(PSTR("\r\nClass of device: "), 0x80);
613  D_PrintHex<uint8_t > (classOfDevice[2], 0x80);
614  Notify(PSTR(" "), 0x80);
615  D_PrintHex<uint8_t > (classOfDevice[1], 0x80);
616  Notify(PSTR(" "), 0x80);
617  D_PrintHex<uint8_t > (classOfDevice[0], 0x80);
618 #endif
620  break;
621 
622  case EV_PIN_CODE_REQUEST:
623  if(pairWithWii) {
624 #ifdef DEBUG_USB_HOST
625  Notify(PSTR("\r\nPairing with Wiimote"), 0x80);
626 #endif
628  } else if(btdPin != NULL) {
629 #ifdef DEBUG_USB_HOST
630  Notify(PSTR("\r\nBluetooth pin is set too: "), 0x80);
631  NotifyStr(btdPin, 0x80);
632 #endif
634  } else {
635 #ifdef DEBUG_USB_HOST
636  Notify(PSTR("\r\nNo pin was set"), 0x80);
637 #endif
639  }
640  break;
641 
642  case EV_LINK_KEY_REQUEST:
643 #ifdef DEBUG_USB_HOST
644  Notify(PSTR("\r\nReceived Key Request"), 0x80);
645 #endif
647  break;
648 
650  if(!hcibuf[2]) { // Check if pairing was successful
651  if(pairWithWii && !connectToWii) {
652 #ifdef DEBUG_USB_HOST
653  Notify(PSTR("\r\nPairing successful with Wiimote"), 0x80);
654 #endif
655  connectToWii = true; // Used to indicate to the Wii service, that it should connect to this device
656  } else if(pairWithHIDDevice && !connectToHIDDevice) {
657 #ifdef DEBUG_USB_HOST
658  Notify(PSTR("\r\nPairing successful with HID device"), 0x80);
659 #endif
660  connectToHIDDevice = true; // Used to indicate to the BTHID service, that it should connect to this device
661  } else {
662 #ifdef EXTRADEBUG
663  Notify(PSTR("\r\nPairing was successful"), 0x80);
664 #endif
665  }
666  } else {
667 #ifdef DEBUG_USB_HOST
668  Notify(PSTR("\r\nPairing Failed: "), 0x80);
669  D_PrintHex<uint8_t > (hcibuf[2], 0x80);
670 #endif
672  hci_state = HCI_DISCONNECT_STATE;
673  }
674  break;
675 
677 #ifdef DEBUG_USB_HOST
678  Notify(PSTR("\r\nReceived IO Capability Request"), 0x80);
679 #endif
681  break;
682 
684 #ifdef EXTRADEBUG
685  Notify(PSTR("\r\nReceived IO Capability Response: "), 0x80);
686  Notify(PSTR("\r\nIO capability: "), 0x80);
687  D_PrintHex<uint8_t > (hcibuf[8], 0x80);
688  Notify(PSTR("\r\nOOB data present: "), 0x80);
689  D_PrintHex<uint8_t > (hcibuf[9], 0x80);
690  Notify(PSTR("\r\nAuthentication request: "), 0x80);
691  D_PrintHex<uint8_t > (hcibuf[10], 0x80);
692 #endif
693  break;
694 
696 #ifdef DEBUG_USB_HOST
697  Notify(PSTR("\r\nUser confirmation Request"), 0x80);
698 #ifdef EXTRADEBUG
699  Notify(PSTR(": \r\nNumeric value: "), 0x80);
700  for(uint8_t i = 0; i < 4; i++) {
701  Notify(PSTR(" "), 0x80);
702  D_PrintHex<uint8_t > (hcibuf[8 + i], 0x80);
703  }
704 #endif
705 #endif
706  // Simply confirm the connection, as the host has no "NoInputNoOutput" capabilities
708  break;
709 
711 #ifdef EXTRADEBUG
712  if(!hcibuf[2]) { // Check if connected OK
713  Notify(PSTR("\r\nSimple Pairing succeeded"), 0x80);
714  } else {
715  Notify(PSTR("\r\nSimple Pairing failed: "), 0x80);
716  D_PrintHex<uint8_t > (hcibuf[2], 0x80);
717  }
718 #endif
719  break;
720 
721  /* We will just ignore the following events */
722  case EV_MAX_SLOTS_CHANGE:
723  case EV_NUM_COMPLETE_PKT:
724  break;
725  case EV_ROLE_CHANGED:
727  case EV_LOOPBACK_COMMAND:
734 #ifdef EXTRADEBUG
735  if(hcibuf[0] != 0x00) {
736  Notify(PSTR("\r\nIgnore HCI Event: "), 0x80);
737  D_PrintHex<uint8_t > (hcibuf[0], 0x80);
738  }
739 #endif
740  break;
741 #ifdef EXTRADEBUG
742  default:
743  if(hcibuf[0] != 0x00) {
744  Notify(PSTR("\r\nUnmanaged HCI Event: "), 0x80);
745  D_PrintHex<uint8_t > (hcibuf[0], 0x80);
746  Notify(PSTR(", data: "), 0x80);
747  for(uint16_t i = 0; i < hcibuf[1]; i++) {
748  D_PrintHex<uint8_t > (hcibuf[2 + i], 0x80);
749  Notify(PSTR(" "), 0x80);
750  }
751  }
752  break;
753 #endif
754  } // Switch
755  }
756 #ifdef EXTRADEBUG
757  else {
758  Notify(PSTR("\r\nHCI event error: "), 0x80);
759  D_PrintHex<uint8_t > (rcode, 0x80);
760  }
761 #endif
762 }
763 
764 /* Poll Bluetooth and print result */
765 void BTD::HCI_task() {
766  switch(hci_state) {
767  case HCI_INIT_STATE:
768  hci_counter++;
769  if(hci_counter > hci_num_reset_loops) { // wait until we have looped x times to clear any old events
770  hci_reset();
771  hci_state = HCI_RESET_STATE;
772  hci_counter = 0;
773  }
774  break;
775 
776  case HCI_RESET_STATE:
777  hci_counter++;
779  hci_counter = 0;
780 #ifdef DEBUG_USB_HOST
781  Notify(PSTR("\r\nHCI Reset complete"), 0x80);
782 #endif
783  hci_state = HCI_CLASS_STATE;
785  } else if(hci_counter > hci_num_reset_loops) {
786  hci_num_reset_loops *= 10;
787  if(hci_num_reset_loops > 2000)
788  hci_num_reset_loops = 2000;
789 #ifdef DEBUG_USB_HOST
790  Notify(PSTR("\r\nNo response to HCI Reset"), 0x80);
791 #endif
792  hci_state = HCI_INIT_STATE;
793  hci_counter = 0;
794  }
795  break;
796 
797  case HCI_CLASS_STATE:
799 #ifdef DEBUG_USB_HOST
800  Notify(PSTR("\r\nWrite class of device"), 0x80);
801 #endif
802  hci_state = HCI_BDADDR_STATE;
803  hci_read_bdaddr();
804  }
805  break;
806 
807  case HCI_BDADDR_STATE:
809 #ifdef DEBUG_USB_HOST
810  Notify(PSTR("\r\nLocal Bluetooth Address: "), 0x80);
811  for(int8_t i = 5; i > 0; i--) {
812  D_PrintHex<uint8_t > (my_bdaddr[i], 0x80);
813  Notify(PSTR(":"), 0x80);
814  }
815  D_PrintHex<uint8_t > (my_bdaddr[0], 0x80);
816 #endif
818  hci_state = HCI_LOCAL_VERSION_STATE;
819  }
820  break;
821 
822  case HCI_LOCAL_VERSION_STATE: // The local version is used by the PS3BT class
824  if(btdName != NULL) {
826  hci_state = HCI_WRITE_NAME_STATE;
827  } else if(useSimplePairing) {
828  hci_read_local_extended_features(0); // "Requests the normal LMP features as returned by Read_Local_Supported_Features"
829  //hci_read_local_extended_features(1); // Read page 1
831  } else
832  hci_state = HCI_CHECK_DEVICE_SERVICE;
833  }
834  break;
835 
838 #ifdef DEBUG_USB_HOST
839  Notify(PSTR("\r\nThe name was set to: "), 0x80);
840  NotifyStr(btdName, 0x80);
841 #endif
842  if(useSimplePairing) {
843  hci_read_local_extended_features(0); // "Requests the normal LMP features as returned by Read_Local_Supported_Features"
844  //hci_read_local_extended_features(1); // Read page 1
846  } else
847  hci_state = HCI_CHECK_DEVICE_SERVICE;
848  }
849  break;
850 
853  if(simple_pairing_supported) {
855  hci_state = HCI_WRITE_SIMPLE_PAIRING_STATE;
856  } else
857  hci_state = HCI_CHECK_DEVICE_SERVICE;
858  }
859  break;
860 
863 #ifdef DEBUG_USB_HOST
864  Notify(PSTR("\r\nSimple pairing was enabled"), 0x80);
865 #endif
867  hci_state = HCI_SET_EVENT_MASK_STATE;
868  }
869  break;
870 
873 #ifdef DEBUG_USB_HOST
874  Notify(PSTR("\r\nSet event mask completed"), 0x80);
875 #endif
876  hci_state = HCI_CHECK_DEVICE_SERVICE;
877  }
878  break;
879 
881  if(pairWithHIDDevice || pairWithWii) { // Check if it should try to connect to a Wiimote
882 #ifdef DEBUG_USB_HOST
883  if(pairWithWii)
884  Notify(PSTR("\r\nStarting inquiry\r\nPress 1 & 2 on the Wiimote\r\nOr press the SYNC button if you are using a Wii U Pro Controller or a Wii Balance Board"), 0x80);
885  else
886  Notify(PSTR("\r\nPlease enable discovery of your device"), 0x80);
887 #endif
888  hci_inquiry();
889  hci_state = HCI_INQUIRY_STATE;
890  } else
891  hci_state = HCI_SCANNING_STATE; // Don't try to connect to a Wiimote
892  break;
893 
894  case HCI_INQUIRY_STATE:
896  hci_inquiry_cancel(); // Stop inquiry
897 #ifdef DEBUG_USB_HOST
898  if(pairWithWii)
899  Notify(PSTR("\r\nWiimote found"), 0x80);
900  else
901  Notify(PSTR("\r\nHID device found"), 0x80);
902 
903  Notify(PSTR("\r\nNow just create the instance like so:"), 0x80);
904  if(pairWithWii)
905  Notify(PSTR("\r\nWII Wii(&Btd);"), 0x80);
906  else
907  Notify(PSTR("\r\nBTHID bthid(&Btd);"), 0x80);
908 
909  Notify(PSTR("\r\nAnd then press any button on the "), 0x80);
910  if(pairWithWii)
911  Notify(PSTR("Wiimote"), 0x80);
912  else
913  Notify(PSTR("device"), 0x80);
914 #endif
915  if(checkRemoteName) {
916  hci_remote_name(); // We need to know the name to distinguish between the Wiimote, the new Wiimote with Motion Plus inside, a Wii U Pro Controller and a Wii Balance Board
917  hci_state = HCI_REMOTE_NAME_STATE;
918  } else
919  hci_state = HCI_CONNECT_DEVICE_STATE;
920  }
921  break;
922 
925 #ifdef DEBUG_USB_HOST
926  if(pairWithWii)
927  Notify(PSTR("\r\nConnecting to Wiimote"), 0x80);
928  else
929  Notify(PSTR("\r\nConnecting to HID device"), 0x80);
930 #endif
931  checkRemoteName = false;
932  hci_connect();
933  hci_state = HCI_CONNECTED_DEVICE_STATE;
934  }
935  break;
936 
940 #ifdef DEBUG_USB_HOST
941  if(pairWithWii)
942  Notify(PSTR("\r\nConnected to Wiimote"), 0x80);
943  else
944  Notify(PSTR("\r\nConnected to HID device"), 0x80);
945 #endif
946  hci_authentication_request(); // This will start the pairing with the device
947  hci_state = HCI_SCANNING_STATE;
948  } else {
949 #ifdef DEBUG_USB_HOST
950  Notify(PSTR("\r\nTrying to connect one more time..."), 0x80);
951 #endif
952  hci_connect(); // Try to connect one more time
953  }
954  }
955  break;
956 
957  case HCI_SCANNING_STATE:
959 #ifdef DEBUG_USB_HOST
960  Notify(PSTR("\r\nWait For Incoming Connection Request"), 0x80);
961 #endif
963  waitingForConnection = true;
964  hci_state = HCI_CONNECT_IN_STATE;
965  }
966  break;
967 
970  waitingForConnection = false;
971 #ifdef DEBUG_USB_HOST
972  Notify(PSTR("\r\nIncoming Connection Request"), 0x80);
973 #endif
974  hci_remote_name();
975  hci_state = HCI_REMOTE_NAME_STATE;
977  hci_state = HCI_DISCONNECT_STATE;
978  break;
979 
982 #ifdef DEBUG_USB_HOST
983  Notify(PSTR("\r\nRemote Name: "), 0x80);
984  for(uint8_t i = 0; i < strlen(remote_name); i++)
985  Notifyc(remote_name[i], 0x80);
986 #endif
987  if(strncmp((const char*)remote_name, "Nintendo", 8) == 0) {
988  incomingWii = true;
989  motionPlusInside = false;
990  wiiUProController = false;
991  pairWiiUsingSync = false;
992 #ifdef DEBUG_USB_HOST
993  Notify(PSTR("\r\nWiimote is connecting"), 0x80);
994 #endif
995  if(strncmp((const char*)remote_name, "Nintendo RVL-CNT-01-TR", 22) == 0) {
996 #ifdef DEBUG_USB_HOST
997  Notify(PSTR(" with Motion Plus Inside"), 0x80);
998 #endif
999  motionPlusInside = true;
1000  } else if(strncmp((const char*)remote_name, "Nintendo RVL-CNT-01-UC", 22) == 0) {
1001 #ifdef DEBUG_USB_HOST
1002  Notify(PSTR(" - Wii U Pro Controller"), 0x80);
1003 #endif
1004  wiiUProController = motionPlusInside = pairWiiUsingSync = true;
1005  } else if(strncmp((const char*)remote_name, "Nintendo RVL-WBC-01", 19) == 0) {
1006 #ifdef DEBUG_USB_HOST
1007  Notify(PSTR(" - Wii Balance Board"), 0x80);
1008 #endif
1009  pairWiiUsingSync = true;
1010  }
1011  }
1012  if(classOfDevice[2] == 0 && classOfDevice[1] == 0x25 && classOfDevice[0] == 0x08 && strncmp((const char*)remote_name, "Wireless Controller", 19) == 0) {
1013 #ifdef DEBUG_USB_HOST
1014  Notify(PSTR("\r\nPS4 controller is connecting"), 0x80);
1015 #endif
1016  incomingPS4 = true;
1017  }
1018  if((pairWithWii || pairWithHIDDevice) && checkRemoteName)
1019  hci_state = HCI_CONNECT_DEVICE_STATE;
1020  else {
1022  hci_state = HCI_CONNECTED_STATE;
1023  }
1024  }
1025  break;
1026 
1027  case HCI_CONNECTED_STATE:
1029 #ifdef DEBUG_USB_HOST
1030  Notify(PSTR("\r\nConnected to Device: "), 0x80);
1031  for(int8_t i = 5; i > 0; i--) {
1032  D_PrintHex<uint8_t > (disc_bdaddr[i], 0x80);
1033  Notify(PSTR(":"), 0x80);
1034  }
1035  D_PrintHex<uint8_t > (disc_bdaddr[0], 0x80);
1036 #endif
1037  if(incomingPS4)
1038  connectToHIDDevice = true; // We should always connect to the PS4 controller
1039 
1040  // Clear these flags for a new connection
1041  l2capConnectionClaimed = false;
1042  sdpConnectionClaimed = false;
1043  rfcommConnectionClaimed = false;
1044 
1045  hci_event_flag = 0;
1046  hci_state = HCI_DONE_STATE;
1047  }
1048  break;
1049 
1050  case HCI_DONE_STATE:
1051  hci_counter++;
1052  if(hci_counter > 1000) { // Wait until we have looped 1000 times to make sure that the L2CAP connection has been started
1053  hci_counter = 0;
1054  hci_state = HCI_SCANNING_STATE;
1055  }
1056  break;
1057 
1058  case HCI_DISCONNECT_STATE:
1060 #ifdef DEBUG_USB_HOST
1061  Notify(PSTR("\r\nHCI Disconnected from Device"), 0x80);
1062 #endif
1063  hci_event_flag = 0; // Clear all flags
1064 
1065  // Reset all buffers
1066  memset(hcibuf, 0, BULK_MAXPKTSIZE);
1067  memset(l2capinbuf, 0, BULK_MAXPKTSIZE);
1068 
1069  connectToWii = incomingWii = pairWithWii = false;
1070  connectToHIDDevice = incomingHIDDevice = pairWithHIDDevice = checkRemoteName = false;
1071  incomingPS4 = false;
1072 
1073  hci_state = HCI_SCANNING_STATE;
1074  }
1075  break;
1076  default:
1077  break;
1078  }
1079 }
1080 
1081 void BTD::ACL_event_task() {
1082  uint16_t length = BULK_MAXPKTSIZE;
1083  uint8_t rcode = pUsb->inTransfer(bAddress, epInfo[ BTD_DATAIN_PIPE ].epAddr, &length, l2capinbuf, pollInterval); // Input on endpoint 2
1084 
1085  if(!rcode) { // Check for errors
1086  if(length > 0) { // Check if any data was read
1087  for(uint8_t i = 0; i < BTD_NUM_SERVICES; i++) {
1088  if(btService[i])
1089  btService[i]->ACLData(l2capinbuf);
1090  }
1091  }
1092  }
1093 #ifdef EXTRADEBUG
1094  else if(rcode != hrNAK) {
1095  Notify(PSTR("\r\nACL data in error: "), 0x80);
1096  D_PrintHex<uint8_t > (rcode, 0x80);
1097  }
1098 #endif
1099  for(uint8_t i = 0; i < BTD_NUM_SERVICES; i++)
1100  if(btService[i])
1101  btService[i]->Run();
1102 }
1103 
1104 /************************************************************/
1105 /* HCI Commands */
1106 
1107 /************************************************************/
1108 void BTD::HCI_Command(uint8_t* data, uint16_t nbytes) {
1110  pUsb->ctrlReq(bAddress, epInfo[ BTD_CONTROL_PIPE ].epAddr, bmREQ_HCI_OUT, 0x00, 0x00, 0x00, 0x00, nbytes, nbytes, data, NULL);
1111 }
1112 
1114  hci_event_flag = 0; // Clear all the flags
1115  hcibuf[0] = 0x03; // HCI OCF = 3
1116  hcibuf[1] = 0x03 << 2; // HCI OGF = 3
1117  hcibuf[2] = 0x00;
1118 
1119  HCI_Command(hcibuf, 3);
1120 }
1121 
1124  hcibuf[0] = 0x1A; // HCI OCF = 1A
1125  hcibuf[1] = 0x03 << 2; // HCI OGF = 3
1126  hcibuf[2] = 0x01; // parameter length = 1
1127  if(btdName != NULL)
1128  hcibuf[3] = 0x03; // Inquiry Scan enabled. Page Scan enabled.
1129  else
1130  hcibuf[3] = 0x02; // Inquiry Scan disabled. Page Scan enabled.
1131 
1132  HCI_Command(hcibuf, 4);
1133 }
1134 
1136  hcibuf[0] = 0x1A; // HCI OCF = 1A
1137  hcibuf[1] = 0x03 << 2; // HCI OGF = 3
1138  hcibuf[2] = 0x01; // parameter length = 1
1139  hcibuf[3] = 0x00; // Inquiry Scan disabled. Page Scan disabled.
1140 
1141  HCI_Command(hcibuf, 4);
1142 }
1143 
1146  hcibuf[0] = 0x09; // HCI OCF = 9
1147  hcibuf[1] = 0x04 << 2; // HCI OGF = 4
1148  hcibuf[2] = 0x00;
1149 
1150  HCI_Command(hcibuf, 3);
1151 }
1152 
1155  hcibuf[0] = 0x01; // HCI OCF = 1
1156  hcibuf[1] = 0x04 << 2; // HCI OGF = 4
1157  hcibuf[2] = 0x00;
1158 
1159  HCI_Command(hcibuf, 3);
1160 }
1161 
1162 void BTD::hci_read_local_extended_features(uint8_t page_number) {
1164  hcibuf[0] = 0x04; // HCI OCF = 4
1165  hcibuf[1] = 0x04 << 2; // HCI OGF = 4
1166  hcibuf[2] = 0x01; // parameter length = 1
1167  hcibuf[3] = page_number;
1168 
1169  HCI_Command(hcibuf, 4);
1170 }
1171 
1174  hcibuf[0] = 0x09; // HCI OCF = 9
1175  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1176  hcibuf[2] = 0x07; // parameter length 7
1177  hcibuf[3] = disc_bdaddr[0]; // 6 octet bdaddr
1178  hcibuf[4] = disc_bdaddr[1];
1179  hcibuf[5] = disc_bdaddr[2];
1180  hcibuf[6] = disc_bdaddr[3];
1181  hcibuf[7] = disc_bdaddr[4];
1182  hcibuf[8] = disc_bdaddr[5];
1183  hcibuf[9] = 0x00; // Switch role to master
1184 
1185  HCI_Command(hcibuf, 10);
1186 }
1187 
1190  hcibuf[0] = 0x19; // HCI OCF = 19
1191  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1192  hcibuf[2] = 0x0A; // parameter length = 10
1193  hcibuf[3] = disc_bdaddr[0]; // 6 octet bdaddr
1194  hcibuf[4] = disc_bdaddr[1];
1195  hcibuf[5] = disc_bdaddr[2];
1196  hcibuf[6] = disc_bdaddr[3];
1197  hcibuf[7] = disc_bdaddr[4];
1198  hcibuf[8] = disc_bdaddr[5];
1199  hcibuf[9] = 0x01; // Page Scan Repetition Mode
1200  hcibuf[10] = 0x00; // Reserved
1201  hcibuf[11] = 0x00; // Clock offset - low byte
1202  hcibuf[12] = 0x00; // Clock offset - high byte
1203 
1204  HCI_Command(hcibuf, 13);
1205 }
1206 
1207 void BTD::hci_write_local_name(const char* name) {
1208  hcibuf[0] = 0x13; // HCI OCF = 13
1209  hcibuf[1] = 0x03 << 2; // HCI OGF = 3
1210  hcibuf[2] = strlen(name) + 1; // parameter length = the length of the string + end byte
1211  uint8_t i;
1212  for(i = 0; i < strlen(name); i++)
1213  hcibuf[i + 3] = name[i];
1214  hcibuf[i + 3] = 0x00; // End of string
1215 
1216  HCI_Command(hcibuf, 4 + strlen(name));
1217 }
1218 
1220  hcibuf[0] = 0x01; // HCI OCF = 01
1221  hcibuf[1] = 0x03 << 2; // HCI OGF = 3
1222  hcibuf[2] = 0x08;
1223  // The first 6 bytes are the default of 1FFF FFFF FFFF
1224  // However we need to set bits 48-55 for simple pairing to work
1225  hcibuf[3] = 0xFF;
1226  hcibuf[4] = 0xFF;
1227  hcibuf[5] = 0xFF;
1228  hcibuf[6] = 0xFF;
1229  hcibuf[7] = 0xFF;
1230  hcibuf[8] = 0x1F;
1231  hcibuf[9] = 0xFF; // Enable bits 48-55 used for simple pairing
1232  hcibuf[10] = 0x00;
1233 
1234  HCI_Command(hcibuf, 11);
1235 }
1236 
1238  hcibuf[0] = 0x56; // HCI OCF = 56
1239  hcibuf[1] = 0x03 << 2; // HCI OGF = 3
1240  hcibuf[2] = 1; // parameter length = 1
1241  hcibuf[3] = enable ? 1 : 0;
1242 
1243  HCI_Command(hcibuf, 4);
1244 }
1245 
1248  hcibuf[0] = 0x01;
1249  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1250  hcibuf[2] = 0x05; // Parameter Total Length = 5
1251  hcibuf[3] = 0x33; // LAP: Genera/Unlimited Inquiry Access Code (GIAC = 0x9E8B33) - see https://www.bluetooth.org/Technical/AssignedNumbers/baseband.htm
1252  hcibuf[4] = 0x8B;
1253  hcibuf[5] = 0x9E;
1254  hcibuf[6] = 0x30; // Inquiry time = 61.44 sec (maximum)
1255  hcibuf[7] = 0x0A; // 10 number of responses
1256 
1257  HCI_Command(hcibuf, 8);
1258 }
1259 
1261  hcibuf[0] = 0x02;
1262  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1263  hcibuf[2] = 0x00; // Parameter Total Length = 0
1264 
1265  HCI_Command(hcibuf, 3);
1266 }
1267 
1269  hci_connect(disc_bdaddr); // Use last discovered device
1270 }
1271 
1272 void BTD::hci_connect(uint8_t *bdaddr) {
1274  hcibuf[0] = 0x05; // HCI OCF = 5
1275  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1276  hcibuf[2] = 0x0D; // parameter Total Length = 13
1277  hcibuf[3] = bdaddr[0]; // 6 octet bdaddr (LSB)
1278  hcibuf[4] = bdaddr[1];
1279  hcibuf[5] = bdaddr[2];
1280  hcibuf[6] = bdaddr[3];
1281  hcibuf[7] = bdaddr[4];
1282  hcibuf[8] = bdaddr[5];
1283  hcibuf[9] = 0x18; // DM1 or DH1 may be used
1284  hcibuf[10] = 0xCC; // DM3, DH3, DM5, DH5 may be used
1285  hcibuf[11] = 0x01; // Page repetition mode R1
1286  hcibuf[12] = 0x00; // Reserved
1287  hcibuf[13] = 0x00; // Clock offset
1288  hcibuf[14] = 0x00; // Invalid clock offset
1289  hcibuf[15] = 0x00; // Do not allow role switch
1290 
1291  HCI_Command(hcibuf, 16);
1292 }
1293 
1295  hcibuf[0] = 0x0D; // HCI OCF = 0D
1296  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1297  hcibuf[2] = 0x17; // parameter length 23
1298  hcibuf[3] = disc_bdaddr[0]; // 6 octet bdaddr
1299  hcibuf[4] = disc_bdaddr[1];
1300  hcibuf[5] = disc_bdaddr[2];
1301  hcibuf[6] = disc_bdaddr[3];
1302  hcibuf[7] = disc_bdaddr[4];
1303  hcibuf[8] = disc_bdaddr[5];
1304  if(pairWithWii) {
1305  hcibuf[9] = 6; // Pin length is the length of the Bluetooth address
1306  if(pairWiiUsingSync) {
1307 #ifdef DEBUG_USB_HOST
1308  Notify(PSTR("\r\nPairing with Wii controller via SYNC"), 0x80);
1309 #endif
1310  for(uint8_t i = 0; i < 6; i++)
1311  hcibuf[10 + i] = my_bdaddr[i]; // The pin is the Bluetooth dongles Bluetooth address backwards
1312  } else {
1313  for(uint8_t i = 0; i < 6; i++)
1314  hcibuf[10 + i] = disc_bdaddr[i]; // The pin is the Wiimote's Bluetooth address backwards
1315  }
1316  for(uint8_t i = 16; i < 26; i++)
1317  hcibuf[i] = 0x00; // The rest should be 0
1318  } else {
1319  hcibuf[9] = strlen(btdPin); // Length of pin
1320  uint8_t i;
1321  for(i = 0; i < strlen(btdPin); i++) // The maximum size of the pin is 16
1322  hcibuf[i + 10] = btdPin[i];
1323  for(; i < 16; i++)
1324  hcibuf[i + 10] = 0x00; // The rest should be 0
1325  }
1326 
1327  HCI_Command(hcibuf, 26);
1328 }
1329 
1331  hcibuf[0] = 0x0E; // HCI OCF = 0E
1332  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1333  hcibuf[2] = 0x06; // parameter length 6
1334  hcibuf[3] = disc_bdaddr[0]; // 6 octet bdaddr
1335  hcibuf[4] = disc_bdaddr[1];
1336  hcibuf[5] = disc_bdaddr[2];
1337  hcibuf[6] = disc_bdaddr[3];
1338  hcibuf[7] = disc_bdaddr[4];
1339  hcibuf[8] = disc_bdaddr[5];
1340 
1341  HCI_Command(hcibuf, 9);
1342 }
1343 
1345  hcibuf[0] = 0x0C; // HCI OCF = 0C
1346  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1347  hcibuf[2] = 0x06; // parameter length 6
1348  hcibuf[3] = disc_bdaddr[0]; // 6 octet bdaddr
1349  hcibuf[4] = disc_bdaddr[1];
1350  hcibuf[5] = disc_bdaddr[2];
1351  hcibuf[6] = disc_bdaddr[3];
1352  hcibuf[7] = disc_bdaddr[4];
1353  hcibuf[8] = disc_bdaddr[5];
1354 
1355  HCI_Command(hcibuf, 9);
1356 }
1357 
1359  hcibuf[0] = 0x2B; // HCI OCF = 2B
1360  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1361  hcibuf[2] = 0x09;
1362  hcibuf[3] = disc_bdaddr[0]; // 6 octet bdaddr
1363  hcibuf[4] = disc_bdaddr[1];
1364  hcibuf[5] = disc_bdaddr[2];
1365  hcibuf[6] = disc_bdaddr[3];
1366  hcibuf[7] = disc_bdaddr[4];
1367  hcibuf[8] = disc_bdaddr[5];
1368  hcibuf[9] = 0x03; // NoInputNoOutput
1369  hcibuf[10] = 0x00; // OOB authentication data not present
1370  hcibuf[11] = 0x00; // MITM Protection Not Required – No Bonding. Numeric comparison with automatic accept allowed
1371 
1372  HCI_Command(hcibuf, 12);
1373 }
1374 
1376  hcibuf[0] = 0x2C; // HCI OCF = 2C
1377  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1378  hcibuf[2] = 0x06; // parameter length 6
1379  hcibuf[3] = disc_bdaddr[0]; // 6 octet bdaddr
1380  hcibuf[4] = disc_bdaddr[1];
1381  hcibuf[5] = disc_bdaddr[2];
1382  hcibuf[6] = disc_bdaddr[3];
1383  hcibuf[7] = disc_bdaddr[4];
1384  hcibuf[8] = disc_bdaddr[5];
1385 
1386  HCI_Command(hcibuf, 9);
1387 }
1388 
1390  hcibuf[0] = 0x11; // HCI OCF = 11
1391  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1392  hcibuf[2] = 0x02; // parameter length = 2
1393  hcibuf[3] = (uint8_t)(hci_handle & 0xFF); //connection handle - low byte
1394  hcibuf[4] = (uint8_t)((hci_handle >> 8) & 0x0F); //connection handle - high byte
1395 
1396  HCI_Command(hcibuf, 5);
1397 }
1398 
1399 void BTD::hci_disconnect(uint16_t handle) { // This is called by the different services
1401  hcibuf[0] = 0x06; // HCI OCF = 6
1402  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1403  hcibuf[2] = 0x03; // parameter length = 3
1404  hcibuf[3] = (uint8_t)(handle & 0xFF); //connection handle - low byte
1405  hcibuf[4] = (uint8_t)((handle >> 8) & 0x0F); //connection handle - high byte
1406  hcibuf[5] = 0x13; // reason
1407 
1408  HCI_Command(hcibuf, 6);
1409 }
1410 
1411 void BTD::hci_write_class_of_device() { // See http://bluetooth-pentest.narod.ru/software/bluetooth_class_of_device-service_generator.html
1412  hcibuf[0] = 0x24; // HCI OCF = 24
1413  hcibuf[1] = 0x03 << 2; // HCI OGF = 3
1414  hcibuf[2] = 0x03; // parameter length = 3
1415  hcibuf[3] = 0x04; // Robot
1416  hcibuf[4] = 0x08; // Toy
1417  hcibuf[5] = 0x00;
1418 
1419  HCI_Command(hcibuf, 6);
1420 }
1421 /*******************************************************************
1422  * *
1423  * HCI ACL Data Packet *
1424  * *
1425  * buf[0] buf[1] buf[2] buf[3]
1426  * 0 4 8 11 12 16 24 31 MSB
1427  * .-+-+-+-+-+-+-+-|-+-+-+-|-+-|-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-.
1428  * | HCI Handle |PB |BC | Data Total Length | HCI ACL Data Packet
1429  * .-+-+-+-+-+-+-+-|-+-+-+-|-+-|-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-.
1430  *
1431  * buf[4] buf[5] buf[6] buf[7]
1432  * 0 8 16 31 MSB
1433  * .-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-.
1434  * | Length | Channel ID | Basic L2CAP header
1435  * .-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-.
1436  *
1437  * buf[8] buf[9] buf[10] buf[11]
1438  * 0 8 16 31 MSB
1439  * .-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-.
1440  * | Code | Identifier | Length | Control frame (C-frame)
1441  * .-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-. (signaling packet format)
1442  */
1443 /************************************************************/
1444 /* L2CAP Commands */
1445 
1446 /************************************************************/
1447 void BTD::L2CAP_Command(uint16_t handle, uint8_t* data, uint8_t nbytes, uint8_t channelLow, uint8_t channelHigh) {
1448  uint8_t buf[8 + nbytes];
1449  buf[0] = (uint8_t)(handle & 0xff); // HCI handle with PB,BC flag
1450  buf[1] = (uint8_t)(((handle >> 8) & 0x0f) | 0x20);
1451  buf[2] = (uint8_t)((4 + nbytes) & 0xff); // HCI ACL total data length
1452  buf[3] = (uint8_t)((4 + nbytes) >> 8);
1453  buf[4] = (uint8_t)(nbytes & 0xff); // L2CAP header: Length
1454  buf[5] = (uint8_t)(nbytes >> 8);
1455  buf[6] = channelLow;
1456  buf[7] = channelHigh;
1457 
1458  for(uint16_t i = 0; i < nbytes; i++) // L2CAP C-frame
1459  buf[8 + i] = data[i];
1460 
1461  uint8_t rcode = pUsb->outTransfer(bAddress, epInfo[ BTD_DATAOUT_PIPE ].epAddr, (8 + nbytes), buf);
1462  if(rcode) {
1463  delay(100); // This small delay prevents it from overflowing if it fails
1464 #ifdef DEBUG_USB_HOST
1465  Notify(PSTR("\r\nError sending L2CAP message: 0x"), 0x80);
1466  D_PrintHex<uint8_t > (rcode, 0x80);
1467  Notify(PSTR(" - Channel ID: "), 0x80);
1468  D_PrintHex<uint8_t > (channelHigh, 0x80);
1469  Notify(PSTR(" "), 0x80);
1470  D_PrintHex<uint8_t > (channelLow, 0x80);
1471 #endif
1472  }
1473 }
1474 
1475 void BTD::l2cap_connection_request(uint16_t handle, uint8_t rxid, uint8_t* scid, uint16_t psm) {
1476  l2capoutbuf[0] = L2CAP_CMD_CONNECTION_REQUEST; // Code
1477  l2capoutbuf[1] = rxid; // Identifier
1478  l2capoutbuf[2] = 0x04; // Length
1479  l2capoutbuf[3] = 0x00;
1480  l2capoutbuf[4] = (uint8_t)(psm & 0xff); // PSM
1481  l2capoutbuf[5] = (uint8_t)(psm >> 8);
1482  l2capoutbuf[6] = scid[0]; // Source CID
1483  l2capoutbuf[7] = scid[1];
1484 
1485  L2CAP_Command(handle, l2capoutbuf, 8);
1486 }
1487 
1488 void BTD::l2cap_connection_response(uint16_t handle, uint8_t rxid, uint8_t* dcid, uint8_t* scid, uint8_t result) {
1489  l2capoutbuf[0] = L2CAP_CMD_CONNECTION_RESPONSE; // Code
1490  l2capoutbuf[1] = rxid; // Identifier
1491  l2capoutbuf[2] = 0x08; // Length
1492  l2capoutbuf[3] = 0x00;
1493  l2capoutbuf[4] = dcid[0]; // Destination CID
1494  l2capoutbuf[5] = dcid[1];
1495  l2capoutbuf[6] = scid[0]; // Source CID
1496  l2capoutbuf[7] = scid[1];
1497  l2capoutbuf[8] = result; // Result: Pending or Success
1498  l2capoutbuf[9] = 0x00;
1499  l2capoutbuf[10] = 0x00; // No further information
1500  l2capoutbuf[11] = 0x00;
1501 
1502  L2CAP_Command(handle, l2capoutbuf, 12);
1503 }
1504 
1505 void BTD::l2cap_config_request(uint16_t handle, uint8_t rxid, uint8_t* dcid) {
1506  l2capoutbuf[0] = L2CAP_CMD_CONFIG_REQUEST; // Code
1507  l2capoutbuf[1] = rxid; // Identifier
1508  l2capoutbuf[2] = 0x08; // Length
1509  l2capoutbuf[3] = 0x00;
1510  l2capoutbuf[4] = dcid[0]; // Destination CID
1511  l2capoutbuf[5] = dcid[1];
1512  l2capoutbuf[6] = 0x00; // Flags
1513  l2capoutbuf[7] = 0x00;
1514  l2capoutbuf[8] = 0x01; // Config Opt: type = MTU (Maximum Transmission Unit) - Hint
1515  l2capoutbuf[9] = 0x02; // Config Opt: length
1516  l2capoutbuf[10] = 0xFF; // MTU
1517  l2capoutbuf[11] = 0xFF;
1518 
1519  L2CAP_Command(handle, l2capoutbuf, 12);
1520 }
1521 
1522 void BTD::l2cap_config_response(uint16_t handle, uint8_t rxid, uint8_t* scid) {
1523  l2capoutbuf[0] = L2CAP_CMD_CONFIG_RESPONSE; // Code
1524  l2capoutbuf[1] = rxid; // Identifier
1525  l2capoutbuf[2] = 0x0A; // Length
1526  l2capoutbuf[3] = 0x00;
1527  l2capoutbuf[4] = scid[0]; // Source CID
1528  l2capoutbuf[5] = scid[1];
1529  l2capoutbuf[6] = 0x00; // Flag
1530  l2capoutbuf[7] = 0x00;
1531  l2capoutbuf[8] = 0x00; // Result
1532  l2capoutbuf[9] = 0x00;
1533  l2capoutbuf[10] = 0x01; // Config
1534  l2capoutbuf[11] = 0x02;
1535  l2capoutbuf[12] = 0xA0;
1536  l2capoutbuf[13] = 0x02;
1537 
1538  L2CAP_Command(handle, l2capoutbuf, 14);
1539 }
1540 
1541 void BTD::l2cap_disconnection_request(uint16_t handle, uint8_t rxid, uint8_t* dcid, uint8_t* scid) {
1542  l2capoutbuf[0] = L2CAP_CMD_DISCONNECT_REQUEST; // Code
1543  l2capoutbuf[1] = rxid; // Identifier
1544  l2capoutbuf[2] = 0x04; // Length
1545  l2capoutbuf[3] = 0x00;
1546  l2capoutbuf[4] = dcid[0];
1547  l2capoutbuf[5] = dcid[1];
1548  l2capoutbuf[6] = scid[0];
1549  l2capoutbuf[7] = scid[1];
1550 
1551  L2CAP_Command(handle, l2capoutbuf, 8);
1552 }
1553 
1554 void BTD::l2cap_disconnection_response(uint16_t handle, uint8_t rxid, uint8_t* dcid, uint8_t* scid) {
1555  l2capoutbuf[0] = L2CAP_CMD_DISCONNECT_RESPONSE; // Code
1556  l2capoutbuf[1] = rxid; // Identifier
1557  l2capoutbuf[2] = 0x04; // Length
1558  l2capoutbuf[3] = 0x00;
1559  l2capoutbuf[4] = dcid[0];
1560  l2capoutbuf[5] = dcid[1];
1561  l2capoutbuf[6] = scid[0];
1562  l2capoutbuf[7] = scid[1];
1563 
1564  L2CAP_Command(handle, l2capoutbuf, 8);
1565 }
1566 
1567 void BTD::l2cap_information_response(uint16_t handle, uint8_t rxid, uint8_t infoTypeLow, uint8_t infoTypeHigh) {
1568  l2capoutbuf[0] = L2CAP_CMD_INFORMATION_RESPONSE; // Code
1569  l2capoutbuf[1] = rxid; // Identifier
1570  l2capoutbuf[2] = 0x08; // Length
1571  l2capoutbuf[3] = 0x00;
1572  l2capoutbuf[4] = infoTypeLow;
1573  l2capoutbuf[5] = infoTypeHigh;
1574  l2capoutbuf[6] = 0x00; // Result = success
1575  l2capoutbuf[7] = 0x00; // Result = success
1576  l2capoutbuf[8] = 0x00;
1577  l2capoutbuf[9] = 0x00;
1578  l2capoutbuf[10] = 0x00;
1579  l2capoutbuf[11] = 0x00;
1580 
1581  L2CAP_Command(handle, l2capoutbuf, 12);
1582 }
1583 
1584 /* PS3 Commands - only set Bluetooth address is implemented in this library */
1585 void BTD::setBdaddr(uint8_t* bdaddr) {
1586  /* Set the internal Bluetooth address */
1587  uint8_t buf[8];
1588  buf[0] = 0x01;
1589  buf[1] = 0x00;
1590 
1591  for(uint8_t i = 0; i < 6; i++)
1592  buf[i + 2] = bdaddr[5 - i]; // Copy into buffer, has to be written reversed, so it is MSB first
1593 
1594  // bmRequest = Host to device (0x00) | Class (0x20) | Interface (0x01) = 0x21, bRequest = Set Report (0x09), Report ID (0xF5), Report Type (Feature 0x03), interface (0x00), datalength, datalength, data
1595  pUsb->ctrlReq(bAddress, epInfo[BTD_CONTROL_PIPE].epAddr, bmREQ_HID_OUT, HID_REQUEST_SET_REPORT, 0xF5, 0x03, 0x00, 8, 8, buf, NULL);
1596 }
1597 
1598 void BTD::setMoveBdaddr(uint8_t* bdaddr) {
1599  /* Set the internal Bluetooth address */
1600  uint8_t buf[11];
1601  buf[0] = 0x05;
1602  buf[7] = 0x10;
1603  buf[8] = 0x01;
1604  buf[9] = 0x02;
1605  buf[10] = 0x12;
1606 
1607  for(uint8_t i = 0; i < 6; i++)
1608  buf[i + 1] = bdaddr[i];
1609 
1610  // bmRequest = Host to device (0x00) | Class (0x20) | Interface (0x01) = 0x21, bRequest = Set Report (0x09), Report ID (0x05), Report Type (Feature 0x03), interface (0x00), datalength, datalength, data
1611  pUsb->ctrlReq(bAddress, epInfo[BTD_CONTROL_PIPE].epAddr, bmREQ_HID_OUT, HID_REQUEST_SET_REPORT, 0x05, 0x03, 0x00, 11, 11, buf, NULL);
1612 }
static const uint8_t BTD_DATAOUT_PIPE
Definition: BTD.h:558
+Go to the documentation of this file.
1 /* Copyright (C) 2012 Kristian Lauszus, TKJ Electronics. All rights reserved.
2 
3  This software may be distributed and modified under the terms of the GNU
4  General Public License version 2 (GPL2) as published by the Free Software
5  Foundation and appearing in the file GPL2.TXT included in the packaging of
6  this file. Please note that GPL2 Section 2[b] requires that all works based
7  on this software must also be made publicly available under the terms of
8  the GPL2 ("Copyleft").
9 
10  Contact information
11  -------------------
12 
13  Kristian Lauszus, TKJ Electronics
14  Web : http://www.tkjelectronics.com
15  e-mail : kristianl@tkjelectronics.com
16  */
17 
18 #include "BTD.h"
19 // To enable serial debugging see "settings.h"
20 //#define EXTRADEBUG // Uncomment to get even more debugging data
21 
22 const uint8_t BTD::BTD_CONTROL_PIPE = 0;
23 const uint8_t BTD::BTD_EVENT_PIPE = 1;
24 const uint8_t BTD::BTD_DATAIN_PIPE = 2;
25 const uint8_t BTD::BTD_DATAOUT_PIPE = 3;
26 
28 connectToWii(false),
29 pairWithWii(false),
30 connectToHIDDevice(false),
31 pairWithHIDDevice(false),
32 useSimplePairing(false),
33 pUsb(p), // Pointer to USB class instance - mandatory
34 bAddress(0), // Device address - mandatory
35 bNumEP(1), // If config descriptor needs to be parsed
36 qNextPollTime(0), // Reset NextPollTime
37 pollInterval(0),
38 simple_pairing_supported(false),
39 bPollEnable(false) // Don't start polling before dongle is connected
40 {
41  for(uint8_t i = 0; i < BTD_NUM_SERVICES; i++)
42  btService[i] = NULL;
43 
44  Initialize(); // Set all variables, endpoint structs etc. to default values
45 
46  if(pUsb) // Register in USB subsystem
47  pUsb->RegisterDeviceClass(this); // Set devConfig[] entry
48 }
49 
50 uint8_t BTD::ConfigureDevice(uint8_t parent, uint8_t port, bool lowspeed) {
51  const uint8_t constBufSize = sizeof (USB_DEVICE_DESCRIPTOR);
52  uint8_t buf[constBufSize];
53  USB_DEVICE_DESCRIPTOR * udd = reinterpret_cast<USB_DEVICE_DESCRIPTOR*>(buf);
54  uint8_t rcode;
55  UsbDevice *p = NULL;
56  EpInfo *oldep_ptr = NULL;
57 
58  Initialize(); // Set all variables, endpoint structs etc. to default values
59 
60  AddressPool &addrPool = pUsb->GetAddressPool(); // Get memory address of USB device address pool
61 #ifdef EXTRADEBUG
62  Notify(PSTR("\r\nBTD ConfigureDevice"), 0x80);
63 #endif
64 
65  if(bAddress) { // Check if address has already been assigned to an instance
66 #ifdef DEBUG_USB_HOST
67  Notify(PSTR("\r\nAddress in use"), 0x80);
68 #endif
70  }
71 
72  p = addrPool.GetUsbDevicePtr(0); // Get pointer to pseudo device with address 0 assigned
73  if(!p) {
74 #ifdef DEBUG_USB_HOST
75  Notify(PSTR("\r\nAddress not found"), 0x80);
76 #endif
78  }
79 
80  if(!p->epinfo) {
81 #ifdef DEBUG_USB_HOST
82  Notify(PSTR("\r\nepinfo is null"), 0x80);
83 #endif
85  }
86 
87  oldep_ptr = p->epinfo; // Save old pointer to EP_RECORD of address 0
88  p->epinfo = epInfo; // Temporary assign new pointer to epInfo to p->epinfo in order to avoid toggle inconsistence
89  p->lowspeed = lowspeed;
90  rcode = pUsb->getDevDescr(0, 0, constBufSize, (uint8_t*)buf); // Get device descriptor - addr, ep, nbytes, data
91 
92  p->epinfo = oldep_ptr; // Restore p->epinfo
93 
94  if(rcode)
95  goto FailGetDevDescr;
96 
97  bAddress = addrPool.AllocAddress(parent, false, port); // Allocate new address according to device class
98 
99  if(!bAddress) {
100 #ifdef DEBUG_USB_HOST
101  Notify(PSTR("\r\nOut of address space"), 0x80);
102 #endif
104  }
105 
106  if (udd->bDeviceClass == 0x09) // Some dongles have an USB hub inside
107  goto FailHub;
108 
109  epInfo[0].maxPktSize = udd->bMaxPacketSize0; // Extract Max Packet Size from device descriptor
110  epInfo[1].epAddr = udd->bNumConfigurations; // Steal and abuse from epInfo structure to save memory
111 
112  VID = udd->idVendor;
113  PID = udd->idProduct;
114 
116 
117 FailHub:
118 #ifdef DEBUG_USB_HOST
119  Notify(PSTR("\r\nPlease create a hub instance in your code: \"USBHub Hub1(&Usb);\""), 0x80);
120 #endif
121  pUsb->setAddr(bAddress, 0, 0); // Reset address
123  Release();
124  return rcode;
125 
126 FailGetDevDescr:
127 #ifdef DEBUG_USB_HOST
128  NotifyFailGetDevDescr(rcode);
129 #endif
130  if(rcode != hrJERR)
132  Release();
133  return rcode;
134 };
135 
136 uint8_t BTD::Init(uint8_t parent __attribute__((unused)), uint8_t port __attribute__((unused)), bool lowspeed) {
137  uint8_t rcode;
138  uint8_t num_of_conf = epInfo[1].epAddr; // Number of configurations
139  epInfo[1].epAddr = 0;
140 
141  AddressPool &addrPool = pUsb->GetAddressPool();
142 #ifdef EXTRADEBUG
143  Notify(PSTR("\r\nBTD Init"), 0x80);
144 #endif
145  UsbDevice *p = addrPool.GetUsbDevicePtr(bAddress); // Get pointer to assigned address record
146 
147  if(!p) {
148 #ifdef DEBUG_USB_HOST
149  Notify(PSTR("\r\nAddress not found"), 0x80);
150 #endif
152  }
153 
154  delay(300); // Assign new address to the device
155 
156  rcode = pUsb->setAddr(0, 0, bAddress); // Assign new address to the device
157  if(rcode) {
158 #ifdef DEBUG_USB_HOST
159  Notify(PSTR("\r\nsetAddr: "), 0x80);
160  D_PrintHex<uint8_t > (rcode, 0x80);
161 #endif
162  p->lowspeed = false;
163  goto Fail;
164  }
165 #ifdef EXTRADEBUG
166  Notify(PSTR("\r\nAddr: "), 0x80);
167  D_PrintHex<uint8_t > (bAddress, 0x80);
168 #endif
169 
170  p->lowspeed = false;
171 
172  p = addrPool.GetUsbDevicePtr(bAddress); // Get pointer to assigned address record
173  if(!p) {
174 #ifdef DEBUG_USB_HOST
175  Notify(PSTR("\r\nAddress not found"), 0x80);
176 #endif
178  }
179 
180  p->lowspeed = lowspeed;
181 
182  rcode = pUsb->setEpInfoEntry(bAddress, 1, epInfo); // Assign epInfo to epinfo pointer - only EP0 is known
183  if(rcode)
184  goto FailSetDevTblEntry;
185 
186  if(VID == PS3_VID && (PID == PS3_PID || PID == PS3NAVIGATION_PID || PID == PS3MOVE_PID)) {
187  delay(100);
188  rcode = pUsb->setConf(bAddress, epInfo[ BTD_CONTROL_PIPE ].epAddr, 1); // We only need the Control endpoint, so we don't have to initialize the other endpoints of device
189  if(rcode)
190  goto FailSetConfDescr;
191 
192 #ifdef DEBUG_USB_HOST
193  if(PID == PS3_PID || PID == PS3NAVIGATION_PID) {
194  if(PID == PS3_PID)
195  Notify(PSTR("\r\nDualshock 3 Controller Connected"), 0x80);
196  else // It must be a navigation controller
197  Notify(PSTR("\r\nNavigation Controller Connected"), 0x80);
198  } else // It must be a Motion controller
199  Notify(PSTR("\r\nMotion Controller Connected"), 0x80);
200 #endif
201 
202  if(my_bdaddr[0] == 0x00 && my_bdaddr[1] == 0x00 && my_bdaddr[2] == 0x00 && my_bdaddr[3] == 0x00 && my_bdaddr[4] == 0x00 && my_bdaddr[5] == 0x00) {
203 #ifdef DEBUG_USB_HOST
204  Notify(PSTR("\r\nPlease plug in the dongle before trying to pair with the PS3 Controller\r\nor set the Bluetooth address in the constructor of the PS3BT class"), 0x80);
205 #endif
206  } else {
207  if(PID == PS3_PID || PID == PS3NAVIGATION_PID)
208  setBdaddr(my_bdaddr); // Set internal Bluetooth address
209  else
210  setMoveBdaddr(my_bdaddr); // Set internal Bluetooth address
211 #ifdef DEBUG_USB_HOST
212  Notify(PSTR("\r\nBluetooth Address was set to: "), 0x80);
213  for(int8_t i = 5; i > 0; i--) {
214  D_PrintHex<uint8_t > (my_bdaddr[i], 0x80);
215  Notify(PSTR(":"), 0x80);
216  }
217  D_PrintHex<uint8_t > (my_bdaddr[0], 0x80);
218 #endif
219  }
220 
221  pUsb->setConf(bAddress, epInfo[ BTD_CONTROL_PIPE ].epAddr, 0); // Reset configuration value
222  pUsb->setAddr(bAddress, 0, 0); // Reset address
223  Release(); // Release device
225  } else {
226  // Check if attached device is a Bluetooth dongle and fill endpoint data structure
227  // First interface in the configuration must have Bluetooth assigned Class/Subclass/Protocol
228  // And 3 endpoints - interrupt-IN, bulk-IN, bulk-OUT, not necessarily in this order
229  for(uint8_t i = 0; i < num_of_conf; i++) {
230  if((VID == IOGEAR_GBU521_VID && PID == IOGEAR_GBU521_PID) || (VID == BELKIN_F8T065BF_VID && PID == BELKIN_F8T065BF_PID)) {
231  ConfigDescParser<USB_CLASS_VENDOR_SPECIFIC, WI_SUBCLASS_RF, WI_PROTOCOL_BT, CP_MASK_COMPARE_ALL> confDescrParser(this); // Workaround issue with some dongles
232  rcode = pUsb->getConfDescr(bAddress, 0, i, &confDescrParser);
233  } else {
234  ConfigDescParser<USB_CLASS_WIRELESS_CTRL, WI_SUBCLASS_RF, WI_PROTOCOL_BT, CP_MASK_COMPARE_ALL> confDescrParser(this); // Set class id according to the specification
235  rcode = pUsb->getConfDescr(bAddress, 0, i, &confDescrParser);
236  }
237  if(rcode) // Check error code
238  goto FailGetConfDescr;
239  if(bNumEP >= BTD_MAX_ENDPOINTS) // All endpoints extracted
240  break;
241  }
242 
244  goto FailUnknownDevice;
245 
246  // Assign epInfo to epinfo pointer - this time all 3 endpoins
247  rcode = pUsb->setEpInfoEntry(bAddress, bNumEP, epInfo);
248  if(rcode)
249  goto FailSetDevTblEntry;
250 
251  // Set Configuration Value
252  rcode = pUsb->setConf(bAddress, epInfo[ BTD_CONTROL_PIPE ].epAddr, bConfNum);
253  if(rcode)
254  goto FailSetConfDescr;
255 
256  hci_num_reset_loops = 100; // only loop 100 times before trying to send the hci reset command
257  hci_counter = 0;
258  hci_state = HCI_INIT_STATE;
259  waitingForConnection = false;
260  bPollEnable = true;
261 
262 #ifdef DEBUG_USB_HOST
263  Notify(PSTR("\r\nBluetooth Dongle Initialized"), 0x80);
264 #endif
265  }
266  return 0; // Successful configuration
267 
268  /* Diagnostic messages */
269 FailSetDevTblEntry:
270 #ifdef DEBUG_USB_HOST
272  goto Fail;
273 #endif
274 
275 FailGetConfDescr:
276 #ifdef DEBUG_USB_HOST
278  goto Fail;
279 #endif
280 
281 FailSetConfDescr:
282 #ifdef DEBUG_USB_HOST
284 #endif
285  goto Fail;
286 
287 FailUnknownDevice:
288 #ifdef DEBUG_USB_HOST
289  NotifyFailUnknownDevice(VID, PID);
290 #endif
291  pUsb->setAddr(bAddress, 0, 0); // Reset address
293 Fail:
294 #ifdef DEBUG_USB_HOST
295  Notify(PSTR("\r\nBTD Init Failed, error code: "), 0x80);
296  NotifyFail(rcode);
297 #endif
298  Release();
299  return rcode;
300 }
301 
302 void BTD::Initialize() {
303  uint8_t i;
304  for(i = 0; i < BTD_MAX_ENDPOINTS; i++) {
305  epInfo[i].epAddr = 0;
306  epInfo[i].maxPktSize = (i) ? 0 : 8;
307  epInfo[i].bmSndToggle = 0;
308  epInfo[i].bmRcvToggle = 0;
310  }
311  for(i = 0; i < BTD_NUM_SERVICES; i++) {
312  if(btService[i])
313  btService[i]->Reset(); // Reset all Bluetooth services
314  }
315 
316  connectToWii = false;
317  incomingWii = false;
318  connectToHIDDevice = false;
319  incomingHIDDevice = false;
320  incomingPS4 = false;
321  bAddress = 0; // Clear device address
322  bNumEP = 1; // Must have to be reset to 1
323  qNextPollTime = 0; // Reset next poll time
324  pollInterval = 0;
325  bPollEnable = false; // Don't start polling before dongle is connected
326  simple_pairing_supported = false;
327 }
328 
329 /* Extracts interrupt-IN, bulk-IN, bulk-OUT endpoint information from config descriptor */
330 void BTD::EndpointXtract(uint8_t conf, uint8_t iface __attribute__((unused)), uint8_t alt, uint8_t proto __attribute__((unused)), const USB_ENDPOINT_DESCRIPTOR *pep) {
331  //ErrorMessage<uint8_t>(PSTR("Conf.Val"),conf);
332  //ErrorMessage<uint8_t>(PSTR("Iface Num"),iface);
333  //ErrorMessage<uint8_t>(PSTR("Alt.Set"),alt);
334 
335  if(alt) // Wrong interface - by BT spec, no alt setting
336  return;
337 
338  bConfNum = conf;
339  uint8_t index;
340 
341  if((pep->bmAttributes & bmUSB_TRANSFER_TYPE) == USB_TRANSFER_TYPE_INTERRUPT && (pep->bEndpointAddress & 0x80) == 0x80) { // Interrupt In endpoint found
342  index = BTD_EVENT_PIPE;
344  } else if((pep->bmAttributes & bmUSB_TRANSFER_TYPE) == USB_TRANSFER_TYPE_BULK) // Bulk endpoint found
345  index = ((pep->bEndpointAddress & 0x80) == 0x80) ? BTD_DATAIN_PIPE : BTD_DATAOUT_PIPE;
346  else
347  return;
348 
349  // Fill the rest of endpoint data structure
350  epInfo[index].epAddr = (pep->bEndpointAddress & 0x0F);
351  epInfo[index].maxPktSize = (uint8_t)pep->wMaxPacketSize;
352 #ifdef EXTRADEBUG
354 #endif
355  if(pollInterval < pep->bInterval) // Set the polling interval as the largest polling interval obtained from endpoints
356  pollInterval = pep->bInterval;
357  bNumEP++;
358 }
359 
360 void BTD::PrintEndpointDescriptor(const USB_ENDPOINT_DESCRIPTOR* ep_ptr __attribute__((unused))) {
361 #ifdef EXTRADEBUG
362  Notify(PSTR("\r\nEndpoint descriptor:"), 0x80);
363  Notify(PSTR("\r\nLength:\t\t"), 0x80);
364  D_PrintHex<uint8_t > (ep_ptr->bLength, 0x80);
365  Notify(PSTR("\r\nType:\t\t"), 0x80);
366  D_PrintHex<uint8_t > (ep_ptr->bDescriptorType, 0x80);
367  Notify(PSTR("\r\nAddress:\t"), 0x80);
368  D_PrintHex<uint8_t > (ep_ptr->bEndpointAddress, 0x80);
369  Notify(PSTR("\r\nAttributes:\t"), 0x80);
370  D_PrintHex<uint8_t > (ep_ptr->bmAttributes, 0x80);
371  Notify(PSTR("\r\nMaxPktSize:\t"), 0x80);
372  D_PrintHex<uint16_t > (ep_ptr->wMaxPacketSize, 0x80);
373  Notify(PSTR("\r\nPoll Intrv:\t"), 0x80);
374  D_PrintHex<uint8_t > (ep_ptr->bInterval, 0x80);
375 #endif
376 }
377 
378 /* Performs a cleanup after failed Init() attempt */
379 uint8_t BTD::Release() {
380  Initialize(); // Set all variables, endpoint structs etc. to default values
382  return 0;
383 }
384 
385 uint8_t BTD::Poll() {
386  if(!bPollEnable)
387  return 0;
388  if((int32_t)((uint32_t)millis() - qNextPollTime) >= 0L) { // Don't poll if shorter than polling interval
389  qNextPollTime = (uint32_t)millis() + pollInterval; // Set new poll time
390  HCI_event_task(); // Poll the HCI event pipe
391  HCI_task(); // HCI state machine
392  ACL_event_task(); // Poll the ACL input pipe too
393  }
394  return 0;
395 }
396 
398  for(uint8_t i = 0; i < BTD_NUM_SERVICES; i++)
399  if(btService[i])
400  btService[i]->disconnect();
401 };
402 
403 void BTD::HCI_event_task() {
404  uint16_t length = BULK_MAXPKTSIZE; // Request more than 16 bytes anyway, the inTransfer routine will take care of this
405  uint8_t rcode = pUsb->inTransfer(bAddress, epInfo[ BTD_EVENT_PIPE ].epAddr, &length, hcibuf, pollInterval); // Input on endpoint 1
406 
407  if(!rcode || rcode == hrNAK) { // Check for errors
408  switch(hcibuf[0]) { // Switch on event type
409  case EV_COMMAND_COMPLETE:
410  if(!hcibuf[5]) { // Check if command succeeded
411  hci_set_flag(HCI_FLAG_CMD_COMPLETE); // Set command complete flag
412  if((hcibuf[3] == 0x01) && (hcibuf[4] == 0x10)) { // Parameters from read local version information
413  hci_version = hcibuf[6]; // Used to check if it supports 2.0+EDR - see http://www.bluetooth.org/Technical/AssignedNumbers/hci.htm
414 #ifdef EXTRADEBUG
416  Notify(PSTR("\r\nHCI version: "), 0x80);
417  D_PrintHex<uint8_t > (hci_version, 0x80);
418  }
419 #endif
421  } else if((hcibuf[3] == 0x04) && (hcibuf[4] == 0x10)) { // Parameters from read local extended features
423 #ifdef EXTRADEBUG
424  Notify(PSTR("\r\nPage number: "), 0x80);
425  D_PrintHex<uint8_t > (hcibuf[6], 0x80);
426  Notify(PSTR("\r\nMaximum page number: "), 0x80);
427  D_PrintHex<uint8_t > (hcibuf[7], 0x80);
428  Notify(PSTR("\r\nExtended LMP features:"), 0x80);
429  for(uint8_t i = 0; i < 8; i++) {
430  Notify(PSTR(" "), 0x80);
431  D_PrintHex<uint8_t > (hcibuf[8 + i], 0x80);
432  }
433 #endif
434  if(hcibuf[6] == 0) { // Page 0
435 #ifdef DEBUG_USB_HOST
436  Notify(PSTR("\r\nDongle "), 0x80);
437 #endif
438  if(hcibuf[8 + 6] & (1U << 3)) {
439  simple_pairing_supported = true;
440 #ifdef DEBUG_USB_HOST
441  Notify(PSTR("supports"), 0x80);
442 #endif
443  } else {
444  simple_pairing_supported = false;
445 #ifdef DEBUG_USB_HOST
446  Notify(PSTR("does NOT support"), 0x80);
447 #endif
448  }
449 #ifdef DEBUG_USB_HOST
450  Notify(PSTR(" secure simple pairing (controller support)"), 0x80);
451 #endif
452  } else if(hcibuf[6] == 1) { // Page 1
453 #ifdef DEBUG_USB_HOST
454  Notify(PSTR("\r\nDongle "), 0x80);
455  if(hcibuf[8 + 0] & (1U << 0))
456  Notify(PSTR("supports"), 0x80);
457  else
458  Notify(PSTR("does NOT support"), 0x80);
459  Notify(PSTR(" secure simple pairing (host support)"), 0x80);
460 #endif
461  }
462  }
463 
465  } else if((hcibuf[3] == 0x09) && (hcibuf[4] == 0x10)) { // Parameters from read local bluetooth address
466  for(uint8_t i = 0; i < 6; i++)
467  my_bdaddr[i] = hcibuf[6 + i];
469  }
470  }
471  break;
472 
473  case EV_COMMAND_STATUS:
474  if(hcibuf[2]) { // Show status on serial if not OK
475 #ifdef DEBUG_USB_HOST
476  Notify(PSTR("\r\nHCI Command Failed: "), 0x80);
477  D_PrintHex<uint8_t > (hcibuf[2], 0x80);
478  Notify(PSTR("\r\nNum HCI Command Packets: "), 0x80);
479  D_PrintHex<uint8_t > (hcibuf[3], 0x80);
480  Notify(PSTR("\r\nCommand Opcode: "), 0x80);
481  D_PrintHex<uint8_t > (hcibuf[4], 0x80);
482  Notify(PSTR(" "), 0x80);
483  D_PrintHex<uint8_t > (hcibuf[5], 0x80);
484 #endif
485  }
486  break;
487 
488  case EV_INQUIRY_COMPLETE:
489  if(inquiry_counter >= 5 && (pairWithWii || pairWithHIDDevice)) {
490  inquiry_counter = 0;
491 #ifdef DEBUG_USB_HOST
492  if(pairWithWii)
493  Notify(PSTR("\r\nCouldn't find Wiimote"), 0x80);
494  else
495  Notify(PSTR("\r\nCouldn't find HID device"), 0x80);
496 #endif
497  connectToWii = false;
498  pairWithWii = false;
499  connectToHIDDevice = false;
500  pairWithHIDDevice = false;
501  hci_state = HCI_SCANNING_STATE;
502  }
503  inquiry_counter++;
504  break;
505 
506  case EV_INQUIRY_RESULT:
507  if(hcibuf[2]) { // Check that there is more than zero responses
508 #ifdef EXTRADEBUG
509  Notify(PSTR("\r\nNumber of responses: "), 0x80);
510  Notify(hcibuf[2], 0x80);
511 #endif
512  for(uint8_t i = 0; i < hcibuf[2]; i++) {
513  uint8_t offset = 8 * hcibuf[2] + 3 * i;
514 
515  for(uint8_t j = 0; j < 3; j++)
516  classOfDevice[j] = hcibuf[j + 4 + offset];
517 
518 #ifdef EXTRADEBUG
519  Notify(PSTR("\r\nClass of device: "), 0x80);
520  D_PrintHex<uint8_t > (classOfDevice[2], 0x80);
521  Notify(PSTR(" "), 0x80);
522  D_PrintHex<uint8_t > (classOfDevice[1], 0x80);
523  Notify(PSTR(" "), 0x80);
524  D_PrintHex<uint8_t > (classOfDevice[0], 0x80);
525 #endif
526 
527  if(pairWithWii && classOfDevice[2] == 0x00 && (classOfDevice[1] == 0x05) && (classOfDevice[0] & 0x0C)) { // See http://wiibrew.org/wiki/Wiimote#SDP_information
528  checkRemoteName = true; // Check remote name to distinguish between the different controllers
529 
530  for(uint8_t j = 0; j < 6; j++)
531  disc_bdaddr[j] = hcibuf[j + 3 + 6 * i];
532 
534  break;
535  } else if(pairWithHIDDevice && (classOfDevice[1] & 0x0F) == 0x05 && (classOfDevice[0] & 0xC8)) { // Check if it is a mouse, keyboard or a gamepad - see: http://bluetooth-pentest.narod.ru/software/bluetooth_class_of_device-service_generator.html
536 #ifdef DEBUG_USB_HOST
537  checkRemoteName = true; // Used to print name in the serial monitor if serial debugging is enabled
538 
539  if(classOfDevice[0] & 0x80)
540  Notify(PSTR("\r\nMouse found"), 0x80);
541  if(classOfDevice[0] & 0x40)
542  Notify(PSTR("\r\nKeyboard found"), 0x80);
543  if(classOfDevice[0] & 0x08)
544  Notify(PSTR("\r\nGamepad found"), 0x80);
545 #endif
546  for(uint8_t j = 0; j < 6; j++)
547  disc_bdaddr[j] = hcibuf[j + 3 + 6 * i];
548 
550  break;
551  }
552  }
553  }
554  break;
555 
556  case EV_CONNECT_COMPLETE:
558  if(!hcibuf[2]) { // Check if connected OK
559 #ifdef EXTRADEBUG
560  Notify(PSTR("\r\nConnection established"), 0x80);
561 #endif
562  hci_handle = hcibuf[3] | ((hcibuf[4] & 0x0F) << 8); // Store the handle for the ACL connection
563  hci_set_flag(HCI_FLAG_CONNECT_COMPLETE); // Set connection complete flag
564  } else {
565  hci_state = HCI_CHECK_DEVICE_SERVICE;
566 #ifdef DEBUG_USB_HOST
567  Notify(PSTR("\r\nConnection Failed: "), 0x80);
568  D_PrintHex<uint8_t > (hcibuf[2], 0x80);
569 #endif
570  }
571  break;
572 
574  if(!hcibuf[2]) { // Check if disconnected OK
575  hci_set_flag(HCI_FLAG_DISCONNECT_COMPLETE); // Set disconnect command complete flag
576  hci_clear_flag(HCI_FLAG_CONNECT_COMPLETE); // Clear connection complete flag
577  }
578  break;
579 
581  if(!hcibuf[2]) { // Check if reading is OK
582  for(uint8_t i = 0; i < min(sizeof (remote_name), sizeof (hcibuf) - 9); i++) {
583  remote_name[i] = hcibuf[9 + i];
584  if(remote_name[i] == '\0') // End of string
585  break;
586  }
587  // TODO: Always set '\0' in remote name!
589  }
590  break;
591 
592  case EV_INCOMING_CONNECT:
593  for(uint8_t i = 0; i < 6; i++)
594  disc_bdaddr[i] = hcibuf[i + 2];
595 
596  for(uint8_t i = 0; i < 3; i++)
597  classOfDevice[i] = hcibuf[i + 8];
598 
599  if((classOfDevice[1] & 0x0F) == 0x05 && (classOfDevice[0] & 0xC8)) { // Check if it is a mouse, keyboard or a gamepad
600 #ifdef DEBUG_USB_HOST
601  if(classOfDevice[0] & 0x80)
602  Notify(PSTR("\r\nMouse is connecting"), 0x80);
603  if(classOfDevice[0] & 0x40)
604  Notify(PSTR("\r\nKeyboard is connecting"), 0x80);
605  if(classOfDevice[0] & 0x08)
606  Notify(PSTR("\r\nGamepad is connecting"), 0x80);
607 #endif
608  incomingHIDDevice = true;
609  }
610 
611 #ifdef EXTRADEBUG
612  Notify(PSTR("\r\nClass of device: "), 0x80);
613  D_PrintHex<uint8_t > (classOfDevice[2], 0x80);
614  Notify(PSTR(" "), 0x80);
615  D_PrintHex<uint8_t > (classOfDevice[1], 0x80);
616  Notify(PSTR(" "), 0x80);
617  D_PrintHex<uint8_t > (classOfDevice[0], 0x80);
618 #endif
620  break;
621 
622  case EV_PIN_CODE_REQUEST:
623  if(pairWithWii) {
624 #ifdef DEBUG_USB_HOST
625  Notify(PSTR("\r\nPairing with Wiimote"), 0x80);
626 #endif
628  } else if(btdPin != NULL) {
629 #ifdef DEBUG_USB_HOST
630  Notify(PSTR("\r\nBluetooth pin is set too: "), 0x80);
631  NotifyStr(btdPin, 0x80);
632 #endif
634  } else {
635 #ifdef DEBUG_USB_HOST
636  Notify(PSTR("\r\nNo pin was set"), 0x80);
637 #endif
639  }
640  break;
641 
642  case EV_LINK_KEY_REQUEST:
643 #ifdef DEBUG_USB_HOST
644  Notify(PSTR("\r\nReceived Key Request"), 0x80);
645 #endif
647  break;
648 
650  if(!hcibuf[2]) { // Check if pairing was successful
651  if(pairWithWii && !connectToWii) {
652 #ifdef DEBUG_USB_HOST
653  Notify(PSTR("\r\nPairing successful with Wiimote"), 0x80);
654 #endif
655  connectToWii = true; // Used to indicate to the Wii service, that it should connect to this device
656  } else if(pairWithHIDDevice && !connectToHIDDevice) {
657 #ifdef DEBUG_USB_HOST
658  Notify(PSTR("\r\nPairing successful with HID device"), 0x80);
659 #endif
660  connectToHIDDevice = true; // Used to indicate to the BTHID service, that it should connect to this device
661  } else {
662 #ifdef EXTRADEBUG
663  Notify(PSTR("\r\nPairing was successful"), 0x80);
664 #endif
665  }
666  } else {
667 #ifdef DEBUG_USB_HOST
668  Notify(PSTR("\r\nPairing Failed: "), 0x80);
669  D_PrintHex<uint8_t > (hcibuf[2], 0x80);
670 #endif
672  hci_state = HCI_DISCONNECT_STATE;
673  }
674  break;
675 
677 #ifdef DEBUG_USB_HOST
678  Notify(PSTR("\r\nReceived IO Capability Request"), 0x80);
679 #endif
681  break;
682 
684 #ifdef EXTRADEBUG
685  Notify(PSTR("\r\nReceived IO Capability Response: "), 0x80);
686  Notify(PSTR("\r\nIO capability: "), 0x80);
687  D_PrintHex<uint8_t > (hcibuf[8], 0x80);
688  Notify(PSTR("\r\nOOB data present: "), 0x80);
689  D_PrintHex<uint8_t > (hcibuf[9], 0x80);
690  Notify(PSTR("\r\nAuthentication request: "), 0x80);
691  D_PrintHex<uint8_t > (hcibuf[10], 0x80);
692 #endif
693  break;
694 
696 #ifdef DEBUG_USB_HOST
697  Notify(PSTR("\r\nUser confirmation Request"), 0x80);
698 #ifdef EXTRADEBUG
699  Notify(PSTR(": \r\nNumeric value: "), 0x80);
700  for(uint8_t i = 0; i < 4; i++) {
701  Notify(PSTR(" "), 0x80);
702  D_PrintHex<uint8_t > (hcibuf[8 + i], 0x80);
703  }
704 #endif
705 #endif
706  // Simply confirm the connection, as the host has no "NoInputNoOutput" capabilities
708  break;
709 
711 #ifdef EXTRADEBUG
712  if(!hcibuf[2]) { // Check if connected OK
713  Notify(PSTR("\r\nSimple Pairing succeeded"), 0x80);
714  } else {
715  Notify(PSTR("\r\nSimple Pairing failed: "), 0x80);
716  D_PrintHex<uint8_t > (hcibuf[2], 0x80);
717  }
718 #endif
719  break;
720 
721  /* We will just ignore the following events */
722  case EV_MAX_SLOTS_CHANGE:
723  case EV_NUM_COMPLETE_PKT:
724  break;
725  case EV_ROLE_CHANGED:
727  case EV_LOOPBACK_COMMAND:
734 #ifdef EXTRADEBUG
735  if(hcibuf[0] != 0x00) {
736  Notify(PSTR("\r\nIgnore HCI Event: "), 0x80);
737  D_PrintHex<uint8_t > (hcibuf[0], 0x80);
738  }
739 #endif
740  break;
741 #ifdef EXTRADEBUG
742  default:
743  if(hcibuf[0] != 0x00) {
744  Notify(PSTR("\r\nUnmanaged HCI Event: "), 0x80);
745  D_PrintHex<uint8_t > (hcibuf[0], 0x80);
746  Notify(PSTR(", data: "), 0x80);
747  for(uint16_t i = 0; i < hcibuf[1]; i++) {
748  D_PrintHex<uint8_t > (hcibuf[2 + i], 0x80);
749  Notify(PSTR(" "), 0x80);
750  }
751  }
752  break;
753 #endif
754  } // Switch
755  }
756 #ifdef EXTRADEBUG
757  else {
758  Notify(PSTR("\r\nHCI event error: "), 0x80);
759  D_PrintHex<uint8_t > (rcode, 0x80);
760  }
761 #endif
762 }
763 
764 /* Poll Bluetooth and print result */
765 void BTD::HCI_task() {
766  switch(hci_state) {
767  case HCI_INIT_STATE:
768  hci_counter++;
769  if(hci_counter > hci_num_reset_loops) { // wait until we have looped x times to clear any old events
770  hci_reset();
771  hci_state = HCI_RESET_STATE;
772  hci_counter = 0;
773  }
774  break;
775 
776  case HCI_RESET_STATE:
777  hci_counter++;
779  hci_counter = 0;
780 #ifdef DEBUG_USB_HOST
781  Notify(PSTR("\r\nHCI Reset complete"), 0x80);
782 #endif
783  hci_state = HCI_CLASS_STATE;
785  } else if(hci_counter > hci_num_reset_loops) {
786  hci_num_reset_loops *= 10;
787  if(hci_num_reset_loops > 2000)
788  hci_num_reset_loops = 2000;
789 #ifdef DEBUG_USB_HOST
790  Notify(PSTR("\r\nNo response to HCI Reset"), 0x80);
791 #endif
792  hci_state = HCI_INIT_STATE;
793  hci_counter = 0;
794  }
795  break;
796 
797  case HCI_CLASS_STATE:
799 #ifdef DEBUG_USB_HOST
800  Notify(PSTR("\r\nWrite class of device"), 0x80);
801 #endif
802  hci_state = HCI_BDADDR_STATE;
803  hci_read_bdaddr();
804  }
805  break;
806 
807  case HCI_BDADDR_STATE:
809 #ifdef DEBUG_USB_HOST
810  Notify(PSTR("\r\nLocal Bluetooth Address: "), 0x80);
811  for(int8_t i = 5; i > 0; i--) {
812  D_PrintHex<uint8_t > (my_bdaddr[i], 0x80);
813  Notify(PSTR(":"), 0x80);
814  }
815  D_PrintHex<uint8_t > (my_bdaddr[0], 0x80);
816 #endif
818  hci_state = HCI_LOCAL_VERSION_STATE;
819  }
820  break;
821 
822  case HCI_LOCAL_VERSION_STATE: // The local version is used by the PS3BT class
824  if(btdName != NULL) {
826  hci_state = HCI_WRITE_NAME_STATE;
827  } else if(useSimplePairing) {
828  hci_read_local_extended_features(0); // "Requests the normal LMP features as returned by Read_Local_Supported_Features"
829  //hci_read_local_extended_features(1); // Read page 1
831  } else
832  hci_state = HCI_CHECK_DEVICE_SERVICE;
833  }
834  break;
835 
838 #ifdef DEBUG_USB_HOST
839  Notify(PSTR("\r\nThe name was set to: "), 0x80);
840  NotifyStr(btdName, 0x80);
841 #endif
842  if(useSimplePairing) {
843  hci_read_local_extended_features(0); // "Requests the normal LMP features as returned by Read_Local_Supported_Features"
844  //hci_read_local_extended_features(1); // Read page 1
846  } else
847  hci_state = HCI_CHECK_DEVICE_SERVICE;
848  }
849  break;
850 
853  if(simple_pairing_supported) {
855  hci_state = HCI_WRITE_SIMPLE_PAIRING_STATE;
856  } else
857  hci_state = HCI_CHECK_DEVICE_SERVICE;
858  }
859  break;
860 
863 #ifdef DEBUG_USB_HOST
864  Notify(PSTR("\r\nSimple pairing was enabled"), 0x80);
865 #endif
867  hci_state = HCI_SET_EVENT_MASK_STATE;
868  }
869  break;
870 
873 #ifdef DEBUG_USB_HOST
874  Notify(PSTR("\r\nSet event mask completed"), 0x80);
875 #endif
876  hci_state = HCI_CHECK_DEVICE_SERVICE;
877  }
878  break;
879 
881  if(pairWithHIDDevice || pairWithWii) { // Check if it should try to connect to a Wiimote
882 #ifdef DEBUG_USB_HOST
883  if(pairWithWii)
884  Notify(PSTR("\r\nStarting inquiry\r\nPress 1 & 2 on the Wiimote\r\nOr press the SYNC button if you are using a Wii U Pro Controller or a Wii Balance Board"), 0x80);
885  else
886  Notify(PSTR("\r\nPlease enable discovery of your device"), 0x80);
887 #endif
888  hci_inquiry();
889  hci_state = HCI_INQUIRY_STATE;
890  } else
891  hci_state = HCI_SCANNING_STATE; // Don't try to connect to a Wiimote
892  break;
893 
894  case HCI_INQUIRY_STATE:
896  hci_inquiry_cancel(); // Stop inquiry
897 #ifdef DEBUG_USB_HOST
898  if(pairWithWii)
899  Notify(PSTR("\r\nWiimote found"), 0x80);
900  else
901  Notify(PSTR("\r\nHID device found"), 0x80);
902 
903  Notify(PSTR("\r\nNow just create the instance like so:"), 0x80);
904  if(pairWithWii)
905  Notify(PSTR("\r\nWII Wii(&Btd);"), 0x80);
906  else
907  Notify(PSTR("\r\nBTHID bthid(&Btd);"), 0x80);
908 
909  Notify(PSTR("\r\nAnd then press any button on the "), 0x80);
910  if(pairWithWii)
911  Notify(PSTR("Wiimote"), 0x80);
912  else
913  Notify(PSTR("device"), 0x80);
914 #endif
915  if(checkRemoteName) {
916  hci_remote_name(); // We need to know the name to distinguish between the Wiimote, the new Wiimote with Motion Plus inside, a Wii U Pro Controller and a Wii Balance Board
917  hci_state = HCI_REMOTE_NAME_STATE;
918  } else
919  hci_state = HCI_CONNECT_DEVICE_STATE;
920  }
921  break;
922 
925 #ifdef DEBUG_USB_HOST
926  if(pairWithWii)
927  Notify(PSTR("\r\nConnecting to Wiimote"), 0x80);
928  else
929  Notify(PSTR("\r\nConnecting to HID device"), 0x80);
930 #endif
931  checkRemoteName = false;
932  hci_connect();
933  hci_state = HCI_CONNECTED_DEVICE_STATE;
934  }
935  break;
936 
940 #ifdef DEBUG_USB_HOST
941  if(pairWithWii)
942  Notify(PSTR("\r\nConnected to Wiimote"), 0x80);
943  else
944  Notify(PSTR("\r\nConnected to HID device"), 0x80);
945 #endif
946  hci_authentication_request(); // This will start the pairing with the device
947  hci_state = HCI_SCANNING_STATE;
948  } else {
949 #ifdef DEBUG_USB_HOST
950  Notify(PSTR("\r\nTrying to connect one more time..."), 0x80);
951 #endif
952  hci_connect(); // Try to connect one more time
953  }
954  }
955  break;
956 
957  case HCI_SCANNING_STATE:
959 #ifdef DEBUG_USB_HOST
960  Notify(PSTR("\r\nWait For Incoming Connection Request"), 0x80);
961 #endif
963  waitingForConnection = true;
964  hci_state = HCI_CONNECT_IN_STATE;
965  }
966  break;
967 
970  waitingForConnection = false;
971 #ifdef DEBUG_USB_HOST
972  Notify(PSTR("\r\nIncoming Connection Request"), 0x80);
973 #endif
974  hci_remote_name();
975  hci_state = HCI_REMOTE_NAME_STATE;
977  hci_state = HCI_DISCONNECT_STATE;
978  break;
979 
982 #ifdef DEBUG_USB_HOST
983  Notify(PSTR("\r\nRemote Name: "), 0x80);
984  for(uint8_t i = 0; i < strlen(remote_name); i++)
985  Notifyc(remote_name[i], 0x80);
986 #endif
987  if(strncmp((const char*)remote_name, "Nintendo", 8) == 0) {
988  incomingWii = true;
989  motionPlusInside = false;
990  wiiUProController = false;
991  pairWiiUsingSync = false;
992 #ifdef DEBUG_USB_HOST
993  Notify(PSTR("\r\nWiimote is connecting"), 0x80);
994 #endif
995  if(strncmp((const char*)remote_name, "Nintendo RVL-CNT-01-TR", 22) == 0) {
996 #ifdef DEBUG_USB_HOST
997  Notify(PSTR(" with Motion Plus Inside"), 0x80);
998 #endif
999  motionPlusInside = true;
1000  } else if(strncmp((const char*)remote_name, "Nintendo RVL-CNT-01-UC", 22) == 0) {
1001 #ifdef DEBUG_USB_HOST
1002  Notify(PSTR(" - Wii U Pro Controller"), 0x80);
1003 #endif
1004  wiiUProController = motionPlusInside = pairWiiUsingSync = true;
1005  } else if(strncmp((const char*)remote_name, "Nintendo RVL-WBC-01", 19) == 0) {
1006 #ifdef DEBUG_USB_HOST
1007  Notify(PSTR(" - Wii Balance Board"), 0x80);
1008 #endif
1009  pairWiiUsingSync = true;
1010  }
1011  }
1012  if(classOfDevice[2] == 0 && classOfDevice[1] == 0x25 && classOfDevice[0] == 0x08 && strncmp((const char*)remote_name, "Wireless Controller", 19) == 0) {
1013 #ifdef DEBUG_USB_HOST
1014  Notify(PSTR("\r\nPS4 controller is connecting"), 0x80);
1015 #endif
1016  incomingPS4 = true;
1017  }
1018  if((pairWithWii || pairWithHIDDevice) && checkRemoteName)
1019  hci_state = HCI_CONNECT_DEVICE_STATE;
1020  else {
1022  hci_state = HCI_CONNECTED_STATE;
1023  }
1024  }
1025  break;
1026 
1027  case HCI_CONNECTED_STATE:
1029 #ifdef DEBUG_USB_HOST
1030  Notify(PSTR("\r\nConnected to Device: "), 0x80);
1031  for(int8_t i = 5; i > 0; i--) {
1032  D_PrintHex<uint8_t > (disc_bdaddr[i], 0x80);
1033  Notify(PSTR(":"), 0x80);
1034  }
1035  D_PrintHex<uint8_t > (disc_bdaddr[0], 0x80);
1036 #endif
1037  if(incomingPS4)
1038  connectToHIDDevice = true; // We should always connect to the PS4 controller
1039 
1040  // Clear these flags for a new connection
1041  l2capConnectionClaimed = false;
1042  sdpConnectionClaimed = false;
1043  rfcommConnectionClaimed = false;
1044 
1045  hci_event_flag = 0;
1046  hci_state = HCI_DONE_STATE;
1047  }
1048  break;
1049 
1050  case HCI_DONE_STATE:
1051  hci_counter++;
1052  if(hci_counter > 1000) { // Wait until we have looped 1000 times to make sure that the L2CAP connection has been started
1053  hci_counter = 0;
1054  hci_state = HCI_SCANNING_STATE;
1055  }
1056  break;
1057 
1058  case HCI_DISCONNECT_STATE:
1060 #ifdef DEBUG_USB_HOST
1061  Notify(PSTR("\r\nHCI Disconnected from Device"), 0x80);
1062 #endif
1063  hci_event_flag = 0; // Clear all flags
1064 
1065  // Reset all buffers
1066  memset(hcibuf, 0, BULK_MAXPKTSIZE);
1067  memset(l2capinbuf, 0, BULK_MAXPKTSIZE);
1068 
1069  connectToWii = incomingWii = pairWithWii = false;
1070  connectToHIDDevice = incomingHIDDevice = pairWithHIDDevice = checkRemoteName = false;
1071  incomingPS4 = false;
1072 
1073  hci_state = HCI_SCANNING_STATE;
1074  }
1075  break;
1076  default:
1077  break;
1078  }
1079 }
1080 
1081 void BTD::ACL_event_task() {
1082  uint16_t length = BULK_MAXPKTSIZE;
1083  uint8_t rcode = pUsb->inTransfer(bAddress, epInfo[ BTD_DATAIN_PIPE ].epAddr, &length, l2capinbuf, pollInterval); // Input on endpoint 2
1084 
1085  if(!rcode) { // Check for errors
1086  if(length > 0) { // Check if any data was read
1087  for(uint8_t i = 0; i < BTD_NUM_SERVICES; i++) {
1088  if(btService[i])
1089  btService[i]->ACLData(l2capinbuf);
1090  }
1091  }
1092  }
1093 #ifdef EXTRADEBUG
1094  else if(rcode != hrNAK) {
1095  Notify(PSTR("\r\nACL data in error: "), 0x80);
1096  D_PrintHex<uint8_t > (rcode, 0x80);
1097  }
1098 #endif
1099  for(uint8_t i = 0; i < BTD_NUM_SERVICES; i++)
1100  if(btService[i])
1101  btService[i]->Run();
1102 }
1103 
1104 /************************************************************/
1105 /* HCI Commands */
1106 
1107 /************************************************************/
1108 void BTD::HCI_Command(uint8_t* data, uint16_t nbytes) {
1110  pUsb->ctrlReq(bAddress, epInfo[ BTD_CONTROL_PIPE ].epAddr, bmREQ_HCI_OUT, 0x00, 0x00, 0x00, 0x00, nbytes, nbytes, data, NULL);
1111 }
1112 
1114  hci_event_flag = 0; // Clear all the flags
1115  hcibuf[0] = 0x03; // HCI OCF = 3
1116  hcibuf[1] = 0x03 << 2; // HCI OGF = 3
1117  hcibuf[2] = 0x00;
1118 
1119  HCI_Command(hcibuf, 3);
1120 }
1121 
1124  hcibuf[0] = 0x1A; // HCI OCF = 1A
1125  hcibuf[1] = 0x03 << 2; // HCI OGF = 3
1126  hcibuf[2] = 0x01; // parameter length = 1
1127  if(btdName != NULL)
1128  hcibuf[3] = 0x03; // Inquiry Scan enabled. Page Scan enabled.
1129  else
1130  hcibuf[3] = 0x02; // Inquiry Scan disabled. Page Scan enabled.
1131 
1132  HCI_Command(hcibuf, 4);
1133 }
1134 
1136  hcibuf[0] = 0x1A; // HCI OCF = 1A
1137  hcibuf[1] = 0x03 << 2; // HCI OGF = 3
1138  hcibuf[2] = 0x01; // parameter length = 1
1139  hcibuf[3] = 0x00; // Inquiry Scan disabled. Page Scan disabled.
1140 
1141  HCI_Command(hcibuf, 4);
1142 }
1143 
1146  hcibuf[0] = 0x09; // HCI OCF = 9
1147  hcibuf[1] = 0x04 << 2; // HCI OGF = 4
1148  hcibuf[2] = 0x00;
1149 
1150  HCI_Command(hcibuf, 3);
1151 }
1152 
1155  hcibuf[0] = 0x01; // HCI OCF = 1
1156  hcibuf[1] = 0x04 << 2; // HCI OGF = 4
1157  hcibuf[2] = 0x00;
1158 
1159  HCI_Command(hcibuf, 3);
1160 }
1161 
1162 void BTD::hci_read_local_extended_features(uint8_t page_number) {
1164  hcibuf[0] = 0x04; // HCI OCF = 4
1165  hcibuf[1] = 0x04 << 2; // HCI OGF = 4
1166  hcibuf[2] = 0x01; // parameter length = 1
1167  hcibuf[3] = page_number;
1168 
1169  HCI_Command(hcibuf, 4);
1170 }
1171 
1174  hcibuf[0] = 0x09; // HCI OCF = 9
1175  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1176  hcibuf[2] = 0x07; // parameter length 7
1177  hcibuf[3] = disc_bdaddr[0]; // 6 octet bdaddr
1178  hcibuf[4] = disc_bdaddr[1];
1179  hcibuf[5] = disc_bdaddr[2];
1180  hcibuf[6] = disc_bdaddr[3];
1181  hcibuf[7] = disc_bdaddr[4];
1182  hcibuf[8] = disc_bdaddr[5];
1183  hcibuf[9] = 0x00; // Switch role to master
1184 
1185  HCI_Command(hcibuf, 10);
1186 }
1187 
1190  hcibuf[0] = 0x19; // HCI OCF = 19
1191  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1192  hcibuf[2] = 0x0A; // parameter length = 10
1193  hcibuf[3] = disc_bdaddr[0]; // 6 octet bdaddr
1194  hcibuf[4] = disc_bdaddr[1];
1195  hcibuf[5] = disc_bdaddr[2];
1196  hcibuf[6] = disc_bdaddr[3];
1197  hcibuf[7] = disc_bdaddr[4];
1198  hcibuf[8] = disc_bdaddr[5];
1199  hcibuf[9] = 0x01; // Page Scan Repetition Mode
1200  hcibuf[10] = 0x00; // Reserved
1201  hcibuf[11] = 0x00; // Clock offset - low byte
1202  hcibuf[12] = 0x00; // Clock offset - high byte
1203 
1204  HCI_Command(hcibuf, 13);
1205 }
1206 
1207 void BTD::hci_write_local_name(const char* name) {
1208  hcibuf[0] = 0x13; // HCI OCF = 13
1209  hcibuf[1] = 0x03 << 2; // HCI OGF = 3
1210  hcibuf[2] = strlen(name) + 1; // parameter length = the length of the string + end byte
1211  uint8_t i;
1212  for(i = 0; i < strlen(name); i++)
1213  hcibuf[i + 3] = name[i];
1214  hcibuf[i + 3] = 0x00; // End of string
1215 
1216  HCI_Command(hcibuf, 4 + strlen(name));
1217 }
1218 
1220  hcibuf[0] = 0x01; // HCI OCF = 01
1221  hcibuf[1] = 0x03 << 2; // HCI OGF = 3
1222  hcibuf[2] = 0x08;
1223  // The first 6 bytes are the default of 1FFF FFFF FFFF
1224  // However we need to set bits 48-55 for simple pairing to work
1225  hcibuf[3] = 0xFF;
1226  hcibuf[4] = 0xFF;
1227  hcibuf[5] = 0xFF;
1228  hcibuf[6] = 0xFF;
1229  hcibuf[7] = 0xFF;
1230  hcibuf[8] = 0x1F;
1231  hcibuf[9] = 0xFF; // Enable bits 48-55 used for simple pairing
1232  hcibuf[10] = 0x00;
1233 
1234  HCI_Command(hcibuf, 11);
1235 }
1236 
1238  hcibuf[0] = 0x56; // HCI OCF = 56
1239  hcibuf[1] = 0x03 << 2; // HCI OGF = 3
1240  hcibuf[2] = 1; // parameter length = 1
1241  hcibuf[3] = enable ? 1 : 0;
1242 
1243  HCI_Command(hcibuf, 4);
1244 }
1245 
1248  hcibuf[0] = 0x01;
1249  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1250  hcibuf[2] = 0x05; // Parameter Total Length = 5
1251  hcibuf[3] = 0x33; // LAP: Genera/Unlimited Inquiry Access Code (GIAC = 0x9E8B33) - see https://www.bluetooth.org/Technical/AssignedNumbers/baseband.htm
1252  hcibuf[4] = 0x8B;
1253  hcibuf[5] = 0x9E;
1254  hcibuf[6] = 0x30; // Inquiry time = 61.44 sec (maximum)
1255  hcibuf[7] = 0x0A; // 10 number of responses
1256 
1257  HCI_Command(hcibuf, 8);
1258 }
1259 
1261  hcibuf[0] = 0x02;
1262  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1263  hcibuf[2] = 0x00; // Parameter Total Length = 0
1264 
1265  HCI_Command(hcibuf, 3);
1266 }
1267 
1269  hci_connect(disc_bdaddr); // Use last discovered device
1270 }
1271 
1272 void BTD::hci_connect(uint8_t *bdaddr) {
1274  hcibuf[0] = 0x05; // HCI OCF = 5
1275  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1276  hcibuf[2] = 0x0D; // parameter Total Length = 13
1277  hcibuf[3] = bdaddr[0]; // 6 octet bdaddr (LSB)
1278  hcibuf[4] = bdaddr[1];
1279  hcibuf[5] = bdaddr[2];
1280  hcibuf[6] = bdaddr[3];
1281  hcibuf[7] = bdaddr[4];
1282  hcibuf[8] = bdaddr[5];
1283  hcibuf[9] = 0x18; // DM1 or DH1 may be used
1284  hcibuf[10] = 0xCC; // DM3, DH3, DM5, DH5 may be used
1285  hcibuf[11] = 0x01; // Page repetition mode R1
1286  hcibuf[12] = 0x00; // Reserved
1287  hcibuf[13] = 0x00; // Clock offset
1288  hcibuf[14] = 0x00; // Invalid clock offset
1289  hcibuf[15] = 0x00; // Do not allow role switch
1290 
1291  HCI_Command(hcibuf, 16);
1292 }
1293 
1295  hcibuf[0] = 0x0D; // HCI OCF = 0D
1296  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1297  hcibuf[2] = 0x17; // parameter length 23
1298  hcibuf[3] = disc_bdaddr[0]; // 6 octet bdaddr
1299  hcibuf[4] = disc_bdaddr[1];
1300  hcibuf[5] = disc_bdaddr[2];
1301  hcibuf[6] = disc_bdaddr[3];
1302  hcibuf[7] = disc_bdaddr[4];
1303  hcibuf[8] = disc_bdaddr[5];
1304  if(pairWithWii) {
1305  hcibuf[9] = 6; // Pin length is the length of the Bluetooth address
1306  if(pairWiiUsingSync) {
1307 #ifdef DEBUG_USB_HOST
1308  Notify(PSTR("\r\nPairing with Wii controller via SYNC"), 0x80);
1309 #endif
1310  for(uint8_t i = 0; i < 6; i++)
1311  hcibuf[10 + i] = my_bdaddr[i]; // The pin is the Bluetooth dongles Bluetooth address backwards
1312  } else {
1313  for(uint8_t i = 0; i < 6; i++)
1314  hcibuf[10 + i] = disc_bdaddr[i]; // The pin is the Wiimote's Bluetooth address backwards
1315  }
1316  for(uint8_t i = 16; i < 26; i++)
1317  hcibuf[i] = 0x00; // The rest should be 0
1318  } else {
1319  hcibuf[9] = strlen(btdPin); // Length of pin
1320  uint8_t i;
1321  for(i = 0; i < strlen(btdPin); i++) // The maximum size of the pin is 16
1322  hcibuf[i + 10] = btdPin[i];
1323  for(; i < 16; i++)
1324  hcibuf[i + 10] = 0x00; // The rest should be 0
1325  }
1326 
1327  HCI_Command(hcibuf, 26);
1328 }
1329 
1331  hcibuf[0] = 0x0E; // HCI OCF = 0E
1332  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1333  hcibuf[2] = 0x06; // parameter length 6
1334  hcibuf[3] = disc_bdaddr[0]; // 6 octet bdaddr
1335  hcibuf[4] = disc_bdaddr[1];
1336  hcibuf[5] = disc_bdaddr[2];
1337  hcibuf[6] = disc_bdaddr[3];
1338  hcibuf[7] = disc_bdaddr[4];
1339  hcibuf[8] = disc_bdaddr[5];
1340 
1341  HCI_Command(hcibuf, 9);
1342 }
1343 
1345  hcibuf[0] = 0x0C; // HCI OCF = 0C
1346  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1347  hcibuf[2] = 0x06; // parameter length 6
1348  hcibuf[3] = disc_bdaddr[0]; // 6 octet bdaddr
1349  hcibuf[4] = disc_bdaddr[1];
1350  hcibuf[5] = disc_bdaddr[2];
1351  hcibuf[6] = disc_bdaddr[3];
1352  hcibuf[7] = disc_bdaddr[4];
1353  hcibuf[8] = disc_bdaddr[5];
1354 
1355  HCI_Command(hcibuf, 9);
1356 }
1357 
1359  hcibuf[0] = 0x2B; // HCI OCF = 2B
1360  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1361  hcibuf[2] = 0x09;
1362  hcibuf[3] = disc_bdaddr[0]; // 6 octet bdaddr
1363  hcibuf[4] = disc_bdaddr[1];
1364  hcibuf[5] = disc_bdaddr[2];
1365  hcibuf[6] = disc_bdaddr[3];
1366  hcibuf[7] = disc_bdaddr[4];
1367  hcibuf[8] = disc_bdaddr[5];
1368  hcibuf[9] = 0x03; // NoInputNoOutput
1369  hcibuf[10] = 0x00; // OOB authentication data not present
1370  hcibuf[11] = 0x00; // MITM Protection Not Required – No Bonding. Numeric comparison with automatic accept allowed
1371 
1372  HCI_Command(hcibuf, 12);
1373 }
1374 
1376  hcibuf[0] = 0x2C; // HCI OCF = 2C
1377  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1378  hcibuf[2] = 0x06; // parameter length 6
1379  hcibuf[3] = disc_bdaddr[0]; // 6 octet bdaddr
1380  hcibuf[4] = disc_bdaddr[1];
1381  hcibuf[5] = disc_bdaddr[2];
1382  hcibuf[6] = disc_bdaddr[3];
1383  hcibuf[7] = disc_bdaddr[4];
1384  hcibuf[8] = disc_bdaddr[5];
1385 
1386  HCI_Command(hcibuf, 9);
1387 }
1388 
1390  hcibuf[0] = 0x11; // HCI OCF = 11
1391  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1392  hcibuf[2] = 0x02; // parameter length = 2
1393  hcibuf[3] = (uint8_t)(hci_handle & 0xFF); //connection handle - low byte
1394  hcibuf[4] = (uint8_t)((hci_handle >> 8) & 0x0F); //connection handle - high byte
1395 
1396  HCI_Command(hcibuf, 5);
1397 }
1398 
1399 void BTD::hci_disconnect(uint16_t handle) { // This is called by the different services
1401  hcibuf[0] = 0x06; // HCI OCF = 6
1402  hcibuf[1] = 0x01 << 2; // HCI OGF = 1
1403  hcibuf[2] = 0x03; // parameter length = 3
1404  hcibuf[3] = (uint8_t)(handle & 0xFF); //connection handle - low byte
1405  hcibuf[4] = (uint8_t)((handle >> 8) & 0x0F); //connection handle - high byte
1406  hcibuf[5] = 0x13; // reason
1407 
1408  HCI_Command(hcibuf, 6);
1409 }
1410 
1411 void BTD::hci_write_class_of_device() { // See http://bluetooth-pentest.narod.ru/software/bluetooth_class_of_device-service_generator.html
1412  hcibuf[0] = 0x24; // HCI OCF = 24
1413  hcibuf[1] = 0x03 << 2; // HCI OGF = 3
1414  hcibuf[2] = 0x03; // parameter length = 3
1415  hcibuf[3] = 0x04; // Robot
1416  hcibuf[4] = 0x08; // Toy
1417  hcibuf[5] = 0x00;
1418 
1419  HCI_Command(hcibuf, 6);
1420 }
1421 /*******************************************************************
1422  * *
1423  * HCI ACL Data Packet *
1424  * *
1425  * buf[0] buf[1] buf[2] buf[3]
1426  * 0 4 8 11 12 16 24 31 MSB
1427  * .-+-+-+-+-+-+-+-|-+-+-+-|-+-|-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-.
1428  * | HCI Handle |PB |BC | Data Total Length | HCI ACL Data Packet
1429  * .-+-+-+-+-+-+-+-|-+-+-+-|-+-|-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-.
1430  *
1431  * buf[4] buf[5] buf[6] buf[7]
1432  * 0 8 16 31 MSB
1433  * .-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-.
1434  * | Length | Channel ID | Basic L2CAP header
1435  * .-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-.
1436  *
1437  * buf[8] buf[9] buf[10] buf[11]
1438  * 0 8 16 31 MSB
1439  * .-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-.
1440  * | Code | Identifier | Length | Control frame (C-frame)
1441  * .-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-|-+-+-+-+-+-+-+-. (signaling packet format)
1442  */
1443 /************************************************************/
1444 /* L2CAP Commands */
1445 
1446 /************************************************************/
1447 void BTD::L2CAP_Command(uint16_t handle, uint8_t* data, uint8_t nbytes, uint8_t channelLow, uint8_t channelHigh) {
1448  uint8_t buf[8 + nbytes];
1449  buf[0] = (uint8_t)(handle & 0xff); // HCI handle with PB,BC flag
1450  buf[1] = (uint8_t)(((handle >> 8) & 0x0f) | 0x20);
1451  buf[2] = (uint8_t)((4 + nbytes) & 0xff); // HCI ACL total data length
1452  buf[3] = (uint8_t)((4 + nbytes) >> 8);
1453  buf[4] = (uint8_t)(nbytes & 0xff); // L2CAP header: Length
1454  buf[5] = (uint8_t)(nbytes >> 8);
1455  buf[6] = channelLow;
1456  buf[7] = channelHigh;
1457 
1458  for(uint16_t i = 0; i < nbytes; i++) // L2CAP C-frame
1459  buf[8 + i] = data[i];
1460 
1461  uint8_t rcode = pUsb->outTransfer(bAddress, epInfo[ BTD_DATAOUT_PIPE ].epAddr, (8 + nbytes), buf);
1462  if(rcode) {
1463  delay(100); // This small delay prevents it from overflowing if it fails
1464 #ifdef DEBUG_USB_HOST
1465  Notify(PSTR("\r\nError sending L2CAP message: 0x"), 0x80);
1466  D_PrintHex<uint8_t > (rcode, 0x80);
1467  Notify(PSTR(" - Channel ID: "), 0x80);
1468  D_PrintHex<uint8_t > (channelHigh, 0x80);
1469  Notify(PSTR(" "), 0x80);
1470  D_PrintHex<uint8_t > (channelLow, 0x80);
1471 #endif
1472  }
1473 }
1474 
1475 void BTD::l2cap_connection_request(uint16_t handle, uint8_t rxid, uint8_t* scid, uint16_t psm) {
1476  l2capoutbuf[0] = L2CAP_CMD_CONNECTION_REQUEST; // Code
1477  l2capoutbuf[1] = rxid; // Identifier
1478  l2capoutbuf[2] = 0x04; // Length
1479  l2capoutbuf[3] = 0x00;
1480  l2capoutbuf[4] = (uint8_t)(psm & 0xff); // PSM
1481  l2capoutbuf[5] = (uint8_t)(psm >> 8);
1482  l2capoutbuf[6] = scid[0]; // Source CID
1483  l2capoutbuf[7] = scid[1];
1484 
1485  L2CAP_Command(handle, l2capoutbuf, 8);
1486 }
1487 
1488 void BTD::l2cap_connection_response(uint16_t handle, uint8_t rxid, uint8_t* dcid, uint8_t* scid, uint8_t result) {
1489  l2capoutbuf[0] = L2CAP_CMD_CONNECTION_RESPONSE; // Code
1490  l2capoutbuf[1] = rxid; // Identifier
1491  l2capoutbuf[2] = 0x08; // Length
1492  l2capoutbuf[3] = 0x00;
1493  l2capoutbuf[4] = dcid[0]; // Destination CID
1494  l2capoutbuf[5] = dcid[1];
1495  l2capoutbuf[6] = scid[0]; // Source CID
1496  l2capoutbuf[7] = scid[1];
1497  l2capoutbuf[8] = result; // Result: Pending or Success
1498  l2capoutbuf[9] = 0x00;
1499  l2capoutbuf[10] = 0x00; // No further information
1500  l2capoutbuf[11] = 0x00;
1501 
1502  L2CAP_Command(handle, l2capoutbuf, 12);
1503 }
1504 
1505 void BTD::l2cap_config_request(uint16_t handle, uint8_t rxid, uint8_t* dcid) {
1506  l2capoutbuf[0] = L2CAP_CMD_CONFIG_REQUEST; // Code
1507  l2capoutbuf[1] = rxid; // Identifier
1508  l2capoutbuf[2] = 0x08; // Length
1509  l2capoutbuf[3] = 0x00;
1510  l2capoutbuf[4] = dcid[0]; // Destination CID
1511  l2capoutbuf[5] = dcid[1];
1512  l2capoutbuf[6] = 0x00; // Flags
1513  l2capoutbuf[7] = 0x00;
1514  l2capoutbuf[8] = 0x01; // Config Opt: type = MTU (Maximum Transmission Unit) - Hint
1515  l2capoutbuf[9] = 0x02; // Config Opt: length
1516  l2capoutbuf[10] = 0xFF; // MTU
1517  l2capoutbuf[11] = 0xFF;
1518 
1519  L2CAP_Command(handle, l2capoutbuf, 12);
1520 }
1521 
1522 void BTD::l2cap_config_response(uint16_t handle, uint8_t rxid, uint8_t* scid) {
1523  l2capoutbuf[0] = L2CAP_CMD_CONFIG_RESPONSE; // Code
1524  l2capoutbuf[1] = rxid; // Identifier
1525  l2capoutbuf[2] = 0x0A; // Length
1526  l2capoutbuf[3] = 0x00;
1527  l2capoutbuf[4] = scid[0]; // Source CID
1528  l2capoutbuf[5] = scid[1];
1529  l2capoutbuf[6] = 0x00; // Flag
1530  l2capoutbuf[7] = 0x00;
1531  l2capoutbuf[8] = 0x00; // Result
1532  l2capoutbuf[9] = 0x00;
1533  l2capoutbuf[10] = 0x01; // Config
1534  l2capoutbuf[11] = 0x02;
1535  l2capoutbuf[12] = 0xA0;
1536  l2capoutbuf[13] = 0x02;
1537 
1538  L2CAP_Command(handle, l2capoutbuf, 14);
1539 }
1540 
1541 void BTD::l2cap_disconnection_request(uint16_t handle, uint8_t rxid, uint8_t* dcid, uint8_t* scid) {
1542  l2capoutbuf[0] = L2CAP_CMD_DISCONNECT_REQUEST; // Code
1543  l2capoutbuf[1] = rxid; // Identifier
1544  l2capoutbuf[2] = 0x04; // Length
1545  l2capoutbuf[3] = 0x00;
1546  l2capoutbuf[4] = dcid[0];
1547  l2capoutbuf[5] = dcid[1];
1548  l2capoutbuf[6] = scid[0];
1549  l2capoutbuf[7] = scid[1];
1550 
1551  L2CAP_Command(handle, l2capoutbuf, 8);
1552 }
1553 
1554 void BTD::l2cap_disconnection_response(uint16_t handle, uint8_t rxid, uint8_t* dcid, uint8_t* scid) {
1555  l2capoutbuf[0] = L2CAP_CMD_DISCONNECT_RESPONSE; // Code
1556  l2capoutbuf[1] = rxid; // Identifier
1557  l2capoutbuf[2] = 0x04; // Length
1558  l2capoutbuf[3] = 0x00;
1559  l2capoutbuf[4] = dcid[0];
1560  l2capoutbuf[5] = dcid[1];
1561  l2capoutbuf[6] = scid[0];
1562  l2capoutbuf[7] = scid[1];
1563 
1564  L2CAP_Command(handle, l2capoutbuf, 8);
1565 }
1566 
1567 void BTD::l2cap_information_response(uint16_t handle, uint8_t rxid, uint8_t infoTypeLow, uint8_t infoTypeHigh) {
1568  l2capoutbuf[0] = L2CAP_CMD_INFORMATION_RESPONSE; // Code
1569  l2capoutbuf[1] = rxid; // Identifier
1570  l2capoutbuf[2] = 0x08; // Length
1571  l2capoutbuf[3] = 0x00;
1572  l2capoutbuf[4] = infoTypeLow;
1573  l2capoutbuf[5] = infoTypeHigh;
1574  l2capoutbuf[6] = 0x00; // Result = success
1575  l2capoutbuf[7] = 0x00; // Result = success
1576  l2capoutbuf[8] = 0x00;
1577  l2capoutbuf[9] = 0x00;
1578  l2capoutbuf[10] = 0x00;
1579  l2capoutbuf[11] = 0x00;
1580 
1581  L2CAP_Command(handle, l2capoutbuf, 12);
1582 }
1583 
1584 /* PS3 Commands - only set Bluetooth address is implemented in this library */
1585 void BTD::setBdaddr(uint8_t* bdaddr) {
1586  /* Set the internal Bluetooth address */
1587  uint8_t buf[8];
1588  buf[0] = 0x01;
1589  buf[1] = 0x00;
1590 
1591  for(uint8_t i = 0; i < 6; i++)
1592  buf[i + 2] = bdaddr[5 - i]; // Copy into buffer, has to be written reversed, so it is MSB first
1593 
1594  // bmRequest = Host to device (0x00) | Class (0x20) | Interface (0x01) = 0x21, bRequest = Set Report (0x09), Report ID (0xF5), Report Type (Feature 0x03), interface (0x00), datalength, datalength, data
1595  pUsb->ctrlReq(bAddress, epInfo[BTD_CONTROL_PIPE].epAddr, bmREQ_HID_OUT, HID_REQUEST_SET_REPORT, 0xF5, 0x03, 0x00, 8, 8, buf, NULL);
1596 }
1597 
1598 void BTD::setMoveBdaddr(uint8_t* bdaddr) {
1599  /* Set the internal Bluetooth address */
1600  uint8_t buf[11];
1601  buf[0] = 0x05;
1602  buf[7] = 0x10;
1603  buf[8] = 0x01;
1604  buf[9] = 0x02;
1605  buf[10] = 0x12;
1606 
1607  for(uint8_t i = 0; i < 6; i++)
1608  buf[i + 1] = bdaddr[i];
1609 
1610  // bmRequest = Host to device (0x00) | Class (0x20) | Interface (0x01) = 0x21, bRequest = Set Report (0x09), Report ID (0x05), Report Type (Feature 0x03), interface (0x00), datalength, datalength, data
1611  pUsb->ctrlReq(bAddress, epInfo[BTD_CONTROL_PIPE].epAddr, bmREQ_HID_OUT, HID_REQUEST_SET_REPORT, 0x05, 0x03, 0x00, 11, 11, buf, NULL);
1612 }
static const uint8_t BTD_DATAOUT_PIPE
Definition: BTD.h:558
uint8_t getConfDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t conf, uint8_t *dataptr)
Definition: Usb.cpp:801
uint8_t bmRcvToggle
Definition: address.h:48
bool incomingWii
Definition: BTD.h:504
@@ -305,7 +282,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/_b_t_d_8h.html b/_b_t_d_8h.html index 77e77993..f2fd6182 100644 --- a/_b_t_d_8h.html +++ b/_b_t_d_8h.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: BTD.h File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- - - + + +
@@ -106,17 +83,17 @@ This graph shows which files directly or indirectly include this file:
- - - - - + + + + + - - - - - + + + + +
@@ -407,7 +384,9 @@ Macros  

Macro Definition Documentation

- + +

◆ PS3_VID

+
@@ -417,11 +396,13 @@ Macros
-

Definition at line 25 of file BTD.h.

+

Definition at line 25 of file BTD.h.

- + +

◆ PS3_PID

+
@@ -431,11 +412,13 @@ Macros
-

Definition at line 26 of file BTD.h.

+

Definition at line 26 of file BTD.h.

- + +

◆ PS3NAVIGATION_PID

+
@@ -445,11 +428,13 @@ Macros
-

Definition at line 27 of file BTD.h.

+

Definition at line 27 of file BTD.h.

- + +

◆ PS3MOVE_PID

+
@@ -459,11 +444,13 @@ Macros
-

Definition at line 28 of file BTD.h.

+

Definition at line 28 of file BTD.h.

- + +

◆ IOGEAR_GBU521_VID

+
@@ -473,11 +460,13 @@ Macros
-

Definition at line 31 of file BTD.h.

+

Definition at line 31 of file BTD.h.

- + +

◆ IOGEAR_GBU521_PID

+
@@ -487,11 +476,13 @@ Macros
-

Definition at line 32 of file BTD.h.

+

Definition at line 32 of file BTD.h.

- + +

◆ BELKIN_F8T065BF_VID

+
@@ -501,11 +492,13 @@ Macros
-

Definition at line 33 of file BTD.h.

+

Definition at line 33 of file BTD.h.

- + +

◆ BELKIN_F8T065BF_PID

+
@@ -515,11 +508,13 @@ Macros
-

Definition at line 34 of file BTD.h.

+

Definition at line 34 of file BTD.h.

- + +

◆ BULK_MAXPKTSIZE

+
@@ -529,11 +524,13 @@ Macros
-

Definition at line 37 of file BTD.h.

+

Definition at line 37 of file BTD.h.

- + +

◆ bmREQ_HCI_OUT

+
@@ -543,11 +540,13 @@ Macros
-

Definition at line 40 of file BTD.h.

+

Definition at line 40 of file BTD.h.

- + +

◆ HCI_INIT_STATE

+
@@ -557,11 +556,13 @@ Macros
-

Definition at line 43 of file BTD.h.

+

Definition at line 43 of file BTD.h.

- + +

◆ HCI_RESET_STATE

+
@@ -571,11 +572,13 @@ Macros
-

Definition at line 44 of file BTD.h.

+

Definition at line 44 of file BTD.h.

- + +

◆ HCI_CLASS_STATE

+
@@ -585,11 +588,13 @@ Macros
-

Definition at line 45 of file BTD.h.

+

Definition at line 45 of file BTD.h.

- + +

◆ HCI_BDADDR_STATE

+
@@ -599,11 +604,13 @@ Macros
-

Definition at line 46 of file BTD.h.

+

Definition at line 46 of file BTD.h.

- + +

◆ HCI_LOCAL_VERSION_STATE

+
@@ -613,11 +620,13 @@ Macros
-

Definition at line 47 of file BTD.h.

+

Definition at line 47 of file BTD.h.

- + +

◆ HCI_WRITE_NAME_STATE

+
@@ -627,11 +636,13 @@ Macros
-

Definition at line 48 of file BTD.h.

+

Definition at line 48 of file BTD.h.

- + +

◆ HCI_CHECK_DEVICE_SERVICE

+
@@ -641,11 +652,13 @@ Macros
-

Definition at line 49 of file BTD.h.

+

Definition at line 49 of file BTD.h.

- + +

◆ HCI_INQUIRY_STATE

+
@@ -655,11 +668,13 @@ Macros
-

Definition at line 51 of file BTD.h.

+

Definition at line 51 of file BTD.h.

- + +

◆ HCI_CONNECT_DEVICE_STATE

+
@@ -669,11 +684,13 @@ Macros
-

Definition at line 52 of file BTD.h.

+

Definition at line 52 of file BTD.h.

- + +

◆ HCI_CONNECTED_DEVICE_STATE

+
@@ -683,11 +700,13 @@ Macros
-

Definition at line 53 of file BTD.h.

+

Definition at line 53 of file BTD.h.

- + +

◆ HCI_SCANNING_STATE

+
@@ -697,11 +716,13 @@ Macros
-

Definition at line 55 of file BTD.h.

+

Definition at line 55 of file BTD.h.

- + +

◆ HCI_CONNECT_IN_STATE

+
@@ -711,11 +732,13 @@ Macros
-

Definition at line 56 of file BTD.h.

+

Definition at line 56 of file BTD.h.

- + +

◆ HCI_REMOTE_NAME_STATE

+
@@ -725,11 +748,13 @@ Macros
-

Definition at line 57 of file BTD.h.

+

Definition at line 57 of file BTD.h.

- + +

◆ HCI_CONNECTED_STATE

+
@@ -739,11 +764,13 @@ Macros
-

Definition at line 58 of file BTD.h.

+

Definition at line 58 of file BTD.h.

- + +

◆ HCI_DISABLE_SCAN_STATE

+
@@ -753,11 +780,13 @@ Macros
-

Definition at line 59 of file BTD.h.

+

Definition at line 59 of file BTD.h.

- + +

◆ HCI_DONE_STATE

+
@@ -767,11 +796,13 @@ Macros
-

Definition at line 60 of file BTD.h.

+

Definition at line 60 of file BTD.h.

- + +

◆ HCI_DISCONNECT_STATE

+
@@ -781,11 +812,13 @@ Macros
-

Definition at line 61 of file BTD.h.

+

Definition at line 61 of file BTD.h.

- + +

◆ HCI_LOCAL_EXTENDED_FEATURES_STATE

+
@@ -795,11 +828,13 @@ Macros
-

Definition at line 62 of file BTD.h.

+

Definition at line 62 of file BTD.h.

- + +

◆ HCI_WRITE_SIMPLE_PAIRING_STATE

+
@@ -809,11 +844,13 @@ Macros
-

Definition at line 63 of file BTD.h.

+

Definition at line 63 of file BTD.h.

- + +

◆ HCI_SET_EVENT_MASK_STATE

+
@@ -823,11 +860,13 @@ Macros
-

Definition at line 64 of file BTD.h.

+

Definition at line 64 of file BTD.h.

- + +

◆ HCI_FLAG_CMD_COMPLETE

+
@@ -837,11 +876,13 @@ Macros
-

Definition at line 67 of file BTD.h.

+

Definition at line 67 of file BTD.h.

- + +

◆ HCI_FLAG_CONNECT_COMPLETE

+
@@ -851,11 +892,13 @@ Macros
-

Definition at line 68 of file BTD.h.

+

Definition at line 68 of file BTD.h.

- + +

◆ HCI_FLAG_DISCONNECT_COMPLETE

+
@@ -865,11 +908,13 @@ Macros
-

Definition at line 69 of file BTD.h.

+

Definition at line 69 of file BTD.h.

- + +

◆ HCI_FLAG_REMOTE_NAME_COMPLETE

+
@@ -879,11 +924,13 @@ Macros
-

Definition at line 70 of file BTD.h.

+

Definition at line 70 of file BTD.h.

- + +

◆ HCI_FLAG_INCOMING_REQUEST

+
@@ -893,11 +940,13 @@ Macros
-

Definition at line 71 of file BTD.h.

+

Definition at line 71 of file BTD.h.

- + +

◆ HCI_FLAG_READ_BDADDR

+
@@ -907,11 +956,13 @@ Macros
-

Definition at line 72 of file BTD.h.

+

Definition at line 72 of file BTD.h.

- + +

◆ HCI_FLAG_READ_VERSION

+
@@ -921,11 +972,13 @@ Macros
-

Definition at line 73 of file BTD.h.

+

Definition at line 73 of file BTD.h.

- + +

◆ HCI_FLAG_DEVICE_FOUND

+
@@ -935,11 +988,13 @@ Macros
-

Definition at line 74 of file BTD.h.

+

Definition at line 74 of file BTD.h.

- + +

◆ HCI_FLAG_CONNECT_EVENT

+
@@ -949,11 +1004,13 @@ Macros
-

Definition at line 75 of file BTD.h.

+

Definition at line 75 of file BTD.h.

- + +

◆ HCI_FLAG_LOCAL_EXTENDED_FEATURES

+
@@ -963,11 +1020,13 @@ Macros
-

Definition at line 76 of file BTD.h.

+

Definition at line 76 of file BTD.h.

- + +

◆ hci_check_flag

+
@@ -981,11 +1040,13 @@ Macros
-

Definition at line 79 of file BTD.h.

+

Definition at line 79 of file BTD.h.

- + +

◆ hci_set_flag

+
@@ -999,11 +1060,13 @@ Macros
-

Definition at line 80 of file BTD.h.

+

Definition at line 80 of file BTD.h.

- + +

◆ hci_clear_flag

+
@@ -1017,11 +1080,13 @@ Macros
-

Definition at line 81 of file BTD.h.

+

Definition at line 81 of file BTD.h.

- + +

◆ EV_INQUIRY_COMPLETE

+
@@ -1031,11 +1096,13 @@ Macros
-

Definition at line 84 of file BTD.h.

+

Definition at line 84 of file BTD.h.

- + +

◆ EV_INQUIRY_RESULT

+
@@ -1045,11 +1112,13 @@ Macros
-

Definition at line 85 of file BTD.h.

+

Definition at line 85 of file BTD.h.

- + +

◆ EV_CONNECT_COMPLETE

+
@@ -1059,11 +1128,13 @@ Macros
-

Definition at line 86 of file BTD.h.

+

Definition at line 86 of file BTD.h.

- + +

◆ EV_INCOMING_CONNECT

+
@@ -1073,11 +1144,13 @@ Macros
-

Definition at line 87 of file BTD.h.

+

Definition at line 87 of file BTD.h.

- + +

◆ EV_DISCONNECT_COMPLETE

+
@@ -1087,11 +1160,13 @@ Macros
-

Definition at line 88 of file BTD.h.

+

Definition at line 88 of file BTD.h.

- + +

◆ EV_AUTHENTICATION_COMPLETE

+
@@ -1101,11 +1176,13 @@ Macros
-

Definition at line 89 of file BTD.h.

+

Definition at line 89 of file BTD.h.

- + +

◆ EV_REMOTE_NAME_COMPLETE

+
@@ -1115,11 +1192,13 @@ Macros
-

Definition at line 90 of file BTD.h.

+

Definition at line 90 of file BTD.h.

- + +

◆ EV_ENCRYPTION_CHANGE

+
@@ -1129,11 +1208,13 @@ Macros
-

Definition at line 91 of file BTD.h.

+

Definition at line 91 of file BTD.h.

- + +

◆ EV_CHANGE_CONNECTION_LINK

+
@@ -1143,11 +1224,13 @@ Macros
-

Definition at line 92 of file BTD.h.

+

Definition at line 92 of file BTD.h.

- + +

◆ EV_READ_REMOTE_VERSION_INFORMATION_COMPLETE

+
@@ -1157,11 +1240,13 @@ Macros
-

Definition at line 93 of file BTD.h.

+

Definition at line 93 of file BTD.h.

- + +

◆ EV_QOS_SETUP_COMPLETE

+
@@ -1171,11 +1256,13 @@ Macros
-

Definition at line 94 of file BTD.h.

+

Definition at line 94 of file BTD.h.

- + +

◆ EV_COMMAND_COMPLETE

+
@@ -1185,11 +1272,13 @@ Macros
-

Definition at line 95 of file BTD.h.

+

Definition at line 95 of file BTD.h.

- + +

◆ EV_COMMAND_STATUS

+
@@ -1199,11 +1288,13 @@ Macros
-

Definition at line 96 of file BTD.h.

+

Definition at line 96 of file BTD.h.

- + +

◆ EV_ROLE_CHANGED

+
@@ -1213,11 +1304,13 @@ Macros
-

Definition at line 97 of file BTD.h.

+

Definition at line 97 of file BTD.h.

- + +

◆ EV_NUM_COMPLETE_PKT

+
@@ -1227,11 +1320,13 @@ Macros
-

Definition at line 98 of file BTD.h.

+

Definition at line 98 of file BTD.h.

- + +

◆ EV_PIN_CODE_REQUEST

+
@@ -1241,11 +1336,13 @@ Macros
-

Definition at line 99 of file BTD.h.

+

Definition at line 99 of file BTD.h.

- + +

◆ EV_LINK_KEY_REQUEST

+
@@ -1255,11 +1352,13 @@ Macros
-

Definition at line 100 of file BTD.h.

+

Definition at line 100 of file BTD.h.

- + +

◆ EV_LINK_KEY_NOTIFICATION

+
@@ -1269,11 +1368,13 @@ Macros
-

Definition at line 101 of file BTD.h.

+

Definition at line 101 of file BTD.h.

- + +

◆ EV_DATA_BUFFER_OVERFLOW

+
@@ -1283,11 +1384,13 @@ Macros
-

Definition at line 102 of file BTD.h.

+

Definition at line 102 of file BTD.h.

- + +

◆ EV_MAX_SLOTS_CHANGE

+
@@ -1297,11 +1400,13 @@ Macros
-

Definition at line 103 of file BTD.h.

+

Definition at line 103 of file BTD.h.

- + +

◆ EV_LOOPBACK_COMMAND

+
@@ -1311,11 +1416,13 @@ Macros
-

Definition at line 104 of file BTD.h.

+

Definition at line 104 of file BTD.h.

- + +

◆ EV_PAGE_SCAN_REP_MODE

+
@@ -1325,11 +1432,13 @@ Macros
-

Definition at line 105 of file BTD.h.

+

Definition at line 105 of file BTD.h.

- + +

◆ EV_READ_REMOTE_EXTENDED_FEATURES_COMPLETE

+
@@ -1339,11 +1448,13 @@ Macros
-

Definition at line 106 of file BTD.h.

+

Definition at line 106 of file BTD.h.

- + +

◆ EV_IO_CAPABILITY_REQUEST

+
@@ -1353,11 +1464,13 @@ Macros
-

Definition at line 107 of file BTD.h.

+

Definition at line 107 of file BTD.h.

- + +

◆ EV_IO_CAPABILITY_RESPONSE

+
@@ -1367,11 +1480,13 @@ Macros
-

Definition at line 108 of file BTD.h.

+

Definition at line 108 of file BTD.h.

- + +

◆ EV_USER_CONFIRMATION_REQUEST

+
@@ -1381,11 +1496,13 @@ Macros
-

Definition at line 109 of file BTD.h.

+

Definition at line 109 of file BTD.h.

- + +

◆ EV_SIMPLE_PAIRING_COMPLETE

+
@@ -1395,11 +1512,13 @@ Macros
-

Definition at line 110 of file BTD.h.

+

Definition at line 110 of file BTD.h.

- + +

◆ L2CAP_WAIT

+
@@ -1409,11 +1528,13 @@ Macros
-

Definition at line 113 of file BTD.h.

+

Definition at line 113 of file BTD.h.

- + +

◆ L2CAP_DONE

+
@@ -1423,11 +1544,13 @@ Macros
-

Definition at line 114 of file BTD.h.

+

Definition at line 114 of file BTD.h.

- + +

◆ L2CAP_CONTROL_CONNECT_REQUEST

+
@@ -1437,11 +1560,13 @@ Macros
-

Definition at line 117 of file BTD.h.

+

Definition at line 117 of file BTD.h.

- + +

◆ L2CAP_CONTROL_CONFIG_REQUEST

+
@@ -1451,11 +1576,13 @@ Macros
-

Definition at line 118 of file BTD.h.

+

Definition at line 118 of file BTD.h.

- + +

◆ L2CAP_CONTROL_SUCCESS

+
@@ -1465,11 +1592,13 @@ Macros
-

Definition at line 119 of file BTD.h.

+

Definition at line 119 of file BTD.h.

- + +

◆ L2CAP_CONTROL_DISCONNECT

+
@@ -1479,11 +1608,13 @@ Macros
-

Definition at line 120 of file BTD.h.

+

Definition at line 120 of file BTD.h.

- + +

◆ L2CAP_INTERRUPT_SETUP

+
@@ -1493,11 +1624,13 @@ Macros
-

Definition at line 123 of file BTD.h.

+

Definition at line 123 of file BTD.h.

- + +

◆ L2CAP_INTERRUPT_CONNECT_REQUEST

+
@@ -1507,11 +1640,13 @@ Macros
-

Definition at line 124 of file BTD.h.

+

Definition at line 124 of file BTD.h.

- + +

◆ L2CAP_INTERRUPT_CONFIG_REQUEST

+
@@ -1521,11 +1656,13 @@ Macros
-

Definition at line 125 of file BTD.h.

+

Definition at line 125 of file BTD.h.

- + +

◆ L2CAP_INTERRUPT_DISCONNECT

+
@@ -1535,11 +1672,13 @@ Macros
-

Definition at line 126 of file BTD.h.

+

Definition at line 126 of file BTD.h.

- + +

◆ L2CAP_SDP_WAIT

+
@@ -1549,11 +1688,13 @@ Macros
-

Definition at line 129 of file BTD.h.

+

Definition at line 129 of file BTD.h.

- + +

◆ L2CAP_SDP_SUCCESS

+
@@ -1563,11 +1704,13 @@ Macros
-

Definition at line 130 of file BTD.h.

+

Definition at line 130 of file BTD.h.

- + +

◆ L2CAP_RFCOMM_WAIT

+
@@ -1577,11 +1720,13 @@ Macros
-

Definition at line 133 of file BTD.h.

+

Definition at line 133 of file BTD.h.

- + +

◆ L2CAP_RFCOMM_SUCCESS

+
@@ -1591,11 +1736,13 @@ Macros
-

Definition at line 134 of file BTD.h.

+

Definition at line 134 of file BTD.h.

- + +

◆ L2CAP_DISCONNECT_RESPONSE

+
@@ -1605,11 +1752,13 @@ Macros
-

Definition at line 136 of file BTD.h.

+

Definition at line 136 of file BTD.h.

- + +

◆ TURN_ON_LED

+
@@ -1619,11 +1768,13 @@ Macros
-

Definition at line 139 of file BTD.h.

+

Definition at line 139 of file BTD.h.

- + +

◆ PS3_ENABLE_SIXAXIS

+
@@ -1633,11 +1784,13 @@ Macros
-

Definition at line 140 of file BTD.h.

+

Definition at line 140 of file BTD.h.

- + +

◆ WII_CHECK_MOTION_PLUS_STATE

+
@@ -1647,11 +1800,13 @@ Macros
-

Definition at line 141 of file BTD.h.

+

Definition at line 141 of file BTD.h.

- + +

◆ WII_CHECK_EXTENSION_STATE

+
@@ -1661,11 +1816,13 @@ Macros
-

Definition at line 142 of file BTD.h.

+

Definition at line 142 of file BTD.h.

- + +

◆ WII_INIT_MOTION_PLUS_STATE

+
@@ -1675,11 +1832,13 @@ Macros
-

Definition at line 143 of file BTD.h.

+

Definition at line 143 of file BTD.h.

- + +

◆ L2CAP_FLAG_CONNECTION_CONTROL_REQUEST

+
@@ -1689,11 +1848,13 @@ Macros
-

Definition at line 146 of file BTD.h.

+

Definition at line 146 of file BTD.h.

- + +

◆ L2CAP_FLAG_CONFIG_CONTROL_SUCCESS

+
@@ -1703,11 +1864,13 @@ Macros
-

Definition at line 147 of file BTD.h.

+

Definition at line 147 of file BTD.h.

- + +

◆ L2CAP_FLAG_CONTROL_CONNECTED

+
@@ -1717,11 +1880,13 @@ Macros
-

Definition at line 148 of file BTD.h.

+

Definition at line 148 of file BTD.h.

- + +

◆ L2CAP_FLAG_DISCONNECT_CONTROL_RESPONSE

+
@@ -1731,11 +1896,13 @@ Macros
-

Definition at line 149 of file BTD.h.

+

Definition at line 149 of file BTD.h.

- + +

◆ L2CAP_FLAG_CONNECTION_INTERRUPT_REQUEST

+
@@ -1745,11 +1912,13 @@ Macros
-

Definition at line 152 of file BTD.h.

+

Definition at line 152 of file BTD.h.

- + +

◆ L2CAP_FLAG_CONFIG_INTERRUPT_SUCCESS

+
@@ -1759,11 +1928,13 @@ Macros
-

Definition at line 153 of file BTD.h.

+

Definition at line 153 of file BTD.h.

- + +

◆ L2CAP_FLAG_INTERRUPT_CONNECTED

+
@@ -1773,11 +1944,13 @@ Macros
-

Definition at line 154 of file BTD.h.

+

Definition at line 154 of file BTD.h.

- + +

◆ L2CAP_FLAG_DISCONNECT_INTERRUPT_RESPONSE

+
@@ -1787,11 +1960,13 @@ Macros
-

Definition at line 155 of file BTD.h.

+

Definition at line 155 of file BTD.h.

- + +

◆ L2CAP_FLAG_CONNECTION_SDP_REQUEST

+
@@ -1801,11 +1976,13 @@ Macros
-

Definition at line 158 of file BTD.h.

+

Definition at line 158 of file BTD.h.

- + +

◆ L2CAP_FLAG_CONFIG_SDP_SUCCESS

+
@@ -1815,11 +1992,13 @@ Macros
-

Definition at line 159 of file BTD.h.

+

Definition at line 159 of file BTD.h.

- + +

◆ L2CAP_FLAG_DISCONNECT_SDP_REQUEST

+
@@ -1829,11 +2008,13 @@ Macros
-

Definition at line 160 of file BTD.h.

+

Definition at line 160 of file BTD.h.

- + +

◆ L2CAP_FLAG_CONNECTION_RFCOMM_REQUEST

+
@@ -1843,11 +2024,13 @@ Macros
-

Definition at line 163 of file BTD.h.

+

Definition at line 163 of file BTD.h.

- + +

◆ L2CAP_FLAG_CONFIG_RFCOMM_SUCCESS

+
@@ -1857,11 +2040,13 @@ Macros
-

Definition at line 164 of file BTD.h.

+

Definition at line 164 of file BTD.h.

- + +

◆ L2CAP_FLAG_DISCONNECT_RFCOMM_REQUEST

+
@@ -1871,11 +2056,13 @@ Macros
-

Definition at line 165 of file BTD.h.

+

Definition at line 165 of file BTD.h.

- + +

◆ L2CAP_FLAG_DISCONNECT_RESPONSE

+
@@ -1885,11 +2072,13 @@ Macros
-

Definition at line 167 of file BTD.h.

+

Definition at line 167 of file BTD.h.

- + +

◆ l2cap_check_flag

+
@@ -1903,11 +2092,13 @@ Macros
-

Definition at line 170 of file BTD.h.

+

Definition at line 170 of file BTD.h.

- + +

◆ l2cap_set_flag

+
@@ -1921,11 +2112,13 @@ Macros
-

Definition at line 171 of file BTD.h.

+

Definition at line 171 of file BTD.h.

- + +

◆ l2cap_clear_flag

+
@@ -1939,11 +2132,13 @@ Macros
-

Definition at line 172 of file BTD.h.

+

Definition at line 172 of file BTD.h.

- + +

◆ L2CAP_CMD_COMMAND_REJECT

+
@@ -1953,11 +2148,13 @@ Macros
-

Definition at line 175 of file BTD.h.

+

Definition at line 175 of file BTD.h.

- + +

◆ L2CAP_CMD_CONNECTION_REQUEST

+
@@ -1967,11 +2164,13 @@ Macros
-

Definition at line 176 of file BTD.h.

+

Definition at line 176 of file BTD.h.

- + +

◆ L2CAP_CMD_CONNECTION_RESPONSE

+
@@ -1981,11 +2180,13 @@ Macros
-

Definition at line 177 of file BTD.h.

+

Definition at line 177 of file BTD.h.

- + +

◆ L2CAP_CMD_CONFIG_REQUEST

+
@@ -1995,11 +2196,13 @@ Macros
-

Definition at line 178 of file BTD.h.

+

Definition at line 178 of file BTD.h.

- + +

◆ L2CAP_CMD_CONFIG_RESPONSE

+
@@ -2009,11 +2212,13 @@ Macros
-

Definition at line 179 of file BTD.h.

+

Definition at line 179 of file BTD.h.

- + +

◆ L2CAP_CMD_DISCONNECT_REQUEST

+
@@ -2023,11 +2228,13 @@ Macros
-

Definition at line 180 of file BTD.h.

+

Definition at line 180 of file BTD.h.

- + +

◆ L2CAP_CMD_DISCONNECT_RESPONSE

+
@@ -2037,11 +2244,13 @@ Macros
-

Definition at line 181 of file BTD.h.

+

Definition at line 181 of file BTD.h.

- + +

◆ L2CAP_CMD_INFORMATION_REQUEST

+
@@ -2051,11 +2260,13 @@ Macros
-

Definition at line 182 of file BTD.h.

+

Definition at line 182 of file BTD.h.

- + +

◆ L2CAP_CMD_INFORMATION_RESPONSE

+
@@ -2065,11 +2276,13 @@ Macros
-

Definition at line 183 of file BTD.h.

+

Definition at line 183 of file BTD.h.

- + +

◆ PENDING

+
@@ -2079,11 +2292,13 @@ Macros
-

Definition at line 186 of file BTD.h.

+

Definition at line 186 of file BTD.h.

- + +

◆ SUCCESSFUL

+
@@ -2093,11 +2308,13 @@ Macros
-

Definition at line 187 of file BTD.h.

+

Definition at line 187 of file BTD.h.

- + +

◆ SDP_PSM

+
@@ -2107,11 +2324,13 @@ Macros
-

Definition at line 190 of file BTD.h.

+

Definition at line 190 of file BTD.h.

- + +

◆ RFCOMM_PSM

+
@@ -2121,11 +2340,13 @@ Macros
-

Definition at line 191 of file BTD.h.

+

Definition at line 191 of file BTD.h.

- + +

◆ HID_CTRL_PSM

+
@@ -2135,11 +2356,13 @@ Macros
-

Definition at line 192 of file BTD.h.

+

Definition at line 192 of file BTD.h.

- + +

◆ HID_INTR_PSM

+
@@ -2149,11 +2372,13 @@ Macros
-

Definition at line 193 of file BTD.h.

+

Definition at line 193 of file BTD.h.

- + +

◆ SDP_SERVICE_SEARCH_REQUEST

+
@@ -2163,11 +2388,13 @@ Macros
-

Definition at line 196 of file BTD.h.

+

Definition at line 196 of file BTD.h.

- + +

◆ SDP_SERVICE_SEARCH_RESPONSE

+
@@ -2177,11 +2404,13 @@ Macros
-

Definition at line 197 of file BTD.h.

+

Definition at line 197 of file BTD.h.

- + +

◆ SDP_SERVICE_ATTRIBUTE_REQUEST

+
@@ -2191,11 +2420,13 @@ Macros
-

Definition at line 198 of file BTD.h.

+

Definition at line 198 of file BTD.h.

- + +

◆ SDP_SERVICE_ATTRIBUTE_RESPONSE

+
@@ -2205,11 +2436,13 @@ Macros
-

Definition at line 199 of file BTD.h.

+

Definition at line 199 of file BTD.h.

- + +

◆ SDP_SERVICE_SEARCH_ATTRIBUTE_REQUEST

+
@@ -2219,11 +2452,13 @@ Macros
-

Definition at line 200 of file BTD.h.

+

Definition at line 200 of file BTD.h.

- + +

◆ SDP_SERVICE_SEARCH_ATTRIBUTE_RESPONSE

+
@@ -2233,11 +2468,13 @@ Macros
-

Definition at line 201 of file BTD.h.

+

Definition at line 201 of file BTD.h.

- + +

◆ PNP_INFORMATION_UUID

+
@@ -2247,11 +2484,13 @@ Macros
-

Definition at line 202 of file BTD.h.

+

Definition at line 202 of file BTD.h.

- + +

◆ SERIALPORT_UUID

+
@@ -2261,11 +2500,13 @@ Macros
-

Definition at line 203 of file BTD.h.

+

Definition at line 203 of file BTD.h.

- + +

◆ L2CAP_UUID

+
@@ -2275,11 +2516,13 @@ Macros
-

Definition at line 204 of file BTD.h.

+

Definition at line 204 of file BTD.h.

- + +

◆ WI_SUBCLASS_RF

+
@@ -2289,11 +2532,13 @@ Macros
-

Definition at line 207 of file BTD.h.

+

Definition at line 207 of file BTD.h.

- + +

◆ WI_PROTOCOL_BT

+
@@ -2303,11 +2548,13 @@ Macros
-

Definition at line 208 of file BTD.h.

+

Definition at line 208 of file BTD.h.

- + +

◆ BTD_MAX_ENDPOINTS

+
@@ -2317,11 +2564,13 @@ Macros
-

Definition at line 210 of file BTD.h.

+

Definition at line 210 of file BTD.h.

- + +

◆ BTD_NUM_SERVICES

+
@@ -2331,11 +2580,13 @@ Macros
-

Definition at line 211 of file BTD.h.

+

Definition at line 211 of file BTD.h.

- + +

◆ PAIR

+
@@ -2345,7 +2596,7 @@ Macros
-

Definition at line 213 of file BTD.h.

+

Definition at line 213 of file BTD.h.

@@ -2354,7 +2605,7 @@ Macros diff --git a/_b_t_d_8h__dep__incl.map b/_b_t_d_8h__dep__incl.map index f1f02286..d124b572 100644 --- a/_b_t_d_8h__dep__incl.map +++ b/_b_t_d_8h__dep__incl.map @@ -1,13 +1,13 @@ - - - - - + + + + + - - - - - + + + + + diff --git a/_b_t_d_8h__dep__incl.md5 b/_b_t_d_8h__dep__incl.md5 index bbea866d..c59fa974 100644 --- a/_b_t_d_8h__dep__incl.md5 +++ b/_b_t_d_8h__dep__incl.md5 @@ -1 +1 @@ -9039e772c47944b11e9bf0a098808b93 \ No newline at end of file +f319401190d1085c45724d4fdcb1e6d0 \ No newline at end of file diff --git a/_b_t_d_8h__dep__incl.png b/_b_t_d_8h__dep__incl.png index e8438b44d78fe6f3fbda4b2eaa01ef50ddc92f0e..008b22f1569959e642d19c33f5b498d6ab9dfdb1 100644 GIT binary patch literal 19106 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 literal 15916 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 diff --git a/_b_t_d_8h__incl.map b/_b_t_d_8h__incl.map index 5dafafca..6468177d 100644 --- a/_b_t_d_8h__incl.map +++ b/_b_t_d_8h__incl.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/_b_t_d_8h__incl.md5 b/_b_t_d_8h__incl.md5 index e21490e4..251afce2 100644 --- a/_b_t_d_8h__incl.md5 +++ b/_b_t_d_8h__incl.md5 @@ -1 +1 @@ -197d6a6ff2afdc0a0703304559fc9c13 \ No newline at end of file +390162dc6dcc4addc7713fef630f65d1 \ No newline at end of file diff --git a/_b_t_d_8h__incl.png b/_b_t_d_8h__incl.png index 914dd3ca6e9ce265c4a99381f2144034c271dfb9..cf56d7ac0664655a9f6aab7b0fe2946e6b3369a4 100644 GIT binary patch literal 9242 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 b2Q)(V-OG1eFI#~!Cy??h4fzT=^YH%xU~Osf diff --git a/_b_t_d_8h_source.html b/_b_t_d_8h_source.html index c647d303..d4605bdf 100644 --- a/_b_t_d_8h_source.html +++ b/_b_t_d_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: BTD.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- + - - + + + +
- + - + - - + +
@@ -107,7 +84,7 @@ Include dependency graph for BTHID.cpp: diff --git a/_b_t_h_i_d_8cpp__incl.map b/_b_t_h_i_d_8cpp__incl.map index f4a1def3..45a2c201 100644 --- a/_b_t_h_i_d_8cpp__incl.map +++ b/_b_t_h_i_d_8cpp__incl.map @@ -1,8 +1,8 @@ - + - + - - + + diff --git a/_b_t_h_i_d_8cpp__incl.md5 b/_b_t_h_i_d_8cpp__incl.md5 index 457a9283..0f3b1317 100644 --- a/_b_t_h_i_d_8cpp__incl.md5 +++ b/_b_t_h_i_d_8cpp__incl.md5 @@ -1 +1 @@ -2fddcbac34cc48df9a24e3c113c74570 \ No newline at end of file +b0bd84a1b94c9a61dc97b5614bffe745 \ No newline at end of file diff --git a/_b_t_h_i_d_8cpp__incl.png b/_b_t_h_i_d_8cpp__incl.png index 03e6136e0c46c9104314b2450e78ec006d4b9a3c..17e105000cbc44f7bf3dbe59c800eb6bce09b637 100644 GIT binary patch literal 15940 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 - + + USB Host Shield 2.0: BTHID.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- + - - + +
@@ -109,8 +86,8 @@ This graph shows which files directly or indirectly include this file:
- - + +
@@ -131,7 +108,9 @@ Macros  

Macro Definition Documentation

- + +

◆ KEYBOARD_PARSER_ID

+
@@ -141,11 +120,13 @@ Macros
-

Definition at line 24 of file BTHID.h.

+

Definition at line 24 of file BTHID.h.

- + +

◆ MOUSE_PARSER_ID

+
@@ -155,11 +136,13 @@ Macros
-

Definition at line 25 of file BTHID.h.

+

Definition at line 25 of file BTHID.h.

- + +

◆ NUM_PARSERS

+
@@ -169,7 +152,7 @@ Macros
-

Definition at line 26 of file BTHID.h.

+

Definition at line 26 of file BTHID.h.

@@ -178,7 +161,7 @@ Macros diff --git a/_b_t_h_i_d_8h__dep__incl.map b/_b_t_h_i_d_8h__dep__incl.map index 953e5981..a8f40d95 100644 --- a/_b_t_h_i_d_8h__dep__incl.map +++ b/_b_t_h_i_d_8h__dep__incl.map @@ -1,5 +1,5 @@ - - + + diff --git a/_b_t_h_i_d_8h__dep__incl.md5 b/_b_t_h_i_d_8h__dep__incl.md5 index 33bd7539..6a659db3 100644 --- a/_b_t_h_i_d_8h__dep__incl.md5 +++ b/_b_t_h_i_d_8h__dep__incl.md5 @@ -1 +1 @@ -f1f4d069fb346aadbae9c219f4a36799 \ No newline at end of file +f5ffabeee933ef99da0ca226df2def53 \ No newline at end of file diff --git a/_b_t_h_i_d_8h__dep__incl.png b/_b_t_h_i_d_8h__dep__incl.png index 7db4b80b92ff3c9a1c06dce51b62a74570ceb5bc..2b3e98b59c5633d52a69418bb6c150154244279c 100644 GIT binary patch literal 6746 zcmZ`;by$?$w;e)2N|2OpP-^HJQ3)wYr9oQhlPK2S0wq1rnopC zE6t)M$M4upy3F_4O36|W)QV*}x}XurFca3|e}ZKiUinmvm$i&m_$=CHn(!n!C@5}7E;JWCZkX8fo9sU$Mw zK}o#KVO$Us6b1=OSw*FDEjO@o8!8!lu+(dDy!mH^p6^3GLoSdv|Y=x+~gxJ_FxYeNZ_JqLE?o6}N6j3hKX=8rQV_);GDAKdDrG(KI zU(aZPn5_g7ZTbFG2&AL4bF@sCAKIg#p%GMF4c$i7;syr?SJ&6e+uQR%=25k8^}f0m z?F&HGH#YhUor0eR^(HVb{VsW_S7UyMm;r`IPyf-QUNx#TPY@FWvc9#|+1?I`h=`yT zwkCnWV9v*z+K`~)Vh%z=LQ_*yh`+x-ghW~t3WX%}CM(T7fBw80f#``KqWuZ1kW)}- zK)aI`JmNy#uW2;mYjWQzuDgCaoXP&;WcaJg63+DWG}LYN1)YSe+_OYdr075PcOiKN z1(*~R6kPoLy~&*F&hzaUFERv+R2_tkCQF^>TD>lgO1d17NF)gd>wgii7up1i!g z!)^kJ_oqx=3`k>ha|~>3Y%C%-*Q9yU`kqat&EDc7CND4Vi*zUkL_D~9~uWpHHX^|ZrGDTg^7e_V|6BCNl5lK87itBwK1^5I6qxE*W5cm4=i3vSwT3Qv@ zxb~Po0XF9H>MDz*B#pPXw_deruyfX4E1LM^p8w-q?QA_OGQNmK*J3%NJU3S zXklR?nVZIiIb)m#upIm!EVCQR;AujX5n&_+5D;f(ISh~$nJ7#RI6Jkg^+@R@Z!R#?%0=#|Mj<^ znwlDWOqRks|JX~Fj7X!))YbhPKes_KJABVue!9CdYH>^sAby6CqfZ`wPTpl^QEbzEPmSdj?_6%@F> z_}D}yA;JHB$%UB&ubn#Y^Ed^oLTk9@ry(<|W6JW1Ihh28Cc&+=528`UmSx4eGlR0` zi&cusO)*DDxFmSgUNAme+fCatKWVDf)yMl+rvdB8BL5r6*Jj3!uWoHmUnVC^HHgXR zHpK9}#)L3&uCW)Z5y>klQD9>R?|TzRVi6HBl$P3JK&fdq=c@vDaP91bVyVp{1T1*+ zs?^8zneb)%b&UT>(O&3f+*|4hH*vYXbRZ`u4;@*{N9Zt}$js2t7_qVWg)qzd)R)aI zF5(l?o;bbI9S`YTVB)bST^**KsT8Gc_LCrsq1=&ms8}u;T5)Y(a?vz4CU84sXnbcw zBrH6s8^a-|{LTT}{X?z^Hg_2lkFgJgQ|w&hN4{q(7dfd3a437+%0D+fNlvL(_(meJ2NvOA_Xv^N=6 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 R@MjT3NnTB^QpPmozW`C^52XMA literal 4933 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 - + - - + + diff --git a/_b_t_h_i_d_8h__incl.md5 b/_b_t_h_i_d_8h__incl.md5 index aefec681..d3d074cc 100644 --- a/_b_t_h_i_d_8h__incl.md5 +++ b/_b_t_h_i_d_8h__incl.md5 @@ -1 +1 @@ -d78862557f9f3bddfcdcfa91190beeac \ No newline at end of file +b3c29136fe98c9d8e7c6c6b7a9475517 \ No newline at end of file diff --git a/_b_t_h_i_d_8h__incl.png b/_b_t_h_i_d_8h__incl.png index 189bfc762f8ec56efee10a6697d8965f7f8aaf9a..432e1eaf55449b1ca60f5d0ffd12ef9bb44c8d95 100644 GIT binary patch literal 13122 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�+eM@P$i?(a4Rla=qxa3}@)H%`8W zg?V~;fqX^4{`^lvznGXOsY6SR9v4~fqIUQ89wX0GTE~G@Z*46QUYn94BMmJrL#P0T z?DKtu0Rr0C)>goFmh<#3KU1z&hk}%JwosilOYU@jCct@K?Y=%ETJJG(0-wu8e*$W~ zkUVYE{hg=9rWW(pynJ@t@JeFJnyBN@C4Z7aG&<~^};@dyjXGTgPrE_(VO8!_5AAp zaq!zPyqcfSKk+}3_{HY?N{#uf#uvVErn-&S7Q55MAY-4a(EVP!=+h`{t)1;;vXE@KKn)T`d_kJG0}61rai zPB~JN_uLiM7%{Bu&-~%HbEYAhu@lqNd>-e(1x0DQBxrhbN!740LK&T`j{reL0864u z`louK3MZ&Wtg0?^3Y(#ah=?Za`i&nRV_KD-nCM5mcRQJqT3j>Fv^3Scy=U^?Cz-H! zCU9V&k*V%rzuc(=hz$e7*fz1{aWT`*?u_rRU#Xs+*JdXDZjNPLbL3Cc%JfJu8K_!R zleAex8#_K6EEaN@Q`~IQiZ~u`0PD`jdOsXw^gd@1053X1v`JItBjSjAO}@~{C@K7? ziHYaE8&g>7nj-N`KfXbS;6guUXLGUYHB9b0(=>GaY--wC4R=cx@Gu7^2`rtW7TnWb z6ZYd{X)b>9i?X88(Zt~3V!&KTNKV??y&O*csT6hK>+4-9Dd&k3cB^`^F-d<<+i|Kj zv=VR5=V6cc5>e*z0E%iZVl{nwpw8-CyS>;glCQR{<3o z^(~60FY!Wv=}GyXz$?~tZ^46$-fSp{5+y6EADG-m+JpZDTps~jELBUufEjuK-S$-Q zrg^q7OAr8*SADEgM9iclltR)|?e8Ie@%mrC&LE+jstREgrj{{RL75tycaKFRq^0#9rooQ#LTzxEO?@4IV*w_Y;6?W{Xz8KdXvRfB!=cj@75+ z#m=vg16~pQZ+cg}Uhw&wUDa^FBx{pY%A42DLn#WfauRu;Pp2<&4?9+JauxJly@=OMHG$O+AQ7|3JZcW7 zJCOg=NZ^vil!7-kdCAH0T0j|NdIQ?N>(<}ZxR+;@l{M{UJrFh#uIf=F6oO`uz^JR4 z-koteTW%!-uB%^b=#ZA*?Hoi*yoqt@+Xn~i7Pvxe!*oK;Hb*NLY$UJf=sY^V;8S`o zSDW@dL)s$BvZg}bqEDgadh*1Dh;8>@eeeZsB4Z?i?Db-TAUrSJzchk;Gw+ZC|gP{;B!)d>$C!z<}0T zjCfoMmP*kv+@z#tIP3LAb8MKi|Y@8ScgpV!()Z-SsYaBG=;o!*BYYh95 zY#S}DnxWXTIq2{2pc{O)*!U$n+6EcH!69hm*K|aZ_7=jIohJ}B>q#gMjz>)5&R91d zWO>)7n4Q6>l$ciXy6JC;0#R2St5B7_UFmP?7&dw!9hl{)cvFzT|!bq z^o^c9kh~R43A&NvaHcHI-CCCPbhVB6yj~s=ull|0x{#>yARHvbEuMX0VJOle83~94 zTZC@YO`0(}=56Zoicz`Ej79nfuEy&E42CAXVQk=2?F^N)o&G==_!#Q@^y%W}L}#ZO zOB@n}3Rp2!Yg9?5wTflKo9Z z!$)?$t)yV%Z7iGVA4n3S;4mx9Tornu#AzQuWw6>6g84Sr`j+N>dyZUlD;p+c93a)6 zs337k94j~Y+e~FC<%93Bv4rI0Ut_pr`W|BjYU(bKtfdHgt#k1#JqazZmHH5xqK3c^I;4&@i;JM$V#Su zO>F6YC?}7LYj4!UPuE4<$G7$S8SN=P#JlkZIL&g36sl>*`gBX&Q zmnXGG@&8LCXsD;&)+1Zuk=5Cak_VLYz{ddww>M}1SC%4ygHj)>BFaSpn z@NG5tWx@^&_X>hnStTWd9e)P;n5%4NK=y+I53kI1Pb)^I32--V4h}LNyQh$}rY1eO z_gKYeUzh}6{xa}f0pF??D6X(@C+~fxzi2u;$MWx^9IT{&<|ox|C-9yE0>n9qa6Uaz z52Ox8gpL?+DBc*9&j9BOHEO4fQHvl4~2!K5t`2B%BoC2gn@SRtWR=Z0|UM4n< zNYg=qMI2-a8r)9?Qv^Wj0Csh}_Ch%a^x+3y`avZS{3)h!^2rw zSP0Pr`r=qq`CMK?43?U_0Cla=MUgXKCKoOYO}x-{ti1s?dqB%XqaeW2WMgHeB6 z_Fu1Z{7)m%f8OqxIhlX|{{6>#VZY~D3Hm@wp{1ogIv3RiF3ORNN2E5?1J{IDSX3k6 k#So+iV?V}!J?+xRKzg*R?uQc)b|8><67u3Dq6WVI3pIoRy8r+H literal 12961 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 - + + USB Host Shield 2.0: BTHID.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - - - - - + + + + + + +
@@ -108,7 +85,7 @@ Include dependency graph for PS3BT.cpp: diff --git a/_p_s3_b_t_8cpp__incl.map b/_p_s3_b_t_8cpp__incl.map index 66b9764a..248c85e9 100644 --- a/_p_s3_b_t_8cpp__incl.map +++ b/_p_s3_b_t_8cpp__incl.map @@ -1,9 +1,9 @@ - - - - - - - + + + + + + + diff --git a/_p_s3_b_t_8cpp__incl.md5 b/_p_s3_b_t_8cpp__incl.md5 index 47f6eaf8..0d2883f6 100644 --- a/_p_s3_b_t_8cpp__incl.md5 +++ b/_p_s3_b_t_8cpp__incl.md5 @@ -1 +1 @@ -50d55f1029d7b23c50d71899212fd03f \ No newline at end of file +fcd6fdd81a5a62e824f047cf224529eb \ No newline at end of file diff --git a/_p_s3_b_t_8cpp__incl.png b/_p_s3_b_t_8cpp__incl.png index 406ff57f60bfeeaeb8f28a9e2ca4b8bddb963740..81300da5c3d66175ec170010a22554f81d42c1db 100644 GIT binary patch literal 18678 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 literal 17741 zcmd74byQVRv^RPzLQ=Ys?l@A1RzSL2I;12I-H5~iDG?Bm5|D1`?vRx3mX?y1dh6VA z@A$@d@BQn&f8KC7bZic5uf5k=bIxDP6RxT(gY}f`DFgz+l9QEEhd>@+gTEF4U zXdckUhT$O|WOt29iF%*5F=hC6xREg0%>J-2K)fV-HH{ooZS8q*x%7X#(P;k1bWGA0 zQpe3vQCR=Z_7L?hTOIxVPa&$>+M&%p7i%3M7=1%SA<4<4-sgY9E6jU4mY1m^PG`GX ze-;~wfByVg{^N(la*H3-=iF{)W@f@RsCT`6ZjQ{~-#>}R3j5FgenNkS$N8T(hBtFv zQfh0zvggEyo0>%I7V4gjj*fn$SsW3+r-+V@)~$X=n3|fZs;BocMZnSQ;$ZP(S4F_R zeF5se(l+u2?>fyhFEvtBUI!yDH$0y1_X^{sOpdBO5hM#Z6$+M6nQ0GXPaA`$WAM!}&fhUGeZfV@9m?=?SMYG$2Z zIrc2CuI~Q*Gw%3&-m&td3S*opm<9~K_PBpw0BSQv|MFr=-?>jamSv|z&LU2!UjxIBfo z<^@iR<8q69z$YRiq9lHMvRtJUlu*;7?NPd$({UBudS?dh61^PFk=aTsH6x?wN2u7( zSy`XnUyTIB_rD_~B3fH%4+@KpF7^1Dt?b~yX<%SL#tsH-Uh@IB|GlwM!OGMVgNLB9 z@rHf|`=zt<(aGkJq?1#5zd1WQJ1zl1@a^@5fNo56HJ^l}n&}C~l^V>IwdI7S^5s{B;>o>_vbteW_)B70lJKcix2J|+t8sLDc7E0o`x3}l#=eK=$f}#56 zO}JbfBTK@?&NynN<Qa`Xg>cDH^3P$=5;5N7@yHck*5g8onnULO6X>Hy+SjM!b7DA=KBhn zl2S<*X$Qx=4!e_nV`HOzXeerrJB%zI_Vt@20vqOg$-TC|UXT5n&bQ?Wc)fC6*SDXRoHA{^bkA1~(($mjB_C9_nCU*6fAT_O|9xaYUApFxFT9~`2pI)eO zz^#tO8wrWfv5}LlRuE!%(bEc(NCE;pT(^HI??XkXR(5P+N)6}tSXj;8F~gI-)h-`A z%2fSjQm@MVQdTxVR9Z?Aivb&-*WHdKgZ}G$Fw(4JMf* z&$EF`Un=i&*N~KylDkKAj6rya@TX6AQ3Jo-%@1sy;1WzE28D&OWOkWmJ$!gW6E{h1 zlQ=-ybf)cyO-q{_3_k4)uXuI1RJwAKkydteC4xz^g5~3*fK5l2`yLO0PA*VN?Kxt& zO(GDjtRZ`%w#IFmEyI@a8SSxeB*ko8w)KCE-C<`xZ?f{z5nM%k{1B6T6N8P-rL>cl z5eyOTbG_g4X@InE!#R?29X7XGcvbWJ+?4|=RDq(V1%+UR6Mh{BAP8E!obVgwDr z)Asda%ry{kcj(>Oq-Ihhf8(1p?y!@)(rW-vM2Hsh=_-z zRVn`Gq2PwNZ3(~x1x@?oS^7psbmEB#30JdY#6HBt;DC7ZtJF~V@#DuUr#s^x&7&!W zLv@V(2sbx3o!s4fCJHoSg=<&dwzI`ug1?W)(>+ z?Cfu~tmNd-%}q^5O~^4jxkExiB6Zmvc+lzz*zyl0MaJBSx_4ZbNENN)? z`k;+M$Te*8B&=Qrv5M8i6;;Vk&0va;gc zB47koqe@V9T@a?{YzD9Xx)tyN@Y z(OQDaL$S=LnZ(7#rDtFu;!TrhMZXam1O>9bvVzP$c}weVt#)>HNgz#DALp|U^!KaZ z7-(zf{+Q0fK7&P4oxw0)?}x~Wi;IKZhs^H%#l^+Qu)4B2l)}u#)f-DE^C=}I0v(@m zq6lG1LO@7JBO*dEo~Kf#qkVn$`zL#y17;NjI17e7IR5}Jl8Qagw@^M%{mYf5wZH`PvqFx7|J{|3rk>jHXX?Se9=p`eif{MCEb@mYu#GCd+QXXAgwEf*M zuQIyd9&L_IN(zh-7enLXLd7KcrM72}yDpQ*DlJ7DOGE#bXKWn9>E`moP{aTvsx$5TOc^&~`)2(4rX3o;K#>0b9MQO?W-=y*s z(kq9phwI}i<`tgDXpv--`i}cTLN(pdlsryXe+`TE+%z5c@jAh(x8>v!n`{nJdhYWX zOG#l)`&{#mNoZ!O5kAs>!_q#OENtTF7;@N>(ltUtQBF==VfSC7~8W?KBn z*x3hRQC2%+0#N6-ID@J6k3e>VlVPkYEd|0Rz{p&dTbdw-mx)fFa=2KjWgDKjbU4ZTjuuSeAJ#3uQVM82QdS7v|;NVS_JW7 zZR8?1O#R$)LYJV;Vdusey*7S+i6C%M9x$lpS#jM=eYz98^WWeN+wCqdUy zs~i@e>encSzBE~Id=gbv#UARnvlQ%iI?7e&!i3s-TLaP7HY@EM{n$Xq0TRCF4nt>h zlXTTU-Te@00f+wZYFl7y1$>?U@)8E8jMkovt{VJW9Ve})NWwvxZ$-@c-E6I^D6s1i=4-SfyJTtEIRmyR$ftv8*K|*x_LsYCVTN@tl$K<2@s61_ zSZltzAy9)OL^2C6i%{;MKe#t~Gf;{ZQV7^Z?+(Q)J= zq_td`q0mR>JyPZ!!4EEPP9UY7s{~P1Nd)L1iLx*=gE+povS}I7>|-U#{C(I^S^1fC zv;nHIvDKeBzVU6Vff^HDiXsfWa7-Sn14t+L%nyqf3{m$nV7jP&S#B?l_4&x?z$CDE z3$rY$_4yoTU%cV^&ujj!QIZjNch_P)G0VYWVbc{(t9u3r^Is&PuRJdu44OPqWn!dB zx`=S4%w3~`N`CxcZTj0kJ=1dgVQk&Nanjn3OkdQlH#!0h^9Ea;MM+0MDjudQ%TI|S56X)UleGfgiC$27{E5YziSozI9O*`_vzzgk;=EK zD)kM%C^{JjXIw%xu#qvYFO0S7Yl0OS5t^*M9U<38?Wm~RAE+>(&;Zkp;1Xu8vQR1Y zd$+g&(m#tnAwhj%Lh&%(_|Kn1=4)Mk9VHtMt^1tcgcvs7O&FU<+by@S>Hhc)dHcdE zsEnV_%?v9dzU?e8ltDs96M!+9H^7Y(2l~;o`EFu@AbS4>xq8VUj_1XATVrCao}xiOhVp?wVj`9 zhkYcAG41pfj2?DP6G{lnQ3#NBa0oYxm#4>j&Ut`QWpCRKcjcf;E9Bkm3ipgp)RBC? z^6L4@`l1J7Z7e5-#b$fvXm!!)c&!%=hx%#Ydz?&FNVpUL2swh3q3=(qWM0315=||R zovhenL4x(~Fd!~AUh{o4CC4+0KUgxon~u}lpu7Op!aEwF{d%X>hoH2p!6}$L?WA`UTW;lfZ6$yGZE}n$<)@R-4<5XgKyt|a}BTm+DfGHH-eC9(FF58_&@BF z+L}qA_BpLx(%-F+|3H=5iWJoz8dHi2o1H&@qGx7i%Bp}e?CwTq5p1lO8vFTMIRp|e1HJ-5fIo}5dy*Ba%9HNS;BbTGTPzQg+$;k-{4=q-666uYR z>X@G!&TlO(*AUeHFTrAXUmQdsaHyS+_egT)rceJr73-SKh+s*~UNbW@l33ZUUBSW* zPEd?@nN>*l@}Jsr>DNRi!{AwS?gIZy6&}`P(^^)lrK7_GNdi#Y<|cK^xHC1CqGxJK z`?yk<-SR00#+z<{^E-5Pb$Mq(3rQxLsiT@NAW2Fo{Lu9D^hiL%jhE;PY_4@j3<98% zq?{(iva6`9tSzzyCMMZUo<1>9qOhl+i4Xned|r{J@9s_tBc4Fw z5)yJQ>x+vOEx2STC2w%X7N}&TrBU$l@H&EngPEz=SXs@!aOn4(?oLKP1q7^`nwpZj zBZ!OsgiN#`u(7cLA?L9x`X9T`?NG-2P!z(*!=tft6*alDyW0=21dol4&93otthMoA zu)Rsl58&Kx!(JJH9r9TA)7hbDWC3u~#469BZ0s8d*vhP?CJLEoidSHJGb$#jmQjV8s%mNmA00UVnPM*1&2zcZ7fFtYW?eZHx%GOX=mpb^myo0;{K6+ zeX^KTBD%Iv0HINBr;1;_c|%Gi;`tt6e}Tr~U%yo885myC#zI~;`?>4&Z*^Pa%PhkE zsHv$J8r(o)gBGWcY@MubZ-?28=VodZX}sfFAfET!2ZvIK0Gv%NpTW!Hb*TT% zC1dUA%=KuqkH^i~w6XjKm=&40@uWEj#_y(MY*;dgv-bhVR`=f-{Qs5ff{Q&+WF`Pp z<@G8ot*;kgWjlN)$hwFZkEJ z18gea_X>$WDokE^czWvo@b*_%f1sSM2ucJ|T~QVC)U>p-rCcEZ7p+Fp`DQqtr?9dV zKmu-J122~LhTWKl%&aqr+aTxB_D>5mqjAJ$Vk8lz>y3wuW~bXr#d|QQ-k2cJ-(>Jt)9f&!eW)Sw=**l4vnsUz${i3e3( zY;1%;K7W3}0=G_9Go;{PXO~g^Wx3Fl9BS;JtRNSZZ((mAc)ni(kXk#CEPAcIDV{vB zKzlkD`QgJ03b7lire?}I>~NC6gGED7CBIiYg#onjjO?E=0nwNBm3FUq-mo5DzqHu+ z_@6-8=v~2=@%LxxiC%o4r=kEqS}~|=oOcEjp>1gyt_u(c{LZ8S!b}}g2>yE`ftJ}C zUtXc;Xn@OQbyHd{sC>M+5##L(L3NFk)+J`I9uxfDI3@-X0S7u(wj7wRrx*j)82!P4 zyY*rNq2boA7eP%hJzd@CU%!Sv$y>lYoj6ld=a4s32c)54Lsi}$g`TBTcy?A6nMR(2 zjH&4p|JyTBd9v@b4Q?*dX0#00_Al}^2tkRE%;T}L)XX%~Do#NuG~)z@c+k?qDJ$R4 zogDH3E3lm&)C|#HCuUB!|0Mq`3a5k`gipEdZGIRVWBr~Zx*WX&Z~o!{I2KK8bhHMzI5PkeS5{4B zh-It8P9n0!?>tHGZx6iyjr&Y8)O8hnBCEkIyI^as%O+;MBSce5nyPE9n+}P;ESS5x zuKo#Wto@=L#_LTJ7WCXoGxR(eN)HPo8P+2C9_yAzo^L+a6)oAkSP{PcM4Y`by)PCvttdtq3(apmwZ z8pIh%Y9%~%m0AbR{L(LLV0FO0IRzg=9)`8Gr{MjdKMZ`OsLjBknx`C%8~&I#NE5^L zP6xn+E%=Qm1;1UAtilAoa=6q(*WKT;;gT4xUttalp1}!h0iB;29M?7y{aj}WXvlV! z7N4M_y9QR(yMBT74-`QijWAKLc7wf6LU#&DC3KI^a$><_zgYuV&G`7#hIFbJ9VJ7B zM>5$NP zbdSSLllhtgl=_yQ1h$J$Df(HLS3OZO0MOo?&nxAu-`p(N=%e6Im*@}Ge7e54kNWr& z9S@%ezBfgel#CAlcZyfq$@5f18Y4vsoObh-wlZ9zb6Q%umVPPrgnyqA!RUCY2W+vpYD31&VkhVcZNOEMLBBRXpxjp>$pVb12Ed{;a z4&3)-2nt}`V8;Dd{=)I_)lNV7skH%}hxFg0e|w9kMEIjIqCTZ75nTQuvh?pYStS<( z5+*14GEk{-wijl@v(chdD$C#t&DW0s23uW^S^kiaP|t5R7T(q-_DS~lyO@d^{@%90 zv{Qm-qlqgk{?_9?6nNpzWBCg7cx}B1JVfr-G}u(JAhx3;YEbKQAx|e_UA>xjr{mBnQFTws$3{y@~MjTXFz z+@qAiVM2QC%gcr%&z|``dwO;GrxMcl7AvFF{SVl-8cNC($eXRl(6j5EhQ7jXE&RI{ zL1}7b_2v*BEBk(BOY_ z1*~XQk_MzU6Pv%OlPJGI!V~In?rEn)8z}86UMt#!yiL0%gEWR%(P%g$hkYMHoO-Zp>d5bO8AWxvkAqZgC-n z6Q;bHhAMd)%14<4Q1!u|^qnAym zbfqouk=@r(46Cgdr+<=do#X%qhqX6dHf=+Wv>8km>A1~>RvaC(yqqq*0$zkqznulo z_vaC|)1{Ma=58K;V(A2q1Ma8e&R(kpzBKvtvlI6}`So!x;UE;Oj&xBU*ClMI5vU+7 zEiG9Gcn{zrzDbD7OINbM=fT$Lu)B*^eL&9g0lHzzLL?ZM?i+mV^7cXslX@x2L6|An z`U~tS#=!AmYYexYu8v{vxLuS|pyL67m)nRy&CW$`?!n&j*fNIU{T&%YbfuL>+t$g^ z-+?qYvPc^19cq{aZ{}!z|IWDF_VV)hw?vc)B97ukMcuVyPn3%Wfm58WUu(bRvqiB( zO#!60$0Rko%wq|*#_!}lYmtqT#_wHhR6&Nc=}`i$*_H$IJe7>l)>iQ@GpLA&NV)wy ze~vlG{43krXh5AAOcB7Doa`q*w443$go=s^H=>(_+XRA#ho@PiVQ3hIbXQDG5h*Jx z1Mc4~yP~LQJ_#ULB<+82a8O=R(GDB{gce#_T47;f@8ja|fg=JJNZW;lR{Cm3o=qsm ziF4B_z3Y>W(iIMiLUj!dA4axpCzK_@qG*>IpsT2;RM}2r0~JK(&70)88nWyIkHTvo z(fibfWyhr^QX?ZHBumiXaTqOre}gaVaS$966O%O@A5YNjLUz3%u9BG1Ep43Bde?ve z#)M2C58@KOIfFPxB?%y00C);t?Ra8P@BF&p1_)zy@O6~6wY5)QzkUQYJ4*sUQ2z}^ z=G$!*m9=yLC(AQpV&s-t1yyxaPp-{k57?9~?EtpHHwQ@R#H~U)HvM{CFYFPE=%<2W$lLZr#1TMUhJ54Sb{V(-9@_-$NML*&`=inwp!FFE2e4 zEWqnOGs??t*>t1!xjdrTbJz4+&QTy{WMFuG?BeduzkYB~TEhWhZT)&JJb5ejpQyFq zz@@CPWYeFhsHlh(GMFie*d^rq3iH0Wiw}<$>n?0>aE*nP8n+Gu4U@a3rbaPOIV}my zhlNr{O)c}XJ}c`3fXUN!2Mx<9DJj!MMHO9{Kh1YZ-mQ7wRjcYurA{{;m^;@u{oJ3p zHDV{4R)F}58QbeeH9IQZrtxy(gevxVVt9vtxI5aY61)fP4)LZh%cjez~!Zcb|8lyZd!PDOe@G0xAsvD6Fp2sGf%7r6(YJb9v9=aiYn&dW=HLB#&j+goUC zd>qt~4}miK&Y(6ejq-C`9Jy#|!G16TVGe9QvdYTRZf<EEkwp{^RP_Rxcn1 zq}5Q~12)Bx1Qivvr>7?r9S6sXm5mKpsSqd)pAr%h2Em6&$jQlj+S>!eKYlE{xCu=! zI)J)io@wR)srL$`@nmdDA#T904Aw6D7cm#*=bLPfWQ@RsgkAu*)!@z5NrEy9nUCRA zso{XGzP`Xey&pDt2Ny4rBas`v!F8vj>fPkWozZMmm&>D7>2-~>oSnmo87tlKk&n3< zK5nh84ZRa;9)(%%G#PSnH63H>kxD6ye1g!)CC0m(Pt0mc)MYv*CeMMszFp&;rM+)| zhQOwjFfsY29y_Oz(AA|FL>9^rOcIKMFC!<%0BTzsR7VL}Q7p#j`P#~MZcJZaYj7d# z2MRtCa^OY`0eVu{uSXIM`tTh-qPF(Y<;@r9f-KsoK~VVmYNyDY?FZZ}b?|>6if#XD zm(Hlbm57uI!npdLM{K?SFVuju7g)`T6B-m3mjmug65YX}-WH{KS1>Q7WU>R;>6~Q_V+uK`=+zee`YdC>X{C(<^+*8ZE87F5|u*C zmn7isDo=TyrbmUDAj|Li{ESLR(1n+Q0YefYy*il8usxP@7Z*7@ZA{&L*vhm9u8@i6 zHRydzG&Xu-Wo7$kUI2A-la^9iHmqGk)P+}|_Aw;V+k7XKp2;fH#mYTyZg4Porq&Vr zVA1D8fky59ecA!KO+A?+1*it?=RclN#ti4=S_%{pZ){k^AW?Zw6apwD81<=B8T1@F zLE)WKHBmnoUl?g?hxEo|@L!!4c{mE(9Ccz+0C5)Rp7|TwXizFvd>JDn79i4{QAU6P zrxdfTdbeQ3wpDot6_SWV^mnPLs)oAn>+J~>r70*4eFzC5U0ARK zgcZ4?Ywuh&&E@%g+)Tq+)0Zr|E>B)=3Vn11h4Fb`76u0LG+|*I3$okG<6Bh&gTRde zoNRl2C@8FKX(S{fgTTn@>gX~uI&FlaH(uFEP}h!e~w_4U=_;{AQNITX>Jz{cSLH6QztuSk)TlVClbo6urD zS^#8)qu+AjQ%qIIo+7@tXRxL_Zvn;RA6Uo7J5l1{xO90h;F?-;rk1&*{u9!4U!9~hu&Z%>JhRr?m_js|^nw`IMIF095ZWJgh1?afS zH1qbKbr6D48RKl5Y-=lI<$jJ0VEOR#mjJIHg=~(qV)9?G5nTfWIB5P&(Rx#0c0T9h z(=U>&*o6UMSw(#46(}EbmFA-hSqqHj7^I9f8L>m5C0((}Z^8hSb=}EoEuj(-`BUy_ z3|m|0;kFv)1fw=rD}|Nvc^1;*CMmDwQ>u+#P(ckFYh)A$*?~|;9zk^bm@j4XnVBY; zh}P<{;ue_<0Mm1|wV~D3AxrZIj_4G1dBp^+Eh)30p3E@$bqbJVBoDY5`*zrwe-6&Bce1m=LlGC)Yl z#)0)N(XW;8s<#;w_q^oBNl3s`R?*tktFnG9FV6}M@W*857=pf)B?g>HFkiwnOs|%o zCplb!h2;%kPqrt1I`NO(0d8Gh%zghWIx4C{aIjrFV57j(gh^{MM)TY2C3h9b zyHyhaO@GI)hnf7#m(7_*4}M@&laLh1&d*QX`-Enr86=9WL84U;G;Z~Rh3DXre^lEC z-ClPB=R$Zmeyc!orjuC%2pK@8{1^RtPhI_oi6vujUY_W5CU5`jEEyDfxN>)E5R5p? zwPy@}rI8E+{;#AiT3!~G*`ss!_pl z{#INU*Oe#= z3f`EI^jPDgf*5@!>EHkryT8#vevkm19e}v!<~s6ykXRPU-wC;vuL{LmCJTFz0A;=6 z?av1@b2aU@Wmi+ej5IWl0B`ApOKDR;X0SOhI@;goL%|nuapc+4`dsbpZ+*0r5D%pXPKrvRWx=B7cHGHkF4eu<#U|b zb<2r`-3=bc^mc9zRsA3trH_V%6Tq(zU*pm)8zT5kB^8 zixD@Pa(Vlm;T<=8Vu{54-oJF|!zhuT9e0T%h;*O6oNMk6IRdf>JURD2{U>3ow%l;= zx&spuNN}h~jMu>My!GSp3<`HR(b3xAz^Mv!80hK-BE6LXfw4q#`|kGX>F&~rFp|*r z{dqw~zO09kY?+Im$)bUyv*~qHd;150FVFOQxxXo8gbnk3hW&xx`=_^K*18^CZe^%cxbCDNH$kw(M(rn4lJB{e>${WJ6tCs<9#$itd}-U80(tTQ z6l^vyae1SgWO}e*3Vw4VNz?}oWLyv+O8(p?C3=q4B2M z(|eAFg$4iqBB1${P$Nz*hmTxwB$-Ew=`1fV&-~Z7SDuH>7q0594#Ccp5G$k}bb9Jq z+Q}{V4je8d@f`ekeH#uoP6RMpC?m`k7Z$kvZ#>f`RjRCjW!?Z`@?#>s5W*Ku$HJmP zUBRm_FHZ#G(tmLIA-Hi<)@w-S5+o&X^iH3tRDuQQ93RI9Gb@#(>H2On0Zu+}UZkOp z8|2oYpwfgEj&`kXTR#D2ReA=}J2z~}1?&zAV+f^D^#DinQR_9xdk{0R?u2Bt z5(vPGkS`9|pQ1`c#!8201Gw7NO?qBF1uPDqe*TvB5EktuS(cEqQ*-7O1??5UtP7@) zSvTV(kfp3#I%_hwxEQ^siU#!p%z^){2u&hSog16d^fB)&7~$v`UhGkuPXmlE7y#=( zCyIcYv_a_U>6!a??*vLqOM8Hk(G+BTAQBcEHR}~nY2DZFiMjtfwYj{$mSiXD1itq9 z8hefS#TGyE^&Vh!DdCu_v5x><6trB2vuPs$=cD1^=u}Y>66R>uf&#Tafo*kXC)|C1 z&h+2u4l^5@ZPosq&^s&VsVJYt1~(@+w<$ZWuk{muv-mRq6#oHl55$LfutwwfINE*A$(|KY$F zX;A0%K&R9|Ek24`oC@HO*GSkiHny_1_8~^>pR8Jo^M<^L_bJ-(@i7wdD`$w6XkGvj z9e%JNh!in_>=p#V~gy0hq_3R2ll8TGjyGJZ6EP#_$o3(7R!d!+C3ROFH@%3#| zuP>}EIxq(>UD4H*H}1=qDQkn*uU{(yNI@X(gw=jXJ4ZT5ad2=}{#<@G^5C(wwoU@X#KvqC8 zo(vrRzA6Nnmy| ziy9lwV?`DIvW_?&gTXKVHMDhfU{05bPng1#z>$_0OR|bcKm;%(?*Vp$F zya-xa+W7wK)14qb+o^BB34oM?|IAh<^h-)g0$J`c5I`XE#FW6vYXW3iz#grSX3GGj z2x##aw-?JYmX?gb-F*yv32X_7{|!B>&4Z>L0H_^KFY=_!M0k}cBxtCcz3bQJs%07? z^W@YuDo5*Ge6sIXUQ0`N3=Cj^PKx({iZcqhb<6q7pDND*GTJ652^SkZ5E&WNDA*KevD>qv;wM`p zy};uD1+7=QZ{7g+6*@4POy=+BC?u}sBpSW=cYzS;G$$FddS0UEMj#Wj)R7V3Up$bc z3;gj|+cTpN)YM)H*)wr-x9-zrO#i#+MiAfV77zitJt)(D47_lRpc84M`fDk*`sb&`03sjIxtWHBUE(h znkffU9*IiE7t%#h*3do>a{wzQd4G4iy0HfX^EQS0_hAr4vdE-m5J)Yt7cKzw3=3$72dytNXRfn?jgz6W^&2Wo0~|%5wVW`ojA{I{=Z* z$-rdQK3Po(Ai~+0k+pUH7_V(96f;OEW!Pl0FdGf?Pf&jTF<>I>k5 z--1@FD^RlV9h)kM1RQf$SK8~71WyP7FyT;)!|xs7x_-$_u(D83VBeDs1>$j|M@Cg0 zRd1%`H1yp>z{>9lz-6*aWQb9L1=IV+$b^l7!P9hUCX*_*cqxR@;B@cLNssp?BDs?$ zq5pUz@xJrs$_J^dogd;Lf`S;PO=F1)<%nf$vB;+gZKu=UOVI|&(*M#{Bm=nngKD2l zZ**>JyQ{nVGs~g5@QDd_yV)0{+0tj5LiA%De70PHpvU7i9L~U0^Z}3$pqP4KX*tyI zhjQ4T-~${N97xK3-tigG?O$1IuN|FMAt@W>^oe_aV!nBrr1P^Vq<~4$MC$K<0P}V= zjc81l#MG(u;PM8-GR&P_`B0zq>)#=J3kxk!j1i0d+a_jz^8!!&hMQ7b`(JXAL>MDb z)j-QhIG{9WX!{`&GB5A3>_%tfJ_-DtaWvJ@faAGYPki7SG&SrdtO;kgO!lVv1Gyq#>iMYpOu*k zn0;4v?8Jm!Qc48SeTr)N-Q*aHNZ+OL@1sUi?IVEy_nRatIp~r3{z`8))9ZI%dYzvz zxyPZ{sI*&@JYY#;V(=e7?3_3GS^}5|uolL4^X^o((yjE36vnYe3+%B0k}EHlBRJ)vEdo1C2t!Iayjeo)8~zmrbn} z9)5+9Eq#j$IF{8IaiVPCp+`Q2x!&Gh>zOv!Lct!Xo zWic#J{K6YPkkKgRRCm$f9vx5VH$NlyG1S*81g2Ch&@==Ste&(Ho^#(+d=ZLc4EiHN zmjjF=0lotU2pXl_Nz?GQm*PldFDI8gSF9~JL`E?z&BOB1l*DeqlPr!Y0O{6*|L*f~ z@(_qJeLLoCbB0|Z<|neUJBM9SA+WNyS3FcmsIDGqB^>oh}ufaG&f0{I;oS zeS1v)FIK~@2^&>bU()6$%dR`~37qT&fUsnjyH8e|nR;{@l|doMZx^`ZKPW%OM$ zfSgXQb{OO-Q+g#jDjAk}9k+t5Z=TCY& zE)VnfEg|QkN0vs94H$r?zw%Z$Hz&(_CAF55T%8RquZmn_zsOqECZaq!>%2NC==;es zCGY24Z)(r2g#3}BRrq?8fcG~yTNetU?`g^3ZEUW9O_)E73Kco5P#QzDc1bV^Pp$wq z#joKVd1q%LuyM9rVActo60S)w$aCg=agbesW}a<1odBpT0ReqoU8hQMR`C0MJVJ}{ zUCYaqz&&kpxWu+S-rM}f4PM`VI-X~NhO->idfyTQT)sB#lw)fQL`&rW|F?*g8P+ftF&eZL{H z(kc$Vt4Rw%c^C*u;a5@@`eI4~SQ#vUM0!0$Z3D>k*2mhsNlX=Mtlc* z8EI!iGOGYjjeZag&i{7Or3S!SC&H_|!X^q-z@!qHFX02t05*GhRjcEH&4dgf*)ms< zcbtl1etMwc;Q0g>S)mepV6) zRaK+I3UE>greT_~1ElQ6VtVVkAmOidqwc2C{ye@uL`x#2f)|5LeWzppfhJfaJF)A*M5;fC(Ui?TjjVVd8oEXc;^NGP5ii?hE)FPl zOE&7AHyoMS*>${Pwf@879yGGG8baJu?qJA#cV#8W!KoM)dir9c=}Ub*8WdXj4EKl{ z8K}XLy1L3?joDwgn(h0j$k+>l8(G;8H(*->GC@ui3qi)nqnO@Do!r}#16U6p+@WEf zB1-I2Ht)@XtGKlImX-!}T6wA6 zib})rNy>ih(|_9N|Atz@`4Ott21mIyyRxLPB5V6cjYP49v{3*0w-1XD$$)-|Y?kXFF#Pm~NE0B}pg{^-ZN{pA~K4 zj!9_QHuuutg{uPgd|Dhs( zP#477$LpXh;rfkFMFlEv40fX?5|4w02N2iY33O`TqX&#C>BTUI!6YChxU*ANwUk9$;AlQUV&5=MLQ{U{K**UD0*5+)!1A8zV4lK=n! diff --git a/_p_s3_b_t_8cpp_source.html b/_p_s3_b_t_8cpp_source.html index e076c6f9..960ac8ec 100644 --- a/_p_s3_b_t_8cpp_source.html +++ b/_p_s3_b_t_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: PS3BT.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - - - - + + + + + +
@@ -109,7 +86,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -126,7 +103,9 @@ Macros  

Macro Definition Documentation

- + +

◆ HID_BUFFERSIZE

+
@@ -136,7 +115,7 @@ Macros
-

Definition at line 24 of file PS3BT.h.

+

Definition at line 24 of file PS3BT.h.

@@ -145,7 +124,7 @@ Macros diff --git a/_p_s3_b_t_8h__dep__incl.map b/_p_s3_b_t_8h__dep__incl.map index 5e219ab8..cfcb63bc 100644 --- a/_p_s3_b_t_8h__dep__incl.map +++ b/_p_s3_b_t_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/_p_s3_b_t_8h__dep__incl.md5 b/_p_s3_b_t_8h__dep__incl.md5 index 80c124ec..2014c83c 100644 --- a/_p_s3_b_t_8h__dep__incl.md5 +++ b/_p_s3_b_t_8h__dep__incl.md5 @@ -1 +1 @@ -eba794dfcd5eea5cd385cf4d1f0cee96 \ No newline at end of file +ac5ec06c541321e25eb4c20223ecb1d0 \ No newline at end of file diff --git a/_p_s3_b_t_8h__dep__incl.png b/_p_s3_b_t_8h__dep__incl.png index fabe3366b516e032c70c82134967612ab70aef1b..1b5131e759eb05e4fc38c44480f01b3c6062aab2 100644 GIT binary patch literal 2690 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 literal 2515 zcmcImi$Bx-9-m9nEHidwXs!>M*)$?f$XpYPRV%mBTpyJ2Boc`w#wM2sE4T3AQ3)lX zB#9-=BPJ@$Wf(nW&s;XQ&hK>2d7bkQoY(jD{eEAc*X#TJd_ULs`%7~tIPC?if_kc}?eB8+%^!=aXUR!l82(%~dn7!?(*rGp+y_nJsAB&DGJ-(U!gqH+LctS1mqU`a_{H0^Sk8 zgzeim|HsB1NIG+95WcT(-7MSrrdy$zmcIUOL()SKh|XY?H8m+485zZHt{Hv){8>R& zHC-f%4gcH>11*aL{=*|9<kR<5op4}Fc>U}x*Phsw>PZY z>SasI)q|vK1avEe+Y4^Lwk}_Q@x@0+A0iZ6?(&;9rf}|`HZU}#-o6dBzP^;CJT>I0`-d@_r$H)E5nbi01iKj>;!UL*8^7^+)JH6bp#zr`Y!% zB<9dG`Z3ZYADTZaQ%gsu)3mm&ZGTjYIueNlfy&&|Mn}(P2vvj(dDo(Oz6EJ3Fb+u&}aID44oBeQPUTT3VWNj_pHdvz^R+lX1g|j_Mr%s=q8maY8%giik(n0GT|A>QwcVW)I zq`!UZJk&T;eZmfvSAPFKczb(0%UO4{HQI3P+hjzjQLgLtb-5J$@bK_ihTAlsPg`6J zWn0Ygc(!O|DNs&MPI%L+F27>|%!oIDrrFt9CRs8G{f>KaKOF&VO{#FP8jk zJ6mG>yx{af98MC8#j=Hw`BO_v8HMH%QIA3zDA9S`&2Q$mm90`YN~+bad>QSyie%$L zo z+@Id`G=dQH?J$X8>V>$(3-Ve@!L#gJo!<(l-^EO}yk^axuZpC0$kvjeNw50Li%ia` zPQ_2cFPfSj>Fl6>@38sqL%EC+ri`0AC;@o(-?aSy1f>8l09%`hlAr~hSi`~Y*+*HsmTyve|ay3`ttUjD^GWjw)SmD%6>DbVTFw>}?-Oz7G;}`(gIN{`Y+YQ^`Bu;81U1wr^?pWF1xdWDm$!G> zU3p2{fv{qJDG>wfFYHDgo zOF$cjgoRP->aav25lzlb%{<8}POhm=BG&wR_RbNVlf6(VREcI!R*i{?(MRQ_58-U$ zMMtG2llm=XwE$dz#l)<83J*F}4`r8^Yd;R^SJj4tk2yG`bj9;{yf>dd6#|~+*KpKP5l_a%$d3nk%#PqIb?`?oIs;au@CYulpN66m2We*=hJUl## zq7GoOEPxOw-zKb9*47BuibdnkV+Kb?Zmq3d0sL^?oar8$7A8|I3Yi5ODk_>iJw3V> z7GtJvwWM6Y9z|tkM^U`>9tcENEEbcz<#rOcy8)YC#0tnCFAHsT6|>oFHbQvEg+ejr zFD%rzAbov(s|0K|K@koQi1~~R3Ps52b;j#dRaRzaXTu%@G8}dIU%u!9Neq~07n6E_ z=Y$e{d|aEt$H*S37CJgQztz`gg-^a554CRM3dQyngQGrBA=9x!E8cqYYqJ%a26<$V z=K=ur&nAyZ4``{WEP6COGc)R|$;cz$u$W$ejqf%Dx-vdV{Vm~^t6t~wvhiih{pZ@^ zQk3)wegK022-S9pi8f$4x!^5-#}s^$aDG4sjSe5#=!Zs_n3zP)zJ&on z!`GbB#$pG`!_S>V%E-tV8ynwv@#4sDm6eg{19I|n;W%$`Rh8c3-~ptzB2Bh*Kwm;a zLRViu)c~H3eV*d#h_|z&6&9)q*4OpN#>SK*UHRBIV=$2sA*EAv5;H$oKsH+~TN7ZIR zOx~gk2tgSG`+i92emH~Vo_n%|&lYv{^e} - - - - - - + + + + + + diff --git a/_p_s3_b_t_8h__incl.md5 b/_p_s3_b_t_8h__incl.md5 index dbb83515..4fa201c6 100644 --- a/_p_s3_b_t_8h__incl.md5 +++ b/_p_s3_b_t_8h__incl.md5 @@ -1 +1 @@ -90cb54a3b8ad4256770707efdc9f2bdc \ No newline at end of file +099874d321d87a5f12d52372f8d8ae4d \ No newline at end of file diff --git a/_p_s3_b_t_8h__incl.png b/_p_s3_b_t_8h__incl.png index e2e8bf73ca3e49fab8d64e0480438845df890384..ae0d00756d4bc317eb6bade209171aaa0c1e2e00 100644 GIT binary patch literal 16749 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 F{{c<9&D{V1 literal 15971 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 FzX1NW*fjtE diff --git a/_p_s3_b_t_8h_source.html b/_p_s3_b_t_8h_source.html index 8c4aad4d..7cea80c8 100644 --- a/_p_s3_b_t_8h_source.html +++ b/_p_s3_b_t_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: PS3BT.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- +
@@ -104,10 +81,10 @@ This graph shows which files directly or indirectly include this file:
- - - - + + + +
@@ -163,7 +140,9 @@ Variables  

Macro Definition Documentation

- + +

◆ PS3_REPORT_BUFFER_SIZE

+
@@ -174,11 +153,13 @@ Variables

Size of the output report buffer for the Dualshock and Navigation controllers

-

Definition at line 24 of file PS3Enums.h.

+

Definition at line 24 of file PS3Enums.h.

- + +

◆ MOVE_REPORT_BUFFER_SIZE

+
@@ -189,12 +170,14 @@ Variables

Size of the output report buffer for the Move Controller

-

Definition at line 40 of file PS3Enums.h.

+

Definition at line 40 of file PS3Enums.h.

Enumeration Type Documentation

- + +

◆ StatusEnum

+
@@ -204,54 +187,36 @@ Variables
- - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + +
Enumerator
Plugged  -
Unplugged  -
Charging  -
NotCharging  -
Shutdown  -
Dying  -
Low  -
High  -
Full  -
MoveCharging  -
MoveNotCharging  -
MoveShutdown  -
MoveDying  -
MoveLow  -
MoveHigh  -
MoveFull  -
CableRumble  -
Cable  -
BluetoothRumble  -
Bluetooth  -
Enumerator
Plugged 
Unplugged 
Charging 
NotCharging 
Shutdown 
Dying 
Low 
High 
Full 
MoveCharging 
MoveNotCharging 
MoveShutdown 
MoveDying 
MoveLow 
MoveHigh 
MoveFull 
CableRumble 
Cable 
BluetoothRumble 
Bluetooth 
-

Definition at line 113 of file PS3Enums.h.

+

Definition at line 113 of file PS3Enums.h.

Variable Documentation

- + +

◆ PS3_REPORT_BUFFER

+
@@ -262,11 +227,13 @@ Variables
Initial value:
= {
0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00,
0xff, 0x27, 0x10, 0x00, 0x32,
0xff, 0x27, 0x10, 0x00, 0x32,
0xff, 0x27, 0x10, 0x00, 0x32,
0xff, 0x27, 0x10, 0x00, 0x32,
0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
}

Report buffer for all PS3 commands

-

Definition at line 27 of file PS3Enums.h.

+

Definition at line 27 of file PS3Enums.h.

- + +

◆ PS3_LEDS

+
@@ -277,11 +244,13 @@ Variables
Initial value:
= {
0x00,
0x01,
0x02,
0x04,
0x08,
0x09,
0x0A,
0x0C,
0x0D,
0x0E,
0x0F,
}

Used to set the LEDs on the controllers

-

Definition at line 43 of file PS3Enums.h.

+

Definition at line 43 of file PS3Enums.h.

- + +

◆ PS3_BUTTONS

+
@@ -292,11 +261,13 @@ Variables
Initial value:
= {
0x10,
0x20,
0x40,
0x80,
0x01,
0x08,
0x02,
0x04,
0x0100,
0x0200,
0x0400,
0x0800,
0x1000,
0x2000,
0x4000,
0x8000,
0x010000,
0x080000,
0x100000,
}

Buttons on the controllers. Note: that the location is shifted 9 when it's connected via USB.

-

Definition at line 62 of file PS3Enums.h.

+

Definition at line 62 of file PS3Enums.h.

- + +

◆ PS3_ANALOG_BUTTONS

+
@@ -307,7 +278,7 @@ Variables
Initial value:
= {
23,
24,
25,
26,
0, 0, 0, 0,
27,
28,
29,
30,
31,
32,
33,
34,
0, 0,
15,
}

Analog buttons on the controllers. Note: that the location is shifted 9 when it's connected via USB.

-

Definition at line 92 of file PS3Enums.h.

+

Definition at line 92 of file PS3Enums.h.

@@ -316,7 +287,7 @@ Variables diff --git a/_p_s3_enums_8h__dep__incl.map b/_p_s3_enums_8h__dep__incl.map index 763a7d9c..b8038a2b 100644 --- a/_p_s3_enums_8h__dep__incl.map +++ b/_p_s3_enums_8h__dep__incl.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/_p_s3_enums_8h__dep__incl.md5 b/_p_s3_enums_8h__dep__incl.md5 index 7e6c593e..d15e13ed 100644 --- a/_p_s3_enums_8h__dep__incl.md5 +++ b/_p_s3_enums_8h__dep__incl.md5 @@ -1 +1 @@ -2ee6fe4e5f4f5bb8864f711284e44ace \ No newline at end of file +c77fa45db98b8115b80889d20542091c \ No newline at end of file diff --git a/_p_s3_enums_8h__dep__incl.png b/_p_s3_enums_8h__dep__incl.png index db1f5fde22e04e76066a7ec72e46f3ef884d6da9..40584c463c54bb6cffc194b675f6556f8a0267b5 100644 GIT binary patch literal 7583 zcmbuEcQl;QyYF9Q^qNG8AP6BsgorZQ=n^G}2%?jiL?@&7Hbjd^^e%$v(R&#+M2#*= z^fG#{XZx+Y?po)p^UqzEVb*$Q-u>>qpZz@h^Zo8%HB|*NVtQf-g2Thi5qaA8=-kDP>;muOAOj&!;I`%^i*Ge>It%@m2TNGLl4C*P=aKDdZ!G zsXAAOoey)RTBF+7bwak;i}R+~>x7>aKXbTLN-WJY>{uRt)vI#e5beE=V;bs1*-Ru_ zfXDnzCCFT_P}H z>g{ibX%CS?Vq#)5D=WeE9;eOI(|7pz_&7N^5i&A((9A%ll6I{#A1*HL%*IBzdWJj; z98UkLK(F6=F2Sb0X`w47^3x~p`FXR->S~j<;e5t%KUJ+qrZDx3_h1MUhIyelW-Sy_wb-%VhV3=miC(<1!Havp)GdaHt9|l zzfC~FbPYN?+wFzxj~?`b>9JevzQwIqN$IfI-2~=l`}}bFE-Nc;$=lz}w1)0!`Uh9t zt+ZwN{yZf-D2Omo+^xJT*51K^&+EcH$vJ2{8>&guZR?vQ~JPhlfmEU466~^&mbz9{$(b(NXYoR1_60E&9(N%|Am!w@#uz3nEEJ z!{kC}-d&bgR4AyaQ4SXx7A6Urv=FXOH{8+4xhWzdB8*zSd4QcjKd~78aOAtt5qbA$ zZ}9o-`g$m6r_QQ$=s+n}#9^_qwG}p)^<2TkB)thnM?-_p!NF0x^XtJ?2bwXM+4*_@ zTaVuwogQGX`iVvptgo-9YUN(F1Fka*3s-jWMzUQeVqj$Cv->9tdFwqyCnO|D@kJV{ z<2YvI+MI%6*e?8{R*vI`;o#s95)vY0Wv`Jl2zz^+9-ufIx3+ARli<|%@84HcR77ZK zXjE8d!`-3`#=MIpqqhs5~-E?UXzv-fxtZ|}%`YLP;Yfn~lKRwHo zFWdjHKBmI}!9RGA4NXple*b>YeXn2P2!vs~UGjqJj^`1}O=7vMHMQ9|d}<>KG3>b2 zWF?j4#nIhgzkbQY^-UjzRYj$uhaCqhJE($ za{7HtAH%|0eeeiAftG*%zXMeOS@Zt99;Q9+{b$@g5!3{`Tz~Ganz7goMOs zkul!M-U=S1sI1%)%V#>XzHYf!{&eJ8-9iEK)~#Eg6xp=g9G}`;zjKGe#>R$0#NK~R zO;|x+OZkN%Z&Db}>3P z7j@zFwbN|t;9wC>n%lQVY&+K$riV_Ai5j%6tU;%i3*J~+adIo=QD}#poojuot3!~; z4k2~_?@z!&FOVrBu3J>5v&d8vF#a8%A#Be^fa?PZ*<9T6IIZ4uPPi+d7w{~z$)D&# z@!3cJLSB7io3Ol+hykVfB}rLDMb`QYI4$(Zq$QP!_6}58xz{w`i7__kK&Yw`8F;#o zkl*PUcB{HROGC{}KxcY%w#(feUq-U9Fr=3I#MYM5WV|%;o`vafo;n1TRl~xM-VXM)|bTKUrnwzf1}fyX&}eBYl>`^?Wf7=@xn zcg3l%@A!63BtNmx%)+j0kV(q9h+xU85HO@Xn!?<4^^fdL+E?$}T~Ck#JhA-jee+lf zhGn0|Mjr@X*F;OlANlw0%tP;s1_ag`RwDLz;$Jj?r z(|J}6C#!T=p*+w>cMtLH#e{~|?YXK-)S7uoxk|M>42csEKs{P}%%)Y~4$D%_m$h71 zCJe~8Ik)i=y{W3Y_!qAX8(6>HrUY`Hj_uyFNALd_aT}Zobu1)Z;$P$Ah2NU!*5o2H zaLeDP+2c^n>)Qyno^tokRJsH^7LoJe-}`UFeE0&NMwQQ;A7-&|ud`$Kc6R8M6Uxb= zI4Ihu>eRvK%U5G3BD$1)zbcm~vda=kK2(RVnxmPPmNv%5VdSKchV%_lN+BQgI+~?f z{C&zG>R1a4HcK3vW3J97c`q*_!aiED$slN*IGA<>HTJ8UMgGG}tvG^aD7@%=4yQ=k zR)-XjVjVc+c=5r~{r>L;%V&?5PG|elTD8ti@4ZKnOgYaL9xc#{s3z&cinYCpuMcL3 zr^e;Ib|OWg!bYneH~$EsfY!0tBAaQkKYs+61qJ=qY+b3j5RZjDs-cw?Nt3Qt01RGCj*OLf6^q_?rPQ3QZuMEY-x13M0+p*#`yLT!}gy?npld!m|r);RyF+~LjOcbmx1p97*eBpZXM z{3^-OF-Qs|?$f8{cDrwHeg4eq^1>Y|a^2^K8~*9ehTJ$MFIgmx=edXT-KcqMAAMT0 zRsPuKx2OOc#S07jtzErG*%oowo-P+vN#4#4I%%NkExxtg&cPft1aPw=@4_-BId#r& zQ3iGt3UDyws{fZ4n<_^~TbE9>;07j5@7|ft8?Y&_OQr6(T~=us!+AJENa}W~iyDrE z-xG@q93Op6uvsljx-ZFx@KLMc!T z**;IRN_diw%-RO_&^}=t$D_~A3}AtuJi;fn1>{o#M*Tv7Nq~_Hfrp)NA_q$a6jkqx zjG#4J;j5-naRnOx)=(=dpV69_yfxZeZqh@WK0%6&Itbve%R7|NKYqLJuRTf79?mm3 z)f-iszHQXomz8t-b$McoA3+22{rkQjpHt9N9FTgXSKIEdimy+n1gIoj+zBLIX-5fb zg|zwgh7%XvK%t(=D%@%QlXG`Duna$Sd!{6f&xj*EgJP~ZKolgGwzJzrThi}J`8lb% zekQeu&HAqPV$+dgkJHzh?($%Y0PRiWOQ ziVgmjmGu}BJhpXY>P$@XGVK?{G&d{n4^JQr)?;f<1>V|Bj}V&_7l@5xS_TFORqCEj zja4~hwN8|V*VbZC(7iVw#o}ur317 zB0OAPRh2xPN&F*#cV>2W7>8;iLRmS~@z&R80bd`yYHn{Q*x1+rIC}5dvuAtdS498i z%NL{Lodw9duTM==Q!_O^9d~SO3`+GdP*?Yfyz90^O%>e{!b18k%cBEi0@7^J}Um41(Y&uWm)*w~mxlG28>U?<(CngvT2HCHgq7kz)H ziI;_$8Oqhl zm$tUHji=#Ovt1cRCR^Ai30af#D#~4$K4wfZYwi;)u z8Ygp1m)+)+IJbWFO#n!KS>|icJw1*WVk$k);qLD4k1U3{+1T0B^753;Z?{L>X^($m z(Kj&Qs}R97JJaMBE9UZZN)QaQ*b%EMD<`+lxna|APBT)VFZ2FA7l^jEq33a?!bFMS z|DDdj#ZfN%(TsER+r8sM?@n!PZH<5!U7xCRgLjpcmKLpz6qfu>5Gvs_ZF>}{*fKCM z0JpT6D7PYo98jn?hnv$Q6Zp{L;$qv!kPy*48)e!(Fb(6QMrKZJG}WnBkI`3?8Rxs# zZZ)#F9X6($kh#sY&<=`^Ev@7@7f$2ux)e#3An@+UJbCEi>)EpU}&w|#{_cke}18NN*@|E2Brg1-< zQ52LBtrd6nDIh37YU$NDk_lN)HV)^%zS2in_c-OiU%#GdYH6i^`*saXCAzSXx3;d1 z?BiXK7$_9#o|i}YubVD9MMgO385wpv^H0A-N3%YDe8XX>r?u8)7x250rYPc2qIcJ9e_arUSH~gT1}U#l?jscDyVvC+BI6vWf~>lp>pDqc=`>S69eW zw(D931_f3bSQ*ZnKYw6njSy?#JQsB70XsSbEhSlL z@?gq^gL>K{CgSoqC8pSJj-dd6wEwpxf{jZ_yJLWNqFtM`1VOV6_w1{ktq>9y>3WBaWT=f`|gc)s<=Cw#9Ol% zj-!!=om7o?5cK;u{n_3iUU&v;U`Kat=6QQ39mYH*X-SZoWJVunW7-SH(XpYPJ5n*I zD<(uZG>C5XPYy0tQnk%n)QQV>4!_~jW#(>u; z4c5W9d)JA;?iHL7#O?PA<~-9#ojpXK^ez;qs){02)6tUzueq+o+(wG?&$;jqO?n2& zXzV1)030F zB(xjak62AY!O;39^ZG?2_yT|ad_UzG*%pG^-CawTQ>wA))u%-&WG%K%P2gyy{&vwS zNH)pqCKel@s8VOy6vU0Dg;hFjiX_QUT#1iL$NWG1I8+&l68fpTzfo?W%jP|kvTxqx z!!mx7Ch#_b=D);@G&V_%8YkD)F)}c$vs@pOVTQu+^3~MU**!0+@PQ@}79Pb+8Dt*@ zR?(AT(qzUMWRV8LUcX#~+}*|O7JlhM`F_VgxI`o_#Yk3GUTrsAp3*Z(7RUf9efiQJ ze$zPMM=rJVQc@>n2qO#4p-)1>jrz+Anr{QoEGO>yXs;8#dZkcVCDPoQNii}TpZJ^B z=yiBF>(Pm8bALaRAHEAKYxB>MNvgT9+d`n$lMTh)iyE4ns%xi{oJz^a=5AlCNj>Q> zvv+o@v1i10kvFls)3KnUhc>1HYw*VpS1!cu#nn~9s>!11_zINRLj>Q5@h5XO8d2#q zt0(wp*KHW_tq5L5U<&34slFLiD8#DX;*i1iBPAKf%<*T+n}FpK_6#$(ed1as=cY@W}Z^T6R5o|;6DGNtvAtE#fD`i`d?dZzhpx%a&$Z`&<^-tfZ- zdkIX6?_zPRB9*l$czMV1#;d37B{(TaKB=}W;(=L%-)N)h4<0>3=&Rk9Gevk(hMcP5 zjMHaozyi{Pd+-);K&z>Sy}oI^pseQ znQ~c7OkA9bp8n(M;ig55I_J%xkPu8?n#`3!Xp9L2FETYQGSR;AdNN*K-tHt(+M%H# zNVmZj*`Pe3U|^7Z-+;?ThYQ`>+WJ>j=v&f;1VwqXnOh?;p{}s6ww3{yNNC-BdEoRp zdVcsIU~g}43k*Op=Pd|$hQfCLu9=valy+rna^>k&T?c-at&>xGcidxj4UP1Qu*c>- zsbHV&is2=I`~w5i0Y*|&Q+M?A;6vD5fU2PkA_JPdUn{sHWn=(*ojOl=FsLM~ub?2DuPrt!i=)PM|3?qMj*d=uZ}0O{cYsmd)6*#n^YcZ(tERbi ztMj{Z+`zlrw7dppfIAugMFN|#0bj`v7LG?>;!$9q{U3_lbt%G6TEJMEA^<`X@DIIz z0ySbVc%7Y{**Q7=4CvpCHb^hMoP@ZlXaaC27etCa|&9wQ) z=NbLX5)w?Fo}SCo4U&t!DG|U&gb;RieAjSsRFlPmBkwAtdtF{=ms{QfCTw+LyHIpT znnYmfpiXU)2UDKlH1@%c&Y`!9i;MEZn39tdS1mogZXn{x1g$59vHXCyE%%oDyT``j zekY1V0iFmEcimImJP@EKb358%al1S}99thN*)O*{+|Z|CVCeogHwS>PgUJ@qAU7vx z5cSQQMF~PSKc~+(oVf4ZlQ%zK8O$mH)aJOq`jUo{vJu=+lW4x~_SVV`p)}w3Njw!W z_O6Rjx9hIePh89YZ}wEg!NGK@KLTHyu621KDhbj8cJ0~+kzTrC zZGewyEHI>^Xq!6|UCEStf)(j#^#3D{lHErD>s(7sE!AmiaR2MGOh;W$PYD2HtMTV_egJJ8mo zL$7h?XZ9o}30r%6X|VR6DJg9qZJTD8(hDFz^~AFB@=|ymcNu<&zR$%qaG|fQ9VF$4 ze@h@DLOD_fC>_O2jih~>>3XtAMgJy0g4;u?Zht}CpG?!-M-*#^W@mFMvRzMvqlm$Y z0WiujKVIg3s9yvkMP5&jp+LVT@V1b(5jekz6}C%vtXIA#^X3gZ*MkQjvwZj0Mld5I zv{O@4_^rSl0p=_mLTGB<94^og@%6=>tVWS^Mf0pZ>M$%efdL(0haG>Cr&A)&FGmGiYq zz!OVSQ<)d%=UdLs&&S5gEOcJHh;odJkEg#EsW|G5gBKeULkmDRueMfiLVg0R#%Y$J z5b+kQV#e{+Jd$z29^miO+_-@OqA3>0u8^Q0BT$RrYhK%}wCmtt#vF`>8xD`Z|Ml0y zrCX=TV;Zzyij$Yrz{6WwWNGN=vh}_GR-^LL(wdeXNsq-wrR!BRyxj+f=ms>~>GJa- zx5p26RhE3OH?wdd#3v^ww>D}v>BS>P?}5v(Y;;A1ki_}ki;N|ziIz9@IsdzDj&e0r zQ<|*!92+Cc>LbfK3nv|bHF<>(Sd6XauUJw2jjwm=kJ%&##(OaXJ>GvF^?xXP9fx5S fPAKh~dr2`ym#4$waf%C0T%o6OsKKH+O>da@Kv)5XC?X}PTu605+)L{1s=?HOfaPBKAK(&D567a3N zdk6USjFs5{4tLCzVNjf#zwfMuf;b!;Iu=Ff3mwn2-C18f9rr1MgZ*S`nmJm9JS}Z) z!=rnT4!;b2MERCrw6xSCT2jTkL*``c*UtnQ#=-5mc;>oxZ8Uz_{4C_C&dP5+WB%E?)H*SS2L3ScK&b_R z6G)~6mBIT!9!qvB3;GC(W8p)vK!}fz&&kQTAWm!^tivVe;UN-C!qA1_tpA+^<>BIL zNfLl#NrK$8b#wytE8b|b{APInJ%U!~PHDp_-Mm?hLs(cCmgEK52F?EnJVOINj}l>J;iE30aZk z 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 diff --git a/_p_s3_enums_8h__incl.map b/_p_s3_enums_8h__incl.map index 6913856a..8e712ea1 100644 --- a/_p_s3_enums_8h__incl.map +++ b/_p_s3_enums_8h__incl.map @@ -1,3 +1,3 @@ - + diff --git a/_p_s3_enums_8h__incl.md5 b/_p_s3_enums_8h__incl.md5 index a2b68ead..800faca3 100644 --- a/_p_s3_enums_8h__incl.md5 +++ b/_p_s3_enums_8h__incl.md5 @@ -1 +1 @@ -1b975049347183489796e6dc1da09be9 \ No newline at end of file +366db2510595573cf7f9662dbbc66c23 \ No newline at end of file diff --git a/_p_s3_enums_8h__incl.png b/_p_s3_enums_8h__incl.png index b70aa1bfa9f6066979624155a819c4e231c80352..12536a7356c43395a051f7dc7e8e6dcd4b849741 100644 GIT binary patch literal 3095 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 literal 2680 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 z - + + USB Host Shield 2.0: PS3Enums.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- + - - + + + +
- - - - - - + + + + + +
@@ -107,7 +84,7 @@ Include dependency graph for PS3USB.cpp: diff --git a/_p_s3_u_s_b_8cpp__incl.map b/_p_s3_u_s_b_8cpp__incl.map index 8125e244..20ab99c2 100644 --- a/_p_s3_u_s_b_8cpp__incl.map +++ b/_p_s3_u_s_b_8cpp__incl.map @@ -1,8 +1,8 @@ - - - - - - + + + + + + diff --git a/_p_s3_u_s_b_8cpp__incl.md5 b/_p_s3_u_s_b_8cpp__incl.md5 index a9693dff..b62523cb 100644 --- a/_p_s3_u_s_b_8cpp__incl.md5 +++ b/_p_s3_u_s_b_8cpp__incl.md5 @@ -1 +1 @@ -6fe7e16b5e65f19d54865f8f0649448b \ No newline at end of file +d1b34b2e5c4f9117dc52f0fee30ee629 \ No newline at end of file diff --git a/_p_s3_u_s_b_8cpp__incl.png b/_p_s3_u_s_b_8cpp__incl.png index 80c553443ffcf988e79842a771c5b3a1a9bf3746..b572641b75eb34dd1e5a181d1322466de5aa3d83 100644 GIT binary patch literal 15417 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

RGjadBp5 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 literal 14904 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 OA@b5HQpIqi5B~%AJrEB7 diff --git a/_p_s3_u_s_b_8cpp_source.html b/_p_s3_u_s_b_8cpp_source.html index 4a0dc157..35e51af7 100644 --- a/_p_s3_u_s_b_8cpp_source.html +++ b/_p_s3_u_s_b_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: PS3USB.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - - - + + + + +
@@ -109,7 +86,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -142,7 +119,9 @@ Macros

 

Macro Definition Documentation

- + +

◆ EP_MAXPKTSIZE

+
@@ -152,11 +131,13 @@ Macros
-

Definition at line 26 of file PS3USB.h.

+

Definition at line 26 of file PS3USB.h.

- + +

◆ PS3_CONTROL_PIPE

+
@@ -166,11 +147,13 @@ Macros
-

Definition at line 29 of file PS3USB.h.

+

Definition at line 29 of file PS3USB.h.

- + +

◆ PS3_OUTPUT_PIPE

+
@@ -180,11 +163,13 @@ Macros
-

Definition at line 30 of file PS3USB.h.

+

Definition at line 30 of file PS3USB.h.

- + +

◆ PS3_INPUT_PIPE

+
@@ -194,11 +179,13 @@ Macros
-

Definition at line 31 of file PS3USB.h.

+

Definition at line 31 of file PS3USB.h.

- + +

◆ PS3_VID

+
@@ -208,11 +195,13 @@ Macros
-

Definition at line 34 of file PS3USB.h.

+

Definition at line 34 of file PS3USB.h.

- + +

◆ PS3_PID

+
@@ -222,11 +211,13 @@ Macros
-

Definition at line 35 of file PS3USB.h.

+

Definition at line 35 of file PS3USB.h.

- + +

◆ PS3NAVIGATION_PID

+
@@ -236,11 +227,13 @@ Macros
-

Definition at line 36 of file PS3USB.h.

+

Definition at line 36 of file PS3USB.h.

- + +

◆ PS3MOVE_PID

+
@@ -250,11 +243,13 @@ Macros
-

Definition at line 37 of file PS3USB.h.

+

Definition at line 37 of file PS3USB.h.

- + +

◆ PS3_MAX_ENDPOINTS

+
@@ -264,7 +259,7 @@ Macros
-

Definition at line 39 of file PS3USB.h.

+

Definition at line 39 of file PS3USB.h.

@@ -273,7 +268,7 @@ Macros diff --git a/_p_s3_u_s_b_8h__dep__incl.map b/_p_s3_u_s_b_8h__dep__incl.map index 667ba04f..0597b96d 100644 --- a/_p_s3_u_s_b_8h__dep__incl.map +++ b/_p_s3_u_s_b_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/_p_s3_u_s_b_8h__dep__incl.md5 b/_p_s3_u_s_b_8h__dep__incl.md5 index 12e5013f..a0ef30bd 100644 --- a/_p_s3_u_s_b_8h__dep__incl.md5 +++ b/_p_s3_u_s_b_8h__dep__incl.md5 @@ -1 +1 @@ -0475266e9b2a94b52ed82e482fd5e58c \ No newline at end of file +30b451c7325a69f7529dfbe204eb0dfb \ No newline at end of file diff --git a/_p_s3_u_s_b_8h__dep__incl.png b/_p_s3_u_s_b_8h__dep__incl.png index 3e3167b129cfd2014f0f7f049441b048669b348b..3a42daab3b3e3b0801ff633f35e6a0ab469c3b4d 100644 GIT binary patch literal 3125 zcmcIni91y99zQ6%$=J6hQX#eN(n41lMvr~+7c~}t(SCn#+uR(S(?cAA z#QpFM@MrEngk<(8V_=;=1nxOS*Po>07Yl64z0>ClO9~1AlT1ayOO7d8_2`7+Vj0Ah zD<+Wl+4^OBMYa~J@A(J!+$&P!kbe0+ST209Z7+@13(-2X~xsO_Bmp^IgsjlkgL z=YO!b7jlG+jRn{YzVxEJd}w6kVYzM9No8f;*x1kxkkZzM{r>&?C!L;RJ^gtU0|P=fx`nfJ!nKL)($dnS^34z4c6Orv zn#Ui-#X$uG9!5qorDbN$y-yJD9T;E(L=uoczBco>@6ow#PqrM5(u)k5BCs(Q2ZZzV zP4i+2RhZ`cwY93?6fC9KtgiK@8_^*!=gpfpKN*Y%?d>`zPoA{Aew|1nLE;k=Spd=r z9nyvA5dOQ(6586@#MoF}M@N`>uDX=MT+E5Ex9jbPq?8oCQtPvL0%4Y7p_88W&sD%3 z*96kgxmtv~3-UKJe0x;}s9WZCseMOg`YT`6)IhOVY)4jBmdMD+2s;H1hZ`Chy+c`C ziW(fWba8PhC@(j$a!?6)IbYvEZX+*KN|IAkAB>DxhcG@}NV&UTHR{?}_GPv3%c?Fy zI7>8_;^Nn12tFsQq_ob$o?=BXdNx{6+sI z-kVtL>3Lq%t(#Nf2fx{_UAtyzZk``F=2xsgScqVj(5Wp)T5&!O;ZrpD+R@RxdHBv!=q)~tjy;nMMWUj(8Yaif>NneFuRC^1mf~#fRCRagoSiG;n!r)#@MYVv-`iMWBOb= zzIDgd_|74Lx2sj{kZjZFM~^r$E&d!#OiXyNe93uv@MZ|mw)NS*W4f}k@_LhxRGM*7 zb%6Io1COt-@6XN6SJbo6sJOJ&o?!|_MN8{rJ6|mm2M0%KMTG$p89i#ZGl^CBZ~KFc z0tWFY@;MPx66pr&RJh>@80`Jfvn$@bu7N5!kqZm<*ITR?mSolRYuoB>4LogX8Wpm0 zOK^_>i#fIqByV|TDo8JLa+$oeW1RRgJ^d)}qOJ7#YvaGd;%9PgufKoKtsb(& z4b1GWTWF{!(0q&uY{wcp-P`z~{3~AGT;FJg^#rl%zD?nf7REHhTjl5(hsA!uI!V zC6Yb_s;9TLX!4jAmsM%t@l9r$uv!wOm*T1PtlZ?*)`8ixp@)wjyIm})g_}#?S)W4r z1O?TNTO8T^<)nLSG3hvJOsFK;*0uy%`Qm!d(cSI51{2u5pW(jK3#QHf%bG%P&Yq_R zvw9Qr>KlPR<97tb#1A`K0;o;+jcF3;rhG2LJ}Ty@Vxn`CR`e`g zB$|vB`Tqr?k1ucpwfEo;wcr3jc76HqrQpK8|t;z3u5?larH6g$?dXc7b_+4HoKy z#GxM+cJR^W{_C1;DF;r#u$+p1#RGxx0WD$snouYxSXcf0>bkS0!*&xoIygwWmX^qaxBE_^E!Bbfc zoPejdcTr7^N{jCt>lWw|deqkGR zYV%qkO44$2Ovsr^!k+#?K^FG*IM5{Y^z@WHfBp~_zPBM)*XyFXvb2;{yIv^?Lhn_5 zeSNa2OiqJ^0z_kBGI0!t1l3AYQ&V9)H6_JociY=Jcx#2~?&ZY-Xl;*TueS!m(f0OC z0C-G;p7lbEpuj*7DJ;&;&M7OV2$@tVC8cBg`}<8Hzv<5pl9G7iux?&n^4fndNyn*7 zPEK}AgFs^E;DAyuNdGxKSoJ&kvuBO7!Wj#n{?gV~Y=+24tbhIbRaQ+cW5jbS zZN2Y?vL%Qs`1R_DkkC*$dHFc7>xoPGZB^|DkA)O5hM;bO#_me+>o5>wqnN4Aj}E$4 zyItRYVqraMK7?~!6BFXApDR+oUJwVPQ=lgWH<+^P#_~VhSl)P01p3}{Y(1R9ikRy0 z3m#-HE-rmE`mq^{Zx_Fqm?t%cqRqY{6`{la$n`%2n{~*{SVnwtWR-CR{{sLc19L>B I-i`bJ0I2Ky{{R30 literal 2503 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 diff --git a/_p_s3_u_s_b_8h__incl.map b/_p_s3_u_s_b_8h__incl.map index a496e764..731dd5d3 100644 --- a/_p_s3_u_s_b_8h__incl.map +++ b/_p_s3_u_s_b_8h__incl.map @@ -1,7 +1,7 @@ - - - - - + + + + + diff --git a/_p_s3_u_s_b_8h__incl.md5 b/_p_s3_u_s_b_8h__incl.md5 index 8fa52d90..016045ba 100644 --- a/_p_s3_u_s_b_8h__incl.md5 +++ b/_p_s3_u_s_b_8h__incl.md5 @@ -1 +1 @@ -6e3e4f5a4587d0eabc83a6049ce6f258 \ No newline at end of file +80bc9dd64df8547bd5be104488ba1f29 \ No newline at end of file diff --git a/_p_s3_u_s_b_8h__incl.png b/_p_s3_u_s_b_8h__incl.png index 95bbe266cb4bf8cb889cf402b5412fb3ef883f25..cdd2d294a41772b8c1d15c93d19d44cfa51a198b 100644 GIT binary patch literal 13515 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%0A2(Z#p3!t2}9CVn~8F33b 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 literal 13257 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 WkLQpiItx6T15uDsl`fSu3;rL0rU9)0 diff --git a/_p_s3_u_s_b_8h_source.html b/_p_s3_u_s_b_8h_source.html index 5b679975..3899d50d 100644 --- a/_p_s3_u_s_b_8h_source.html +++ b/_p_s3_u_s_b_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: PS3USB.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - + + - - - - - + + + + +
@@ -118,7 +95,7 @@ Classes diff --git a/_p_s4_b_t_8h__incl.map b/_p_s4_b_t_8h__incl.map index f2f326c3..83acbe5f 100644 --- a/_p_s4_b_t_8h__incl.map +++ b/_p_s4_b_t_8h__incl.map @@ -1,10 +1,10 @@ - - + + - - - - - + + + + + diff --git a/_p_s4_b_t_8h__incl.md5 b/_p_s4_b_t_8h__incl.md5 index 13fdf4c6..1116a2ed 100644 --- a/_p_s4_b_t_8h__incl.md5 +++ b/_p_s4_b_t_8h__incl.md5 @@ -1 +1 @@ -57aad865c1c7b4a544a7eac684f0ffd9 \ No newline at end of file +d83187f481bdeb098a3bb36f43274a13 \ No newline at end of file diff --git a/_p_s4_b_t_8h__incl.png b/_p_s4_b_t_8h__incl.png index 083220ee54042dfdf7002e13f73ae0001ec5bdfa..6b0bdacd0611cc70ca875878e6007f2b3789c3d2 100644 GIT binary patch literal 26120 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 O-o3kO=mM1K%l`*RtiF8! literal 25008 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 diff --git a/_p_s4_b_t_8h_source.html b/_p_s4_b_t_8h_source.html index 645ab860..79748b19 100644 --- a/_p_s4_b_t_8h_source.html +++ b/_p_s4_b_t_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: PS4BT.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - + + +
@@ -132,7 +109,9 @@ Enumerations  

Enumeration Type Documentation

- + +

◆ DPADEnum

+
@@ -142,45 +121,27 @@ Enumerations
- - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + +
Enumerator
DPAD_UP  -
DPAD_UP_RIGHT  -
DPAD_RIGHT  -
DPAD_RIGHT_DOWN  -
DPAD_DOWN  -
DPAD_DOWN_LEFT  -
DPAD_LEFT  -
DPAD_LEFT_UP  -
DPAD_OFF  -
DPAD_OFF  -
DPAD_UP  -
DPAD_UP_RIGHT  -
DPAD_RIGHT  -
DPAD_RIGHT_DOWN  -
DPAD_DOWN  -
DPAD_DOWN_LEFT  -
DPAD_LEFT  -
DPAD_LEFT_UP  -
Enumerator
DPAD_UP 
DPAD_UP_RIGHT 
DPAD_RIGHT 
DPAD_RIGHT_DOWN 
DPAD_DOWN 
DPAD_DOWN_LEFT 
DPAD_LEFT 
DPAD_LEFT_UP 
DPAD_OFF 
DPAD_OFF 
DPAD_UP 
DPAD_UP_RIGHT 
DPAD_RIGHT 
DPAD_RIGHT_DOWN 
DPAD_DOWN 
DPAD_DOWN_LEFT 
DPAD_LEFT 
DPAD_LEFT_UP 
-

Definition at line 20 of file PS4Parser.cpp.

+

Definition at line 20 of file PS4Parser.cpp.

@@ -189,7 +150,7 @@ Enumerations diff --git a/_p_s4_parser_8cpp__incl.map b/_p_s4_parser_8cpp__incl.map index a426c81a..4aa44e51 100644 --- a/_p_s4_parser_8cpp__incl.map +++ b/_p_s4_parser_8cpp__incl.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/_p_s4_parser_8cpp__incl.md5 b/_p_s4_parser_8cpp__incl.md5 index 1f9ffe4e..37924f33 100644 --- a/_p_s4_parser_8cpp__incl.md5 +++ b/_p_s4_parser_8cpp__incl.md5 @@ -1 +1 @@ -03082f2d3fd4c67e7d5789f05b2dd70a \ No newline at end of file +d25b4790cd5001e08560c2238a2e6903 \ No newline at end of file diff --git a/_p_s4_parser_8cpp__incl.png b/_p_s4_parser_8cpp__incl.png index 0daabf52b905d99ed24b703fd84a7efd3c300c2d..fc950a428df69290b565a6dbb9d08666933a417d 100644 GIT binary patch literal 7509 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 YMESiHJy-NDe8T1JVt`(2ayNl9JEn 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 - + + USB Host Shield 2.0: PS4Parser.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + -

- + + + +
uint8_t smallRumble
Definition: PS4Parser.h:117
#define PSTR(str)
-
#define MFK_CASTUINT8T
Definition: settings.h:196
+
#define MFK_CASTUINT8T
Definition: settings.h:194
uint8_t dpad
Definition: PS4Parser.h:52
struct touchpadXY::@30 finger[2]
touchpadXY xy[3]
Definition: PS4Parser.h:108
@@ -138,7 +115,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/_p_s4_parser_8h.html b/_p_s4_parser_8h.html index f3186963..975f5def 100644 --- a/_p_s4_parser_8h.html +++ b/_p_s4_parser_8h.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: PS4Parser.h File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + +
- - + +
@@ -105,9 +82,9 @@ This graph shows which files directly or indirectly include this file:
- - - + + +
@@ -134,7 +111,9 @@ Variables  

Variable Documentation

- + +

◆ PS4_BUTTONS

+
@@ -149,7 +128,7 @@ Variables

Buttons on the controller

-

Definition at line 25 of file PS4Parser.h.

+

Definition at line 25 of file PS4Parser.h.

@@ -158,7 +137,7 @@ Variables diff --git a/_p_s4_parser_8h__dep__incl.map b/_p_s4_parser_8h__dep__incl.map index ae9e045f..64f9dc09 100644 --- a/_p_s4_parser_8h__dep__incl.map +++ b/_p_s4_parser_8h__dep__incl.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/_p_s4_parser_8h__dep__incl.md5 b/_p_s4_parser_8h__dep__incl.md5 index 2dc29627..f0c27ce8 100644 --- a/_p_s4_parser_8h__dep__incl.md5 +++ b/_p_s4_parser_8h__dep__incl.md5 @@ -1 +1 @@ -4d5a405a295dec480becbdb408726c5e \ No newline at end of file +479deb6480f10f264b96e5acadbf5ee5 \ No newline at end of file diff --git a/_p_s4_parser_8h__dep__incl.png b/_p_s4_parser_8h__dep__incl.png index a33fed99c380776e8a4ee81452768326dbdefde9..ee6e96a17a15bc9ba7740ce45597357b6005268c 100644 GIT binary patch literal 5666 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 ZniTG8{+nlq9}s;>4DJ}~)Mz_C`!C29-GcxC literal 5726 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 - - + + diff --git a/_p_s4_parser_8h__incl.md5 b/_p_s4_parser_8h__incl.md5 index a7437e13..d2017c34 100644 --- a/_p_s4_parser_8h__incl.md5 +++ b/_p_s4_parser_8h__incl.md5 @@ -1 +1 @@ -29a4989044a63001a938d41ea83d3491 \ No newline at end of file +4cb75d366ef1e7f193c5b93a0446b36b \ No newline at end of file diff --git a/_p_s4_parser_8h__incl.png b/_p_s4_parser_8h__incl.png index 98252f4994c8ac04c9111848aa21af519318f8a4..c2b70da91d1772d71d2433c2d17e7f7562794754 100644 GIT binary patch literal 5348 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 qPgarn-;zMlWA(q4kAF)b*Ee - + + USB Host Shield 2.0: PS4Parser.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
PS4Parser.h
-Go to the documentation of this file.
1 /* Copyright (C) 2014 Kristian Lauszus, TKJ Electronics. All rights reserved.
2 
3  This software may be distributed and modified under the terms of the GNU
4  General Public License version 2 (GPL2) as published by the Free Software
5  Foundation and appearing in the file GPL2.TXT included in the packaging of
6  this file. Please note that GPL2 Section 2[b] requires that all works based
7  on this software must also be made publicly available under the terms of
8  the GPL2 ("Copyleft").
9 
10  Contact information
11  -------------------
12 
13  Kristian Lauszus, TKJ Electronics
14  Web : http://www.tkjelectronics.com
15  e-mail : kristianl@tkjelectronics.com
16  */
17 
18 #ifndef _ps4parser_h_
19 #define _ps4parser_h_
20 
21 #include "Usb.h"
22 #include "controllerEnums.h"
23 
25 const uint8_t PS4_BUTTONS[] PROGMEM = {
26  UP, // UP
27  RIGHT, // RIGHT
28  DOWN, // DOWN
29  LEFT, // LEFT
30 
31  0x0C, // SHARE
32  0x0D, // OPTIONS
33  0x0E, // L3
34  0x0F, // R3
35 
36  0x0A, // L2
37  0x0B, // R2
38  0x08, // L1
39  0x09, // R1
40 
41  0x07, // TRIANGLE
42  0x06, // CIRCLE
43  0x05, // CROSS
44  0x04, // SQUARE
45 
46  0x10, // PS
47  0x11, // TOUCHPAD
48 };
49 
50 union PS4Buttons {
51  struct {
52  uint8_t dpad : 4;
53  uint8_t square : 1;
54  uint8_t cross : 1;
55  uint8_t circle : 1;
56  uint8_t triangle : 1;
57 
58  uint8_t l1 : 1;
59  uint8_t r1 : 1;
60  uint8_t l2 : 1;
61  uint8_t r2 : 1;
62  uint8_t share : 1;
63  uint8_t options : 1;
64  uint8_t l3 : 1;
65  uint8_t r3 : 1;
66 
67  uint8_t ps : 1;
68  uint8_t touchpad : 1;
69  uint8_t reportCounter : 6;
70  } __attribute__((packed));
71  uint32_t val : 24;
72 } __attribute__((packed));
73 
74 struct touchpadXY {
75  uint8_t dummy; // I can not figure out what this data is for, it seems to change randomly, maybe a timestamp?
76  struct {
77  uint8_t counter : 7; // Increments every time a finger is touching the touchpad
78  uint8_t touching : 1; // The top bit is cleared if the finger is touching the touchpad
79  uint16_t x : 12;
80  uint16_t y : 12;
81  } __attribute__((packed)) finger[2]; // 0 = first finger, 1 = second finger
82 } __attribute__((packed));
83 
84 struct PS4Status {
85  uint8_t battery : 4;
86  uint8_t usb : 1;
87  uint8_t audio : 1;
88  uint8_t mic : 1;
89  uint8_t unknown : 1; // Extension port?
90 } __attribute__((packed));
91 
92 struct PS4Data {
93  /* Button and joystick values */
94  uint8_t hatValue[4];
96  uint8_t trigger[2];
97 
98  /* Gyro and accelerometer values */
99  uint8_t dummy[3]; // First two looks random, while the third one might be some kind of status - it increments once in a while
100  int16_t gyroY, gyroZ, gyroX;
101  int16_t accX, accZ, accY;
102 
103  uint8_t dummy2[5];
105  uint8_t dummy3[3];
106 
107  /* The rest is data for the touchpad */
108  touchpadXY xy[3]; // It looks like it sends out three coordinates each time, this might be because the microcontroller inside the PS4 controller is much faster than the Bluetooth connection.
109  // The last data is read from the last position in the array while the oldest measurement is from the first position.
110  // The first position will also keep it's value after the finger is released, while the other two will set them to zero.
111  // Note that if you read fast enough from the device, then only the first one will contain any data.
112 
113  // The last three bytes are always: 0x00, 0x80, 0x00
114 } __attribute__((packed));
115 
116 struct PS4Output {
117  uint8_t bigRumble, smallRumble; // Rumble
118  uint8_t r, g, b; // RGB
119  uint8_t flashOn, flashOff; // Time to flash bright/dark (255 = 2.5 seconds)
120  bool reportChanged; // The data is send when data is received from the controller
121 } __attribute__((packed));
122 
124 class PS4Parser {
125 public:
128  Reset();
129  };
130 
142  bool getButtonPress(ButtonEnum b);
143  bool getButtonClick(ButtonEnum b);
153  uint8_t getAnalogButton(ButtonEnum b);
154 
160  uint8_t getAnalogHat(AnalogHatEnum a);
161 
170  uint16_t getX(uint8_t finger = 0, uint8_t xyId = 0) {
171  return ps4Data.xy[xyId].finger[finger].x;
172  };
173 
182  uint16_t getY(uint8_t finger = 0, uint8_t xyId = 0) {
183  return ps4Data.xy[xyId].finger[finger].y;
184  };
185 
194  bool isTouching(uint8_t finger = 0, uint8_t xyId = 0) {
195  return !(ps4Data.xy[xyId].finger[finger].touching); // The bit is cleared when a finger is touching the touchpad
196  };
197 
206  uint8_t getTouchCounter(uint8_t finger = 0, uint8_t xyId = 0) {
207  return ps4Data.xy[xyId].finger[finger].counter;
208  };
209 
215  float getAngle(AngleEnum a) {
216  if (a == Pitch)
217  return (atan2f(ps4Data.accY, ps4Data.accZ) + PI) * RAD_TO_DEG;
218  else
219  return (atan2f(ps4Data.accX, ps4Data.accZ) + PI) * RAD_TO_DEG;
220  };
221 
227  int16_t getSensor(SensorEnum s) {
228  switch(s) {
229  case gX:
230  return ps4Data.gyroX;
231  case gY:
232  return ps4Data.gyroY;
233  case gZ:
234  return ps4Data.gyroZ;
235  case aX:
236  return ps4Data.accX;
237  case aY:
238  return ps4Data.accY;
239  case aZ:
240  return ps4Data.accZ;
241  default:
242  return 0;
243  }
244  };
245 
250  uint8_t getBatteryLevel() {
251  return ps4Data.status.battery;
252  };
253 
258  bool getUsbStatus() {
259  return ps4Data.status.usb;
260  };
261 
266  bool getAudioStatus() {
267  return ps4Data.status.audio;
268  };
269 
274  bool getMicStatus() {
275  return ps4Data.status.mic;
276  };
277 
279  void setAllOff() {
280  setRumbleOff();
281  setLedOff();
282  };
283 
285  void setRumbleOff() {
286  setRumbleOn(0, 0);
287  };
288 
293  void setRumbleOn(RumbleEnum mode) {
294  if (mode == RumbleLow)
295  setRumbleOn(0x00, 0xFF);
296  else
297  setRumbleOn(0xFF, 0x00);
298  };
299 
305  void setRumbleOn(uint8_t bigRumble, uint8_t smallRumble) {
306  ps4Output.bigRumble = bigRumble;
307  ps4Output.smallRumble = smallRumble;
308  ps4Output.reportChanged = true;
309  };
310 
312  void setLedOff() {
313  setLed(0, 0, 0);
314  };
315 
320  void setLed(uint8_t r, uint8_t g, uint8_t b) {
321  ps4Output.r = r;
322  ps4Output.g = g;
323  ps4Output.b = b;
324  ps4Output.reportChanged = true;
325  };
326 
331  void setLed(ColorsEnum color) {
332  setLed((uint8_t)(color >> 16), (uint8_t)(color >> 8), (uint8_t)(color));
333  };
334 
340  void setLedFlash(uint8_t flashOn, uint8_t flashOff) {
341  ps4Output.flashOn = flashOn;
342  ps4Output.flashOff = flashOff;
343  ps4Output.reportChanged = true;
344  };
347 protected:
353  void Parse(uint8_t len, uint8_t *buf);
354 
356  void Reset();
357 
362  virtual void sendOutputReport(PS4Output *output) = 0;
363 
364 private:
365  bool checkDpad(ButtonEnum b); // Used to check PS4 DPAD buttons
366 
367  PS4Data ps4Data;
368  PS4Buttons oldButtonState, buttonClickState;
369  PS4Output ps4Output;
370  uint8_t oldDpad;
371 };
372 #endif
uint8_t getBatteryLevel()
Definition: PS4Parser.h:250
+Go to the documentation of this file.
1 /* Copyright (C) 2014 Kristian Lauszus, TKJ Electronics. All rights reserved.
2 
3  This software may be distributed and modified under the terms of the GNU
4  General Public License version 2 (GPL2) as published by the Free Software
5  Foundation and appearing in the file GPL2.TXT included in the packaging of
6  this file. Please note that GPL2 Section 2[b] requires that all works based
7  on this software must also be made publicly available under the terms of
8  the GPL2 ("Copyleft").
9 
10  Contact information
11  -------------------
12 
13  Kristian Lauszus, TKJ Electronics
14  Web : http://www.tkjelectronics.com
15  e-mail : kristianl@tkjelectronics.com
16  */
17 
18 #ifndef _ps4parser_h_
19 #define _ps4parser_h_
20 
21 #include "Usb.h"
22 #include "controllerEnums.h"
23 
25 const uint8_t PS4_BUTTONS[] PROGMEM = {
26  UP, // UP
27  RIGHT, // RIGHT
28  DOWN, // DOWN
29  LEFT, // LEFT
30 
31  0x0C, // SHARE
32  0x0D, // OPTIONS
33  0x0E, // L3
34  0x0F, // R3
35 
36  0x0A, // L2
37  0x0B, // R2
38  0x08, // L1
39  0x09, // R1
40 
41  0x07, // TRIANGLE
42  0x06, // CIRCLE
43  0x05, // CROSS
44  0x04, // SQUARE
45 
46  0x10, // PS
47  0x11, // TOUCHPAD
48 };
49 
50 union PS4Buttons {
51  struct {
52  uint8_t dpad : 4;
53  uint8_t square : 1;
54  uint8_t cross : 1;
55  uint8_t circle : 1;
56  uint8_t triangle : 1;
57 
58  uint8_t l1 : 1;
59  uint8_t r1 : 1;
60  uint8_t l2 : 1;
61  uint8_t r2 : 1;
62  uint8_t share : 1;
63  uint8_t options : 1;
64  uint8_t l3 : 1;
65  uint8_t r3 : 1;
66 
67  uint8_t ps : 1;
68  uint8_t touchpad : 1;
69  uint8_t reportCounter : 6;
70  } __attribute__((packed));
71  uint32_t val : 24;
72 } __attribute__((packed));
73 
74 struct touchpadXY {
75  uint8_t dummy; // I can not figure out what this data is for, it seems to change randomly, maybe a timestamp?
76  struct {
77  uint8_t counter : 7; // Increments every time a finger is touching the touchpad
78  uint8_t touching : 1; // The top bit is cleared if the finger is touching the touchpad
79  uint16_t x : 12;
80  uint16_t y : 12;
81  } __attribute__((packed)) finger[2]; // 0 = first finger, 1 = second finger
82 } __attribute__((packed));
83 
84 struct PS4Status {
85  uint8_t battery : 4;
86  uint8_t usb : 1;
87  uint8_t audio : 1;
88  uint8_t mic : 1;
89  uint8_t unknown : 1; // Extension port?
90 } __attribute__((packed));
91 
92 struct PS4Data {
93  /* Button and joystick values */
94  uint8_t hatValue[4];
96  uint8_t trigger[2];
97 
98  /* Gyro and accelerometer values */
99  uint8_t dummy[3]; // First two looks random, while the third one might be some kind of status - it increments once in a while
100  int16_t gyroY, gyroZ, gyroX;
101  int16_t accX, accZ, accY;
102 
103  uint8_t dummy2[5];
105  uint8_t dummy3[3];
106 
107  /* The rest is data for the touchpad */
108  touchpadXY xy[3]; // It looks like it sends out three coordinates each time, this might be because the microcontroller inside the PS4 controller is much faster than the Bluetooth connection.
109  // The last data is read from the last position in the array while the oldest measurement is from the first position.
110  // The first position will also keep it's value after the finger is released, while the other two will set them to zero.
111  // Note that if you read fast enough from the device, then only the first one will contain any data.
112 
113  // The last three bytes are always: 0x00, 0x80, 0x00
114 } __attribute__((packed));
115 
116 struct PS4Output {
117  uint8_t bigRumble, smallRumble; // Rumble
118  uint8_t r, g, b; // RGB
119  uint8_t flashOn, flashOff; // Time to flash bright/dark (255 = 2.5 seconds)
120  bool reportChanged; // The data is send when data is received from the controller
121 } __attribute__((packed));
122 
124 class PS4Parser {
125 public:
128  Reset();
129  };
130 
142  bool getButtonPress(ButtonEnum b);
143  bool getButtonClick(ButtonEnum b);
153  uint8_t getAnalogButton(ButtonEnum b);
154 
160  uint8_t getAnalogHat(AnalogHatEnum a);
161 
170  uint16_t getX(uint8_t finger = 0, uint8_t xyId = 0) {
171  return ps4Data.xy[xyId].finger[finger].x;
172  };
173 
182  uint16_t getY(uint8_t finger = 0, uint8_t xyId = 0) {
183  return ps4Data.xy[xyId].finger[finger].y;
184  };
185 
194  bool isTouching(uint8_t finger = 0, uint8_t xyId = 0) {
195  return !(ps4Data.xy[xyId].finger[finger].touching); // The bit is cleared when a finger is touching the touchpad
196  };
197 
206  uint8_t getTouchCounter(uint8_t finger = 0, uint8_t xyId = 0) {
207  return ps4Data.xy[xyId].finger[finger].counter;
208  };
209 
215  float getAngle(AngleEnum a) {
216  if (a == Pitch)
217  return (atan2f(ps4Data.accY, ps4Data.accZ) + PI) * RAD_TO_DEG;
218  else
219  return (atan2f(ps4Data.accX, ps4Data.accZ) + PI) * RAD_TO_DEG;
220  };
221 
227  int16_t getSensor(SensorEnum s) {
228  switch(s) {
229  case gX:
230  return ps4Data.gyroX;
231  case gY:
232  return ps4Data.gyroY;
233  case gZ:
234  return ps4Data.gyroZ;
235  case aX:
236  return ps4Data.accX;
237  case aY:
238  return ps4Data.accY;
239  case aZ:
240  return ps4Data.accZ;
241  default:
242  return 0;
243  }
244  };
245 
250  uint8_t getBatteryLevel() {
251  return ps4Data.status.battery;
252  };
253 
258  bool getUsbStatus() {
259  return ps4Data.status.usb;
260  };
261 
266  bool getAudioStatus() {
267  return ps4Data.status.audio;
268  };
269 
274  bool getMicStatus() {
275  return ps4Data.status.mic;
276  };
277 
279  void setAllOff() {
280  setRumbleOff();
281  setLedOff();
282  };
283 
285  void setRumbleOff() {
286  setRumbleOn(0, 0);
287  };
288 
293  void setRumbleOn(RumbleEnum mode) {
294  if (mode == RumbleLow)
295  setRumbleOn(0x00, 0xFF);
296  else
297  setRumbleOn(0xFF, 0x00);
298  };
299 
305  void setRumbleOn(uint8_t bigRumble, uint8_t smallRumble) {
306  ps4Output.bigRumble = bigRumble;
307  ps4Output.smallRumble = smallRumble;
308  ps4Output.reportChanged = true;
309  };
310 
312  void setLedOff() {
313  setLed(0, 0, 0);
314  };
315 
320  void setLed(uint8_t r, uint8_t g, uint8_t b) {
321  ps4Output.r = r;
322  ps4Output.g = g;
323  ps4Output.b = b;
324  ps4Output.reportChanged = true;
325  };
326 
331  void setLed(ColorsEnum color) {
332  setLed((uint8_t)(color >> 16), (uint8_t)(color >> 8), (uint8_t)(color));
333  };
334 
340  void setLedFlash(uint8_t flashOn, uint8_t flashOff) {
341  ps4Output.flashOn = flashOn;
342  ps4Output.flashOff = flashOff;
343  ps4Output.reportChanged = true;
344  };
347 protected:
353  void Parse(uint8_t len, uint8_t *buf);
354 
356  void Reset();
357 
362  virtual void sendOutputReport(PS4Output *output) = 0;
363 
364 private:
365  bool checkDpad(ButtonEnum b); // Used to check PS4 DPAD buttons
366 
367  PS4Data ps4Data;
368  PS4Buttons oldButtonState, buttonClickState;
369  PS4Output ps4Output;
370  uint8_t oldDpad;
371 };
372 #endif
uint8_t getBatteryLevel()
Definition: PS4Parser.h:250
uint32_t val
Definition: PS4Parser.h:71
uint16_t getY(uint8_t finger=0, uint8_t xyId=0)
Definition: PS4Parser.h:182
+
uint8_t usb
Definition: PS4Parser.h:86
uint8_t r1
Definition: PS4Parser.h:59
PS4Status status
Definition: PS4Parser.h:104
void setLed(uint8_t r, uint8_t g, uint8_t b)
Definition: PS4Parser.h:320
+
uint8_t mic
Definition: PS4Parser.h:88
AnalogHatEnum
uint8_t reportCounter
Definition: PS4Parser.h:69
void setLed(ColorsEnum color)
Definition: PS4Parser.h:331
+
uint8_t audio
Definition: PS4Parser.h:87
void setRumbleOn(uint8_t bigRumble, uint8_t smallRumble)
Definition: PS4Parser.h:305
+
uint8_t touching
Definition: PS4Parser.h:78
int16_t getSensor(SensorEnum s)
Definition: PS4Parser.h:227
uint8_t flashOn
Definition: PS4Parser.h:119
@@ -107,6 +88,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
uint8_t share
Definition: PS4Parser.h:62
+
uint8_t unknown
Definition: PS4Parser.h:89
void setRumbleOn(RumbleEnum mode)
Definition: PS4Parser.h:293
uint8_t dummy
Definition: PS4Parser.h:75
@@ -119,8 +101,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
bool reportChanged
Definition: PS4Parser.h:120
uint8_t ps
Definition: PS4Parser.h:67
bool isTouching(uint8_t finger=0, uint8_t xyId=0)
Definition: PS4Parser.h:194
+
uint8_t counter
Definition: PS4Parser.h:77
+
uint16_t y
Definition: PS4Parser.h:80
-
const uint8_t PS4_BUTTONS[]
Definition: PS4Parser.h:25
ButtonEnum
@@ -147,10 +130,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
uint8_t options
Definition: PS4Parser.h:63
bool getMicStatus()
Definition: PS4Parser.h:274
uint8_t touchpad
Definition: PS4Parser.h:68
+
uint8_t battery
Definition: PS4Parser.h:85
uint8_t l3
Definition: PS4Parser.h:64
PS4Buttons btn
Definition: PS4Parser.h:95
SensorEnum
uint8_t circle
Definition: PS4Parser.h:55
+
uint16_t x
Definition: PS4Parser.h:79
int16_t accZ
Definition: PS4Parser.h:101
void setLedFlash(uint8_t flashOn, uint8_t flashOff)
Definition: PS4Parser.h:340
@@ -164,7 +149,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/_p_s4_u_s_b_8h.html b/_p_s4_u_s_b_8h.html index eb7dce74..f43d8d34 100644 --- a/_p_s4_u_s_b_8h.html +++ b/_p_s4_u_s_b_8h.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: PS4USB.h File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- - - - - - + + + + + +
@@ -122,7 +99,9 @@ Macros  

Macro Definition Documentation

- + +

◆ PS4_VID

+
@@ -132,11 +111,13 @@ Macros
-

Definition at line 24 of file PS4USB.h.

+

Definition at line 24 of file PS4USB.h.

- + +

◆ PS4_PID

+
@@ -146,11 +127,13 @@ Macros
-

Definition at line 25 of file PS4USB.h.

+

Definition at line 25 of file PS4USB.h.

- + +

◆ PS4_PID_SLIM

+
@@ -160,7 +143,7 @@ Macros
-

Definition at line 26 of file PS4USB.h.

+

Definition at line 26 of file PS4USB.h.

@@ -169,7 +152,7 @@ Macros diff --git a/_p_s4_u_s_b_8h__incl.map b/_p_s4_u_s_b_8h__incl.map index 479efdd9..c0f16df6 100644 --- a/_p_s4_u_s_b_8h__incl.map +++ b/_p_s4_u_s_b_8h__incl.map @@ -1,8 +1,8 @@ - - - - - - + + + + + + diff --git a/_p_s4_u_s_b_8h__incl.md5 b/_p_s4_u_s_b_8h__incl.md5 index 9a8140ab..76233869 100644 --- a/_p_s4_u_s_b_8h__incl.md5 +++ b/_p_s4_u_s_b_8h__incl.md5 @@ -1 +1 @@ -3d9cec3e6d601d983fe2992427af4c58 \ No newline at end of file +d2a18154f1cb36761bff05421187bd1f \ No newline at end of file diff --git a/_p_s4_u_s_b_8h__incl.png b/_p_s4_u_s_b_8h__incl.png index 126e64cd297e7b35acafa2a11475bce88059007f..6686645cc1c5c839034097f9bc6d3833cbe5e5d4 100644 GIT binary patch literal 16604 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 - + + USB Host Shield 2.0: PS4USB.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- + - - + + + +
- - - - - - + + + + + +
@@ -107,7 +84,7 @@ Include dependency graph for PSBuzz.cpp: diff --git a/_p_s_buzz_8cpp__incl.map b/_p_s_buzz_8cpp__incl.map index 987cb529..6dfe1b5c 100644 --- a/_p_s_buzz_8cpp__incl.map +++ b/_p_s_buzz_8cpp__incl.map @@ -1,8 +1,8 @@ - - - - - - + + + + + + diff --git a/_p_s_buzz_8cpp__incl.md5 b/_p_s_buzz_8cpp__incl.md5 index b600c9e8..254fa80c 100644 --- a/_p_s_buzz_8cpp__incl.md5 +++ b/_p_s_buzz_8cpp__incl.md5 @@ -1 +1 @@ -4060fd39043c7564a19c22e4b422acd8 \ No newline at end of file +5a74379adade31d51d1b0ef98c2b52fe \ No newline at end of file diff --git a/_p_s_buzz_8cpp__incl.png b/_p_s_buzz_8cpp__incl.png index 3f05ab6573b16a01a2e2661984e393cb9a5edbce..ff801c84c89b0eb0d2e77f102a93daa71ca1c1cc 100644 GIT binary patch literal 14718 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 YfjLyKmD2koB#j- literal 14378 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 - + + USB Host Shield 2.0: PSBuzz.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + +
uint8_t bAddress
Definition: usbhid.h:146
void setLedRaw(bool value, uint8_t controller=0)
Definition: PSBuzz.cpp:64
#define PSTR(str)
-
#define MFK_CASTUINT8T
Definition: settings.h:196
+
#define MFK_CASTUINT8T
Definition: settings.h:194
uint8_t OnInitSuccessful()
Definition: PSBuzz.cpp:41
void setLedOnAll()
Definition: PSBuzz.h:114
#define HID_REQUEST_SET_REPORT
Definition: usbhid.h:72
@@ -115,7 +92,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/_p_s_buzz_8h.html b/_p_s_buzz_8h.html index 8af28df2..ee8ebb5f 100644 --- a/_p_s_buzz_8h.html +++ b/_p_s_buzz_8h.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: PSBuzz.h File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + +
- - - - - + + + + +
@@ -108,7 +85,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -129,7 +106,9 @@ Macros  

Macro Definition Documentation

- + +

◆ PSBUZZ_VID

+
@@ -139,11 +118,13 @@ Macros
-

Definition at line 24 of file PSBuzz.h.

+

Definition at line 24 of file PSBuzz.h.

- + +

◆ PSBUZZ_PID

+
@@ -153,7 +134,7 @@ Macros
-

Definition at line 25 of file PSBuzz.h.

+

Definition at line 25 of file PSBuzz.h.

@@ -162,7 +143,7 @@ Macros diff --git a/_p_s_buzz_8h__dep__incl.map b/_p_s_buzz_8h__dep__incl.map index 4b2f91a5..2724f8d0 100644 --- a/_p_s_buzz_8h__dep__incl.map +++ b/_p_s_buzz_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/_p_s_buzz_8h__dep__incl.md5 b/_p_s_buzz_8h__dep__incl.md5 index 5caa0d46..0d832b03 100644 --- a/_p_s_buzz_8h__dep__incl.md5 +++ b/_p_s_buzz_8h__dep__incl.md5 @@ -1 +1 @@ -88928a152c2f379aa7b4a52bc6f3da10 \ No newline at end of file +89fdce8c433f9f3ff883c438cb91a471 \ No newline at end of file diff --git a/_p_s_buzz_8h__dep__incl.png b/_p_s_buzz_8h__dep__incl.png index 7730f098acdf398856d904e545b02e8cd3d8dcdb..624e9feb52a57cc9e5c00e37bef56e6c658da7d0 100644 GIT binary patch literal 2591 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 literal 2284 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 diff --git a/_p_s_buzz_8h__incl.map b/_p_s_buzz_8h__incl.map index 00d5a656..c566a41e 100644 --- a/_p_s_buzz_8h__incl.map +++ b/_p_s_buzz_8h__incl.map @@ -1,7 +1,7 @@ - - - - - + + + + + diff --git a/_p_s_buzz_8h__incl.md5 b/_p_s_buzz_8h__incl.md5 index 801930e6..063dac97 100644 --- a/_p_s_buzz_8h__incl.md5 +++ b/_p_s_buzz_8h__incl.md5 @@ -1 +1 @@ -460aa9dc1a3fdb1c5075c5daa680120f \ No newline at end of file +e9865eba6bb7dc48f5f354e4dc3ccb30 \ No newline at end of file diff --git a/_p_s_buzz_8h__incl.png b/_p_s_buzz_8h__incl.png index 724fcd48cf791352d6ecd0110dd32b3da9d38203..0f5bf6c305e5ee760af2f34a0aa913e2522c7200 100644 GIT binary patch literal 11717 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 - + + USB Host Shield 2.0: PSBuzz.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + +
PSBuzz.h
-Go to the documentation of this file.
1 /* Copyright (C) 2014 Kristian Lauszus, TKJ Electronics. All rights reserved.
2 
3  This software may be distributed and modified under the terms of the GNU
4  General Public License version 2 (GPL2) as published by the Free Software
5  Foundation and appearing in the file GPL2.TXT included in the packaging of
6  this file. Please note that GPL2 Section 2[b] requires that all works based
7  on this software must also be made publicly available under the terms of
8  the GPL2 ("Copyleft").
9 
10  Contact information
11  -------------------
12 
13  Kristian Lauszus, TKJ Electronics
14  Web : http://www.tkjelectronics.com
15  e-mail : kristianl@tkjelectronics.com
16  */
17 
18 #ifndef _psbuzz_h_
19 #define _psbuzz_h_
20 
21 #include "hiduniversal.h"
22 #include "controllerEnums.h"
23 
24 #define PSBUZZ_VID 0x054C // Sony Corporation
25 #define PSBUZZ_PID 0x1000 // PS Buzz Controller
26 
29  struct {
30  uint8_t red : 1;
31  uint8_t yellow : 1;
32  uint8_t green : 1;
33  uint8_t orange : 1;
34  uint8_t blue : 1;
35  } __attribute__((packed)) btn[4];
36  uint32_t val : 20;
37 } __attribute__((packed));
38 
43 class PSBuzz : public HIDUniversal {
44 public:
49  PSBuzz(USB *p) :
50  HIDUniversal(p) {
51  Reset();
52  };
53 
58  bool connected() {
60  };
61 
66  void attachOnInit(void (*funcOnInit)(void)) {
67  pFuncOnInit = funcOnInit;
68  };
69 
82  bool getButtonPress(ButtonEnum b, uint8_t controller = 0);
83  bool getButtonClick(ButtonEnum b, uint8_t controller = 0);
95  void setLedRaw(bool value, uint8_t controller = 0);
96 
98  void setLedOffAll() {
99  for (uint8_t i = 1; i < 4; i++) // Skip first as it will be set in setLedRaw
100  ledState[i] = false; // Just an easy way to set all four off at the same time
101  setLedRaw(false); // Turn the LED off, on all four controllers
102  };
103 
108  void setLedOff(uint8_t controller = 0) {
109  setLedRaw(false, controller);
110  };
111 
112 
114  void setLedOnAll() {
115  for (uint8_t i = 1; i < 4; i++) // Skip first as it will be set in setLedRaw
116  ledState[i] = true; // Just an easy way to set all four off at the same time
117  setLedRaw(true); // Turn the LED on, on all four controllers
118  };
119 
124  void setLedOn(uint8_t controller = 0) {
125  setLedRaw(true, controller);
126  };
127 
132  void setLedToggle(uint8_t controller = 0) {
133  setLedRaw(!ledState[controller], controller);
134  };
137 protected:
146  void ParseHIDData(USBHID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf);
147 
153  uint8_t OnInitSuccessful();
157  void Reset() {
158  psbuzzButtons.val = 0;
159  oldButtonState.val = 0;
160  buttonClickState.val = 0;
161  for (uint8_t i = 0; i < sizeof(ledState); i++)
162  ledState[i] = 0;
163  };
164 
172  virtual bool VIDPIDOK(uint16_t vid, uint16_t pid) {
173  return (vid == PSBUZZ_VID && pid == PSBUZZ_PID);
174  };
177 private:
178  void (*pFuncOnInit)(void); // Pointer to function called in onInit()
179 
180  void PSBuzz_Command(uint8_t *data, uint16_t nbytes);
181 
182  PSBUZZButtons psbuzzButtons, oldButtonState, buttonClickState;
183  bool ledState[4];
184 };
185 #endif
uint16_t PID
Definition: hiduniversal.h:69
+Go to the documentation of this file.
1 /* Copyright (C) 2014 Kristian Lauszus, TKJ Electronics. All rights reserved.
2 
3  This software may be distributed and modified under the terms of the GNU
4  General Public License version 2 (GPL2) as published by the Free Software
5  Foundation and appearing in the file GPL2.TXT included in the packaging of
6  this file. Please note that GPL2 Section 2[b] requires that all works based
7  on this software must also be made publicly available under the terms of
8  the GPL2 ("Copyleft").
9 
10  Contact information
11  -------------------
12 
13  Kristian Lauszus, TKJ Electronics
14  Web : http://www.tkjelectronics.com
15  e-mail : kristianl@tkjelectronics.com
16  */
17 
18 #ifndef _psbuzz_h_
19 #define _psbuzz_h_
20 
21 #include "hiduniversal.h"
22 #include "controllerEnums.h"
23 
24 #define PSBUZZ_VID 0x054C // Sony Corporation
25 #define PSBUZZ_PID 0x1000 // PS Buzz Controller
26 
29  struct {
30  uint8_t red : 1;
31  uint8_t yellow : 1;
32  uint8_t green : 1;
33  uint8_t orange : 1;
34  uint8_t blue : 1;
35  } __attribute__((packed)) btn[4];
36  uint32_t val : 20;
37 } __attribute__((packed));
38 
43 class PSBuzz : public HIDUniversal {
44 public:
49  PSBuzz(USB *p) :
50  HIDUniversal(p) {
51  Reset();
52  };
53 
58  bool connected() {
60  };
61 
66  void attachOnInit(void (*funcOnInit)(void)) {
67  pFuncOnInit = funcOnInit;
68  };
69 
82  bool getButtonPress(ButtonEnum b, uint8_t controller = 0);
83  bool getButtonClick(ButtonEnum b, uint8_t controller = 0);
95  void setLedRaw(bool value, uint8_t controller = 0);
96 
98  void setLedOffAll() {
99  for (uint8_t i = 1; i < 4; i++) // Skip first as it will be set in setLedRaw
100  ledState[i] = false; // Just an easy way to set all four off at the same time
101  setLedRaw(false); // Turn the LED off, on all four controllers
102  };
103 
108  void setLedOff(uint8_t controller = 0) {
109  setLedRaw(false, controller);
110  };
111 
112 
114  void setLedOnAll() {
115  for (uint8_t i = 1; i < 4; i++) // Skip first as it will be set in setLedRaw
116  ledState[i] = true; // Just an easy way to set all four off at the same time
117  setLedRaw(true); // Turn the LED on, on all four controllers
118  };
119 
124  void setLedOn(uint8_t controller = 0) {
125  setLedRaw(true, controller);
126  };
127 
132  void setLedToggle(uint8_t controller = 0) {
133  setLedRaw(!ledState[controller], controller);
134  };
137 protected:
146  void ParseHIDData(USBHID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf);
147 
153  uint8_t OnInitSuccessful();
157  void Reset() {
158  psbuzzButtons.val = 0;
159  oldButtonState.val = 0;
160  buttonClickState.val = 0;
161  for (uint8_t i = 0; i < sizeof(ledState); i++)
162  ledState[i] = 0;
163  };
164 
172  virtual bool VIDPIDOK(uint16_t vid, uint16_t pid) {
173  return (vid == PSBUZZ_VID && pid == PSBUZZ_PID);
174  };
177 private:
178  void (*pFuncOnInit)(void); // Pointer to function called in onInit()
179 
180  void PSBuzz_Command(uint8_t *data, uint16_t nbytes);
181 
182  PSBUZZButtons psbuzzButtons, oldButtonState, buttonClickState;
183  bool ledState[4];
184 };
185 #endif
uint16_t PID
Definition: hiduniversal.h:69
Definition: usbhid.h:143
uint8_t red
Definition: PSBuzz.h:30
void setLedToggle(uint8_t controller=0)
Definition: PSBuzz.h:132
@@ -121,7 +98,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/_r_e_a_d_m_e_8md.html b/_r_e_a_d_m_e_8md.html index a5b29531..5fe37b21 100644 --- a/_r_e_a_d_m_e_8md.html +++ b/_r_e_a_d_m_e_8md.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: README.md File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + + - + - - + + + +
README.md
-Go to the documentation of this file.
1 # USB Host Library Rev.2.0
2 
3 The code is released under the GNU General Public License.
4 __________
5 [![Build Status](https://travis-ci.org/felis/USB_Host_Shield_2.0.svg?branch=master)](https://travis-ci.org/felis/USB_Host_Shield_2.0)
6 
7 # Summary
8 This is Revision 2.0 of MAX3421E-based USB Host Shield Library for AVR's.
9 
10 Project main web site is: <https://chome.nerpa.tech/arduino_usb_host_shield_projects/>.
11 
12 Some information can also be found at: <http://blog.tkjelectronics.dk/>.
13 
14 The shield can be purchased from [TKJ Electronics](http://tkjelectronics.com/): <http://shop.tkjelectronics.dk/product_info.php?products_id=43>.
15 
16 ![USB Host Shield](http://shop.tkjelectronics.dk/images/USB_Host_Shield1.jpg)
17 
18 For more information about the hardware see the [Hardware Manual](https://chome.nerpa.tech/usb-host-shield-hardware-manual/).
19 
20 # Developed By
21 
22 * __Oleg Mazurov__ - <mazurov@gmail.com>
23 * __Alexei Glushchenko__ - <alex-gl@mail.ru>
24  * Developers of the USB Core, HID, FTDI, ADK, ACM, and PL2303 libraries
25 * __Kristian Sloth Lauszus__ - <lauszus@gmail.com>
26  * Developer of the [BTD](#bluetooth-libraries), [BTHID](#bthid-library), [SPP](#spp-library), [PS4](#ps4-library), [PS3](#ps3-library), [Wii](#wii-library), [Xbox](#xbox-library), and [PSBuzz](#ps-buzz-library) libraries
27 * __Andrew Kroll__ - <xxxajk@gmail.com>
28  * Major contributor to mass storage code
29 * __guruthree__
30  * [Xbox ONE](#xbox-one-library) controller support
31 * __Yuuichi Akagawa__ - [\@YuuichiAkagawa](https://twitter.com/yuuichiakagawa)
32  * Developer of the [MIDI](#midi-library) library
33 
34 
35 # Table of Contents
36 
37 * [How to include the library](#how-to-include-the-library)
38  * [Arduino Library Manager](#arduino-library-manager)
39  * [Manual installation](#manual-installation)
40 * [How to use the library](#how-to-use-the-library)
41  * [Documentation](#documentation)
42  * [Enable debugging](#enable-debugging)
43  * [Boards](#boards)
44  * [Bluetooth libraries](#bluetooth-libraries)
45  * [BTHID library](#bthid-library)
46  * [SPP library](#spp-library)
47  * [PS4 Library](#ps4-library)
48  * [PS3 Library](#ps3-library)
49  * [Xbox Libraries](#xbox-libraries)
50  * [Xbox library](#xbox-library)
51  * [Xbox 360 Library](#xbox-360-library)
52  * [Xbox ONE Library](#xbox-one-library)
53  * [Xbox ONE S Library](#xbox-one-s-library)
54  * [Wii library](#wii-library)
55  * [PS Buzz Library](#ps-buzz-library)
56  * [HID Libraries](#hid-libraries)
57  * [MIDI Library](#midi-library)
58 * [Interface modifications](#interface-modifications)
59 * [FAQ](#faq)
60 
61 # How to include the library
62 
63 ### Arduino Library Manager
64 
65 First install Arduino IDE version 1.6.2 or newer, then simply use the Arduino Library Manager to install the library.
66 
67 Please see the following page for instructions: <http://www.arduino.cc/en/Guide/Libraries#toc3>.
68 
69 ### Manual installation
70 
71 First download the library by clicking on the following link: <https://github.com/felis/USB_Host_Shield_2.0/archive/master.zip>.
72 
73 Then uncompress the zip folder and rename the directory to "USB\_Host\_Shield\_20", as any special characters are not supported by the Arduino IDE.
74 
75 Now open up the Arduino IDE and open "File>Preferences". There you will see the location of your sketchbook. Open that directory and create a directory called "libraries" inside that directory.
76 Now move the "USB\_Host\_Shield\_20" directory to the "libraries" directory.
77 
78 The final structure should look like this:
79 
80 * Arduino/
81  * libraries/
82  * USB\_Host\_Shield\_20/
83 
84 Now quit the Arduino IDE and reopen it.
85 
86 Now you should be able to go open all the examples codes by navigating to "File>Examples>USB\_Host\_Shield\_20" and then select the example you will like to open.
87 
88 For more information visit the following sites: <http://arduino.cc/en/Guide/Libraries> and <https://learn.adafruit.com/adafruit-all-about-arduino-libraries-install-use>.
89 
90 # How to use the library
91 
92 ### Documentation
93 
94 Documentation for the library can be found at the following link: <https://felis.github.io/USB_Host_Shield_2.0/>.
95 
96 ### Enable debugging
97 
98 By default serial debugging is disabled. To turn it on simply change ```ENABLE_UHS_DEBUGGING``` to 1 in [settings.h](settings.h) like so:
99 
100 ```C++
101 #define ENABLE_UHS_DEBUGGING 1
102 ```
103 
104 ### Boards
105 
106 Currently the following boards are supported by the library:
107 
108 * All official Arduino AVR boards (Uno, Duemilanove, Mega, Mega 2560, Mega ADK, Leonardo etc.)
109 * Arduino Due, Intel Galileo, Intel Galileo 2, and Intel Edison
110  * Note that the Intel Galileo uses pin 2 and 3 as INT and SS pin respectively by default, so some modifications to the shield are needed. See the "Interface modifications" section in the [hardware manual](https://chome.nerpa.tech/usb-host-shield-hardware-manual) for more information.
111  * Note native USB host is not supported on any of these platforms. You will have to use the shield for now.
112 * Teensy (Teensy++ 1.0, Teensy 2.0, Teensy++ 2.0, Teensy 3.x, and Teensy LC)
113  * Note if you are using the Teensy 3.x you should download this SPI library as well: <https://github.com/xxxajk/spi4teensy3>. You should then add ```#include <spi4teensy3.h>``` to your .ino file.
114 * Balanduino
115 * Sanguino
116 * Black Widdow
117 * RedBearLab nRF51822
118 * Digilent chipKIT
119  * Please see: <https://chome.nerpa.tech/mcu/usb/running-usb-host-code-on-digilent-chipkit-board>.
120 * STM32F4
121  * Currently the [NUCLEO-F446RE](http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1847/PF262063) is supported featuring the STM32F446. Take a look at the following example code: <https://github.com/Lauszus/Nucleo_F446RE_USBHost>.
122 * ESP8266 is supported using the [ESP8266 Arduino core](https://github.com/esp8266/Arduino)
123  * Note it uses pin 15 and 5 for SS and INT respectively
124  * Also please be aware that:
125  * GPIO16 is **NOT** usable, as it will be used for some other purposes. For example, reset the SoC itself from sleep mode.
126  * GPIO6 to 11 is also **NOT** usable, as they are used to connect SPI flash chip and it is used for storing the executable binary content.
127 * ESP32 is supported using the [arduino-esp32](https://github.com/espressif/arduino-esp32/)
128  * GPIO5 : SS, GPIO17 : INT, GPIO18 : SCK, GPIO19 : MISO, GPIO23 : MOSI
129 
130 The following boards need to be activated manually in [settings.h](settings.h):
131 
132 * Arduino Mega ADK
133  * If you are using Arduino 1.5.5 or newer there is no need to activate the Arduino Mega ADK manually
134 * Black Widdow
135 
136 Simply set the corresponding value to 1 instead of 0.
137 
138 ### [Bluetooth libraries](BTD.cpp)
139 
140 The [BTD library](BTD.cpp) is a general purpose library for an ordinary Bluetooth dongle.
141 This library make it easy to add support for different Bluetooth services like a PS3 or a Wii controller or SPP which is a virtual serial port via Bluetooth.
142 Some different examples can be found in the [example directory](examples/Bluetooth).
143 
144 The BTD library also makes it possible to use multiple services at once, the following example sketch is an example of this:
145 [PS3SPP.ino](examples/Bluetooth/PS3SPP/PS3SPP.ino).
146 
147 ### [BTHID library](BTHID.cpp)
148 
149 The [Bluetooth HID library](BTHID.cpp) allows you to connect HID devices via Bluetooth to the USB Host Shield.
150 
151 Currently HID mice and keyboards are supported.
152 
153 It uses the standard Boot protocol by default, but it is also able to use the Report protocol as well. You would simply have to call ```setProtocolMode()``` and then parse ```HID_RPT_PROTOCOL``` as an argument. You will then have to modify the parser for your device. See the example: [BTHID.ino](examples/Bluetooth/BTHID/BTHID.ino) for more information.
154 
155 The [PS4 library](#ps4-library) also uses this class to handle all Bluetooth communication.
156 
157 For information see the following blog post: <http://blog.tkjelectronics.dk/2013/12/bluetooth-hid-devices-now-supported-by-the-usb-host-library/>.
158 
159 ### [SPP library](SPP.cpp)
160 
161 SPP stands for "Serial Port Profile" and is a Bluetooth protocol that implements a virtual comport which allows you to send data back and forth from your computer/phone to your Arduino via Bluetooth.
162 It has been tested successfully on Windows, Mac OS X, Linux, and Android.
163 
164 Take a look at the [SPP.ino](examples/Bluetooth/SPP/SPP.ino) example for more information.
165 
166 More information can be found at these blog posts:
167 
168 * <http://chome.nerpa.tech/mcu/bluetooth-rfcommspp-service-support-for-usb-host-2-0-library-released>
169 * <http://blog.tkjelectronics.dk/2012/07/rfcommspp-library-for-arduino/>
170 
171 To implement the SPP protocol I used a Bluetooth sniffing tool called [PacketLogger](http://www.tkjelectronics.com/uploads/PacketLogger.zip) developed by Apple.
172 It enables me to see the Bluetooth communication between my Mac and any device.
173 
174 ### PS4 Library
175 
176 The PS4BT library is split up into the [PS4BT](PS4BT.h) and the [PS4USB](PS4USB.h) library. These allow you to use the Sony PS4 controller via Bluetooth and USB.
177 
178 The [PS4BT.ino](examples/Bluetooth/PS4BT/PS4BT.ino) and [PS4USB.ino](examples/PS4USB/PS4USB.ino) examples shows how to easily read the buttons, joysticks, touchpad and IMU on the controller via Bluetooth and USB respectively. It is also possible to control the rumble and light on the controller and get the battery level.
179 
180 Before you can use the PS4 controller via Bluetooth you will need to pair with it.
181 
182 Simply create the PS4BT instance like so: ```PS4BT PS4(&Btd, PAIR);``` and then hold down the Share button and then hold down the PS without releasing the Share button. The PS4 controller will then start to blink rapidly indicating that it is in pairing mode.
183 
184 It should then automatically pair the dongle with your controller. This only have to be done once.
185 
186 For information see the following blog post: <http://blog.tkjelectronics.dk/2014/01/ps4-controller-now-supported-by-the-usb-host-library/>.
187 
188 Also check out this excellent Wiki by Frank Zhao about the PS4 controller: <http://eleccelerator.com/wiki/index.php?title=DualShock_4> and this Linux driver: <https://github.com/chrippa/ds4drv>.
189 
190 Several guides on how to use the PS4 library has been written by Dr. James E. Barger and are available at the following link: <https://sites.google.com/view/vbatc-engineeringtechnology2/control-system-tutorials/ps4-tutorials>.
191 
192 ### PS3 Library
193 
194 These libraries consist of the [PS3BT](PS3BT.cpp) and [PS3USB](PS3USB.cpp). These libraries allows you to use a Dualshock 3, Navigation or a Motion controller with the USB Host Shield both via Bluetooth and USB.
195 
196 In order to use your Playstation controller via Bluetooth you have to set the Bluetooth address of the dongle internally to your PS3 Controller. This can be achieved by first plugging in the Bluetooth dongle and wait a few seconds. Now plug in the controller via USB and wait until the LEDs start to flash. The library has now written the Bluetooth address of the dongle to the PS3 controller.
197 
198 Finally simply plug in the Bluetooth dongle again and press PS on the PS3 controller. After a few seconds it should be connected to the dongle and ready to use.
199 
200 __Note:__ You will have to plug in the Bluetooth dongle before connecting the controller, as the library needs to read the address of the dongle. Alternatively you could set it in code like so: [PS3BT.ino#L20](examples/Bluetooth/PS3BT/PS3BT.ino#L20).
201 
202 For more information about the PS3 protocol see the official wiki: <https://github.com/felis/USB_Host_Shield_2.0/wiki/PS3-Information>.
203 
204 Also take a look at the blog posts:
205 
206 * <http://blog.tkjelectronics.dk/2012/01/ps3-controller-bt-library-for-arduino/>
207 * <http://chome.nerpa.tech/mcu/sony-ps3-controller-support-added-to-usb-host-library>
208 * <http://chome.nerpa.tech/mcu/arduino/interfacing-ps3-controllers-via-usb>
209 
210 A special thanks go to the following people:
211 
212 1. _Richard Ibbotson_ who made this excellent guide: <http://chome.nerpa.tech/mcu/ps3-and-wiimote-game-controllers-on-the-arduino-host-shield-part>
213 2. _Tomoyuki Tanaka_ for releasing his code for the Arduino USB Host shield connected to the wiimote: <http://chome.nerpa.tech/mcu/rc-car-controlled-by-wii-remote-on-arduino>
214 
215 Also a big thanks all the people behind these sites about the Motion controller:
216 
217 * <http://thp.io/2010/psmove/>
218 * <http://www.copenhagengamecollective.org/unimove/>
219 * <https://github.com/thp/psmoveapi>
220 * <http://code.google.com/p/moveonpc/>
221 
222 ### Xbox Libraries
223 
224 The library supports both the original Xbox controller via USB and the Xbox 360 controller both via USB and wirelessly.
225 
226 #### Xbox library
227 
228 The [XBOXOLD](XBOXOLD.cpp) class implements support for the original Xbox controller via USB.
229 
230 All the information are from the following sites:
231 
232 * <https://github.com/torvalds/linux/blob/master/Documentation/input/xpad.txt>
233 * <https://github.com/torvalds/linux/blob/master/drivers/input/joystick/xpad.c>
234 * <http://euc.jp/periphs/xbox-controller.ja.html>
235 * <https://github.com/Grumbel/xboxdrv/blob/master/PROTOCOL#L15>
236 
237 #### Xbox 360 Library
238 
239 The library support one Xbox 360 via USB or up to four Xbox 360 controllers wirelessly by using a [Xbox 360 wireless receiver](http://blog.tkjelectronics.dk/wp-content/uploads/xbox360-wireless-receiver.jpg).
240 
241 To use it via USB use the [XBOXUSB](XBOXUSB.cpp) library or to use it wirelessly use the [XBOXRECV](XBOXRECV.cpp) library.
242 
243 __Note that a Wireless controller can NOT be used via USB!__
244 
245 Examples code can be found in the [examples directory](examples/Xbox).
246 
247 Also see the following blog posts:
248 
249 * <http://chome.nerpa.tech/mcu/xbox360-controller-support-added-to-usb-host-shield-2-0-library>
250 * <http://blog.tkjelectronics.dk/2012/07/xbox-360-controller-support-added-to-the-usb-host-library/>
251 * <http://blog.tkjelectronics.dk/2012/12/xbox-360-receiver-added-to-the-usb-host-library/>
252 
253 All the information regarding the Xbox 360 controller protocol are form these sites:
254 
255 * <http://tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/UsbInfo>
256 * <http://tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/WirelessUsbInfo>
257 * <https://github.com/Grumbel/xboxdrv/blob/master/PROTOCOL>
258 
259 #### Xbox ONE Library
260 
261 A Xbox ONE controller is supported via USB in the [XBOXONE](XBOXONE.cpp) class. It is heavily based on the 360 library above. In addition to cross referencing the above, information on the protocol was found at:
262 
263 * <https://github.com/quantus/xbox-one-controller-protocol>
264 * <https://github.com/torvalds/linux/blob/master/drivers/input/joystick/xpad.c>
265 * <https://github.com/kylelemons/xbox/blob/master/xbox.go>
266 
267 #### Xbox ONE S Library
268 
269 A Xbox ONE controller is supported via Bluetooth in the [XBOXONESBT](XBOXONESBT.cpp) class.
270 
271 Special thanks to [HisashiKato](https://github.com/HisashiKato) for his help: <https://github.com/felis/USB_Host_Shield_2.0/issues/252#issuecomment-716912362>.
272 
273 ### [Wii library](Wii.cpp)
274 
275 The [Wii](Wii.cpp) library support the Wiimote, but also the Nunchuch and Motion Plus extensions via Bluetooth. The Wii U Pro Controller and Wii Balance Board are also supported via Bluetooth.
276 
277 First you have to pair with the controller, this is done automatically by the library if you create the instance like so:
278 
279 ```C++
280 WII Wii(&Btd, PAIR);
281 ```
282 
283 And then press 1 & 2 at once on the Wiimote or the SYNC buttons if you are using a Wii U Pro Controller or a Wii Balance Board.
284 
285 After that you can simply create the instance like so:
286 
287 ```C++
288 WII Wii(&Btd);
289 ```
290 
291 Then just press any button on the Wiimote and it will then connect to the dongle.
292 
293 Take a look at the example for more information: [Wii.ino](examples/Bluetooth/Wii/Wii.ino).
294 
295 Also take a look at the blog post:
296 
297 * <http://blog.tkjelectronics.dk/2012/08/wiimote-added-to-usb-host-library/>
298 
299 The Wii IR camera can also be used, but you will have to activate the code for it manually as it is quite large. Simply set ```ENABLE_WII_IR_CAMERA``` to 1 in [settings.h](settings.h).
300 
301 The [WiiIRCamera.ino](examples/Bluetooth/WiiIRCamera/WiiIRCamera.ino) example shows how it can be used.
302 
303 All the information about the Wii controllers are from these sites:
304 
305 * <http://wiibrew.org/wiki/Wiimote>
306 * <http://wiibrew.org/wiki/Wiimote/Extension_Controllers>
307 * <http://wiibrew.org/wiki/Wiimote/Extension_Controllers/Nunchuck>
308 * <http://wiibrew.org/wiki/Wiimote/Extension_Controllers/Wii_Motion_Plus>
309 * <http://wiibrew.org/wiki/Wii_Balance_Board>
310 * The old library created by _Tomoyuki Tanaka_: <https://github.com/moyuchin/WiiRemote_on_Arduino> also helped a lot.
311 
312 ### [PS Buzz Library](PSBuzz.cpp)
313 
314 This library implements support for the Playstation Buzz controllers via USB.
315 
316 It is essentially just a wrapper around the [HIDUniversal](hiduniversal.cpp) which takes care of the initializing and reading of the controllers. The [PSBuzz](PSBuzz.cpp) class simply inherits this and parses the data, so it is easy for users to read the buttons and turn the big red button on the controllers on and off.
317 
318 The example [PSBuzz.ino](examples/PSBuzz/PSBuzz.ino) shows how one can do this with just a few lines of code.
319 
320 More information about the controller can be found at the following sites:
321 
322 * http://www.developerfusion.com/article/84338/making-usb-c-friendly/
323 * https://github.com/torvalds/linux/blob/master/drivers/hid/hid-sony.c
324 
325 ### HID Libraries
326 
327 HID devices are also supported by the library. However these require you to write your own driver. A few example are provided in the [examples/HID](examples/HID) directory. Including an example for the [SteelSeries SRW-S1 Steering Wheel](examples/HID/SRWS1/SRWS1.ino).
328 
329 ### [MIDI Library](usbh_midi.cpp)
330 
331 The library support MIDI devices.
332 You can convert USB MIDI keyboard to legacy serial MIDI.
333 
334 * [USB_MIDI_converter.ino](examples/USBH_MIDI/USB_MIDI_converter/USB_MIDI_converter.ino)
335 * [USB_MIDI_converter_multi.ino](examples/USBH_MIDI/USB_MIDI_converter_multi/USB_MIDI_converter_multi.ino)
336 
337 For information see the following page: <http://yuuichiakagawa.github.io/USBH_MIDI/>.
338 
339 # Interface modifications
340 
341 The shield is using SPI for communicating with the MAX3421E USB host controller. It uses the SCK, MISO and MOSI pins via the ICSP on your board.
342 
343 Note this means that it uses pin 13, 12, 11 on an Arduino Uno, so these pins can not be used for anything else than SPI communication!
344 
345 Furthermore it uses one pin as SS and one INT pin. These are by default located on pin 10 and 9 respectively. They can easily be reconfigured in case you need to use them for something else by cutting the jumper on the shield and then solder a wire from the pad to the new pin.
346 
347 After that you need modify the following entry in [UsbCore.h](UsbCore.h):
348 
349 ```C++
350 typedef MAX3421e<P10, P9> MAX3421E;
351 ```
352 
353 For instance if you have rerouted SS to pin 7 it should read:
354 
355 ```C++
356 typedef MAX3421e<P7, P9> MAX3421E;
357 ```
358 
359 See the "Interface modifications" section in the [hardware manual](https://chome.nerpa.tech/usb-host-shield-hardware-manual) for more information.
360 
361 # FAQ
362 
363 > When I plug my device into the USB connector nothing happens?
364 
365 * Try to connect a external power supply to the Arduino - this solves the problem in most cases.
366 * You can also use a powered hub between the device and the USB Host Shield. You should then include the USB hub library: ```#include <usbhub.h>``` and create the instance like so: ```USBHub Hub1(&Usb);```.
367 
368 > When I connecting my PS3 controller I get a output like this:
369 
370 ```
371 Dualshock 3 Controller Enabled
372 
373 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
374 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
375 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
376 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
377 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
378 ```
379 
380 * This means that your dongle does not support 2.0+EDR, so you will need another dongle. Please see the following [list](https://github.com/felis/USB_Host_Shield_2.0/wiki/Bluetooth-dongles) for tested working dongles.
381 
382 > When compiling I am getting the following error: "fatal error: SPI.h: No such file or directory".
383 
384 * Please make sure to include the SPI library like so: ```#include <SPI.h>``` in your .ino file.
+Go to the documentation of this file.
1 # USB Host Library Rev. 2.0
2 
3 The code is released under the GNU General Public License.
4 __________
5 [![](https://github.com/felis/USB_Host_Shield_2.0/workflows/CI/badge.svg)](https://github.com/felis/USB_Host_Shield_2.0/actions?query=branch%3Amaster)
6 
7 # Summary
8 This is Revision 2.0 of MAX3421E-based USB Host Shield Library for AVR's.
9 
10 Project main web site is: <https://chome.nerpa.tech/arduino_usb_host_shield_projects/>.
11 
12 Some information can also be found at: <http://blog.tkjelectronics.dk/>.
13 
14 The shield can be purchased from [TKJ Electronics](http://tkjelectronics.com/): <http://shop.tkjelectronics.dk/product_info.php?products_id=43>.
15 
16 ![USB Host Shield](http://shop.tkjelectronics.dk/images/USB_Host_Shield1.jpg)
17 
18 For more information about the hardware see the [Hardware Manual](https://chome.nerpa.tech/usb-host-shield-hardware-manual/).
19 
20 # Developed By
21 
22 * __Oleg Mazurov__ - <mazurov@gmail.com>
23 * __Alexei Glushchenko__ - <alex-gl@mail.ru>
24  * Developers of the USB Core, HID, FTDI, ADK, ACM, and PL2303 libraries
25 * __Kristian Sloth Lauszus__ - <lauszus@gmail.com>
26  * Developer of the [BTD](#bluetooth-libraries), [BTHID](#bthid-library), [SPP](#spp-library), [PS4](#ps4-library), [PS3](#ps3-library), [Wii](#wii-library), [Xbox](#xbox-library), and [PSBuzz](#ps-buzz-library) libraries
27 * __Andrew Kroll__ - <xxxajk@gmail.com>
28  * Major contributor to mass storage code
29 * __guruthree__
30  * [Xbox ONE](#xbox-one-library) controller support
31 * __Yuuichi Akagawa__ - [\@YuuichiAkagawa](https://twitter.com/yuuichiakagawa)
32  * Developer of the [MIDI](#midi-library) library
33 
34 
35 # Table of Contents
36 
37 * [How to include the library](#how-to-include-the-library)
38  * [Arduino Library Manager](#arduino-library-manager)
39  * [Manual installation](#manual-installation)
40 * [How to use the library](#how-to-use-the-library)
41  * [Documentation](#documentation)
42  * [Enable debugging](#enable-debugging)
43  * [Boards](#boards)
44  * [Bluetooth libraries](#bluetooth-libraries)
45  * [BTHID library](#bthid-library)
46  * [SPP library](#spp-library)
47  * [PS4 Library](#ps4-library)
48  * [PS3 Library](#ps3-library)
49  * [Xbox Libraries](#xbox-libraries)
50  * [Xbox library](#xbox-library)
51  * [Xbox 360 Library](#xbox-360-library)
52  * [Xbox ONE Library](#xbox-one-library)
53  * [Xbox ONE S Library](#xbox-one-s-library)
54  * [Wii library](#wii-library)
55  * [PS Buzz Library](#ps-buzz-library)
56  * [HID Libraries](#hid-libraries)
57  * [MIDI Library](#midi-library)
58 * [Interface modifications](#interface-modifications)
59 * [FAQ](#faq)
60 
61 # How to include the library
62 
63 ### Arduino Library Manager
64 
65 First install Arduino IDE version 1.6.2 or newer, then simply use the Arduino Library Manager to install the library.
66 
67 Please see the following page for instructions: <http://www.arduino.cc/en/Guide/Libraries#toc3>.
68 
69 ### Manual installation
70 
71 First download the library by clicking on the following link: <https://github.com/felis/USB_Host_Shield_2.0/archive/master.zip>.
72 
73 Then uncompress the zip folder and rename the directory to "USB\_Host\_Shield\_20", as any special characters are not supported by the Arduino IDE.
74 
75 Now open up the Arduino IDE and open "File>Preferences". There you will see the location of your sketchbook. Open that directory and create a directory called "libraries" inside that directory.
76 Now move the "USB\_Host\_Shield\_20" directory to the "libraries" directory.
77 
78 The final structure should look like this:
79 
80 * Arduino/
81  * libraries/
82  * USB\_Host\_Shield\_20/
83 
84 Now quit the Arduino IDE and reopen it.
85 
86 Now you should be able to go open all the examples codes by navigating to "File>Examples>USB\_Host\_Shield\_20" and then select the example you will like to open.
87 
88 For more information visit the following sites: <http://arduino.cc/en/Guide/Libraries> and <https://learn.adafruit.com/adafruit-all-about-arduino-libraries-install-use>.
89 
90 # How to use the library
91 
92 ### Documentation
93 
94 Documentation for the library can be found at the following link: <https://felis.github.io/USB_Host_Shield_2.0/>.
95 
96 ### Enable debugging
97 
98 By default serial debugging is disabled. To turn it on simply change ```ENABLE_UHS_DEBUGGING``` to 1 in [settings.h](settings.h) like so:
99 
100 ```C++
101 #define ENABLE_UHS_DEBUGGING 1
102 ```
103 
104 ### Boards
105 
106 Currently the following boards are supported by the library:
107 
108 * All official Arduino AVR boards (Uno, Duemilanove, Mega, Mega 2560, Mega ADK, Leonardo etc.)
109 * Arduino Due, Intel Galileo, Intel Galileo 2, and Intel Edison
110  * Note that the Intel Galileo uses pin 2 and 3 as INT and SS pin respectively by default, so some modifications to the shield are needed. See the "Interface modifications" section in the [hardware manual](https://chome.nerpa.tech/usb-host-shield-hardware-manual) for more information.
111  * Note native USB host is not supported on any of these platforms. You will have to use the shield for now.
112 * Teensy (Teensy++ 1.0, Teensy 2.0, Teensy++ 2.0, Teensy 3.x, Teensy LC and Teensy 4.x)
113  * Note if you are using the Teensy 3.x you should download this SPI library as well: <https://github.com/xxxajk/spi4teensy3>. You should then add ```#include <spi4teensy3.h>``` to your .ino file.
114 * Balanduino
115 * Sanguino
116 * Black Widdow
117 * RedBearLab nRF51822
118 * Digilent chipKIT
119  * Please see: <https://chome.nerpa.tech/mcu/usb/running-usb-host-code-on-digilent-chipkit-board>.
120 * STM32F4
121  * Currently the [NUCLEO-F446RE](http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1847/PF262063) is supported featuring the STM32F446. Take a look at the following example code: <https://github.com/Lauszus/Nucleo_F446RE_USBHost>.
122 * ESP8266 is supported using the [ESP8266 Arduino core](https://github.com/esp8266/Arduino)
123  * Note it uses pin 15 and 5 for SS and INT respectively
124  * Also please be aware that:
125  * GPIO16 is **NOT** usable, as it will be used for some other purposes. For example, reset the SoC itself from sleep mode.
126  * GPIO6 to 11 is also **NOT** usable, as they are used to connect SPI flash chip and it is used for storing the executable binary content.
127 * ESP32 is supported using the [arduino-esp32](https://github.com/espressif/arduino-esp32/)
128  * GPIO5 : SS, GPIO17 : INT, GPIO18 : SCK, GPIO19 : MISO, GPIO23 : MOSI
129 
130 The following boards need to be activated manually in [settings.h](settings.h):
131 
132 * Arduino Mega ADK
133  * If you are using Arduino 1.5.5 or newer there is no need to activate the Arduino Mega ADK manually
134 * Black Widdow
135 
136 Simply set the corresponding value to 1 instead of 0.
137 
138 ### [Bluetooth libraries](BTD.cpp)
139 
140 The [BTD library](BTD.cpp) is a general purpose library for an ordinary Bluetooth dongle.
141 This library make it easy to add support for different Bluetooth services like a PS3 or a Wii controller or SPP which is a virtual serial port via Bluetooth.
142 Some different examples can be found in the [example directory](examples/Bluetooth).
143 
144 The BTD library also makes it possible to use multiple services at once, the following example sketch is an example of this:
145 [PS3SPP.ino](examples/Bluetooth/PS3SPP/PS3SPP.ino).
146 
147 ### [BTHID library](BTHID.cpp)
148 
149 The [Bluetooth HID library](BTHID.cpp) allows you to connect HID devices via Bluetooth to the USB Host Shield.
150 
151 Currently HID mice and keyboards are supported.
152 
153 It uses the standard Boot protocol by default, but it is also able to use the Report protocol as well. You would simply have to call ```setProtocolMode()``` and then parse ```HID_RPT_PROTOCOL``` as an argument. You will then have to modify the parser for your device. See the example: [BTHID.ino](examples/Bluetooth/BTHID/BTHID.ino) for more information.
154 
155 The [PS4 library](#ps4-library) also uses this class to handle all Bluetooth communication.
156 
157 For information see the following blog post: <http://blog.tkjelectronics.dk/2013/12/bluetooth-hid-devices-now-supported-by-the-usb-host-library/>.
158 
159 ### [SPP library](SPP.cpp)
160 
161 SPP stands for "Serial Port Profile" and is a Bluetooth protocol that implements a virtual comport which allows you to send data back and forth from your computer/phone to your Arduino via Bluetooth.
162 It has been tested successfully on Windows, Mac OS X, Linux, and Android.
163 
164 Take a look at the [SPP.ino](examples/Bluetooth/SPP/SPP.ino) example for more information.
165 
166 More information can be found at these blog posts:
167 
168 * <http://chome.nerpa.tech/mcu/bluetooth-rfcommspp-service-support-for-usb-host-2-0-library-released>
169 * <http://blog.tkjelectronics.dk/2012/07/rfcommspp-library-for-arduino/>
170 
171 To implement the SPP protocol I used a Bluetooth sniffing tool called [PacketLogger](http://www.tkjelectronics.com/uploads/PacketLogger.zip) developed by Apple.
172 It enables me to see the Bluetooth communication between my Mac and any device.
173 
174 ### PS4 Library
175 
176 The PS4BT library is split up into the [PS4BT](PS4BT.h) and the [PS4USB](PS4USB.h) library. These allow you to use the Sony PS4 controller via Bluetooth and USB.
177 
178 The [PS4BT.ino](examples/Bluetooth/PS4BT/PS4BT.ino) and [PS4USB.ino](examples/PS4USB/PS4USB.ino) examples shows how to easily read the buttons, joysticks, touchpad and IMU on the controller via Bluetooth and USB respectively. It is also possible to control the rumble and light on the controller and get the battery level.
179 
180 Before you can use the PS4 controller via Bluetooth you will need to pair with it.
181 
182 Simply create the PS4BT instance like so: ```PS4BT PS4(&Btd, PAIR);``` and then hold down the Share button and then hold down the PS without releasing the Share button. The PS4 controller will then start to blink rapidly indicating that it is in pairing mode.
183 
184 It should then automatically pair the dongle with your controller. This only have to be done once.
185 
186 For information see the following blog post: <http://blog.tkjelectronics.dk/2014/01/ps4-controller-now-supported-by-the-usb-host-library/>.
187 
188 Also check out this excellent Wiki by Frank Zhao about the PS4 controller: <http://eleccelerator.com/wiki/index.php?title=DualShock_4> and this Linux driver: <https://github.com/chrippa/ds4drv>.
189 
190 Several guides on how to use the PS4 library has been written by Dr. James E. Barger and are available at the following link: <https://sites.google.com/view/vbatc-engineeringtechnology2/control-system-tutorials/ps4-tutorials>.
191 
192 ### PS3 Library
193 
194 These libraries consist of the [PS3BT](PS3BT.cpp) and [PS3USB](PS3USB.cpp). These libraries allows you to use a Dualshock 3, Navigation or a Motion controller with the USB Host Shield both via Bluetooth and USB.
195 
196 In order to use your Playstation controller via Bluetooth you have to set the Bluetooth address of the dongle internally to your PS3 Controller. This can be achieved by first plugging in the Bluetooth dongle and wait a few seconds. Now plug in the controller via USB and wait until the LEDs start to flash. The library has now written the Bluetooth address of the dongle to the PS3 controller.
197 
198 Finally simply plug in the Bluetooth dongle again and press PS on the PS3 controller. After a few seconds it should be connected to the dongle and ready to use.
199 
200 __Note:__ You will have to plug in the Bluetooth dongle before connecting the controller, as the library needs to read the address of the dongle. Alternatively you could set it in code like so: [PS3BT.ino#L20](examples/Bluetooth/PS3BT/PS3BT.ino#L20).
201 
202 For more information about the PS3 protocol see the official wiki: <https://github.com/felis/USB_Host_Shield_2.0/wiki/PS3-Information>.
203 
204 Also take a look at the blog posts:
205 
206 * <http://blog.tkjelectronics.dk/2012/01/ps3-controller-bt-library-for-arduino/>
207 * <http://chome.nerpa.tech/mcu/sony-ps3-controller-support-added-to-usb-host-library>
208 * <http://chome.nerpa.tech/mcu/arduino/interfacing-ps3-controllers-via-usb>
209 
210 A special thanks go to the following people:
211 
212 1. _Richard Ibbotson_ who made this excellent guide: <http://chome.nerpa.tech/mcu/ps3-and-wiimote-game-controllers-on-the-arduino-host-shield-part>
213 2. _Tomoyuki Tanaka_ for releasing his code for the Arduino USB Host shield connected to the wiimote: <http://chome.nerpa.tech/mcu/rc-car-controlled-by-wii-remote-on-arduino>
214 
215 Also a big thanks all the people behind these sites about the Motion controller:
216 
217 * <http://thp.io/2010/psmove/>
218 * <http://www.copenhagengamecollective.org/unimove/>
219 * <https://github.com/thp/psmoveapi>
220 * <http://code.google.com/p/moveonpc/>
221 
222 ### Xbox Libraries
223 
224 The library supports both the original Xbox controller via USB and the Xbox 360 controller both via USB and wirelessly.
225 
226 #### Xbox library
227 
228 The [XBOXOLD](XBOXOLD.cpp) class implements support for the original Xbox controller via USB.
229 
230 All the information are from the following sites:
231 
232 * <https://github.com/torvalds/linux/blob/master/Documentation/input/xpad.txt>
233 * <https://github.com/torvalds/linux/blob/master/drivers/input/joystick/xpad.c>
234 * <http://euc.jp/periphs/xbox-controller.ja.html>
235 * <https://github.com/Grumbel/xboxdrv/blob/master/PROTOCOL#L15>
236 
237 #### Xbox 360 Library
238 
239 The library support one Xbox 360 via USB or up to four Xbox 360 controllers wirelessly by using a [Xbox 360 wireless receiver](http://blog.tkjelectronics.dk/wp-content/uploads/xbox360-wireless-receiver.jpg).
240 
241 To use it via USB use the [XBOXUSB](XBOXUSB.cpp) library or to use it wirelessly use the [XBOXRECV](XBOXRECV.cpp) library.
242 
243 __Note that a Wireless controller can NOT be used via USB!__
244 
245 Examples code can be found in the [examples directory](examples/Xbox).
246 
247 Also see the following blog posts:
248 
249 * <http://chome.nerpa.tech/mcu/xbox360-controller-support-added-to-usb-host-shield-2-0-library>
250 * <http://blog.tkjelectronics.dk/2012/07/xbox-360-controller-support-added-to-the-usb-host-library/>
251 * <http://blog.tkjelectronics.dk/2012/12/xbox-360-receiver-added-to-the-usb-host-library/>
252 
253 All the information regarding the Xbox 360 controller protocol are form these sites:
254 
255 * <http://tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/UsbInfo>
256 * <http://tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/WirelessUsbInfo>
257 * <https://github.com/Grumbel/xboxdrv/blob/master/PROTOCOL>
258 
259 #### Xbox ONE Library
260 
261 A Xbox ONE controller is supported via USB in the [XBOXONE](XBOXONE.cpp) class. It is heavily based on the 360 library above. In addition to cross referencing the above, information on the protocol was found at:
262 
263 * <https://github.com/quantus/xbox-one-controller-protocol>
264 * <https://github.com/torvalds/linux/blob/master/drivers/input/joystick/xpad.c>
265 * <https://github.com/kylelemons/xbox/blob/master/xbox.go>
266 
267 #### Xbox ONE S Library
268 
269 A Xbox ONE controller is supported via Bluetooth in the [XBOXONESBT](XBOXONESBT.cpp) class.
270 
271 Special thanks to [HisashiKato](https://github.com/HisashiKato) for his help: <https://github.com/felis/USB_Host_Shield_2.0/issues/252#issuecomment-716912362>.
272 
273 ### [Wii library](Wii.cpp)
274 
275 The [Wii](Wii.cpp) library support the Wiimote, but also the Nunchuch and Motion Plus extensions via Bluetooth. The Wii U Pro Controller and Wii Balance Board are also supported via Bluetooth.
276 
277 First you have to pair with the controller, this is done automatically by the library if you create the instance like so:
278 
279 ```C++
280 WII Wii(&Btd, PAIR);
281 ```
282 
283 And then press 1 & 2 at once on the Wiimote or the SYNC buttons if you are using a Wii U Pro Controller or a Wii Balance Board.
284 
285 After that you can simply create the instance like so:
286 
287 ```C++
288 WII Wii(&Btd);
289 ```
290 
291 Then just press any button on the Wiimote and it will then connect to the dongle.
292 
293 Take a look at the example for more information: [Wii.ino](examples/Bluetooth/Wii/Wii.ino).
294 
295 Also take a look at the blog post:
296 
297 * <http://blog.tkjelectronics.dk/2012/08/wiimote-added-to-usb-host-library/>
298 
299 The Wii IR camera can also be used, but you will have to activate the code for it manually as it is quite large. Simply set ```ENABLE_WII_IR_CAMERA``` to 1 in [settings.h](settings.h).
300 
301 The [WiiIRCamera.ino](examples/Bluetooth/WiiIRCamera/WiiIRCamera.ino) example shows how it can be used.
302 
303 All the information about the Wii controllers are from these sites:
304 
305 * <http://wiibrew.org/wiki/Wiimote>
306 * <http://wiibrew.org/wiki/Wiimote/Extension_Controllers>
307 * <http://wiibrew.org/wiki/Wiimote/Extension_Controllers/Nunchuck>
308 * <http://wiibrew.org/wiki/Wiimote/Extension_Controllers/Wii_Motion_Plus>
309 * <http://wiibrew.org/wiki/Wii_Balance_Board>
310 * The old library created by _Tomoyuki Tanaka_: <https://github.com/moyuchin/WiiRemote_on_Arduino> also helped a lot.
311 
312 ### [PS Buzz Library](PSBuzz.cpp)
313 
314 This library implements support for the Playstation Buzz controllers via USB.
315 
316 It is essentially just a wrapper around the [HIDUniversal](hiduniversal.cpp) which takes care of the initializing and reading of the controllers. The [PSBuzz](PSBuzz.cpp) class simply inherits this and parses the data, so it is easy for users to read the buttons and turn the big red button on the controllers on and off.
317 
318 The example [PSBuzz.ino](examples/PSBuzz/PSBuzz.ino) shows how one can do this with just a few lines of code.
319 
320 More information about the controller can be found at the following sites:
321 
322 * http://www.developerfusion.com/article/84338/making-usb-c-friendly/
323 * https://github.com/torvalds/linux/blob/master/drivers/hid/hid-sony.c
324 
325 ### HID Libraries
326 
327 HID devices are also supported by the library. However these require you to write your own driver. A few example are provided in the [examples/HID](examples/HID) directory. Including an example for the [SteelSeries SRW-S1 Steering Wheel](examples/HID/SRWS1/SRWS1.ino).
328 
329 ### [MIDI Library](usbh_midi.cpp)
330 
331 The library support MIDI devices.
332 You can convert USB MIDI keyboard to legacy serial MIDI.
333 
334 * [USB_MIDI_converter.ino](examples/USBH_MIDI/USB_MIDI_converter/USB_MIDI_converter.ino)
335 * [USB_MIDI_converter_multi.ino](examples/USBH_MIDI/USB_MIDI_converter_multi/USB_MIDI_converter_multi.ino)
336 
337 For information see the following page: <http://yuuichiakagawa.github.io/USBH_MIDI/>.
338 
339 # Interface modifications
340 
341 The shield is using SPI for communicating with the MAX3421E USB host controller. It uses the SCK, MISO and MOSI pins via the ICSP on your board.
342 
343 Note this means that it uses pin 13, 12, 11 on an Arduino Uno, so these pins can not be used for anything else than SPI communication!
344 
345 Furthermore it uses one pin as SS and one INT pin. These are by default located on pin 10 and 9 respectively. They can easily be reconfigured in case you need to use them for something else by cutting the jumper on the shield and then solder a wire from the pad to the new pin.
346 
347 After that you need modify the following entry in [UsbCore.h](UsbCore.h):
348 
349 ```C++
350 typedef MAX3421e<P10, P9> MAX3421E;
351 ```
352 
353 For instance if you have rerouted SS to pin 7 it should read:
354 
355 ```C++
356 typedef MAX3421e<P7, P9> MAX3421E;
357 ```
358 
359 See the "Interface modifications" section in the [hardware manual](https://chome.nerpa.tech/usb-host-shield-hardware-manual) for more information.
360 
361 # FAQ
362 
363 > When I plug my device into the USB connector nothing happens?
364 
365 * Try to connect a external power supply to the Arduino - this solves the problem in most cases.
366 * You can also use a powered hub between the device and the USB Host Shield. You should then include the USB hub library: ```#include <usbhub.h>``` and create the instance like so: ```USBHub Hub1(&Usb);```.
367 
368 > When I connecting my PS3 controller I get a output like this:
369 
370 ```
371 Dualshock 3 Controller Enabled
372 
373 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
374 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
375 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
376 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
377 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
378 ```
379 
380 * This means that your dongle does not support 2.0+EDR, so you will need another dongle. Please see the following [list](https://github.com/felis/USB_Host_Shield_2.0/wiki/Bluetooth-dongles) for tested working dongles.
381 
382 > When compiling I am getting the following error: "fatal error: SPI.h: No such file or directory".
383 
384 * Please make sure to include the SPI library like so: ```#include <SPI.h>``` in your .ino file.
diff --git a/_s_p_p_8cpp.html b/_s_p_p_8cpp.html index 0fe47026..b81e24ee 100644 --- a/_s_p_p_8cpp.html +++ b/_s_p_p_8cpp.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: SPP.cpp File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + +
- - - - - + + + + +
@@ -110,7 +87,9 @@ Variables  

Variable Documentation

- + +

◆ rfcomm_crc_table

+
@@ -120,7 +99,7 @@ Variables
Initial value:
= {
0x00, 0x91, 0xE3, 0x72, 0x07, 0x96, 0xE4, 0x75, 0x0E, 0x9F, 0xED, 0x7C, 0x09, 0x98, 0xEA, 0x7B,
0x1C, 0x8D, 0xFF, 0x6E, 0x1B, 0x8A, 0xF8, 0x69, 0x12, 0x83, 0xF1, 0x60, 0x15, 0x84, 0xF6, 0x67,
0x38, 0xA9, 0xDB, 0x4A, 0x3F, 0xAE, 0xDC, 0x4D, 0x36, 0xA7, 0xD5, 0x44, 0x31, 0xA0, 0xD2, 0x43,
0x24, 0xB5, 0xC7, 0x56, 0x23, 0xB2, 0xC0, 0x51, 0x2A, 0xBB, 0xC9, 0x58, 0x2D, 0xBC, 0xCE, 0x5F,
0x70, 0xE1, 0x93, 0x02, 0x77, 0xE6, 0x94, 0x05, 0x7E, 0xEF, 0x9D, 0x0C, 0x79, 0xE8, 0x9A, 0x0B,
0x6C, 0xFD, 0x8F, 0x1E, 0x6B, 0xFA, 0x88, 0x19, 0x62, 0xF3, 0x81, 0x10, 0x65, 0xF4, 0x86, 0x17,
0x48, 0xD9, 0xAB, 0x3A, 0x4F, 0xDE, 0xAC, 0x3D, 0x46, 0xD7, 0xA5, 0x34, 0x41, 0xD0, 0xA2, 0x33,
0x54, 0xC5, 0xB7, 0x26, 0x53, 0xC2, 0xB0, 0x21, 0x5A, 0xCB, 0xB9, 0x28, 0x5D, 0xCC, 0xBE, 0x2F,
0xE0, 0x71, 0x03, 0x92, 0xE7, 0x76, 0x04, 0x95, 0xEE, 0x7F, 0x0D, 0x9C, 0xE9, 0x78, 0x0A, 0x9B,
0xFC, 0x6D, 0x1F, 0x8E, 0xFB, 0x6A, 0x18, 0x89, 0xF2, 0x63, 0x11, 0x80, 0xF5, 0x64, 0x16, 0x87,
0xD8, 0x49, 0x3B, 0xAA, 0xDF, 0x4E, 0x3C, 0xAD, 0xD6, 0x47, 0x35, 0xA4, 0xD1, 0x40, 0x32, 0xA3,
0xC4, 0x55, 0x27, 0xB6, 0xC3, 0x52, 0x20, 0xB1, 0xCA, 0x5B, 0x29, 0xB8, 0xCD, 0x5C, 0x2E, 0xBF,
0x90, 0x01, 0x73, 0xE2, 0x97, 0x06, 0x74, 0xE5, 0x9E, 0x0F, 0x7D, 0xEC, 0x99, 0x08, 0x7A, 0xEB,
0x8C, 0x1D, 0x6F, 0xFE, 0x8B, 0x1A, 0x68, 0xF9, 0x82, 0x13, 0x61, 0xF0, 0x85, 0x14, 0x66, 0xF7,
0xA8, 0x39, 0x4B, 0xDA, 0xAF, 0x3E, 0x4C, 0xDD, 0xA6, 0x37, 0x45, 0xD4, 0xA1, 0x30, 0x42, 0xD3,
0xB4, 0x25, 0x57, 0xC6, 0xB3, 0x22, 0x50, 0xC1, 0xBA, 0x2B, 0x59, 0xC8, 0xBD, 0x2C, 0x5E, 0xCF
}
-

Definition at line 26 of file SPP.cpp.

+

Definition at line 26 of file SPP.cpp.

@@ -129,7 +108,7 @@ Variables diff --git a/_s_p_p_8cpp__incl.map b/_s_p_p_8cpp__incl.map index 1406ed7c..730fd7c1 100644 --- a/_s_p_p_8cpp__incl.map +++ b/_s_p_p_8cpp__incl.map @@ -1,7 +1,7 @@ - - - - - + + + + + diff --git a/_s_p_p_8cpp__incl.md5 b/_s_p_p_8cpp__incl.md5 index 2e490ec2..48f872c1 100644 --- a/_s_p_p_8cpp__incl.md5 +++ b/_s_p_p_8cpp__incl.md5 @@ -1 +1 @@ -13ec96c550e18a5b87013a932cc6a9c2 \ No newline at end of file +b9aa79f21f664e4fd1d522234b09e828 \ No newline at end of file diff --git a/_s_p_p_8cpp__incl.png b/_s_p_p_8cpp__incl.png index 1ec1f2318fc4cc52efeb644555630a4c0551e5ca..a1d722f1b59421ff68a6825e7171c4704c9458a9 100644 GIT binary patch literal 12947 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 XE0qL{=o-L(nLy;8Jx7)yjNbhp4L7CT literal 12773 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 F{|~Z)SjYeX diff --git a/_s_p_p_8cpp_source.html b/_s_p_p_8cpp_source.html index e0103e02..182b948f 100644 --- a/_s_p_p_8cpp_source.html +++ b/_s_p_p_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: SPP.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - + + +
@@ -106,7 +83,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -143,7 +120,9 @@ Macros  

Macro Definition Documentation

- + +

◆ RFCOMM_SABM

+
@@ -153,11 +132,13 @@ Macros
-

Definition at line 24 of file SPP.h.

+

Definition at line 24 of file SPP.h.

- + +

◆ RFCOMM_UA

+
@@ -167,11 +148,13 @@ Macros
-

Definition at line 25 of file SPP.h.

+

Definition at line 25 of file SPP.h.

- + +

◆ RFCOMM_UIH

+
@@ -181,11 +164,13 @@ Macros
-

Definition at line 26 of file SPP.h.

+

Definition at line 26 of file SPP.h.

- + +

◆ RFCOMM_DISC

+
@@ -195,11 +180,13 @@ Macros
-

Definition at line 28 of file SPP.h.

+

Definition at line 28 of file SPP.h.

- + +

◆ extendAddress

+
@@ -209,11 +196,13 @@ Macros
-

Definition at line 30 of file SPP.h.

+

Definition at line 30 of file SPP.h.

- + +

◆ BT_RFCOMM_PN_CMD

+
@@ -223,11 +212,13 @@ Macros
-

Definition at line 33 of file SPP.h.

+

Definition at line 33 of file SPP.h.

- + +

◆ BT_RFCOMM_PN_RSP

+
@@ -237,11 +228,13 @@ Macros
-

Definition at line 34 of file SPP.h.

+

Definition at line 34 of file SPP.h.

- + +

◆ BT_RFCOMM_MSC_CMD

+
@@ -251,11 +244,13 @@ Macros
-

Definition at line 35 of file SPP.h.

+

Definition at line 35 of file SPP.h.

- + +

◆ BT_RFCOMM_MSC_RSP

+
@@ -265,11 +260,13 @@ Macros
-

Definition at line 36 of file SPP.h.

+

Definition at line 36 of file SPP.h.

- + +

◆ BT_RFCOMM_RPN_CMD

+
@@ -279,11 +276,13 @@ Macros
-

Definition at line 37 of file SPP.h.

+

Definition at line 37 of file SPP.h.

- + +

◆ BT_RFCOMM_RPN_RSP

+
@@ -293,7 +292,7 @@ Macros
-

Definition at line 38 of file SPP.h.

+

Definition at line 38 of file SPP.h.

@@ -302,7 +301,7 @@ Macros diff --git a/_s_p_p_8h__dep__incl.map b/_s_p_p_8h__dep__incl.map index 3133729f..80494747 100644 --- a/_s_p_p_8h__dep__incl.map +++ b/_s_p_p_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/_s_p_p_8h__dep__incl.md5 b/_s_p_p_8h__dep__incl.md5 index c4196b87..026dbd27 100644 --- a/_s_p_p_8h__dep__incl.md5 +++ b/_s_p_p_8h__dep__incl.md5 @@ -1 +1 @@ -8fa503e9bcede23521cf22418b0e794e \ No newline at end of file +f36e77e58f6fed5fcd04ea59c72b0abb \ No newline at end of file diff --git a/_s_p_p_8h__dep__incl.png b/_s_p_p_8h__dep__incl.png index 78a4adfd80868fa64ca15a251428258f0368fd32..2314f08e6c98560bb3cf722d442f5e493b91a6d4 100644 GIT binary patch literal 1917 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 L))~=YgH8D-Zt2l! diff --git a/_s_p_p_8h__incl.map b/_s_p_p_8h__incl.map index 93d857c5..c5d0a4d9 100644 --- a/_s_p_p_8h__incl.map +++ b/_s_p_p_8h__incl.map @@ -1,6 +1,6 @@ - - - + + + diff --git a/_s_p_p_8h__incl.md5 b/_s_p_p_8h__incl.md5 index f139a88d..39ec78f3 100644 --- a/_s_p_p_8h__incl.md5 +++ b/_s_p_p_8h__incl.md5 @@ -1 +1 @@ -ebaf4a19e87d528fa81f6393cdd2bc87 \ No newline at end of file +a91a331bec3537c7a4cb45239da270de \ No newline at end of file diff --git a/_s_p_p_8h__incl.png b/_s_p_p_8h__incl.png index d35d49e02b97b4f9de4d789696f44226bf260329..a91bfa274f1a626b387653f943db36eb7a465061 100644 GIT binary patch literal 10332 zcmch-Wn2}}*ET$q=@JkW5DwkajYuQi&7r%LgLI2Dh;(;JgGhISfQRnxc*pyG ze$Vs2-}w3tAI{94VehqP_P*A&uC+o{l%ye8q*wp|KxAbkRKed406*^Dx<5RM#K$;>P&<9XXXQhEKf|nNBUDse ztY#kIlZ9y5y_UTuQY;M><&yO&nAi zj?-Hc+c12Y-#+FHfg`7@RDFYM_nwTc9{zta$>?OCQsYBcVEaJlh8XF)Q8X(IG2$OI zsCs+zZGA&SOLcZ+nq{Lj0s^Tv#5b%XmIdFx|J^Nb^E>V#Zan#gY;A2#Dd^E&OYBS9 zJe7BcyH14(6^Nh^m_GUz9xng!<6_)P`JXK<&23W|l_tHELSB<2BO`GR zpH`6Np*1GGxXB82Ruc?tY~@u|Rp|om!k#CleQ_@*mqvtd2WMuI==*MNZd$xATOS{8 z1>6syp4djsTB=EUZGOHFch{?{tM>NxFc>VHn61_GG;g&`>$RJ^`{7Kvfu-eEk$UmL zQuEB>qU{M$r(30jI4dhFA0MA}ZHgBeG4bV;rooH)VFVIz=H(l0e}6Wie7Z4|%I|9J z<<*3CK%@2RDWue(t+k+l>D8<4CHG|^zqb zV{vg&$ot~w>97Dg9;I5L8j;5rLqhqJ?5(XWa0YU@<5YfEtEmpHbKuo{tqtVWDVf91 zh#XXxl5?{lP(fJy6G8TzVrSyY=dE%DOQQXYpt}_J!uUM4LP~~^?@Wl zmx6p1XOYpJXSiYrv;W(|k@=666do)5i$$}n;sCzB*yf)JE=_(ZXm_{M8{uVj>LV*F zPt+xjAZK>E~u&Oxiolqo8_%ddIrn37MIXT%wV@C>Q=Q)las_G z%%mM03R7l2!iR~P@M8}x-PE#EkvLRNa~z`rOVk1OZ+MEC!fN@PPPR~>eL)v$tHtgt zNjLjh3<7ztgp|%q8j1eP%yQVuT0f%*@(eyq#+LW zx2uwFM1p~PK=pim;D5Cm8R-)c2=5oa5fFGVc;E;cdq?oP%YzCrnB3+0b6I|D`^)yk z`|uLYjs|$1GL;;D_e7_MmaT1j01~AFahM_DFRrysMoJF)FTGs=AV|sWyy2K9FHwO* zhA@+r_0LkJ4WcF_L})V+bTHUjGQEYd1N6Y`?^vUZjI!4W;O5|luC1bd93yE4UlS7(EpR~}=^?&wtQ!)}K>G|E@Yi`bPW~`%gX5g>K zVWGtDGSJxAXk}$JIz&6z`vq=3oYp5H`ysDDNbuvgiU?@;o4p|uQyEc=VKHYTg8#Er z)5eQzTT>+Zeo=)C`)Kr%E zJ`lUx?k^VN;y_gU3IKVEsSNRbrX1S#_N;*D1=-uTZ{gA4R-q8|P{~z=Q1I7ORucT> z5pxU<-sKk*5^8B_K>~z@g{gec#s=8hZ~({uIsl+x${GO9MK`0buCF6saGDQ(d%IBY zu-pKn6M7_AM4_SjdwP9;^CFpNNeG+hHLv?Y+L&$q(Ul z|BiT_QdVYWoqGGF#YSguYZ^hppT$2n2a`FkudhL5TC6YTI$-TIqn# z(8gLWxB3dzjt*hW^e3{Ur>EyDXW{~umX=3HqR!JLq}YfUHRhMHarAu~8yoI_JT307 zj)}A|AP_FEfsqkBAb<#O4$I|~Mq0YJC!9Fx>sRJyVU)f{;cTtnILyMvbY+CDgN3-_!Y~wq+j$)Beox*YFiqRsI{=<3wCkFkuH@gXmi;thX>@sF%VQF;BExs>$l!33E@8L`6kyKYuZ1BExWf)a9Hb?XbUNuQW{I|5#5Y=rLG;hmmK* zO~uSqKqAOnQQZ6?AD5DM^m0O(jbjHT$m-kF=u&ec45nv|(N$qKz>p?%>uhAim19p$ z5-bKuOq!XVE@}=H2ZF!rBYh$Tds#X4eEarcN$}IV_iO>$5J?FS0Y1!Tf1F@i-4HRz z{fWFJPhSkuvoKqVJg7w68e5x7l1e>#Fl{RQ6(li%Nu62o60`Q-ebPLr%cXs;XnSlx9;{t7kwe_!T7)wHf=@2DjL-^E6DCcr5L3l6rCJ}^C-V~VgWC@Yg? zb=YflA7cU=Xd^7QIzBN2qH1a*I~)P;V(mI(;6>nm`}y-VUkVC1{3im)b0XooEZQ8= z?B5%POt?Z(QFV9S8sNCtSES?HU%t~Oqy4w#;B_ZV(x!O$Z&L(vFfAE!D;x`(3LEwA z$kAaU+6{sw$&E@#T7(NZe~NJh-Oo}nWoe&Lc^~_lwlk!a0_+e?>Lj~@osB6^g{caY z+D0ayuD{<}Tzu6M12hDvf-^H)*XsCM7KGjl4S}y_7rhGpLlq4Wr47uZc@|be^_#Tw zn3Rf&M^h913-^1bDyJ+P44rp&Krk%}dMn)U<>bCt_V1KR2qas@bf|qYMlQFo(6jS1 z9Ke#)z)^s_kL36QxxE1Gs%@Xdk7D`!PQc&4NjKG1a#Q6qBCIDonwzKotr~47xuJDI zLjwbScl?Njb*aqlzq^v*9Qr=TU5MUO7UmriW&$Hzq6{+AgsQ6fENb%+!88uD3W;(5 zzPOy=;OJ`~O0gIq;N)aJ5QQe<8 zDTP$s&@dYB6;DXIK%0Q)i8KH__nyz0+Uf5fotyZG{N}N=q=XS8js{}4{4nErnz4Bt zK|UoDm(|cBv20`{VY_(B6QBDpy9XUxru;_&)wp{`Cx7)(2engXX3DRXyv8rGv! zf#U{rRlLzPzq>!o5f~^aER@V0XIEqGq#uQ<=`C#`5KjhD-m~K@G{9~a9F$SBaw1fS z2|`3CV%}vN>xe&N(NqEvuD^N=gKMY(?0C&7F^O0{B%DnL>bKNX_~ZpmlK4vD2N zR1<#NxT<1iwmy`~lbs;5x`wK%N}rtE<9_(n)XYq*W|0mV1%>eG(+1{r=M~GXzIcsN zjpg!8=ga7&pPrmAU!uu{?!#On=)Y7dXmQ8?`0)dTtunbya$eH!O%{ubgFEE3vQOo* z_xt*;uX~6eGm~-Kd+MTC&5(IXt!-_e0AG5dR7$kl2iSU@)uG5r%_Z4lC;)ya?*x93 z_=@G1FmV}iUqVY#C%3x%woUv_qQKm2A|9T)Pxw&?sgUEhI9;&CG{#8%!#kM7rD(YL zp3QHcZsX(T!`6XX;ua!aQq@A}bQ%sw>1>yp5^dPL-Z(-h7Z=S>7Bx7n4BBe^eRn1c zXJ@rQI3FDyjflYMItB3>8yoxd6G=1P{?sU*dYA2Zd9cKhyw@Ix zf*hDtSQy$Q;CFW=9Zk8uzAh;t0rFcoy(}PVZ2VoPR2cRb6%Z{{Bi-AZt?XJ@xLxau zpPHK59LdDPz}VVT-i&rXbX5I!#PuEi2@lN4zCOhp%Jl!eWpxWeWuTx zXP`%Z0>~&U`=6}!MNtUg%rGi^i;0b;Ng7C$dl}tJh?SXl#G+Bs4igj+@!y}Xb>1A_ z|8u45&{AtXRg{)S-uMyR9l@7>yrY|1{U7}j<TW*WdWA@nz#c z?(gF4OvdZDa(%i9837Gcqm7+iSm^EUP80S`xqGAAKRk>JE|Igdk4-LCHa0A>aanp# zQ8I=?FoI@lZ8X)?5~{0Dk5;=J78{WKir)(O{5ah$6TQZl>iib^)~x>`mQH-x`*8h$ zYM{SgPF6Nh_4~Q#(EZlHX^7#vxEEAw+9EKACW!jmf*Xd>di!;BFMGs17RDGl*h+~v zv5U!+htG{p4tY^WFMcMLWrfj`EsR~#gkx23h|GeUoz`@SY!MLD+g0%1-r3L#+W$vb zt2mMH^EO2&Dzb8E9o#QeR#x^ba+cK*Dq&Y^byB&R>7PM*V2B$j)n=~v=k7XoY>c5! zhmB3sVcE}Nx@2^fG49*d_|_Q8i}NCP6hGQz*UG|T`m&RKFJAe9!{aDmuDZ?Vt|8EB*^9*yy0&NQ z@baHGm65?aAqxy>b6DOzI8bul@F`TSW#0t*GA6eUHV$J@wTi}DB@89UrSPgQQ@S7V zr{rcV7Iy)@!b@mz2~f3lifUFw=i1x-q@xB$23R~d(^~}~zm2`rh0m^FpQI+t=V*K? zE0Me}1_y?R<>haQnoL^Aw60^+EirlvKasx?#Bo_{D8Lg@c(_71R8{!}>}ax~D?P>} zPMU#J4NqTOQncNkfmEAEzJ8-#rjxjhpnI1tWsb~<%g2w!mBKyDD2MP+)cVGwNLMgX zkl#KQBeN!o|3ha8Hi6Uo{7ji%DqTtlEec+cqfbhjlC4!uLVgJA`ojc1EZsh-;_FNJ z%;xLZ`1jH>`+)B>0sN6($mEds0w0{oLc+prFoJ#RxbKP z<|`k4m6+{SuT!yfsSUu+4jlG(DctcR0my=+B=R zOHNZxT1^U#66J$#ZE-`Kw+sU_FkZ#|i7Tlq3KY`VECAC@dQLpkZk^!zUu_Z)zL}{) zBkkQ+SUrS^a$RX~U^7Pd+Wkc}Bq@|4(3Eg!J(xjE?Gw{X*QQvx6I%hNj zi-@ihw*CDk=i8nA+M!H49$-i5#m* zC^(ya@M!?xc)=rJqQf4U!T`Sdk2RKyMe4~jWkROaA6Zb%g;4<&Cf?B)jpFi>l4?Uz zE=84m0yHQD{3MdJ=*bbEYMM$)K-{h-4*~7HfqYA4^73wmJq>aE7-;lO0@=A{N&)iRrSH$Nk!C5;HISa1KNs=)h&Ps%yu$k_hkRqSS0K{Rnu)!_!0aU> zY0y8Ld>bb)^5DqGiy#-8HCRHj0Zq8E%_kUqp^JocucK2_TdR0~+bjxQ5Q>Z(s;#xQ z8O7f!=8UB7r2$0E%qS#M8DiyZ03dC~>`Bu$l$oV?z58WeU?Gjazq@dz=KGE!@Ke$} zo4>wIo#l(>YTAMFyO$X*Hau3`Au3Q5Aeg8=Y-|JrR<5v0TKevZA|>qYMXMT%kwnmy z)YsHd2)KpY9Il{T=UcQ{{qh8t8(b*|4I8&q&)es8gFKF2_9;1^lX&rz^FD zd-}RhK|Wb#rIevzoA2#|h8n%Ha+{H5@$`%htNzcCQj^iZlI$#MJZ?_uAZmHJlDD`> zz|L+ex4mGgO2Pc$!!W`K9Z!FAl!YOnBztA$AvafUdRVWZq{PNQ*_7;RuO z%(dg6Nda~b$CYGGc{~cQu3qWM?As#HfFmyYSPvp%maJ5+Fs_JM_mR(-ZyOtTd2GLJ ztkKt0d+XG0pLdt)^4j=YDRg~?-&B7{;^L|AGmX?B3&Fuay#ph@`!2jkul-t)6AzMH zdI5nyV>vDK)#g7~iwg?OXe?f{meI(L-*8E+9vs{~+;Xz&f8_INKs_rPBt5Yg0s=-= z*wUkzSc=WOveBYg_Vzr)#3;`c?H20Z@bDzHQaG<1i@Ma9z$$f3a?JmBx1Ar395Z|+ ziiwG-@VR#C(!GK)y&eqj?V=Ql6R%%HDpVsN*)poRU;Nm*B&L$&E)zhQ! z6y*Nu(M8M0*Vy%3Do;T|!h`sE-?xfIN^%Qp1n0D)vvbuOq!+<7kn3m9-|8nNCQP!| zAHV4IAsJKgXsB0Xws2WfXLay7`O%|6YSuy~1%*0hDcclBjd^CaDdtF#{-wjzrbTTN*yZ$b=#Y*wir<*a^YWUa@_^_ z`R)1c<+QFtZEfv~T0W;W86cp%ygd7CAc+kf9UT-`a&FnCOk~V?eQ%UR+nsg{1-EKy zw~O{QlDe_C`I;wg9?ML}Vni>pwLIZ*WI7n#F9aY)GP8K9!6=?*F{ z0RaKn#H>t-{fDi$tb&4RRTZwg)8Me6umkc_Tnc^{P=%MWb7S=d=bfCKY+c&~+B~rw z_6j1K>twKOhK9DTK;nN@F+bxzcYmv1fs<06U94FSf)PIIOMA^G{*Si?{qH0s zJ}WTffMDeT1FijM$UP{jgM1?6K?77RpN8hg#~(f1Gc!aWJRq8>8lb}Te;6+U;(+-3 zmtRoyp-xbS{wb*03$d}WF)>+=|BwYAB!Oe127#(Ss6xM_r{7y{%k+BMdo1?p$&1$# z($XK;n3hA)4w00)`O`KcBlj7BB_dLp zlM{o9Selr^d-K1k@~v-Cv3@x^pr$T#?`&;lHD(Fj-rja<6y)M^{o5TH85wD3X9ucn zT6MOdgm++(=_@7lf}Gsv@!>Fh3=12(kl4@94{kX&I_kJP{U(Q7Kmep)J{}3?JgA@K zBa-EdOMe(GXVm}kvY9GU2U819jdz{F*oQ5bltBB?5Cn+H$anw)70`2#P-d_jy_1rH ze`M8UP86h6W_rfW#bpI06%Y`Jl&UuBdIGe^Gb$6Y>HqXP-vQGZ(^FG=tv;S$Qf0E& zVko5+Yz0+EP`*=0<_NA@oMSkz(6L(sBJOW5i`9UPb90`csIRsVLf;oj#?#c;2qEV^y1PDw8{BS< zhoN;Wn%wVsX3=PRXy zh({+|m78leS7ipOn+FF6U?wHUX>FL>m0$1OyC6{Vn`0&0-3fQ`vwLvp$%3Dpg!%d= zfqK`wdUA>u`^N_xd`L!NuFn%z=C* z3Y@VLHD+{QlN#6aovERrp^1Fu^1?z)T-*#HZ@1eQ1=A>>NRff=UOXlyrVty#UK?_9 zR6jrC2J=#U;mkI(fv;d9#c}@&=C`GrSHgaxVq$2Ep%SWv?`V(r&?X+eAcNMHzhjWB zU5nMQocm}OttK&U*o(7&%NU@ecZ`U1l?<0SBdS|*s!2f&3l#M5KhU;hFuhUN+5BbU zOJweB4YbG5p!i*7qkgRo3u~(5mf|igDk&N4?+>!CyL_*$EjuK~-rfKQwH`3#mQ$;4 z;eeO@dS}mo;VUYLbu6IX&@^{}5$yLayG_ULw0Vp1<;z+{P)O$Y_4#4>5r zjE7fKm_$rcNL2;@@zwF&a~6)?=;)i10bPw+LJnV&M~;q;`=zCHquePC-g)b%ar7eB zYpE~gqlVIN@BXxuUveNJ5&iQTFc?w=)b!;IFMIAN7c%5{(Z6TbF9Qt z7j|JErc^=C)Q@HTecE77fOqDA9YcT=i&pj|$zTh2g_xK{hHS28XTCOMBF}ecf8T9m za2(VK!2yZDJi_|=&L(54bBMhw9KnT*B*I=n^{o6G9UYzf!D5R^uaubu+u4!fArnuT zpiQ&fAnCDB|AGaT_kywNR0NNcB<kj6|2OkdUUK&j=B0Px%&G^=vEA;^;xT=TdV%oPHu3FFa;_ZZXm-WcnKb zCqwoX+P!%S$Az@|E}RI-nO6PE%hO;f85mAyk&(N3%|HJ*S@?1?w9XfDakC^HfzdZq z`%%0tvQ8%nezD(t5$#XzcRppbz3opNO5WfWLN+@w`a3q8Lp!G@HAgm=i#C=nH9x~W zTBF#YZf`bEF`vgF<2dtiu%>#~F2``AOSKsXUV2HOEcAkM^hQXbnJxaE^>4GyStU;`tZy zJ*3R6bzx)EKY#u${4lY&NZxjB?x_$VGIOAXR$^`0{RN*~^Y^;YpEp^hikj-`Bc9|p zJH-oqeVHPUKC?3hY$s=?t^)6E;OYDWRLYuv%si8rtoRN1DpDWt7Cv5Qgw0G~1 z&`5_^dm^I-hBqG<@Ne&fFY03dZ$??hFBn>M?@*pP5U{aP*Ave9aM{*bQ`5%4h_~5| z{;%J_{1%Dv3_q-1o4flZzU$qj0rkSd+x~&whudW|Ow8;(0mJ)>rQ)~75;8_cuF9J^ zuqh^%*FJ)-)+usRP8)-&^jT#qq9DFr)VTiYgYFC@`Tw@6od*C6w12e#>B7DiGG8_y z@0S;*N9k*HW~XC9LgdvF4$pU^z0O`;xaa(-Kb*HI-%sb~5~ec|KFgJ9!Kpi?0ou35 z2sFzCp^w+|IoyfU#eHcm;WI9zNrgTVqLzD^CS znE&c5c)zMyo|5{sl0A~2adUHRZ6pLQX>INGK6dk2M=%+r<)~9Mxnyi`dn!UHC-2GI zhwG8ExoX0T1K*{-&`&Lwb`-etWA7C)Z%Ur55Ek;Dh!jVEAZRkkr<8n=Q_x zlyHQyr%NX8$E0}n4B`5E?epigkGIR8w5z33UT@_@4^#2Q?XJJ% zc&&R-{a+pVF!9fq`}=DOXXeikQk+nNVgfoNqmgE@qsRClQ06Xknj&imF~&gzLT zd`J_#{@~|_sgCy)b!>dR&UUV{fN41`E!Writsu7JXk8}smD_X)s&E@ZLk-U9XJUL; ztD_gvd~p$khW*RMK|9B4p=R6V)>ONAs=mguRtLGX+Ys0OCZx_bnUaL5uG(8ls;ul{ zGJM$P5sdU4+JriWh6=r_t*nT5cT)IGb@(Y@w{FKp>RaS!c`H)?mcNj=1XR~UIM9=l1zSXZo{FJ zSNrwTHX?R>+}!OdFTrHUuz)|eXUhG}Ib+k#aR-I_?20dC=>Uw&CmMMyTiKnW~#Wl&^~|p^{GspizEKs^++YB zh45u3HbI16tT1jbij=Uhy_J=}FCr2}kkZl3PYMJwV-g~Q)%0&9%Pp}j-sKt^(;x29 zCV$JC{&29~p)&9^BT4!23waTbUnzrJz(%99(xegY_5z>=MUxJ((edv~6-GLjD7sFK zJMqe`G+?<@iNAl+T(xxG4?&A6HZml_xF=vNqvF%f9++=Y6h6SYKy!BZsEHSy%pk%- z^w`&H5!!sK=6!1jDB$Fno12ecw_@aoei2tmP}81M)8=zo`<)19nVakB3h{n|-Znp! zPfE6cg=HNAIdyU479xnvP*byb|5w%1qRrN1;fKn~%BZNQ z?Ck6pFJ8cR|7Tjn#1wB-K8aOQQWA`k!PHUp7Tb417yiaVO6z}t)U=_48}ZmL#HlaA64s^By}pJHwghr>7`D)_PG|7aR^II0|+`zgJYKP~)RM zd4de+=;%O66~Q{GkF3gyis`&CV-pj)^Vu9}Wu65v!T=K$JGMlHy>f=);)R8UU^FA_ ze(=%CY8%WLZ44%#g3b;zSlJ>(@f$l09i2F95=){SWwb>@t8ot&dGG1zDVRtCi@iPq z?GGRr6;WpLeKsWL?@LJLt5wRs1xt@WT37gM=H`4iH8mCD9!)9494oW8zi(n}tduFN z7)SrSrmDKStFsdVd zh#JRnS>$tt>;HH4Q0IIWSd(xggcI0nSvk4yPqy(LR}KBGCD>5@ eAEk1SREuVJ2fcfRMPRugASGzY*|y05 literal 10492 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 diff --git a/_s_p_p_8h_source.html b/_s_p_p_8h_source.html index c3abcec8..0c386065 100644 --- a/_s_p_p_8h_source.html +++ b/_s_p_p_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: SPP.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - + +
@@ -103,7 +80,7 @@ Include dependency graph for UHS2_gpio.cpp: diff --git a/_u_h_s2__gpio_8cpp__incl.map b/_u_h_s2__gpio_8cpp__incl.map index e6dfb4cc..e5fc421f 100644 --- a/_u_h_s2__gpio_8cpp__incl.map +++ b/_u_h_s2__gpio_8cpp__incl.map @@ -1,4 +1,4 @@ - - + + diff --git a/_u_h_s2__gpio_8cpp__incl.md5 b/_u_h_s2__gpio_8cpp__incl.md5 index 495959c8..5f54e652 100644 --- a/_u_h_s2__gpio_8cpp__incl.md5 +++ b/_u_h_s2__gpio_8cpp__incl.md5 @@ -1 +1 @@ -5fafb4b045fd272c2cc9ebe047206021 \ No newline at end of file +06a12a581ad1198d62c6c8600346a9df \ No newline at end of file diff --git a/_u_h_s2__gpio_8cpp__incl.png b/_u_h_s2__gpio_8cpp__incl.png index 73717f561ec16ee35f88f1383c847d35ab2713ff..9768f6eb017cced16f3a1f2e8f396809ec4be446 100644 GIT binary patch literal 4812 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 N2ys_ey-L+K;@>do5%d56 literal 4332 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 diff --git a/_u_h_s2__gpio_8cpp_source.html b/_u_h_s2__gpio_8cpp_source.html index 1c927537..603eb225 100644 --- a/_u_h_s2__gpio_8cpp_source.html +++ b/_u_h_s2__gpio_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: UHS2_gpio.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- +
@@ -102,7 +79,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -118,7 +95,7 @@ Classes diff --git a/_u_h_s2__gpio_8h__dep__incl.map b/_u_h_s2__gpio_8h__dep__incl.map index 40c1ea6a..1c7a5990 100644 --- a/_u_h_s2__gpio_8h__dep__incl.map +++ b/_u_h_s2__gpio_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/_u_h_s2__gpio_8h__dep__incl.md5 b/_u_h_s2__gpio_8h__dep__incl.md5 index 775c25d5..c059d290 100644 --- a/_u_h_s2__gpio_8h__dep__incl.md5 +++ b/_u_h_s2__gpio_8h__dep__incl.md5 @@ -1 +1 @@ -06938a8200dab1f59b6abb10b81505aa \ No newline at end of file +a0384b1c8c2f35d7b22a13049b8cb875 \ No newline at end of file diff --git a/_u_h_s2__gpio_8h__dep__incl.png b/_u_h_s2__gpio_8h__dep__incl.png index d862a7fbc53ed3c53f3cb4bdd1f6298ace8d9e72..f87504295857781db1fb7d3d221a8e657f79fde6 100644 GIT binary patch literal 3276 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 Y18Y~!h`tpDejq@mMpq5r!kwS|2N%OFFaQ7m diff --git a/_u_h_s2__gpio_8h__incl.map b/_u_h_s2__gpio_8h__incl.map index 44170de2..6a7e2b6a 100644 --- a/_u_h_s2__gpio_8h__incl.map +++ b/_u_h_s2__gpio_8h__incl.map @@ -1,3 +1,3 @@ - + diff --git a/_u_h_s2__gpio_8h__incl.md5 b/_u_h_s2__gpio_8h__incl.md5 index 56f165c8..27e49622 100644 --- a/_u_h_s2__gpio_8h__incl.md5 +++ b/_u_h_s2__gpio_8h__incl.md5 @@ -1 +1 @@ -e72e517fae3443dc9284720e8b3abfc0 \ No newline at end of file +500be2e2bdf40031858f83ca5d988de6 \ No newline at end of file diff --git a/_u_h_s2__gpio_8h__incl.png b/_u_h_s2__gpio_8h__incl.png index c397057d0c7be44c7d1b8177afe2ce12b194c870..f926a50c06525772a333e0715198d57ad642eb60 100644 GIT binary patch literal 2833 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 literal 2339 zcmb_eXH=8R7X4641PRS&p-aD_;6p%#U@(SWgghi5L6Kg>2;@R&v2dvZk!Fmcgc2}7 z2nYrd4It8_1XOyF&Z9|?W})1V^~(M8e!e|x&RJ{9nptPh*=OQytWAUkB?SQh5H>SK zqCk%W`(4NZ&>H$QdV-GM)xrb`?Cm$|+oCi8fDD)+FWccWm$UpWQ~l)XHE+NY2=WJ` z5U}qreCMPi#SKhGN66lv^unPt4Wu!QW6;xvqYObY<(T2QssgA*S{}&o4YY zoNni9ZJmtBt?w%|lox%}WKR3&u0^BKWb}g*&1tS14g&c-&u!Gg!omQ6PN%z83~)G{ z;N4$aE7dGkS4RiZ$S4aIss)3MM4w-r&#d(yW+fyfq@<+KXvzYkF)=ZDd3n;fSD|aO z)6?!jK|yYAQ|%x=#b!G6(uD*dwadD+0q9JXqSUyxS#9u<>loI3%MNRwYATm$2GW|J$^VI={l&CVNM3=ZA&**BFe#8k^{ZH${FTY5c?=V`Gka2 zkN)t`Izj1#LLjZ3oib8VPK}i6`iv?=8Y;;+f2PPMG?a`~n4qx2MMkhLE-r+9um^7w zer@_YIXU_G&^_*4E9v#{@K9D(PDX!SUtb5gs?fSoJ~UG0lh)vJ_w3`wiGkpHhdP3R zJ$Gv>Wcy^$eRXwG<3u8n=+pROeJmJg=$??xjb%+NuiL*j<&X|3%w=L``~+d-PzW*!mnS$t63IK zz|c^g9UT$7+m6isn{UH(^zSQ0o37w^S<_v?)CV)hTg}p8->v}3<>BgKXepgeezuQdI^E2|qLDH}IK5 zA%Q_bZv)@#T=V_AAg(&G3z4e@xSLdx2X0a2ugZ}Kmx z(AU=P5!?qC;r!t26`@QDVrmt+xB{cQ(0D?`Iu>zB) z)#m;qG)l)5O#jk~lMnx^K>v@4Ke|Jn_`Q_-@L{+5#W!U{lBXabDkk>OKeer(Zf{qU zR6FLk%HR*U$HN0W&2s+dlJtvWX_?-MnY=tZg?44!^|)lHu!soHefR2(7P%8WJ-M<_ zA1l%88o)TSZgP8jsdZy5-`#6(;Rn8tw`V2+8DKn>;QzMAd+04?9Nk_%kf+)%TbY_};b%d0W{|{LuDl%PAsG z5yC!6vKHCi+3GwZNJgBb72FnvLcawgttX@cc>qVpRnN-7+x!Z)nbmFqM-exj%9RwS zNOA<~v(DM|^_y>G9#tBqfYMo^D)#!Ao`EnRdSrTKlYHgMm6z8U!$r}7Z7E2FHuo0= z1xnSN!%<$G>}%JqHE;p-GfFBddISyKfcqgv!(PGO?EN|dvdC8I-+Y(v7YU2eY}>f_ zMy3C&xZ>y6zvieJLShd;M1Gq-l*1|N@rKE+488Qj??ek7b2xo;vqh@Cy*;=^S6iEl zhe;+qNl(|-(wd|{UN*F;2@MTxYH9*iJ2EnIXJ-c=iAML2kB@V?T*`SYd!yQvC~JVC z+wn);n(N8}Q$Jg9P}UOy0O{s4#gWo>fi)wb;MRq2brt`P!yQp4CMF_{jfb)>GyC0U zK+%*;V)<5?)5KE+m<$XY4lk+maKvEVGvmJ0hA@kYRCRTO*Je9KQGfSp;IFsUqGdf&wnZcO9F^f8O2m8_4#v%-)L>f%3?n=$ygBpZgv3x z*|PA{JWemmQf0XA9{k4DZnq1^Yxpmu1flKipHV1NQ&ao1)3q<3>`tC0)Lu=&WA{8PzNrgv*Frdv$WpC$x0^uvDP|93LC?(sZ_ WMB94}75jm|9>C1V8d-*LdH5$F>3XLC diff --git a/_u_h_s2__gpio_8h_source.html b/_u_h_s2__gpio_8h_source.html index 6286960b..5761d205 100644 --- a/_u_h_s2__gpio_8h_source.html +++ b/_u_h_s2__gpio_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: UHS2_gpio.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- +
@@ -102,7 +79,7 @@ Include dependency graph for Usb.cpp: diff --git a/_usb_8cpp__incl.map b/_usb_8cpp__incl.map index bfb3e69f..3b914290 100644 --- a/_usb_8cpp__incl.map +++ b/_usb_8cpp__incl.map @@ -1,3 +1,3 @@ - + diff --git a/_usb_8cpp__incl.md5 b/_usb_8cpp__incl.md5 index f71e6530..08cf02a4 100644 --- a/_usb_8cpp__incl.md5 +++ b/_usb_8cpp__incl.md5 @@ -1 +1 @@ -983a9d4c5eeb9a3736dcb2d9192937eb \ No newline at end of file +c0083b07bac0c537372ef8120287eeb6 \ No newline at end of file diff --git a/_usb_8cpp__incl.png b/_usb_8cpp__incl.png index 6eb1063189f8dbe96d7a1b89d5c9321e0b6b02b9..aa51cf15d8b6d3423699b479ded4ed5fea753998 100644 GIT binary patch literal 1956 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 - + + USB Host Shield 2.0: Usb.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
@@ -149,7 +126,7 @@ This graph shows which files directly or indirectly include this file: diff --git a/_usb_8h__dep__incl.map b/_usb_8h__dep__incl.map index a317b165..e877db15 100644 --- a/_usb_8h__dep__incl.map +++ b/_usb_8h__dep__incl.map @@ -1,51 +1,51 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_usb_8h__dep__incl.md5 b/_usb_8h__dep__incl.md5 index 6a821aa3..1127a03e 100644 --- a/_usb_8h__dep__incl.md5 +++ b/_usb_8h__dep__incl.md5 @@ -1 +1 @@ -7c643f23ca87656d0de4bb0b970d686b \ No newline at end of file +c3d178c87de440befcdfa627a34aac33 \ No newline at end of file diff --git a/_usb_8h__dep__incl.png b/_usb_8h__dep__incl.png index 7a2bd06b538d02d0833bee1677e25894105989f3..4559da8106db3f810075aa0b1fd406fa5081da17 100644 GIT binary patch literal 151232 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 z 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�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

@vGgI&uMBbA$_VwX-h~vL}$zj&@NPTT~ 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

>body^LD^Gp_zc% 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

2Wns#xyKFUlOSyrPWpshMSb}O{1f566BIFYv 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 RMKSU%>01iorJ{!Z{|6%ikhcH; literal 145423 zcmZsD1z1#D+cuye3P^WJD2kMHBS@&Eba%thoq|$QA_~$a-8FP~gET{rbUV`ZuQ~5` z&U^mr`$o712N?G3{j6u*^-P$Of(*_BiU%ktC^&CkODdzFJTO5)K~2KM0FQ9eyN!W6 z3}aatNt9dUzx1ZuSQL~;C~qXiRXvh-7u>(=y8E)n6FTXG`((#d%vFD)6wRV4rl*Qhku|6qbEG(|7 z^u0*7vhefw*|<#Ms;n$j(|Yr~$zY^%Bzeoie0VsD`v7rc`R#2s8vXxq6J)#C(ntM2 zzLD7#VI=o|JxW-^T76lEsGp@7w0x@44RS|9yPeh4$t!#PL^e%y<(;uB3qh zZS(JMrOEq~kN*B++NxD=vy}xFo{LNVeRIiS{`S_PPFJ(Wj#^MqP~mi&C2wr(9X1Y5 zhAMN)z8c+se|IM0&ELNz$&FjH;6}*{nRBVvFcB9yTmEpiO4{O4ukqpU`Jb`NNVH={BWJZsP2U|2)Km`|t1n^ROh- z`+uEgL5tlbv4G2cSd?x_S^6oLhU{ZXmVf@*u;}`~uT`eXn$VIb)zZ~^$DxOu?V=Bz zUDGi^<4Lv6%5lBIX#uNsgBx{Qh1uTWp zzoT%{g0?}|+T$r%$GvJB1uG6j-9~B$U(2~X6~6-tD=X_+me>WuyazmT`|7~|_Of;( z)mw=z{-}Ps>EZ3A|E>M^_1)WI?}Mh()%}Kp?mvIH)k}24qW%74@!wt{NKF^+-IF<7 zV_ym>)-jOGP-;))5%Ji}h-U5e{pVz-Y>{;{{(VI=ox5@U4!QfyC{dJ{!(I(AuijkN zz`<2S&B=#v7iz$9Zp$aXbJNYimfW9cua@tfHMCp`U3G|Eb-dA8x^wTz zUq@$A@DoY$HN{|G3v@mCA2#puM`~1-z zUEgCAyV@0c%enR{Gm7AVu(11bii%m4m4xo|jxr19v}djNMi&fM9{hWq5 z)@4M0<5xkUXef3Kd%W|$rwdGtQ7S6rKG!=s4kIFp^a)kwP00`qg|p`W9?sUaVuYqhuK~LMN5uOiy|7T0 z+MwE+SoCssBvUzmxsNHWbLnPpX|+e}rd-h9)b#H4^|iGY)RgV39EPR6KObA|axDLp zZ8k*1VO-wegVi<)iu^bpw%78}1X?~#G!|QYM$|ntyDI3EKB@exg*6`eSNyw42){e1 z(e)$d!ZhWqgVOUM?!%Xu7)=}zvj-hJJS)e;i>U=x7w-=K=|LoX|GsMC@^U{M&knhR zLvlHUg(Fv1tf&OJgBWCTUWlf4|1vFL)7^3+x3s~^EPNgj6@@1#)S+3Kb8n>#Hzt&J zEU%PeW;}g|cm^8$HakMMB($%O8(eBaLaSd+kLBdEm6+AQlZGj8oh4GjkEq&LrXMA+ zj9d!Zdvs79ek=7sN3MZ#>q%ym*3nVC=A%ga26V>Ku ztztKDu~j(jZLN0me*Mn&aLdV@&C!m*?L{q(23Js4%uH-I7-5^U$8k?}=|sdLF*G(T->>Nmm|o zs7LcqQ9#;JcfH@!-I;L+3P$x*qv&ua)Haq%_Mrs9#md%`VW zh;hbE7L3s`YD7lCE&uTf`&Gz5b|LRuz4(pr9jnCJC ziQbk$P|Du1!CW(zl=CB;X4PR|A$QiC_O9mKY8=4Q{(Y{zU=?EjJnAgR`lN>I0KUD82S1nBirii9Bu(>eL$=Qf6zV1AzWyQ((%*Acpen7gH zU$5`4&#m2{&%djZp;ca#e;jv8jOnpqYyJ2?tvs_bUR`VRR{rnCPMuA^pqjC zk0Ji~qcnDU64^&7!wfOKM%K(9Y@wlHVRyg0!OB;qNr(snwG2KaGCqP2VS?_n3)spnBr@j8nHB-v%5( z&vLSztJ!(EhPf4U+Dt~+i`8v=;5lVy;8=N6N?fO0EA*flS%|kCe z4*5GY(f3=H?$p3uKK&Iiy%RXHA*+V!uW!w2buqYc zde`1=U*zO7Bn*OAxmk|^gT}mFo2(}Z&)!C`YpTC%GGB8d-*VZjV3Mc`{j{!_Ryw7$ zZA<0Ko9re0#7ETq_yq;?qitI<9(n4vbWIZZAI;mG6PymVbjlqZ6OjJ_T4P5hT>oIp zF{>|cwaQrV`w0fne>q7p5(t=9dUnDEBBFB*wSuq{6NH>9eM%^krHs4Dtx?ke=#egmqVR0%+N$@G^x>ebfc_~h6WhCH-NxL3x99)ut&|8~52b>Q z)e&6pz>7!pq?`}+EF4}R+0}V)kNMk`W5^4!-!ZqjaUwK?V|lcoC&z^1E-c{xIe|W+ zAcn6u)VFVLKPVhSq@=8no6M!K6o#5|hMRJRNVZFGTG6FIIe5Nx|8XJtYiCBSOFr{` zn=4hO8BFe6hxVz9)2R*(9M04Dy=|ybmU4a`M(;V^UTosrjUHQ;;9K2~Tl02=ZRs83X009F2ZLnQl=oX!_}gqmZ+p!VPvg5F-v*!$e)Jz&W-E)cF+J?sBSIxAZ2M`l zVS7`gs!&usvG#MtsV?1WRitOfwQbL>ZNr(4;D`YaudT;$v{1TXVDyI-#nbqKL$4w0 zoxF$9GV|&X>MpPT@*SvNzj|l^uF;fs%jan7ZCL-&e~fGfVi_<}ha5ZvGE#$rMm!CT5JS zvpy^br#S?y81T&BDkds0gUmiF=zLF>W1tzKOCbp;lasz{`8J#W_qn#^Z&Q4_M|#z$ z^}5p4)XE_+Ry5Y&jJ7obhIT2e6jVJvLm2N*t3rz3gY-$PnVKxrJcG|V1ocbv+ug?U z41&I!wklxQnhS|h;N(GT$Ho{>_9%O9t_eNP%^Yj(m+qb%q$!DW>P_QCUKFz0QGn~O zt8n))nITW=G8L=181>JIbeXXf(^RoeV9U+UZKqF~m%x-3Mv`3vYoLx@-MXehs?=KB zJ=#vb<|CB)`VuKN4dHdA>FZPfyEM_1CMIt>jqih{!bqTngiwNslESIQLPLFfykkFC zOJS+W0rKRVySvy76vr7&B0svnr?JGTb)I<;#Kw~U825~bd>kXEJ&BhWWXh?5fEpz6CTR2RCy~E5OiWw&8?M^x!erSbivzpgfB0D;#y<)ycyO>F)qf?#oWX@H01;Ym)b8pcl@k zF6CpWMfp+AK6WTqQHms`_^u@3B8-Quv6Slxob|;m`A6>qWl84e>2#nuNb7 z+>2ioeo?Qd!kW~UelI7#aGH`YfIzTQmacJqqakzs-gM; zN4EVpzZ&bVl*@XWob z?i%a|@8ZX}9}yhoPg~JRjQ@wbxt#oq?+!Ef{Rq-!E1i3yk}q7L^&&@ydn*hM`gNb_ zL+~*^zRE!}(q8cZEVW6FXkX=5vG2JYvh!p5IA_Q(Yw^R*KoeFC{mBjXk9Rm~VfcgD z%Cq=r&+|ufeHw?$w8hvw#~9PuWz0nuOyqZ?LV&Uu&RR`$cA=$88$2EK05 z&z36I#C>*jIyfRW9rc#hI7eZWQU(T;7niUCqkc?qH#$8X+}x~AY~H^i8`{Ga+Ou;f zDf5_{k6~0mG&S+)Vjy^EwmoThd~Qx6mo@oml0Z+l^7rqr0Uj`M;*8ACucCmneJF5B z_I{$GWF#@bT<~tahhjaBp>@qW%<>~QI9qtw{V(?Hs;bcoimUXiYVP4jUX1=EP}>HJol|`{TU8SmjY!D)mQG}M1xmFqIqTSfi`#zJ3oqb7>@V=uL^S2KWjfu;5%w}`| zdBhKNRP-}DFx#~R%5^7B*KgJ9;}BUhYaZBQ5D#@yyv^q1#sPai3imHWkcqX#!;q#? zZt9gXOwUhcx%wh{uNYTV;3I3Bh`Fs*_lJ4tL|O0r7uJ3qC)bQe*q+!<;mysUF#A*J zh$~LHa*-FZ4T{kYQxhZ?r$!E?MHZ(atguq{1a0sC2Pp|6Sch+4{4Hr@Rt92L{3<~0 z3w-d}oUIX=xF*MC1`3F%&Sv=zRWgeNMoNyf7unS=6qz!wdb6fH~zKh3vNbj_FRKom0zL(uchaK!jri>XByr6kKFq@)<8g&GVPJWq_1FFP?DhA-% z0BRH%Njv%&(+7oxfmbVi)Jf=##L#5TQ}=l#jaBW)eCnM${2%fml;N^=sir5*X|%(K0w zEShm-IB7%c?^xnu?#vjV@JbURvb&GXIRSFiGUYt4A2;n)iug06kwht_`8t@`oFOol zzVluF%g77j*|Mylr&4*H94@sB(mahT!Al3qL-s2UkWPEhQ1BizYnm5|Q}-o2*TRIkHRl9Fd!9?{lD=C&^! zq1O<#+(jx==It&QnSSD-YiWgVl;Bi{9o?gvl?--J%pl39&xwAwbK_v+DrTuNXBD%4 zlx5rM2*%mSPcv^Dc$*yvL|wi8w{Gt^#XXzk%X(sl{Zf z$0SjZnRpor<6Vss@}mVS=IdJ-T>cb!&V<}@2+V&4k#;Kp1VYH9;ndix1h)8q=|*#$ zxw&nFTyV4uGOPR^4g}?zXaIyz@pFVBj~gk~Ew?>8zN8L20~|RgkvnBTHXfSZAQZU2 z-`hwdlW(fgk!U5S@ToONH#J$##FizDTIeBi6F55h6`}OC$E3i}+`9o20<9UrhCr*) zN9QPn*CJgxzmkNVmD_4v-d{?^Znxk>|1nO|-6PfN>ZN^Gr^`Dd$V0f0BA6>dm_@eg zkAk9w5=-2MNZi7k@hWTnBHlQ?yF$KzfQ3r>gi2m*?qbscH_z%wa!lal7?W4Or5T@aH>jx1U@$leQZ8%KtE!g5RH}SEpvoN)uWsotHVpFYz zGatL2B~$A9k}O?l#*UM1eQp!D|tiu9Uvxm^04>+L#tS&sZshMJs0t$&mGI5!naU(3pIM94pl%#&?jkDkE4XDngUu z#6_Ie4S(M1{{d|>M7(Sc=w|G*QhdP6NKo_+q9-l<5`)SW-( zS)WnyUw(#rtqJzN|IB4Oy4x7^!1~(&FS4k6Xeit7;O=%-j_ilzSZS7L5>oP|Mr$;# z`ZWIjHZV3l?WVkM52^qZkzvn6{Kom}9n6zma;b97V89kAh{fY{6{-T%n2EpVL?MQ4 zI{Lq*XjT_siHP6>@C&LhU=N0C;=qA{0xBFlHCs=2#|Ql-t_2Y)fPKrL=zq1klL#Z_v8?0C*o6rBH&xw06p-8G-IZwGyZ zgydj7rCSK6O0h8|3dX)U;_It;P*${BWRfM-P|RzwInM3sAPg1@|xn#@W@N zcHm_w9_bqd^uP=37$|^z1qnAFQSOrl6fr|dB41U!js-23^UpJx*%6saLkl3*8f}J3 zUvtQh=|4+)+NE$$u-(X@dgW)fM4?kI)-2U?`yJK1rnuGW&p4@>V`{=onE{QO5OY@y zzX2e?$lqznM4eEEWFa8-=-YRyEAmx>1wM%5%2kpS;b1gPrdaAujuvY{{!A3c#|-7K zIw#gPW4`_mDNM2buguJfM*m1lY)bH3#b-I~g6y%`x6kgxt=95GpblX3vz{n23LSj| zUP8WU2eiuwEd0t_sh`~V^|n*0R*4vm`YJr%!@6bgm58ze?*J;FRml}NHT9mMaZ|%Y zI+{;OfH%&XVnRSW-3dBA@?&}8@Q~Z@dWRGVHdb10z4-u6+DKapuqn~{U{k91;dzOs zqcR#*R@NKg+beP8r|ptx1hRO2bgT6G4_~ussAjFaqO-5|RpwSI(Hsl-_Pn9Y#R>~x zE<74v7rbZ@-j5JiFe(bEUKLTP*W?4+`C6({kFIk|2r=YSn4~&7Ye=xP<6*kyVuQOJ zx=Ve1I~mz#ck4?&_0oN5e}77F2kOaEKYEX+^qj!$fCl}Mgbvu3o|o!|Df(Zi>w2tw zA&(b}Z~v|X6%O^k$nC+$)WuH!`RCM+cOc$j?)fKjT!Lq;AuQPrI3#24N)RZc8HCFw)@ z`WSO^to`qq5?0#oCbLdhkYPkvFU~;UEd(dp?;782xDr}_Wm9Mn#CHd^)cTY-*Hf*R z3$*)SxZ$XGf07DmtuL~cx+66WsexWF(rP($F+Cnkq z3sq|ho%E8-=wpOR)Zf-A45x@DR?G74lW|U)DOljW_(l*d6w?a~$-<>+pJwiZ6LpxI zeoH!(T!2%byM!hMbI@x?+mo^*xq`J?D^DH6E=9iJccneY=DQWezrc&2JI6ofWmW61 z_xOd& z6m@{WXc4fHY8&rz&}*lPw%Q8R=zX@RsGIz6@6vb}GSPVcdMteYYXC^Fn$RNZBwn25 z?ZSHwlWK*ZM@V0Ab8lnnf1(vwoZsUG2%sTrMY&3^M0*lF?VwYC;I!$W;cRxq?;Z*$ zz{h7hEzRf}`gKlI0|OlEkeY>H9-FDb9nsE%j2twB+$5Hq$!N|dPv9J!Z7KSH3Za<` zJ8ijbV8-L3rM*4FIU5b(olfBuOl$?h;tX^T4+^2|#$u=HocT^hyEI9xzL&5wofZ<# zzW++5=L)U*r!B*%nI=M0I(^_|A_!oP$E^@1fVfOe`f*s zns0+7^j+M73&l?!2@1Ueim=*J_}Zq6qabY2x?(mEZeMV9$sEN*Fk4Se(YcgPrTom% z>q)E(FU*GtSO;nxioyI{QCM!{Ez|EU-Ee{=2`v~`OR*q=Noi}tSgStdn}70oM+kjy zg{B|JlKl3>-<8c})l|PfYpcIk^<{|U^J~+XKBCV<>xDhe*502tEGmNpYVc94CB3+} zRkD6w`|)MIYoTywqo9$}9NFUq>bTta`y922S~oq?$kbU|adZ-uXR@q9v>}K;b-j3* zwh`DEl<^{mUh;R*7VDKVoV9}S)}WqGFmRJ1o!o=nEGRD*S?&t!)H5=kqubStstTIfPcOL6Z#q-yPyqySNk1&_0pcypZZ0w6v?t=RxQ&5Msk9m>cc z!?E2(PtQ>;MA@B zW~Khr(*n!F!s09sc3W4ZoX_u;UN(_YnW7RbVv}~yIt^Xe{6R})*U?h{?MCW=PF zgDe1I139U8)yn)=Gc4dw4B&1l3^m$VZg&kr@n3sjCY=Ux~6m^ zEL3RsT?$`Xu+DFl2pLSf0uw`*?GEsXQtTNA2;{%SJ)UBSEmyshZTo`=vQxcweiwIx zaHgmwqK4w?PhJe1GjtbGH|aWJ>U6gO)B4l9Q)hI4vv7+i4APCc%IZ9}I;v@xYb|t9 zPpD4X;rPX=l|0V<(||^_9*~N|fLzzIgcIEpJkHUhpVYL2fx7yT>G;*$JNxFNGL z)zW-$*k;hxq}CY9F1}#*s+!8Pi4FKxH878;KTq+9Q5|dFH=A1??j>kD>^P^Lm-I`?l}84p>0Cdw^kYB`I?z2 zib`-C#dHUGjxDy@r;fP_;RWv5)p1Jzu|c|l((il#ayDdtf`U>~Z%vGZxV-kwDBx0N z%}Y1~8FNI;AFt(N((P)U&%4~)9Xm)uD~OX@{*|{k9wjeJ*IGP#52)*cNT(8xAGW(b z%K<61r;8iFu|`U9O-=7=7cg>iIQd;H9{`ELYFo47NA{egm??P)(USysi()<~2rf&tC%hv%YIo`P?sJAnOK}V7uIF83;?j1pE zu4RvpIY0vCT|Nr1I*|0i@qBFq{!{kSVN6PPM`GmLTlCwTgXk5mv^vt4W>a`k(>oFx z8kkAE#iAvx4x9-cvh0x))t39STn}I+kEl+-`rEH3843s}i6x*>1=%7pndmSo@Ax3h1}ig*&25ahx*x>v=1a%J%gqbJw`|@}l>4zk6|~4Q^Bl@v zS)$i?BwRX;)3St&M+oXEoyNcZmB{;AFzJa!!ypi~x>g4vi*+UXrIf(2nChFQ0LZGa zXGnlH8l04;zjVr|MM(mEXsxF9$)l&^!0#LhFSQPC=!(Wijuaw1?cEZ(r4@Pkk+6Df z_P+r!ZK7l&j2F$9o8lOrUX_m1G|^$8^jnq+o1YS)isK|ck#>uJYep1qHc9Zc?^hBA zr7l|*g~DO$2BH=Iq5vnJf|(e(E22ThgAU5Md6uruOVg^sdlMLvYk`rQxC zFd5H5op%|>XuLTl1tuRg0z$*j5p;VsVsSWQ@`{Wq!pKXoP@*+BBcq1z6WGdoh&75@ zrAS%Z=Bk?z559bR%lnWfx%2wezQ_N18ZlFczyxYAc85|x2GDxU1_Z(3>yeS+LE;NF zPLp|XWC1N-E$<0FL?Zr`5CaKbo%b+Erqa{=0nmfM@_G#75{l769A`TQEgx%It_@IC z4?oa0(w6!i7ZB>7f1Ke#0bkx)4 zQ?WAt+s=rWIYyfvdp6UClLdCdXUlBZ54-Umcsd?W7CJ7tk}g-5>Uj^sdr%*Jt2kT@ zm)S;3^gfNs(1illUT!Y0sQ1!&t$#RHuw+sI?YcGK4KR*41QUhf(&@B?zy;N0(VA}D z(v9BW^0rRddGudNzG<+k4 z^I4fHn}L{x%E*Zg^>l#<0$M(CX*LGJ?CM@3)Wk`yL3rofiP`kg-N;AHuj zt*UHM{{eVr8<&AzPqHRr0m($V`J#MS$;94Xl}C;^+)Pg1Ox0$sQ?lMmSZ~_&nPOV% z@E~Rq@Gp59pJ{W#<|NB1t9g{BbDrsNWxcx<;JUe#1K9Lv`9s5DY?^R*v5q?^24vdr zD40+8(@v>@yIiSMzA3z>Wg$H6dRIUgG3bX>^nCPfaqCM!ULnGD$IEeu#|8+O=OBHw zkrxnP`m_D!8qV)vs2mxySZ#Cn-ouD2T@qNWZGGd_Z$!CKhiAc?%F@!~B5XsEi_J%V zHwe;0Z~%DWk3qi0w&ACXOHIj+CFB?$BXdK=${GM~9>Mil_6ATs^&U#&8f!ef(7<=c zaY_ApZ!swC=1-kK(odAJ8y)7^vb_i3*>G1X2IAT(KAp{P_(g#nBJGC~o2Z`Bm0_W! z$f2ZZRFsF*iR}#0*ncfe5Ot%E?K3eDLe96c~W zJ`MyTo~yeU8>Y(!akDqq+P6t?=6?-(6_T^vo)GeIGLdI(iM0mS30#hCcgbL$cvc%3 z0|OZO!b2EK?X0b;mx+VQ4US7Nj|G+;jr|V$5Npct2*u*p$m#01-8rivQQE$kG5YuG z>X46iHCVxPe(|!8&piu&blVT$P0wf+SUug>bieBe-Fb27z0G5@>*8mgwkK?11J{*L ziG;l}*~xZJvUJmzl}+Ee^o6&GMb((OIB|+>gq~dRzMf8&&l*1I?S=?Z;3N|ZmGSqK zTU2^#s=q(8$AM1OyfcT+x0-H2UQXxpn0`8UsDjUe6lUwL)XVGAI`JGMh?`G;*rj z;KJw0ydB@XonG}m@q@=i;j5z+ZwnqXk;rmWKVD?PBnUeLJ;;zu5TrYS_0jQdRkj%@ zrXb?*J((y=mlDQc_P)HB^?lUC7u{;ST5c|(ttQ?LnsElpkAc4(ojZw8!_v%ALov2y zE|wn5QC45@wN6yWd3P~3N1+@DI!RvGy`V&2LUL7>cP=6~Zfo~_1YMKSSU;|#>PE@y;@s`Gt0i*K0^ zj`sO=3+fs~AsiZzKSi2|5tahqJ!r6}jG_tyVt*)7M*=0jl4vuP>_Aqo_0qW~ssjX< z9O|%>{ry6$M|4~Kwj$o`Vwt&cYh9-hv}ib;gEkM`sA`dFD26JB3a|CaX-!s33(mqq zj1<>f_lyro3kycjXQ}kV(@vs7!&G~f-z^_~W%YOxD9$cSL+YXzp%E{xKz<^d%`*8h z_4Tjq#E{2;oYk<3!q2G&ZtCGfZ0=90CsSoXs^m)_)t5K2dym#^;Xp@pjZCS)=Sm=o zO#S_P2znnSDo$$5cy^|p{Gs>c30)0(oo}!DbX_lXeZ_2}_J}QS>71Yq>yOGBS770| z&e_h}RhD?F-0;)JRywNQOwg3_3sXv@D6CcJEwFVW*kJr?&WT7?I}wWPkl>F0_YCAMk4r}Byx=2h*z?43H=Xay^eDULf1+&h3pVDshSUpQUW=8LVML^m z4#w-*XEg>bDedZ)*1YqGipS0Qhs^`~4%(X)>8lmmW;EbI4SFt&jWMQrn$v<$F~3Wg z2pJWXxTrxe3tG73Rqb-1zOMgukjIXW!7TU7M?EaKIALXL0e50Sv9ENIMuS9NAuPtE z3)$R&XdSD#-?hJB!hg`HKJSBgT)PL2+|WfC-)g>u!bJ|wqqTZc-UesD0ibyZlFye+ zF8-&Bm%@vu%?EjxNT4io!J=%%FQPi2Z4wXKV!QX3 zrE<+{39;q|HV?Ibt}mHH=Qgu+EX;j>sVl&b~(r{LL@{CkHPgSnYqV!A)JL%?3kOa(?c~%B;mH z{HW*j5lJ`*w_7G!cG=ost$up0zMPZ9i&Pl5r45mGM->$XMOWJgV^2^~$KGR;#6T@~ z=kb`0oGfg30c@d?5{^_qFIoWOYmh8AV~4`7ZcVvy52CSLF>s+c>+F`(aD8&Hvgqy4 zw-c%id>}Un`^`>^sL!BLg!C=K|3-+$%QC*6eSG5RvZaOQ_BXq~k3`K*mG32oUHz8L zQxXUY*KPO=$XM(Y$FJ@f_``~7K<2j=G2G*L)a6_I=cmb%I^feDS4Rso6=qCG`3Q7b zkh^hMaNTjZKHhQYB7UxLR%gpCnCK9}N81fj*h+NQ$TJ5vgBxL8FDtRRxj?4ln+@3; z1tFv?KbrAuvfx?A#PH`FUD1QaDJfdA=OhE)zvHE`clW4#PwY1YtFx~U8~lfil8|m# zlO+SK=shNZyUSg`c_r-a?}FZiTnuCQ1z2`&u0hBd6ga~V7r_He$DEz^qz7Y&pYlOhrwPk zP0V;zIqu2`*+Y9=SfXv9h~c=g9T^iC2&2_)&m1>i#L&T91X~Q-6f78Wv7LA^9Bk-x zaFcS7djJXEKN$jx@3YNBM5qJn3=EVXLR-fu{ppd8nFN68WqY3}P-&tq)OwAK>DMsn zpIG>u?;U+dM)NDVBB0Rs59mRJWx{b*fAS|m9+oiBY`S}5`JEWS_y-Z#y7{O+jra7Z zxSj%P>u{I(6(F#gS+8g?#>NSyKzLISlA`2oR-95nA`O|+ot-7OqbSL8RxH=-_C1Ak z0N%)->S4?t$9~WXhJc6{FQy{7v~4*PgpuxQZrWl!jD}LakktK+Df>bwB z-T|@nYNTHO=eXL)g*zZ4npLHTe+DH)0-k;j8<+@(wCx<2* z%;RMC8dNqZjkhf(3`!libkMD)QQW>hv{UAZ5Oi@3BK_4&c_$HkOIheSHwHJK?dB_B zVu??gG=nJ@X=ws^9iG!&ay9tgf*qlVNK8&~;?N=?NrO-GM-QKq6uw_e*DEVqS^JIn zkyFyy1GG0yVwK#K*`hFuHFF`%u=V4FwAi(seOu4db763)3j`E{dAjzdwSTQyjgQZ2 zeMsiyf1D_GJvp-GeA}B&oT3#)@~f)oOT8T26Qn$d3)~Y&T9y)1{3_a`;?yKX4T>;$ zEJRD{hGU}z5(bCn7)4?5Sox|Unk+;kAx;t76Rr;_=%$=gMQy__f~9jtQk1s()p@+I zDU=CxZs2hSiXTK6=3?7pe9)K7x~VVA)%^>Cd;P;QS z;HM18VA1!hvy%tn4bT%g9xgLJq)jbpILPAB0_D7XTpu&A_JWh32dKlqbK)`SdzTA` z_mLaadN;B0bXNg93c_5#Q}#Byc7jj|jQM1bd-~j7Dy|ybtQkc_bUFeX=P>nDH*%+> z;pMd-m8fteQ|e5(McP6%Q`&q85S9TM074$fQh;3mL<+F6UEr>z4Jbe;Y~AApv9qt% z4KBe&$yr@y9c!&GPa6{tL8!JB4Jkq{#_v1mw)_B^@ zGcfQWv$L-_&4YYOc&^wrwR-V(dwlbsIF-dOUf}!y8x~Usy4wlZWu_`Kyd5jv7_p9p zEL4Cyexl=a_bnrq4dsHk-4AG_vX$SlRsxrd`G)|}}GvJuLq^dz=tLN(_?OE?l-#f6Qd zzP_pp7B;bXzGmEeA84v-La6qVs(FY1%8h-P9NAp0%vm}REt%>vp)Ot|d*mAYM_cEE zEnN7{x3|y-C%n+|{_*6trMYPS;@K0>xVO9W2liS8?DTGgl;+JP z3RsncSyD_0ZNz2qD{QZRwsZWcXLpc_HC6Jpf`PoJ!RJ1B#%EH{fyTxFs8$Z`lEiZ~ zWh~j(!N6x?8t0muki28A6oi)&(AiBga2{nsO-)P}6cfV_8Zf*!#wsF$(c#x?st{aY z&9US+Gfr^hfZP)ZVI#XR0OSBar{^*SrlvmC)<(-yeea=L<=Aa}|M=_)lTE-t_laWK z$Q~IFMFG?qL#<3X3iDtSGiBn50R0xQxj{lU8q7eZz06i_gDtwDFCtQ>4Yz)h0DbLf zLWLcU6bUC(=zXjb1wk8^WL)h4YwGee8lXbpYkKp{MAYMV=H#37eTlQ~$R>NfxU>Z9 zORv!}$K4?xMd5N%6W@!~@9i9@7oHZBU5M zX+w)+1RmdETumdI!SyzTY3*k5YTds*RuU`X^+r1HPaC8Ru zR$~5UM25jun@)MUaO&>>s$KLbj24JA7)LpLdcnwmKot~2Vf%VShE1c@|F(wAq8Tt~ zz%4;0_b-VExeUDb=2U(TewEYq*ve*bWlaR}&35Q>AfSP?TSJMI^JGB@mz|skG8Qw{ zsOD_>G$--u*F%CKZJv7=^&<&mi*ahnV`Z}*!eBrMU<18U(RA_>tbsmi1+XBDvS!E? zpcH~IHM2)0vsOcM4>uZORTLE^t1UH{iCr72r-p17oQeY~n=>kvo(_3XwWV+5?Im$0 zPtR?a-gy6-CwtzcnLU1>(7*da|DgBt`uQPHOQ+Zf7pPDIGMSv;4o z9G8|}lAUu$(Q(3nk{u3toFk7Cw$^2zC=kAO zHTX(hOgAnd`gPL<1Z=Uv93RQmuEhva>~nANCInoI9*7SsVl z!9y5K6}@6(@+$?4IF5BkNj@H#0$@Efg%KmgXdgJG&e3k=Wx3zAr^jgn-wLw1CX*vP z=xKZ$NJTHkyqDdQzzptUutt+LIv9wUZrZnZ1nJ`U58~J$T~o#G$zNke0Flu3+A?#<~FkLotnQ-Vz>bxi!>`KbZ#@BR@KFlsn~{*VE`#d_Tp1F8RM1XMV` zF|o9VqF9({+Lw$74=>Zm{9u0wCMdu#wZf;Ah+o6X!_>JT4nan%I7GMNCGvL`0JH1- z+OFC;X5L8FFNai!Drm6LL>;89dQ>e3$E3cy)2z=Gz2~HBi@-hDi z`b*ZW@K`;ZtJGED23nC-`&cytLO zC|s`so$4HSFY3-t%M;EU71t15+iTk+Ns0Y~Gv}&_J0h~pB*wc<0&rm{CNO)(`a1t^ z%PBlyJ`T(dTqydUuhk&LE>d!NC{dr@nk>#5GTwghgN`Q(q#ngbo-WMfF#0D448wg> z|CwcdMkPwsb9hMfkeVPDOtBrC6~Q3JeP2je^yV_>ShC)U>9P^#1T6bHHL`5mN&U@gAh#2qIVw3eE=H|{GW2V#rANuTKx@H;Btq@?xI1KUJ zDJvpCY8}8*=fEB_odq`B6P1@hy!hjy9a(karH9NL#_RsfZI1($ipBYmKaG9Gd+Ac% z)x`^qZ@!EMq@1Rgf66NEA$I$u5s{*i`t{P8g5neMr-Q{VvNTpy((28+ z&p~zi-=5+wCoNs^u(kM*H=lL!nG7YS#x~RRSOZ@cIXtdYvkye;#*d~yB|ucGq`?k| z9zgi0HST(L+n@|I{NDrc0udD|8W8>o957qHLI|mPuY;^%xzVeoOw05no2&D~!>Ws2 zj_ET5NE#1sJ@NnyVnUVT$YVd^D&lo+9Ab&>_pv=xMY9rumWPWNo~#Ff8OVB{S0CLR){tKBvxHdB^P_X ze@fNUb0exmVOUy$JoOt+{%_ZObjY=9fDW%Sh_J>G{!PbRqzU(4RJ?nVA15Od89DmOPaAl=?H(fuH~S0f+8DqBx3;hs zZ%#D8EN~NruP+44Z^2w}Jna!$V7t=z6G28&vxqm3Z3hb4G(Yzl}!ps9;4SLe;X@Pc!Nh5y2q9 zH3PL(RLnndu?W97^LSgG#|O==sSZog7ZhyQtYG{ECeyvVyQ0v*=%b5!_@yIdRf2bZ)TE)5<;Kw#gfU{jD#c*_FnN+@=xS=vi(i0UaO8`)mT1vr zDeO*&iMcB+Lr6v*X5u4U+-=!o99Dmni~=lw)yODnYB~_r9i7z@`ij~WWcdcX9|H)= zzYU`9jOG^=7S7hTZqz3Q5KcAA?9p<76-60@63jdI^|1h%IEpF(xcHPJ`$ylA@&Jeh zC*F8@(QocS#ARgg78X_quDeEmNx2|HNJxY0FN@>m(5lloj6DAS-A3@18*Y;HqQ9Kb zLH<7qn7Lpg#Q`xy3SUoR2dO)~T-y{#L!iOcD!R{6cuVU_$2d~ZJ*yP+7O8JYsyY2B z2XYw(H@~mX*7^J+LEN9G`C_sLy!C)j|Gxk2&3#?hNmBE>suWg*cr0=1nT92ET zl|U+AL@>Dz+CXqv3O--fv4OE|Naoa_HtkFiuCsYe-!F@K1^(T_=9}t0iT}sfTR=s* zesQCyAf+fRAgFYAN(s{4-5@0mQX(iJEyB<#AR;B*-GYRONOwth3BuiT{`K9vzIE5a zqa0^3XjfV+jg9(DU+>d{uM=ayup zbO~ho6jKiBf2Ett(Q?KUUfJ7cnqNj)!m1QNAsuG2fVu&(1AE^AAMibLMGdkC&$pP7 zN^bV?v+Ron)%0I86lzpe#NL~0U}!l%jx?Wb!hBH!c1)c6i5jgchNEC*L7q6sGlS?= zWe@p=0%MbBu&2Upnpi#3_{;H8W!`E{b91C(yxRbL0_z^O@ae5)5G%e|T*Mq3sb)~T zA^zwAGGM5fas^iNOni`@0u&TB(wfx3ZzK`sVN{ev{(^XVBrt6|Gd2MADWx! z(oTz!WV^(E&Q$R%&qZ@KO2--xe_)90zNtrIlFRjChc3aHy?pg19HdprZ=Y`V%Q+c? zer9T`M?3rOmSgkz$4DtrTp(wBj>}JA;fF8LsG-L-k&{}!1)!dlPi%SO`iXW=7wa|o zT@SCUcKQ|<88`l3^-NSK(sCue`qoq-n-cG!mPuf(j+#dqTOiIRuIbxcpjL}zRC3IS z6+(Fu?4qf14Ob;oGBC@GxQZyO0xg+Wv7D`Z=Xq6+#mY%{(rRCl><^x`KI++%4W42F zF2zZ%q^;CdFVT#s{yU9LsLw}#nf52^8F($XRmh%JjQjX|yHbh#`Fsb=#V8*%!cGtS zx}=0z>ptJ&)HMw|IlbW5%(v7|NE3Z40DsVoqqI+Nc9TrZw=O>$n%yDQj&k7i!XpyL z#Q#Z`FR9HKZuRQuLZNkoe2KVAAnjUHbc@+urvthf_R94|BPu)9WCbmZxG+KG1)|T+ ztBzB(>hoUT8WmpS^?t<1e7^Z&+x?CLeG(P|EvV-be_DD~A_N?DYJK%^=-DWvQm8LG$0!J zv&T@ac8q3PV6;Oc%F3xtW588WA+6Vv$p0aR|3kb-Bnag1|9mCB52dZI>6z$|h*KY# zqtTuzwVy{FJ-da19zeyOB-Ef|!+UOq`9vg9!APe_#ItdaAg-a|zQ~qpHty3LJhANP z-MC1-B2<^!-~P1N)Yu7)jY@7FuA_El^r9IlO9Y`<>>dsxQqol5o$PFBVK3D3^RJ9hRUH|GVWvTSe;os7*xf}`sQ7z2nyd&VoFMY3Vp=prX7kZ0l^Y5 zKk_B^la*h;eS6c*^}6};=qZ4eN8Eg5Dte5ak$hij<}ee*k9QoqVGh8Wm|(8iu6uTR zTwN?K86-q=9+M|QsR|)6-zmQW)_x5^K-ZM&Te{vTVt^ETgqOz z<5a2W`7~X4a!++=l33XolaD>dv#+58xQJoiAfB~NN(7-|(%i<$or9i~Htf-XmhC%j z%M07`L?&6pbA>Ke(td$RAj1Wa9@ zln8%ii#_&6_e^rll2EE**GnuTX%;3n+q)QRTdTz!d?2ihDs~su*;}TI`oBj>67_m} ziC(RnTuMK&yohWen$=_*<5QIPGBu&7Uy}7Z9GM6TSySboME79j7G5gypAFESjZq7w zT$raaZgGtC2#d@U+Y<2H-4@&@Y;94mc2ZwC1=0$KyC39RjY zJ}pj|`<_XG8bAe@_)EuDb#doZ?V0DvG|uLjGX^XbBN(zK0MjLq;RViXIXn#bFK^xC z0}MiV@pq?xti%*|yYXcBbAft}g)t`y91y{s3o4uk+W@3DoLAGxekgtTN8q*9%#v9>;lD2{BlAp+MP8mTENyDA6JIkZ-0w||oxXt(pV&&O!e*=tf1WyJlCo?& z9I1}NHx>&2u1ya^NLuoK$c|NwtOw0z)Q}qSUt?E&j45A{`Yu$p*$;yjK`fO`2LH7z zN4G2|mNFMwi&3;&US58Zx1`2=^aszH+w8KW*X?Q`UWOVAKDBKJr8;riZ5|fwIUM z4$$9s2(WN{Pun+291LIe9@8PlOBW$3@e=c~AtuGkO-pWWYxPEX{1{nI+H5FX_LD|! zWR9sFxA~a60RdZaOv>Hmsyy?!KSf zw)3E?2eE=GR$e~*7T%`l&nPcmti!jTqy)_Ay1Kh4*;5)zgM^ht6w9j<@OfW}Y@af- zv7ze~QPWzZfc@_z`YzX@!n!z1h%CmbZ zy9TMU)@@Rl^RFz+Phv;bdhm>B!@N2?b^d(n=0eFu=->TD)c*MXHU2a)kr#O+ou@8=cd3mS`OvU_`{THEtv z!*N~gR{XtLL8nmY%+vjZx=oRJb;;r>^Gb}e4k@Cfw=`dlqX<6`HQFYy9XC;d!l=UH zMT5OP5gafS13f#h+FLJPnna%M$*RcT8?N&~#Fs(Y(zm~F$ivvkT(ogcoWyUdCxR_WdmpI`NvHtu}s`}vkmgYiMc&}y9N2mNht^uw6xrvGzen$EQ z9sX$R6-2IFpk{E?Ot;Ds$Bx_i9v(lQKe@B#7py6*tPy0SMVnUjQ-bmcw!hJ&5>IZu zNo*jIdC#|X+~K-(cCh*+d!DG)ImVJhgAuoRH!_XNIAl|*1b>U%HrzfgqpL_I7V>XtDpD8e^hlpwi_^;Ys9CSF8haD{ujKhoR#;j~xRb)=* z+vd%2LLS__xBo|tC2*o;;ONOC>3N}upVMjZ_2a!}zeHlDBB20Y=Uco`RKI`! zAgQh{%vX`wC=fRHNhZp@j4DC49lj4eqBv#Q3DKgE84Ffh7@;FfH7 zovRY!DW*)zJLy~lQ#PR=fkKJ7?>Or7(Efw`NT-Suluua&1P7HH*v zTll3b81zNRC-?lIm1kgKNXm#`G)O{0aO#RP)|30;;AhYQikMoZKr!lNW{{2LuKnY- z?Hm8OH+@t=HjV}=;*SS09GL&<+MhyHLiCS>b@Q>wE|k)Dlep*-9_+p|4##sSf3u6- z^ZU0>Vee4Vd%O-qA)iVr6#6*I-)^C0H1)sTVk!vmq2&EJpZ>jFwYWQPR8f^YG`Zp5 z-in#fwn|S&M-~+1`ay#zyTKr=?lIx|#tV8TrZ-C3F{(!esL@zHO=3nB1XwK0UdZM| z8ktDUqPsrU7DP%wsF-g1Vj+;E-u+dC-{k?nQhLP`YQ`3b*E~^IzwxW6AXrC;ZGQFd zFJs%dn*=vhVy}L-F(8=Y4_STz zAqawGB`(h-^F5fTFj3z^MxrrnHC-@7F-2>x6`e1q!r{{Hs~ZVoXu`Hj_++y~`oR&v z?>d6nvw@LZA4eM2i1y&?dZXOYkGEF|_sJrUMMOAxi z&Hyd;_V~E&`yRYbqofFXSJ@QCIQsZsdWq2spWe^U4>^l(NW>Hj@}Y)z3bMXAP++VL zI+4whB)JllC;ZpYnp>zw9M)?f?)=`^p#8&Y1c1~;#{UCj@ZWy=^pOtp)JO7^@8vMy z;=i=xd>W#l^>s9${P`CVgIK4u-q_41Cih;wQmApusvae*cW<*h-pA)svw76p`w@Ya zuvX_iwRUSCe+i%}yy@SEOoKZYkk~ZPszX;-m!6UFwfG}(7-)`;^a^!U-w`tPc4Hc% zibY7%=a$&+LEC}Tvx~1zIb;x<@Xd2PCNu$?=<}e?gyr>>FNP1Y>nE>8N<|bDJ1lK< z(;;Y#UT)EEH+rCpXJTMsxy-xWL}H7v1}~m3wVybOKHh_o)bZ7Z^66-E-Jaj&AR&~y zFSM9T_XT`v(Dkb?aa-ruDSS^4YS!~5^Ja3&%|3liM7bL&RqDEG3g)3=Nda?v+*NkU2;f)*r0U3&lN5KD3QmNx1$2n4A0NndAE74SqPW9;T z5s2GqO8ygiglsmf#zyaAVh-O=s7t#170{3PKDjZ6SRAJeT;lF8<7CJ$h$~lfX?!0M z5olWZ$E5tsg!iRssS{=j4B%P?cWChw%6f>bo>^Imv988&Yv!9-bK`v;=~OA`{BGN+ zl2>E@=SzAmMh5ACy9^2W&6O>`e{5wX}#b>UwF4iT2Db41)gneAejn3HqaO_hmpU?xjZ? z-t$_5$(EXPgD)t43N2p;21pYc7!rtSs9jtbswI6oA2${cL@j+()UwYw^+B6=ztgsM zD+1r4yu2K>CwXsGmX_(hN3%kgaDrQe^j%aA!H55)OG0#Sr)c0RWl_`R!o-B3oTj8{ z*yWI`?k%?;SmIRQJlikIYucZs62r)r@RV9^@Gu|7jeC*Xi7M;je$9y4?G4xc9tk*P zUwf~!B@hu3ekfCWhlb6KEH?7-zg4tzmGtvsAO65>_6t$&TgGFpt@u{Oi!FLBS0fA+ zGhvUq#I?xI{(1RA<)}y(Q?XAVAef)F9B`6wVHJl!(HsHBtwpj~Pn?&>6%Xm?&|Ozo z=Ib_C+q9cpbj4qI)s>icKeC%V#;ef7gmp71rJkj%BlWS-(4~Yfb~nKF$On!}a!83| zlj!bij)jqAP%CONxqNk<5{UB13z7Hox0v^m>o#IY1U~$2WsC z^g@`v%*DK9YxWWAq6?U?6A=+EuN@DG65S4N$3$)Gdy_6+kHW%jqW3f&Ufj39Ol>d_>XxUY%}y zz9oxS?zvRtaes*dwy*2QTY_&U9rOdXCi&8x_2{F&_8^GB9CPq{#{-PwgUF5v^~%+f zwm0z~1loAAEukER5B`U^n#FfVT*o}Kzbrdv8d*G7)74X=np%JBCobl@X!>G8&$Ove8qhjF@xGlbbK%|hc|0Rtq*q@BE?m?1auD!h=uR2 zDwUP=SSY$@4EMnDcF4a2Q9YIYg!KbNRR8j@cR9i0ofkE!O=*d(H)zclRVL z3=0Tnv$)>|*pX^Ikt3xyNo!MIZuLpf<|`=^T^r93OcT2td&8ldY+puDq!ubOlS&Cc zsb*S?KP}bz+mfDA%kBN^Uv@7o!opX@7}G?R8lIh$4z|a{h|A<0thq)%#Gt(We-x~U zB@G4|-joNl2y|!#7lRoNKfkra+{J_i0>mK>-_AQ*2)kQo)Zc+|X(h6(q?^#Vo0g~Yr^h}6PTjsPOZm%`NT`?21 zj2eWT+xq<8a;^pR#OLG~Ogwv0Y1WH=mh}2;z2HH1cDwtp>$EQw*qTnSQFzYrcs2qd zEaAD^s#vp<+^JqytlopHfk?VG&rJlPYAF!s^vd^OpbC}9f~>>enyX7god%uYZi;%6 z<>fMsonKxYh-V5Y7{OGhe|PT8fs7_-QAP<~n%l5y0}a}zP3Iy>%bOeINH`0Ht!3wd zxNZ``#wedj``eoaKF*qYZ0`m1FD@UY3faiY4E?`ZI)>!RO1a1GDX)RHzVzkuewnt& zdNV-ZsnFo{zKcNbw`ZR}zuy}rBy^FZQ^W3DFbx7*UsBL(S`r=sOPwGS3w>ib7zuqlbXd!wK?_=l)Dr>pLRNGF2jf`XBvE{Ep zXce`7`T;&KI^KE-IgUdLOBG>nzktBF&rzkE=B>O~eBNhe;-59lzAguGh!ykO|BwtV z2NV!dEWT=lK9!g;O!B(34KsLiFc34)%S(X66oJn-UXuanwX*J>8iNN*0&)M?;IQYu z<$Gd%T{OOe^wmpdj9jkwyEE5o&^Dk-5`y%k@4%l>AP*uUK#|OA}w3i5PeyB`G?`S4_V@Gd*#sb3zk0@YQQ%)(^y~8 z>7c-e2Xq%XIXSPJ`^3=5v(-*D-fIkagzyNQxcqxCWJ7UlU%Ler7AMN;Zf)&25FMsN zluC7W*56HrD9Jm_^eUC_B3e=1S#7>`E(PLREE{(bpsC4XR}M7w&4`>-I1I$bLV;Ij8Kb7}W}uvDW~v><8LnBbX6|w;NpBBNFeXu5r?~ zTOQ26K{sk2NDChN`SUewS3#}ROI@E%cJJz<14?9+(ezN2N=)877W-b9r~2t=&pw}oEWE|;m=+^h zSa|cXZ-k)^KOL>ry9A!$SE>_sEo-;hEDu^?sxHDo(yrM^@|8%w;aGr)2^$Md+rD2@ zw_8$?l|dEO8AzBNFux{W#O_x5b8ZOYK$sg0yfT3)HwOS|=o$8nioip0*_eoR0Xp?v{KZcu-PoK4udP_2qw8sb=zflWl=c^_ZTBC-v1}FW3xQBdv2ZJn1 zonK|{8SS*x=y}cWyr*$a?%&&??pm8M@9do7WuZ^>{=~__Q_E{u!$LHevxx2gFoY}c zfAk0IJu0es9r6TacG_kweBvdrx?rUmdK?(Jm_bAVf}8I9=bKKAig0Aq z!UatCr_EObksdG$LH6jV_C}DRlsLjx!8O*D`CPpB6z*pz6 zMH<~{)KGh|YLYb#S8Xfl$LvlUP{-zj=|l~G-O1YKIhgf6J_UjXj#G(esY92NFV3w9 zTiA8@=4MeqN;!oM;29jD&=Mn3yvksz7#z=rm)53deyd!zq4bYsny5 zhU5FIvmR2(vF9?m2$RbT0R|rlt6+A+*hm4IS*7@1V0i$elhM8JmlAON#L0=bQt*B2 z808LRO1#(17hl(tznb%dGJh)lX4`zo!)IJAqQMS)337coPGzV{qJD*6 zf$vQyhHW~FBfnj0>Epll?YC8^0DR zpBo(MJ!J2@x=0nM{ccUIk|$BR0RzYsmW@LS+4sJ~&}P69ZXSZ)XB;G@gIV1BWy1jP zBjpMuIx)rDbP}4{Oe*>XQZFinw$vGbL3u2=RT_SqoV-dWIX9q~FGdbq)v)Nvi%LA? zv4qDOu?EbFhTIX|><)f#Jii!q4lD~QighI(vu;-RkDMHxI*ll#>02Tx+E(r^aTpY_ zbPBqO$)f9-DKGEf+;-j(*81CPffetWB$r8v7Ycp|icPRiu{B>jf~N=9-8Ei&y*J9Q zZ1;5U{HQk&ySO|-hmc`YfDE;N5H`>0Zo3H38*@X_j&d7=@Azh{J4c(2(PQI!c02Hm zdruj+G>}O7WSY(7WSaXX3}dNdT?zonS*j9V4my2&(D+ih#r8;ymZ{_4{0`Xq9${f~Nrwm!k2!P85865K&W&+Uy$zO*hNBjS zC6JNc^937gU#)SHBuM2a0fqYEA^)jsHSl@JHoRb7W@(d0@Hj1yI+WY2EI#z|(zCO2 zngS(-NI{7MKP)-v7rR)hAhW7s;%5ehN$wP3Oim>iu282|JDWUiDw@tvJVH8o9RkV= z!;&TbIJwx8*E&T+xkp}@90Hjt_b3Ki0*f(^FH7`Z?VbmpHd7JIBhZZIx5jDPmE)~b zQrjSUbSu?s!IIYZ*y8%;tGOfEPappP8I#_;baLbU>4jo^oor|xs#u@I|A>->3LsPG zoKQ{JYs@QcC=wNB5`B6`K6y3n5iTM*v>_Q7=$_^*-0aX`1er@sHv+CWxR%tF`R|Ka z(IrTE?0-Z{OLMQN)CB@S0{*9x67S(3Jdro=@UvrWGF&h_)P-uP$(clDU&15dp8@?7 z^vA^*H&DY=7$tYlZaSYju_5)*%%{Sqzq5Ve!+A(F*uKB~OsB4bATl!bHA8~3BRQv- z1s>?WSH9u7y1Hkm^Pw{@VT@un_$*rxdhia1%;?n-6&R!+-Mi(06v}Ldv3#~&zdejg zf8`Pa^l`D@U)syV+!Iv|jn{0i*6{8N{0P2*KC$;r5tJWw#+-4WcK?3sg)XN=tey0!Q zqsGnmPo_P{sbi8}TzK-rTT<%bi0!`P&>k$O)tm@rET zUfjs|I5TAz2pD>5%1%Rz5f8OrGThC^uQ2Tkb$IftSE+^LzbxO(ik5z6FhCK{vh;2v zQUzOk)8&-)(!dT2(YAq~r)TVyS6&5sm9^USw08v(qqa1_qk#VM`G;5hoRibq8#|$p zM&CZm?IZK*^D~WK@JvP#KQ`n)49l7&;9WjekMcuDe+p*{GcU|tkdC(W{5}pVxk`wP z21-thyqZQ{*dqj?cn;oER<@;1A()FmZ6^@sT=2m_eS4;%NXxCyyr=c>*eX*+h};DR zlf(~QInVP)kkzTpjn|zKLD=8BgA`){79zzjB3g&XX>Z2d+2=hN6{ak9_>M2t=o3-( zQFF=?-`&oQhStUpV%>da@{v0U;V*G&KmLU8e1T5!<=}WqnKVe3 zi0R!v7_kEGc<;8N3nN*M?kFX1p0DX;D|UZ{1&BRzH98>3wuGd(+=7(ZvyM zQP>ig(W>2C$BX1}z6h0Xn_uDiUa`Ye3##xnGG6Yvh42E)Y1EwlmBnE$V49Kjy2fDY zJ)TP z{e;e&BASVl){~^rwCK>yw&vX+r$7#$1WvHu)JCU?Q@gcWyY(UU$7zN*gXLN+GGgu{ zZ+AmZDv7*d&5!3kPr-f%;RoSJ!5?HbZM46KYkEvs2`I-Pg94bChe`=C3t&(C%A%TRym=*tk5 zekj!~X_MK~^HJ37kBpMSkvIC;pxpf5*c#cp613v~rEmJ2U{t=3BMS0FX$SV5zLgFO z`FOkQPFXopR4c>SfOa$d{~>b1Ec<)yOgs7Ir%kg6?iOEju={xs>XxJyWnBro^v%Sd z7odTJIRwqzDwiBeCs5|}EOBOV05i(E)r1h}CGbRgdJ3L9jY=0A#?#1&9!DC*b!925 zRCO>s;aft&@IzXTg1z%#=-YRx4JJHoOf3TCUGHjzV>3OGmzU=h7YYLm44T@-{GFYJ zNIpFdDTE=czXNV#eTy1?%^=HiW=vG*+0KDk$=nY-WS56pDrOQ z`zYOOg$ZiSr&C--a-*Gx5dV{f>Ib{pt09oR4z-e`XTDu{tnMfZ<7O~yV$JB*)Mk-8 zVpSBRHg`Gw`xG|ZjqaV#K0sbAr+ZO+nN?bG>(g@BFi?wJl>CEIwx_#?hD-x=gzh~5 z^%KmBdfG5BQp~+F9w_M$^$xl-FX))QdltnB5t1s{%Z(M2r zppUw|Nkm(`U-+(ZA46dk5$j5-{fowOLQ`_@h3CQegy-keChEWNH8Tf)qP4JUv&Red z{-sFVwFB}RnCoiSycF=5F@IgA{5)bHSuWKcIm{sz)gyhdIyluS$CdOiy*QB3%~aUi zuNfP7lzFGXE5V+fgeAR0fb|kthc*K;gb2(Z;%kF;#}DsCVE-s|7t!67|MG!u-tiAu zs@_ZwgjO;?8{Wd{QVXp;*QK;_0o6?*t_LeqCFCK3a4$5atz%)_dqCoD$KjLz9XAx( zWZ(cs`dA_>&c<(-9W$N4wlA1;B@1dn9LGfp!p7qV8%ZDbi=fgU%n2UZF`7t1rZa% zbmpzHOtF+wd`oaafVkGYJLQUQ%3cFINC_czZw3K4v%a*K+j+ciTG)LLQmSFZb2Qza z@&UHcd&=b-9T)||wT=H`c+8y9L4f`?Bn0$-JSG_eC1WKe;|V*z|7u1vIq0*<11Amm zqWwxfCXiRW#1QB2w7RO|%Kx13i~#fWd(9ct zq|kH1OfAq#jlTg=~%@c@0GvWz})>?^#;5-C{K!r zvYXNotYoAWIweoiIC#9F|0tz%(K)LsDAQ~Eq8n^NKH$y>EEIj z&OqV{B- z%9{P&Ad>pKCX7(vo%TP{Jd*s6FUuNvWn(fV^YF+$-cGwICDrzO>%~5{Zs2M|TZd4N zS_hkT=K4V&4FOiW*&Yo>@}_{*nxn$|L~GSNcAN4twdh~it|57*U@((1&-wrg+(L2M zz{9I@7cX2n*mgDA{Y=sQB`w_;=CCxPU?{0!%?TB6JsE*`9%LR0|61G1L^VRLSPKRt z`kje?{4;pTF@a`2`-x>>w=yyo5C4D)!r=T74)ujnP_wyKZCa{DGP4|Z03N-~L0h{B zU(jG0J4@W(q-l!RDh0_3p2Ra+1>siqztP0*{&&ce=p`X1UqnZM`{dTm?c@SN58%7Z z?IOr380fz)=E!ZUU2kj(oTcqC7lMic(;gHQYXI?97&Y0X@FFVNiCjJOm>(O8NmYb{257{HMjm|J&WAlTeBBKBJ_x%3u zGbAOBH#d`up0*kfjoWmuiZ)|i9T|^Of4qBz?6h+Me(hEEqYKZC>-QV3n%Cf7y&_=D z$JZ&7KxXvCV_J0a;I#ZyKX<8uF@h zqToOf>3^hp)8fReh@i23{C%X;uw0@aaBpn9oT@GZ(EsmAF@8@L^UxbJBi=KA1>MZ@A%PDf#XKg5i}oSb zvQbshXhNU$ya*i5MUupdo0FCYF!&wZ7HmoCF|RlkFo zau?-&TpU_Z76#yN<>8-eavz35%!y^YBJzx6V2%KhmzhZEJ#We@C;kg?K$J{^s#9~4 z-p$o=l?IKyNkl*MF0ir(v#y-FkFM$m0=qsX`R|sipVqD&;dFL*%zoT2(h+iO^L{yR zUu(df-TV^6jQ4*-p8*POKCacIRCaKJcg#lZ*t)sv9r@%yy%0r(>NLg+spi6o3S1k`_4q8q_S&v znzVP95a)Z~a)PMRTH3qQV!s!Q@%p~u%05|mfIaLF&%ELRXZswa_;tW5`w#0}m^MX2 za&Xvi?m&lhG63b-bX>_)^5Qu@O;74I==zRL<6*$M%=Po>}fw>s`DbcE9vAoEz3wwjAB&P=BO2D&oMh~3P#XDo4*ol zn?13}G6rp^v-3dh^s6N?IC%Keu8nOO6g3X_gx0WX--RxvWc9wd{!UQa#q77iLB-Ft z%7t=K*tJQV2_OjfB!W7O{NkVi@)7e!?adnqmRea9cbBw`3^KA!w)tf_)1Vp&PSMUN z>T;8#@drNN16C|=h+NiyG-ket$3{kWM1oM`V`uk|CmIgq3GIp6P>^2)j8lncZG+%B zwVVDUba{DVd4bFfuNM$2_go1ZZqClW(|3G@w=p`p=y&D8rO2O7Bj|p=4Sb(sxlFB) z!iaeLHV@aAi!g>`Fam~cScL32ZzcMYJT4CFVu>yV?%9X5RhffUvlwuvZf`(v%k%G% zIZ_P&Xo0*X)=lJ(&MzPu>NulTpth!f$?v<0wYZq;p4oJv?$>A>YPK+oZolbichmrb zd@~r1p`Ko3r7TqlQM!T`v)wk0pCKBP^_Hm`WdZ54;y3w>Xe)!cfd@$n)OgFrOyaub zF!x>hYPUU?%wvAnla%^F7p6WN20FWes@TWJ6!Kr1iNd^l7@XlK;8B+@N&eO=3M2}! zxCh7%DU5`(F=!&>dBGKofx58pMTVPL&)y~fQzG#aA=Xf#VTcDUGB%-ur_NKPWz3w! z0eJRCFjWio3W|yjKe}z@JuFGp&E$gbS_Pe@7Wy0@SpI1=HW5mP!v*&SYg>KLIuVI?M(OpN4+FX`h#-Zd=0w81nv`B+UMpS?O9#p*ap=d02usNGK?l z(G0a#`)1@}u$0P9x!O*nH&mzJ9*7T|IOv?mzz9@)Q25I;ju#;S>d4i>W@C5bXjrBi zA(%a$fD2!*-~QXOWW^XaT59O21Mf?GRDiHZ;KFoHOb~T{t#faYR^-S9oZaBAdjsw| zaCQ$S%9YN~tKJv3ZOMGP*S+k5hU6ip!aPz zol9OUvq|qlo8{S(>;ny@9TpcnF9dTiU3yL2&B{UlSLaG|U+RsXK&_#8bx2!iWEi(@ zC`TsKCB%pHyn_>_0|tL2-vX<+`U@5K)3F+6#E_-(@A>53pdSUerJg`T74r({J%{{dIwrZcy--X!<+;xME95)%*Qw5F(AHv9 z(UCEmQJB*xvve%x%4Bq>bWXrb85xnYO-pPAaRAtlq0#OxT*C`@;|xUc{s08)w3y}# zlI7)dK7XEz;bCH2BH{YNV~Bx>NV29TI2l`zGifMHNVP1`2>YNCVqNO|HagYPzVeTk zje4T>?bJV938-gWR)E7CJlHd_{@M-OCyjN_gu~qCd&Pi!k+Xc8Fn5WRjn{a)9qVFI zi)6H|s(C(mm5$d@EA}7WgX8&KocG7ab*FWYXpPExV__KmeS|cXXBH|Dk&T6phAC_E zFhz&7!sK^qzIyLK(C3g?yly=K3_h_fK$T z+=3}mK0X#mv|uQ1FljBv-fqA~>udg7L_!o!Jo3*ye*STL^xz5iU`W8O@1UXK#ie1E z@j%a)^@QMfL#cW5l=rOP;v0A+0Woo|lv9qt^Yf+qxQHT~AG}ofOmD-=fdz(Q9+!G_ zr`cD~$T?>8dL4gP|~rA-&GU#ldo#fCc*KW6=7c$7ggUFk350s);!JVi2Qpm-2?T(mW6JIcg3_5hTpdzW)%_irFkl-wz?{_;w=k*ZZ9M2S zwSCQ~&tfr3;dkZuMTk^3QlpfjQhLwD1h?$icNs4v=6SRCL#M3Js@$2dU*RP{ac}{o zzQ0ZvdqR)PdSFsUi+^)a2s>WxyjW;Fd5omJz&A|=WQTl0{6dVp?QV~7B?PqAa??Ax5-OhLK}nKxWoU0ryC?$9!#%_g!u z=yy^txOZ`|v)Dsd4Sw)LB94AbHlT8)Rn@aw$_HnZ5II&~|F1M`4h^+=x+wU?|DnX7 zwk9;WF>KealFB_#qKuHbGvmEMjSM)DIaWX}3Kdd804f16QZQ+0e5d^2`kI^=lcpau zIQXZ;%HjG6bx`*!=oRuJWGTW;*0%os{Sqj_cYL3g&U<7eZ|$Dh+xfj)7}SbNKP`&y zK=vk_2|P9z&&71QzkO81^R!}Z8@z40_;i1@%fg>8=L;<-|2;g74=*7W0c@curx*MI zFR(N<)$X4}01Y&?@3!NTeY4Wt;YmTGf*9FDH?oIrXAj{c78k1_!cKI5U)?Qsxl=ABOA2O)b-_DO>C0UQXo$CzvfHkC+&m31Z3 zo&1R z`k{=I1dxWtS^RY*9-I$;<+)1!Wo7r&nX0U;43J)DZyX`=YJNV-`dTJdfXSTv9SRP` zW=H*wi?|Jh@c@D#ZI4LWleMYFRxjuWm9+O>FVlla`Id&`i5#7p_c0kEhyIG(9B_)% zs;iREe%>?nzE(g~4B62-J+YVz0uDd`3C5RqArqYfAuY4%I&Yv>A47NLV7W3j&cHsI zD!;MQF#ImXvFYAqwcknwCPtLdzVgMzYW-fy>{OWYtM#8hEc2n#z+DZZOaWDD8&6|J zTRVW4ZVTL&|IqlSi;iYn6OV=VzY^2qt`oeE5a59f8B+8Iwu1@DHXt=p2<{|<4@nga zh6|u{ZO%;l`(0#{z#I$|BIxj9g#$w6?+%7gGLxZ(ukMdvJ||oLYMytC|jP zFL0lA@>6FA7cm}BZg9`~_aIrnh^3&5z1U7O@2h7IA!VRb)D$?VpK0y>DWg6%-+LRz zXq_U3ABUg~?M-SGJb*AMJnC{4Xi;l!h3~OXau=(3NR`q*EoT43!;zkIyLl?1Se}HK z5qLC%4YPVmf5yXkMgmEdypD#D0#Mb9R?>|@NVVmmvBTp+|4%R`q=NcitelLX-S=pk zoNI_&IhAFZb+B5^Wk>xf@z}v^I9rj0L;?!R(GjW0**<7+oaG!nq@6Pl!Ld+Q zE|BR48cCs^CdXD(4*)&5!{Q$3H{U00KcOm6ZXpc>e|WT5W`0>p!UBV02LfMrY((g{ z-j573=SkuHEA2bJ)ei$)(E|FR`-JZ*z*nKY4t=;QfRQv1+ORxg6>hRP zZgVvQcdz7c2^{*@jpIbmx9Wb5%Bhzy149`?{*~rs^Ef$lBK$o)jRV^cP@aH<3f_4(cWv!&XM?y!TH&krd)LK3TL0U+Beb7!qs?MiZXo5kwaziKVW)R)h5xA}UWVT(#*}utfbp zu%j=%fPJVp&rrKUKk8-=wKt>Fy=2vSOx1rU2R-+t(qPq!Q88O)=S>Nz{|ZFWoM2!< zyAj+Lh(Tw^>#)lX@hHeG6B2U%%exz8_zldF-!0UVfsb7%s#e;+4vE>Vw>^tIch9>?6);%D|EY&j)m>h9>&7< z=X{zMqkda0-`F0s8ei2B9vvlX>?r9WdG-G*QyTHwqHk>;WFDuTM!})c)wa=QUz+V2 zb72}M1uBX`6rB6NThfK6I4XgA0;cF!v17~I+qXd!Wqe$mLisPQYHpaT_W2Fq*Dp#* zz%XR@)3hf>E&sKGxsE@XN1^>9{(fEkmJf@C^PbQpe@f`XSY}axZ~328G?JL76*K2h zgZ=#*2t@JB@<~XsBIW0v#Z*ID`L(p&q#J$64_NEu7rj3wY_H4d_8 zuffG~?(tP17zP8!h@7V^BF8pgqw`Q84S8&|bw-6$vlu78fXlVyy>0Sf@IT_D7>v1> zCu{_N!ElVc{xg(`>iQg-v(Z;&l|-XgToz>jzKN3aotG)28I|S9%{6>1+laLC#yo z_5Vj5`~I)kEg?7b)TrAeQ~!;!-PJ@C$;wPN~P z%7)eXuqku=Mq-J@^ zwY5_Vt1t}*65~}`QHUo+RO%ca)zS(zTdkfJ4*7Rk4W?SyDAR`_9mhWxk#u})-zpkq ze*1vI*a_!(!`6;R_e5ijeFD?ht3ow~FdAzYhU7N;NeGwHA}yUsD7iUxajz9&Zc30cZ@yVsY^1)x9`E>RdYY?$;!;`tnf((p2g^OSk>g zQUU$K#trFzNXP*6ddN%cI$l-b8K1V%(Mv`o^3sB@Vr0QCi`9$M13VK;`&k-0B9A`6 z0)*MiV{&j(!*W&0({=691>i0b!r@LYK?+6{jf3)7SG6o+6%X};>*sQ?^`mU1Tkh< z`QIc#iK8(S+}TY4WI|Ewq(XM+YR@4BGoR)$QHmtQ;If(Dy$44(XNlj3mjjTQRc@NG z)9{oX(%QZ2c@s?Gk-$2Fv{u@`{jz16|grukiEx%tB^g#U2N)aG;}LwufAYf2kp>=CIu{C21rj^ajuu zq33B=zFO5#>?PnOd z`A>GXs}5osoE}NK3THF^toe&`RL@dGs@)_Rl7+Z}nP zZ9q~5jr3xsfMbFPo6e3jGPQ)Euy)i|U@tz0*!BNm>notL+`4WF6{H&^1q2b05(FuO z4ngTgy1S9?6ayqA1eESB>FyK+>6Avg?|RSqzW={>jC;lzXDA0=o@ej1SIjl%+Leo> z38nY?|2I2&#E3`sF7z`FU^0W#R5afVP{kl)%*i40$gg@;_wD&*Zy>|O=A;u5h|6wR zA0q+Fu=pUs9g^G+uTg!5OryO8z0ap!$Mxv|Dp|D$>$p^3~w7D-)qbyhj7a{zl=WIf%2(4fE+ zH+yl@7_na&Hpn)0qEI~8iQc{0kB?!W)?}~Qd9AC zP3j>%gbW1cMJ!5ucgFPdJFT_1Sh=Cs1eO%xV+%|AHZCzbGfqKFDQ@<`i< zueAF@<2P$E#BamTw3qh#mP-9hl>JTroVE0gpS3(LsWpB>)!ZHy(%f)_Q_V*^KMxo+ zVPvGhKbx!%HIaT-f;Ab|Z=TA&u93|XGNjf8x515SqL-;0eWL4WX}uWvaeormA65L5 z62)DsJJ-=i+sVi*mal#P&QNCiJ`P&w|0>Hv?0{YGWvj!tJ2|@}&P|?Fww+TT_cAxt z1P}1$VBF(3;|1xihhtGddj&FdGomUt8|jXqcmvHZAh3BsJ=Fm-Xbr$dAjg3#wiGNU ziqHX`R^X~0g}yxkMnOn50Gfu0X>BmDj|a$4Y$x@2j}VinfB=2{tB+A@YATMdNMvfBVvAmY|TD=XmfP5Hr$4TO&a*a1OPWUI|1fkG~%TN*@Bb}H{#O-pVHHM&0k zB;_G$+_bJ7pV-Bi6&PMI!G|Yc^Cmk1lf;y(;Eq2Z@5F{-nqlRVLtmHZOa9qJby-H& z`%yHd1K5vmJ%3QQiYBvbu=Dh>@c_Xk9lqQpq>#5~-u^z9SMyEYjwHGvQNqXg8@hED z`$FpLPGW(HhK*)--S+(YR{Z-`Qg*9h9snux7)*kzZ%M1F;X}H1j@7v-`kwjgMD3f< zhZR}Hl_5OEv0vMD(q0>cV$%JE_`XXEXjSHUp#F)MNtOs1Up?FA^prKk(qgSM@rN?=e=d{fzgxD$2NX zJ_j#_nx`4czCfo9c+byFPmimo7iyGIfPwQ)LQW3Z=h|f<-1;-I6TufA3rTs+pZd?A z+wr|UdeWcl`R?Sz(GF!L>ot|0iR!-BE*3^u%W_ZQ+{QVIo}N@u#p8A#D_B(>DRF)Ekfknie^pn1rp^Gy zN~5&Db5eK_9p-ehE0U*uPAZp@9L!#C+Uv~6eE-oS+^5$b_%kz6oW`>EEq`$Zi5Dp% zNw*tzoF8+lRsUtZxNPBcGIwFs6%Hv#VwI8WZ{C{PvD;q}_+5L9eCLi^Q8~}^2Cs*l zZ=T6G{#ke?b#p8$i%LUKYJVitl>>|3Yc138W5ykZH)F5bK0U)Yr`TI&oQ5l!D1 zf7nK|$(GEm2MP8PZF&Gda_IA`BIOQk1w6}I<+7_m3O+C(tqUPpq>?vW8 zlbaWn=0>$g_Pw#O!9WYXW%|1cnUYfWPj(&uJ!WR&j;NH1X+9R7i*+x49BcOHg^sVCvQ&jIp3E^t?*+p%S=i0<+MA z4_6)cB70Keo6K`6d+8H9YOfLWC@b{_3w@QPy9%^D@e9hGA2PGtnxv zVSpumeQq81v;p@s>zz*6`_(@qcvUs-^iOqtk^~yEmF(F*M117@)xv=#m*fufBH2L7 zgZ+g!s{QNp{9icXUw1qD?#l}=wnw^DIc-oiH-CI%_${2h!7|9}Qsb-5EJ?Irk6%QD zpvMWGBHi;xe0DP-5M%#bd=HN^@u|RW@@l{W6(wUq4@IMu5`Sl zAdW%t{mSvWR7Z$v&v7+ye7)J;*_Pw`zFg?v{hJ{XviR35!Z+QOlrR<+AGPlAa18pz zD9<0Pimj$6Y0p2A>MF|#)+4)j&+snT&CpQx^(F6CL-sbNE=w|*jo~*;nI89|5-#y{ z@xa>&VyoZ2f5$(JHRq6SzZZb_LNXFwJ})m1kC3p%nMu0R@sGmhM6t;B@gpq%-Ce`F zx1|2ZI|f(hHmuDppPD$Z;A)w{JarLnD{~#z`4Z&3{K!9D`}|>gWWTHTktN;gjzojm(mIw4!53TwOa@g6nQj=5;Uf$NVAu3KwwYM>GXOB5K39YTiZ7)s? z`1rUR7us~^Hwve^$5QLx9d?`{S0}cnZ{Bdv)P*)r zRlauJ&#=Am()Za7A)%LLmS&+p^YgzJBnM(s)Tdv`Vbg87LPtYFQc}-vWp&{8LO|a@ z3gL$@nsK&9<~dP}FM9{8?DU2uUZaG3Hxl|?>k@U=P##gX$iT^|n8>PhGAp`QtQh^( z#PA!7unIVvA^2{;!t(Ol)WUW09WvN=^F13mu+q{;c26DPH)P81xn2vC?96uD6%e3V zUl-)IwhU6qXB{f}zU(cPK(g@7TG^a8hu>`ZE>RdB;U^Wk*C1@albR~UAYKJ#N^)OD zfREefhv)ng^*G9(S#lTFiiDE6F5%Q!Ovzby2tI~@FBBEe0L`9n$71v3B-zV^xKy|O zAk(2{f`=Mvjr|3}u7YeyE*J_rPly>TNaTkjLYM?;L_`SNaMw2em^IJTH+lQ#BYp*{ zUGqvfsr=emC!N``4A-N5JgTIy&Q2mYf|s#n>Tygo1Rt5?evS^l@{f$<+}y+<_j_ z$8F1~{-mw8!oAZM0Ri{IBnCV#`3YXX-W#3Ger`ww)nmeSq@TI=f>V$lICBk4(Yoeu zxh$$E?-LVmezoO(Y+&GITkX#0_E-M97mk9EAr*T@#u*3CSn#J$+VMsRC&=)Z@q*V+ zA7y*`+$S!M8!0foketHenf4D_xnxJhNt3(E^tqmm^R{n{jBc>7&>yUiDP7b^w%+CD z-fQ@FWqRY5I9xpVMN*nMj~%=mm^_1@-*EOc6Po(+t7s1sD=Vz8Qt``nc7M=u*n|n} zQIek?6W-sktEMzGe%w6#ozVPn=P{3Op1bPH$Z+vU42hYI>Dr|dgwN;P-(S4}F)Tb+ zbyk12ehLp=bZ}TfVkBdwvqvU%zaZ>e%%_ZuNpDd^IVPO#uHj*pe*McHyL+F*_ z;t8Ym#-VxV3}UFO+;D;N!ry}fO1l>xL)>eK4QjsW-P&Q&_(CLLb-D)G@hUqgNdWow z^2@F`ux#|~58#r*UZ;x}Qw0qt@;l|U&c?^PxnA<445S1%%|1n8*A1e7@&pskdYQFV zV1-par*$HsMp@CbQe$kGD&3^8BpP!&knZHH-lz5)J0SSJLFfC5i62up`@YC*A7q#0 z<#{ANy(S385o!#^EruA|(HwZm>E&S(7njxU_yoll{l1)_@0Tg%rRBZ7%VSSY195p% z3)St5C0jl+0p~ow^n2ZR@z9HGX7#k{PNXkT4gP$1BP)9_x2DE-CX*uEH@{|zgNCN4 zrhaGSfL@f9mG!n}r4Ay~*=r+xX?uC5P-d$4ddu$Oa2%6W*XvfkrsjNayqj{ut*!y~ z8x7Z9qyo+n{z*yMDCtV?qG%S2Oa`#?v`%>_srp#z>LVku$EGn9YCQ9>lyv^4|GoPW z{RT=^RTY!x)ACC%A7%pd8!^)D(J;a=IO8Rzgd2^(&)Z103$3?h<6m4RC8U*fpaOVw z|IFjmsFa{*c-X$xGqWdlr)BnO)VpAfH0Hx#2)?WjBL_=OMhFT`OjZ~7SDSA{JFHsI zPuE)V>nN!iO`&PANeG@T6zRd~=;+8?+?oPgY@gejVp>|sNi|b6=j~P)a|Q^Hwzm&^ z=*QbG(Y~}ltNwoaobCs9j$1VWlV+^B(m!%jQyDp>SRwO*1h?+3Dj)q+!?kecl?Ji$ z_r%^_tT)ESJ_XuT(pIImqa*L%i)z(-5I%nnrX`}h6H7+E{`DnA5*O}c16uuKB%Ur_Va*b<4Nwx=TvJ+FeUIemcDZ*_nJsY$h9?8$|>2sJXNn9LF ziN<_^tDvV$Sv8%>A#0xdVv|^G`Ri_6g31n)bAa~xx^dj2)eu+nz5XOB4x?^TM0GHd zft~BAB%)CIEpzqF&dk)w{=i$Pgn|%GlxnhIauJT$$)8Mz-M{Vu>ZR^5j5}4C+>Q^* zu37J$NJuWXZ zsd2QFltyPhQ7Pc1Nk_N~xtH;-)hP5)Yjpp|cS(4KSuURcyX<7Bz_{NLqqGM*gzpM^BOXNSM!xpT}t zl~gxMYtE`~zg18uDYjd@d2%9%D7) zg^6OR6ds8M<5ZA6%J_tmrc|HeU4P@{OD9&H3*xC%NoB?Lyaa;GlCEyRmc0W6ryTZ6ozgb`1^fSO-;J-%w6tTsw+`+G;3*`o_iai1Yns{b>jYtj z&naCH4$R#m6#89Vio&9TRlpe<*VUzda=IG6Hf%(Ab+&Pn>(m+j$7^N^#h zDTC$i7)e=KCFiw(_ZVp#KIWfPgxg}f&g%~j9P>2FF+iI)I5gy2T+AsRLFTJjX&pKX zcPlF&Y)z3)PEHmT6*WfOc?5}jXCLO2Af|5bcJDwCXR9h$_LXfvoQASiIGl< z(A&oua0kTP_2q{&;n3>pCt6xsc*MlY`bm{Gv--PpO|a3y_4UH=A`!ecGo3$Z%r;2p zA?}0RuXR8Bpj>OX0mM|@6(?Tn9+$0BiNP3}b`w zg50&AR*&RTj#?JlP$#`O}|-Tjl)}ed8x~p#!f;=sGwnpA5$Ghv?Zd!k%XVGe6#@!-DS~A4`af-#Xf! z4u>Nd<4V)Q0TRKG(9ot-kzkm#8ScC_Nz2L_k<@sbHUJ`G{d0SJt^%!Uzp^s!8#iz2 zH3!@V3r%U;v2$=}8U8NwAucXNwNU3dbPeJ2j5y7~gDqVP3JUJ74bdkGx+z>th7#W2 zJ=rsGb#)EVH6Xi%)$;5v-rRCeY*ATRKzMk#tDCJY$JxOjf3M54dDw-MgFl34$2(E= zp67IYd}=FRhWWaQ#l?1^6WxkL4tw5Cp*hi3e=gx+;E8dJCPjw3Wi%Ro4GrN>*EqF+ zg)(^ICMPGa{jPo#5fQaQcZ~s>Jz4OSOncG)fy`Eu5LojkeSY}R^sfh9xMMD z61)@C9|G>Fky&*i^`kU5FE>3hM2OmEZ2`8^4wo3yinL1x1O#E#G&GUrm0C0 zNzT*ki;C9TV>s4ydU_fs;8Nf^3v)u)i>*FL2E6?8xT(J%r@g&B4z6i}Nl`}IwWbu` zQ<5Rmo%r#VH!nZGX<2%kKv768dj533dFd36zrprzcDuuMeaN4B%w=I@r%Y^eQ?d~6 z9Mp~bD~GSwjuaJ2z#N5oQ)ba_-OBl5sQddJ)%BZ3ACj#cX;$J?R8(+q zaW%ubAf9e)_-BkVsf=c9%RID|FN-QGgEKN1HOkEcgK=q^dwMXz11!}1Z3)Izc&cfY zry28F=X;^%NAKiY!S%0D#p zcK!9$TOuN&&L4Fd9}lYyV?KQ2SJQ}>VJYp_K{I^FE~jDneP}Pu;~1);cT@s{-=qjl zO-&m|M~MJeY?-cgY1^sxy5zrwO%4!?5Vz?dl7RDOqdyw%(qw%ezi6^OYyCsFs8YJ} zJ#spB^;HeAeq4Uio}BJW@n=WJy1xu6xva3(bGzD&-FhY~1*h2aD`GyqdxzuU;Zfwe zrw<2!mWc_rjjatFacX|P_R6Ie8z~712{f7?>eRW?dU;-+9met6P?NChu-5;)*locD z%VB$LIdRwFX~|D^>)Cowh+>7k=dX#yjB*o89`=EA@A>?&C0Dg@>58@FtS?t3zqvn2 z0OpfR=c&GWg@lWX%L=nbdLPFq|0gED*RX*T6Zh0xI4vy=4<8>HJSVt%={gVipc6Q7 zC@3hqFed3@f8Z%WrNil8BP?=mbZTm9wJKY^>hoIXE%NP|AK~A=-Gi@7E);DBD78)3 z(hQcavhN;wMd*6n!L->?FDlCFa8~021dZ~^U-ao3t7gbL=hr83<&!T$0ElC<Uwry7BA<9pVJXa2gm}nYl-P4w#5K&t#Wg?1E4gzlM{8W-SQIA+>{OO+=7@lrNCoE zLnLq4v#NI1CnJNu{<5OBxiTLMf!pM&;;WTqJ+a-1aj@k4M|> zZ!+st#B6DHYN$-F=HzW0MN;s>Qp()8apNvnC`6t7!M_R8ldB(<#h?B9-y^hCEl2c$ zMAOW%j!AcC<_D+6PgVrBR9#(dpYL#fWL0K0rBZO*og;#D+LKM!q5fgg9s5IYo%1kYA)sD9?j&fSQUz%Z1qy(iE4-Y?eD0)K;;tO2=7`Y6KHiQmR zBnZ#+R{{b8warf7>DE<@Dx;LM>!fuX?)@7k>hm6d4yJoIHVkpXSsda7Ji1YLZ&Ooh zEC28$)5nEea{+0E-^x!O6AkIA9vsEkX|=YsaXLFY_jbpy+<^~fWMh-tR_jjB$Y@_$ zSy3^+^z%az*Vfivch8xr&$sl>Of%AqslWNfGkMrhTO@3p#|G+b#c@eZHe6*PYUaPy z(y{-Bf*$75ZY?yh<4!_^8AmhZCMjK9f4^k;n4H`X0p_#WRK>&e@88=drluZ&r#6CY z^4|6$BtH=`F~o~IJM5};CF^)@-Nh#r->6K!KUg47+dO)1G!^-m_0!l)Zs%#!QFT_% z7PncU^746Mcd=&tV{zr3Qf9hsx-mOlh1aXvPBE2vo~j3wxwn^BMW*ZyX%ND=scxSRNW0DyqD`R*D9vz*dUQ%gZa9#7`_I zC&zVcVr|WKjH- zfM z+U#_koNef)e*gY%V?37GXsN3kvTFbE@cS=b5ZJBs3YJ;izx2q;oAs)_35A?&!l?3t zDb+G)sKOT8vTAVqjPXHK?9TT$`k%~*6bV+A>7Um|A}(aHFqqEC`}c5#Xuy z_4T`>)g2ujLyx1a)0t|i7^JKO9}{_M#l^?#{axyUK9nwp_mv0yRr!fH9GceFRweW4 zi3zpQLS5bUx8?@bD8%ejIR_6XHus|$H^>z{&T(*XjMmB3dn}mEQe;%_ARBGGF*DMM zKZCsIS@K4JU~!Cihm89A`Z_`83dp1gf|41w)YyW zRsj8dS6a9H%ge01Jh85>4mv^*YTwa3)iHM4v(S6-0%fJ|OYluh zl91RhaAWnwHY|zsfqM5;RNV$?rP&Ch7TjbDUMjju>!(v4H?!t)wAJ2ah$!6+G_;nc zCgiKDtL66BHFZmWcp(ZxVlrBO@b&_$jNL`v2h7hwV``QQ3-_P;`)? z_#$<6b%7>oVfpjt&*-;r<6mFGy(nB$RW3W!i2Tc-EbynH+PxnYVFC{@KN8q?LDuVzdH9t@d*eYaT;}}sQox&&3L)t>#(Xdl=b1@ zM(FxSsQqsf3gX|1$D&DbGo7hR-Hc(bP8rF(~ zIdxDz;8Rkv+QsM9XiV0Wtm~U?eEj<$w@&(#z!6gH^&Y>^;O&9%pJ zdais%VtM2y{mBXYLH*_X_wTu!BJ-AcV#)>>awB|7oQlf0VwH_!s&P6UlHT917+!OI zkZZTt4koD_Kd$@3one3er8*xajz)!LsIK=VF(l^f#hV9zM&kJF=sY|-sVNgIZt|}`;rUNiJ$ekHJ6jXrEpP$mIUm&?Mm+*R^56^ z8etEnZR}F z?zPoGNo4}LX`u8>=<6JO}*E8t%r=_PCn+~OMO%;`tH2-*e47XW6 zhb*VOl}mb^wwr)BCXCZS5JVRb|A8s^I4Q8n*Gj2AD`B-XcC6lUKbQ!^B-NSEObJ^2 z{Y3TWCrxHL=#(3DxHkgG2v)0qeq{GbF?U+~zWU)CsB?-PR^{OOMS5;-qEeFqw&LGy zZ8sr%Lrob#^C3t_@67Sn*3v>0DBzCnGBN_n&CXWr0fk!J69>kb2Ja{cwh;7h!RyCb z%pPux1372M$jb{d=`^kCzvMsO+O%ZK-`+jEq_+5pf#Ml)@vlDu9f|dBR z0SQPlC8|01z&+2|`q(Wh8F0T+e<4C>w{LvcxNp7BnF&B-oB8$iu=nrr0JvFzg~DV1 zq^v5Vsj8yQYBk-RgXxr8(w)mKHU7x$jH7KV@NX8D+vJ1g@<+^*x9sffnwkSK@rj88 zv$B|2wW{#g*w~cc6*6xz`MkrH`sTUw>({S1K{qaNRPR2}OXx$POU7%h6(cdA*5D=d zdwRO~?Xk6}m>BKTr!yiT^IM1D>mYM~?%^Q_?i8E_kP@UFcV@INs3H6!EEq5`Ru{vJ zzn%Z&)>6rfd2CuDOG38{lPpT=UHD1A=OT(wrv}3HT&e$-pM_h?(Vsr~!-F@qw4g%H zWov8eQ(Id*S}z9>k@Mz+FCd^{y61l~Q|9L9ec{;9v$5g8Vj>_2D5Qd&Hhy;fj>cEvW(=r25D?TY97-k~ z6{}_K;;w!`rtn@&w5{&nL5e6WEd0HpRc#+=Hd*!{y`Z3fVq$`0dwW}U&-j&&4)r6G ze#-XF&JeS~ugIlvE(v5F5yZ-v>nLY*@tBV?8DE_25$i;aQj@Zu zJ?cxyH+DZf3%rdLVJtvd4eXRYtUG^M46J^{sh76LNhKU%yT*gOy$=C@}6X$4N>3M?eV)iPwek07U~Fzi-`E!+1u-bU+zYL&}0CyWLQmA^g<0Ee{$lQos!8|W)m|s z`{6+2KViiiM}7P~dlR=mH``GKBc=6-$wYyBqV#l7&? zJM{GQ;xaPf#igYND+4J5_wL`1b#3_O9UmXhwHTuu+^P7kt&(AjkLA)!OiLtsS~yF# z_VtXxv&m}4fzwp!)imacksSMmV!DnWW#jj0&N3+ z$F;khI8w_DxwBeJ6U7D*FiLK5YYQk7VzDl6%T1>?2LJY}{GQ$Qsj1{o1E1Yh>6e<{c+%aU_ugaFjWB& zt=Vs@h2o4kz`o6sb3NZ*y zol&LDhQ_&i{3>&Bi*H%VrQyTaU}kFEuoEq(*V;ll<~74kAvrYH-SuAMLCywFiQ%Ji zxdJ)qI(gWuR8wnbYHuH0UXTfq4-O)&T_|ENM@wuaTSWcSzI;#K3j7G@EwnzpuJeVr zhH^)4nUGVr4!y+(xpwZ48);80Zu9AW0S_1ces8=<9N(VH!R8-yNa>hkLexnSNMA^J zxQMGO9~ejkKD{{fjA`ww-S(+&;m%+KKlS4B7?(LV1dKBHHlddUbl!nSn|mNCiv*49 zkivR%WqJZmyZSHstzJ+ntgA+5Ui0 zC#)7geFdN}VObk$!Ed+k$fkd1r!B7i4iceLrj zZTXvoxB2VT z*15t&;9fQuzt{C84uX!ABp}e(VM0y*Sm`Rdvip5(M+ba2Af}JrQ747Y{PoMD{kxZHwKqRZLpG`NA(1epFau-i;MV9^KTmtdYrjw&}8b>`GSRS6bZ@`Y`_NvB8 z26Ac~R#E@{Jt5=x3cX@H1(T&!%tnrg?np-2e|w~e2p>ZC>R$o~IxXw&o?8$xi^pJb z`a?m%jIYm8$C5t_a&zMs6m;N|kwunU1nZq0P%}UEGjX%G$Jm{ALBq$xgLx>cUky6M zErUhTvys_!JOahS<-RIricd6nV*t}<0w)_QNUumg5SLo`B48wQ^{W_WxcSs^OK=Jv z{s*meahZBMdOQTrBt9M)@tBK%Ki^|8qGM#l4h@YD36&Dl*Czo!FAx%g*4C8ZsL%lg z{pZhi*E7e5Q?!IHqJeKnD=duq;lqQF5J_=SQ4Dx#weocf+iITDYsvq*%+IJp#m0xIkMIMWSQ(ih8NrGcBL$x8|JVs#svY4@8Z1HvuyEh9tOpR~)j&oA7(%WQ1? zfybHS)S!&uZ$!|{#&2-|Z>yw~2am`wK-jZ_mX;PZJG+`8<6Kd76?l^`?&86}p}MQK zNHQ`8k6$n{(*c$H_3P{`U0qyp@fyou5#|uRID)Rvh!>8K6*D!Zqoe!y;r)AB;niv_ z94O8BDBt`l@r7{#De3=x`%$mabB2FB$hQOpYhAsx?tNTb=wgRS_QmML=_!ikq~mQg z+?kGVQra*SJ&XJjRRenc?NP^~;^J)mDK3FYNe{p~yikH0NSbS$R_B)w@p4tYBTx6w zOQ;m8>*}bRS{5Gz=OSG`Wo4|!CiPXo#`rAsj@WbI-SHt@WMwHGtj%{iGkyC=7WCZQ z97jR1^g}{IWOTIUw~Up$3=9;|nP0eOWH5TJt4o+E*JmWKq;a1`hU&osJAzoi|94ND zxe9Z0bLYd^$yo%rn+bqcOD#`BOM8dUWt#zEB2-C1;E;gEhOh@~1WuYNX z%6oD%2+({^>q_ODGE7T89R`LCuYHq+J;R_5RoV~^wNDZ{rv!4!S7jEKM8PL$D=R^k z!S|Fws$o1J?6paidfrWTeqGJfc8aj0pJ?EX=GH|v0E)}sBG)mMt z>#TXzR8WA(u4`sU92oa}d3I8?ahXjJTD^g`N%T5PDE zmnan?57HgKXy3`2X3}(uMt!wEWmY~fY~(Z@oA+QfDd+P8Z5kFi<(`r<^Ha~`A^NW* zF;8W4ErF0(X%{WX%(!_Q&Qdixxr?bGQWNKx3##5Fh5$(VH|TXJx7x2o!T1|p;0 zDx$*3{x&*lDVunLc5z8Rwd7iUN>6m4!@tdO;x(qruf~?_N|K@1^6Xr61zKbFG=8-eWMM zf22s|=C+O(S~X`cMqFPImykfu(nDEX9N#$*`(5q*eh>IOrl72BxH0GpR!kFknhmR(o@;Ko0XS|vkkBXKD zz6DXliYEduJmcb)M6|V!{J&b}e4cf&XgpOlQPU)4Z2!z`gQKX~FZ_?AVL;?s2jm2oj8h%%@FyxpFiQ;w(#p^2`oZ%(TTcKf~%87>J0fEUkJs|wUeM(t4sh< z5s;^^>FLOjm~wCp8wuP~F*IC4aFl3iZ%fJ#5I6KM+keey4}8@beVUrs@<7Y^;)K<4 zry$YHqv6!}DYf7U$OZ4~jb^=*{)I+MOblu%sZUoh-^#D@n3a!D$!m$t2oqPn{XK0% znhYr#!kO7tZ(ghoeeYq6p!|glv?^nx>zJX+9h`&hX(Eep90LKOn8Exhl7K*l<_?qk z7a8y0g-Ri`M3U0o1hXfrdtfF{7P51loOp&neFD_vP~$$~ty zbzzt1Hqhmel>N&b*|Xf(V!#!It2#YoW#JDbEkQx+`EgwvpO)v<>4q>tFJxlEao1G~ zG#0l_Oay?Cj%#A_HZEaZ)nQZ=AG&C52yW|{(+x85`q!}#BWD_BQBYCy%|qTZk*Bc3 zc+x1qiy6=ZKV~wq!!cEblDwfT3~A;C)(IsOWoC9V28$?t@mBg6I_ z@H>jixSK&DrY6%0%0v;MTb>=;bah{`_z#c*h))elsbZ=yY1r5ouC4^IuCOo6hF?fX z4sF**wV=Zq67@3m)jhe^8$O^LLP#wZJ5uI4XgoRXmuyUDKr-?4N^9Ghhi9zFxDQXO zst5^wv{mt=Obdq(aR0}i5`BQVXjC$vv0BS5WWYqKTlu9#{DVKx3oIONMDjVBlDi++ zwr-4nh~wQMo2<|dKHBnb-uxvo2fS5KS(Y2$h?*<_4GOdeXq|VQeUp!ODVrY4pDt@7uFh8PGI;o0$QXvRxbJ?M~u z(D$ZR%>f3862|TbgCwEu`xBAQnniB=?FNNwtt3Ms;Ld>z7;G0 z_0?|SHqu;o%s8ur2+?v&uo?t5$b9AoQ_&!)%Ylm)sGiLW<#m0!ex{Rb9_c78X~z9; zaxVGAde$onP9+{p41XFvRFTgUj{hN{dFq_=XWpLJ&P?C#l+7n4uh!VcMpM}&cO(ds zl!AQNAi61{Qix$-G}iAW!{xy8FEwe9@V|BNZ7IcjrlmcS)M&4-LWxR^9=fe?c>`C|rj+~%$>9HF=TX&`_p zGdF6}KylE%ix)BnY3LVTT|ddzkWaQxC>wh$#N(H?z|=tSvG}X>)$fLD{DI^^I`$}B zMMcjt3lmiE4t!63rFy=dBEK$rWfcoqFg69-Tw#NbPsgIPrAtos-e6HG?ZU!v(<&w+ zZsSl{&Mz58$t771Wki}Pu=OYqKo%Zz^5*5|Ulhgdb zV$Lydo}qlr9S*m@DM&~>JZx}E1D{@BeBR!|i)qtr@Va!b@CS-4P|(FTekO^4Sp%yP ztc2V24d@1Pg{|nbe}Fnstzwh=XtUb)i9>yBf6{D7%7mgauMLT_zGhibpfI-uTlz`6tIyHoSTU27YkL zi^wI!5N-pL^rF~$nnU^o*>!ks!mlkxG91j#`f zYz`T@LUR-y$bW#MA3onQwRpH8+1mOImC4e?az?O5_FPRw1pD)6aj5D$CW_@iB+FiZ zmO~7TdMLz@b!SNt9|y=%FsukI9o-$^{sBw+m16pmta4gzZfKML)K`n~cGruOM}XJ$ zMA&xE+ZK6Uq9bVdsAv^_AS{6uv)lfSNhx@O^!9kBx!l4R9XznTJqd_5*C>_kaB#2@ zf(ZzvyZe|oqdHD^64HWT#pc4U5ns3q5Ya?oH4vq}b+Nw2;#Q69qM9=+r zcIWQBd-xR2~Z-A{Fio4_uSEuncwBAx-~Kvq;jWg} zbUCc>gO7|U+d&=)9Nw(IBOg%%>0JwSJV^}N`JkIuT(18u6_VTt%4$+rwcJ|0+^Q9PDd0rm@}rqs`(giB;)W6&*v~c`z3tm%@Z`6 zS!;brctFkY1=Pg%uD*0EF8moO2R2=1k*BNsOdI%FWXXE$u4Q`=r$wOQswn3OeFRVt z;dWX>@52VRP3}@sJ{8Vwje0mg-{rbHM~}$LYF(b*1*ij-dTl7(cC>eU`pcl?bBtDy zTPM2urFhjKVTQX`d3zguuTWI7_VS_yI}n2iJvv&2P+US-0_#jKQRH-U^KftMUGzkAIX$LGz_ne}Sb_ zhmO{QB=JtR&~_H8l*NXjN0<_W2k_gV0}n;C>CA5w_-zaL++QB^s1DzUnmOSCAj3%l zHlo%A2Y)oj#@y!i11IV|DH&g`YrGu7PfLJueQv4j_3tR)&zg?3lV4x#qxO9GkYhe( z{tzS*t={{tT7s@c7znyIC$qvGP&(?Z4GJ0QTqEE-uJ06>`1o{G)5ZTdwGRkELRw}7lxVt99o_JOFg zvoPb!Gt}zpo4}PsX3!@ggj5I=3clV~w|#mtLHWE0xn+uSC^XldkczCwxOo52PBYJ_DX&MODQVf3X}R&0|*jG&`bqg zckz#Ryn+5OgNGqz`g;Nkk=6ogtn2lQ5=5CX@A3;4ZTaH(idk-9nFeldUP#+yx>h4I zd^$=N!bFIU05Ie${t2O1yM}Kx?Deb#%+YsZRp-Lf^`0gHHgh|WD&LUZIy=)SD*g0Z zm+R4^R+w7=^C|?87&42F_c7b*Jzd@>xZjzaB!>W@kofgixrM=cW^M?OL>HO^Z}K^; z+<8a!Rx2C-JIL4up^;$MAUb@o0)8{?Pv31?QNOdp!#N%`LiM-^Yy@U?D@`Gv`I?1q z5bDTs3qeOmB^Pteue)e{Zu{?m=X!T@X3Gzs-n_r8WO(=V1tJ5pnGv18a8m^p{2PIL zF?eKT*e=Iksyt445_l{^o;bMEL)Nst&D)wzNG#t<$??@)+;QvIKB>o5;w$}0X&xSG zl>*8LAl)j-U%mnq~h=^x@6LEl(21$6*62gjhoL_Jwh)A1}# z$9I`42Jz0ty(;ir!2tnS+?Hy%Kn`dc*R9My@IuIz0K_fOa>IrUD)A}1_Y;KR5hz%{ z8+7^X5u&TPJwAlr5pw5CGm)17clz~j=#uTOgE|bq6!6Q2zGjI(~_N9 zsMN_Kmt0wQj0CG??qu)&MA1B5jdOX&Q2Ha5ANeq_036fZyLT}lg9AYTQ;4W+e2F!r z8Cq;HPF69W6n!df(p$UYk&$1YoN(ei)BEc@zZU-!+)0?Y0z<&)6L5V0hpn%S%W7@< zML`;*6jVY$x=TVr8WBWNT0%+bkX9O`L>d&Nr9rx-kw!{E1nEY)@yyb_pZ9ssIbZe% zez>{swXSPs{xLI-8>c*P-f&Yh;k@jgzYFszNZDDX@-$*csBTg-OWiUWD4BJG4%=v# zcfdKE?3X}mU9-xQj9kDap@ZoMv99l6x7$qHrKPVW%6k~n%xnb{$55?z4ab{KMM4naGvUIh;aH@+XeEHzzBcd}%ukTiOi@)#3I z+U;R?p$Nu8MuBi=umSAi=H4DiZE>5MoAd2vdrNcr$$RtH$fJ>{prd6~VbIt!dsgA# zhliU~Ihab9w~DV+K%EZ;H!)5lDU7x6M|dv6BM(}8fCL&yZ3H(1@|a#9@(SEA>D|5v z_!vm-Z}^!K(BuTtE2(UFkHH<1(E_bm@QrssXs6SE1YdL{mm0=0-1pyz=qEKgbx{&_ zzl!bs-ZlmPG7{dQxB%0J(_4WpwDs|CFr?a0-6Bu7{umwfEA?Y_AK#7kBAWfZra~$-aAoNQnmOw8pMzisV&Oa`Mzq2nHo=*7OieR#@}*$=|Z)aJCq zv-lbOUjM!W@GO=?Om*S>b|9*4wXTbMf0{BEmiSNKnkf1+I4kqm^M_ zpm$(LD33*NbQp+$z&E}XIT7365N2<0jX*s#P25nR=A(F%A!)tbJl9#TJ=Rb0#-V)U zDceV9b5a&(Wfs}FE;jyE&BRI0YO8$lUvI^oxeCHO57Zyk&K`qlEl?Vu?e6AQ1Zf?Yr>8xr zS3hNPI^M0cb;=A$&)C+ji4O2aeIYwhv7uRR5#Rp%!6U|KGA<*ELjC#(TG_1T(F&oV z$lw_v3{qYl`Ze*mrU0y`fBdyr0dv{+vf>M#oQsc6KkhX?dfKp6sENbdQK0eTI zUqr?+s4LA9W9kl;q+@_PB|iM#514*yr=r5_C&5KTym^y>fhsF2!0hXQzTVfJExW>j z;Npyx`i3txWufjT&RK3@^%nM77Cu=aI4N1C7A4OM_#5r#MGN5YETL8Fdhf53QuFbh zggJaC2U>@keS?M9MnAB`!_N#XQeY{3=Rj%>M z$Gc4tg0==k1)Kwhq#Rkm;gJCtGi(V^2C-;o%n--l$j`6!{nPH6pm6-rT%4Yes}wR% z=I-U|={T`e@I^jkY@cZhwA(VeURU>))6?xynfdJTkBAq?WhnJ-1)rWzd3swH)y)k-yDEqm8b@e@e(<3$e z>WiO0Un9V7lanKu{a#(m$Q0Q!I7oES+rq-6)_G%kt8CFTu7XMLxt{h{;t(p|?h(nB zfc+Kqu>$Rpz)U*DQG?oiRxD`0i?AG{yn9O?+B}#uz7XwYsM*+z$XimSxLw~9l4Pd* z^P=AnGgupZE#_N!0kA)wFAt+Hr7@(n^-fSYW%x^!%jm>J&H3)G`cBn_sEs7}e;Pp%ULH-Gv$5KW^}0;=6W z?E!XG&A7o(78iu1(~#8{XLK<0X%HC|<>RZvLy;Xi+Yv=bUWfntlqbc>@-Zsv3*I2x(iD%N8XOky;c_(PJfyxNh&jKoPWyj}A|2o5#kq@_vMvC&56oAStGm zk3YnIXGo^HxF^yS@SBJwD0tUCPpM;_$)(&mIdJ$iztZ&W+w~tm9;~P&=dq;xh_evX zwt0X#Xj1Q9bXVnz2#UPNo;n6#W>h#_Jf<74gKx3K)=&(Wa;@7@L4u6%iW5wTru0$R z-{8)I!Tp}cWzf!qUpVt5gJ!r$jF>~8r2e3PZ&yIGs+h{h=QNk|%8?p(!bPVQ1^3Mq z2jE5oP$EoyGBT<^X!L%-9wOYn&HQ)5SY33=W4|oLmWP^}+f5Oc1E262lper2kRtA! z$A&G|iJxG5s~B9LoGnYM3kE07gjq^c;i-~3hUcfE+T}i*!#PQq`1&FDqJ)gc%h(k< za#XPWi5QfAfYnA8OcdU5NEP0VUs6mG;-pv?^Y>o|c>1F8xwLCeOJMeUEgtPSY39C` z!2W@}F?&s&Byb58Y1&C_{A@8@`tFJaPaF7u&aBxwI+__W=go$ft*ze_WSJ^OJvGwA zQSbN#9vBK?rMG3yxt?f&v`fq;D;p zQY6vBQJk6OzK_G=h6E$YEX?$l2FbanCv+gqpZ4@jJ&GrZckpy-vW8Wx5i^b>JEz-? zMj89nt0yZXyO~2gH~4Z3pj*R9-DJVRiBRd5eA7tY<%hbgETw%lyLSAyZyN})=SY?P zcuSC`2(-b=jmfxFB`PHtPp5fyu9c%^wEV?bvt}20D%Xax1_OxF+@XoOquyN*<;UZ= zpIf1kZ^<7F5o;|BrknoSJ^krR)$$XC&oU8G64g@Hy;xh@cSouLA_+$(eBf7p-Q*#*e6j1i;={BFUbQiUw7P#m*spB zpQ|!n$=yqzdkR96RC7x%m@Q#bc9mR*olJ=#pGgFj#Ou!_UrQG)d2I@-Cz^w-)BbY# zo%f}sxo^?`@Rm{usuN~{?_Toa_my8R?H}}N(Qmz>fo7@n4|3srmH|U;Dip616aA;B zojSXtzz~Dhn`C*OA)2WY{OgzR;n{&0myNzsDCK1AvfP!Gt=UB+zbF^!vpt&>dcd%u z&BkU30}kvmvc;tPlY6<$RTu>BKyWVjo|djed*{yMv(4q@>MF-&%7)XAt_hI+`Y2#Y zY0-*{6wVbA5*U9VH@A47kV=fO+(O-0=!va3S?!s2>_vUy72rT?uY@ zcq{>?nkvskg;QX4HP?{xXN>3v{VaM;p8IQhAbaLMx`BgM$bpmiAis+6E(wHhK{OOgIJl1I+~Udlr0L{=s@uTR}FD6R8pmo39GH5HvZG zr1{U;Uy=#ejldyQfe!Rr0)kpx6wB#rQ!g$(_ADpN)4-E7FyMheAEl6W_w0BI!ld`o zP)F3V!2DGrB2-mX$$Z^wt&SvN_Uq%QV9h284ldQ&sa-hSdgAfhQ<$6E9!3IM!l<&a zm`m-=%|^OawwJN6az7`G6=nM(YHkbVMQ@hVGrgaytNFzIsl|HcT1Ad-3+odJ14FaW z=&7wYY&nuEy0&h~NfD#=5?%o~TIyKmvVb*m@9brJ85~Rv5B(7-@7d`}=|TX(_Oe;M zAhlmFQp(?YLUEnHFwALH=Hs>qA9af5@Q1yDu|+_rh6=LODfdzz0!8b?z1j5Q)Q$@N z!OYTN4lX@y%4}E62}~N|a44|eo-2UfTf%UPq;>;ti61hR6@Ppo9xtV6Mvj|FT_>QN zf^J&&-K9ZX7!ToBQgUG^@?2Fp64$u>*(Zo}GSAi+%PbfB95b-tD05nWml1xUA0!z_ zZ@IU#-4_pQQz^>2 zjHiC~0+2UBu!`-vw$Ph5DkWa^(BDPm(NKN7wZHEykuFotXT8FCB&=IV3Bh=J!2||U z)S=YX{{X@wFDOU={pDy9u>|k^JdHgh@JI&a%M|H%mpB1vC6{#!SJS@8!m=*1n13I( zx!6qN&M%mReEllLNFwh>)u+;%SYKalJ#h2!?neE^-=|UDGGS}i81k-CMQd2J|$R0C7%|A0H!J@+DuW`cP7A`W$&BG#O}S7;oE%hLl^%7BBEA z)2qhxSy{0Wz-=G06I~j~;CGJJoqA$y>x%v`vfqn@XoAn{mR8(!MTa1ZOsZ;jz|wFI^~;Y@B*a9mFpFTbJETFF*HS}PM5Gk5r^c06pIIP|LTpis z+qy-x+$~X<`~DiC9d3V0Bh)N}P{HWO3cefo_*8HBgJHX^o64YqBHoDqq>4=;KgU_Z z`@ID}f~@M=2^vwai|CibWnl56L{@1j-%tr=4!6I58zGJd$BN z(wk+03?Im(z9BeZVOk`h{1LY-;P*lKZ~N7p2njYF44hRixE{mhBo3t<=sA=|TgI)e zejhmEEo$KUqhS=a73f5ixIbrvj~E}W_7jP~U4}&f?u71A^{{eBVXTae=Fz?1*va(dZt^A$wY-U%uF>Dy6qYW zuL$*K6qD_&47yaB+AX?F8s-(Hxdlo;cnjKPwlMW3Z#g0HywZv7m>(% zc@aj-)AjV`gyyWDA2FcP%H;dPaSg;*^ad(qS&oX1qliEpHSoLn@20{<~yFP#J2*7&*^V)c(?W@W7-r>weqg-NtxsI{YYx z=MuKImRYkNWsScZeAV;LTi?*3YHr@nh3tt+9v4$3>L=%IT*U>Jt5!i85j79u5+qJUvBRT)yT#(ycU~ zl~5(oTG7kPzd!cvaqT_|jdHG=5p#rTescVHMlh;}$I4)d&($>Kx+tpF*DzIB-3Tl( zHs-ROX3p1!5ruc$I4MG2%Rkc8l#pg;GchqiyHmSD5JFXILV$53aCYo!2qYV*j6%n| zTTg`WsZsu|7W9ekQKJkzQDB3Xrl$(;YCu`t`*pG@X=vCK&O{91olM}@b0pau9%9+r z8!hI3y$ronZJm)^O9QDF8jiA9hU}OXG-A=wDLD;rW-lA}E7@=xJYSkew(S(A6OK@>Ne!NvSeuSr?Aw2q^ z-9xq1#0fef(a6P;LpK{EfB?kd0?bOUu=GK_(LqrGw_9NnA%%=)C@}qvpy0R`8OZ=u z6sA&t&98$;p1QN`x+YIqG7#B#4v8hCr9-T?JcRh&vl7aEM7t``5iuc*m>=56ZV$zsHxRy1Q)~+LZPwSu z*^Z2NiCZSiAOdR}I4s6ye$+o3F3<^qtnl!kq~N)|12LyydnW|yR+H1C#YW8<$D8Q5 zzf1s)bi?H6-{*~zz@))3FD@VHBl?`LRU4U{9Fi`Z-Q3d?v@DP^e||=uuNC!DF^LEe zX3N?)Z!)2>E1{uFwxO?IJyfCTSQ@->GmfR$S`RaCly_s?35H(lcEI>SExsHM+F7Q& zZk^k=uL8-{FWHV+NeSSj=NH6!1?#T&2 z+}k!Aa;qy^q5YM2vmabtq0tAB4}`0ll0sP6*-1eR9P;6S2qlr>oODnAO+tjh%DE0& z%TSh+bZ?>wCeB32_wS@I%It@>-4HLeO&Z_)cz)rm@=x8&8q4$liXt#A-s|@K}fkP{L$wT-fTUN-lpIWh2sq^f3 zIR-R{5Lt}mwmZI!*gxEI@bh1nmJ33$nyBHTSWE{13TE-Hl_cOwM4*tMzB*))%RiEv zDPq|*)z;h$ZP5pJAya^F2x660YnEbg{GCb$00gE&`kAx#d-}1q~%|-OG`a zd#Kp=y=IRbq_XR`%N~*PczUcTYst1G#Mfz?l3zcz(ANJe1ZWfpg#o&Tl2{5-0*BZr zmZ)f7ehuNv=%)ss)WuR{!?rOVI%l4(s{R+Iq!V73MhBH=tjWsRnxxj%~f_clq(DA!l{1C)MrKGZG3n2fyZxPWffjkRq{c(C3IOXW@e_% z9r~I*<3;NMhnszJe5+)?vp@@U9TRl?VePHz(9#&)bUWA|?o$8Y$7wa+6@}EYMn)3T z8`jQd@`8p@k0PaR7CpOnAl5`OUV^uU@C1+(x)mPo0%%wrW&fb1dMAR* zu`P*Z9S8drumY*ciPx{}G1xm?Zfj3ivg_XB2MiC662h#*TjDJm@w$JgqC-)Rd?^oG{{f>6r zOE=JTo;{->BC@6y^`cqTFo3yMC@8FK-}J_99ZH*y_g?&Y16o@Uj3xE;Qy=8#S`RkE zE(Bs*Cw1^<^&jxkMa%;w+ohm* zN&kvNk=}idov%Ab3o9Ly6BAhA(a9PK(|(0uH&NOD7rSXpu07~HA-Q@L6(z6m+Uso| z9v+`}dQL%Y5n9jLBTp-Vs2j|U!Kttok&WOmB&XmaMD9Udpp;5R6scjkBD}D_Bs>j5 z(yC@V8>%<$r@Y|iw4L6xwfkudIt1|OL2wBq=vAQs4i9c`>#Hl``EH?7X(UoI$<14{ zpUs9lDG^o!6hf`Nsk@jHr#njM^a@`?FQ9sG8u`5hV#EHo7e1s#m>G`pM+3?JF3(`B zt^Lv6EwQ$ijZ)Mjpsr3LJ}HTlLe^MQCyzc^)Rks1nA;@hpY+?>ejY}5Kb(ergPdMz zBXoNDwvfm-ZT0CL1Q9@;1jRE2+yX2tBM5flz!U%sTUk!L=$$wEgEzzK&|`s0Q12Q?LH%-7p? z&nu-pPSJ3$5rrj-sQW9Jnp$QV6K-pPn1%APgsav%o^JlX3Y|AizMkOlzWT&O6eC56 zABSM!-@Ge=jh&&^{-pZtTaVCdr5Av)0s9`BUJb92kV-WO_9(vS1rjX*&R>fSNqTz9 zN`X@dA*E`ES^#Xs+?E>T_4>`b+x8MbfYi*sdCd%SIRdAr%fXI_1%;Qf(1U6~>3AMNc1)pR{z8g^ss|f&z)oCqk+I_o3OO;nS!1ch%b+?SAsS&9VUf zl*=Mo?EIiHHYils{}K*9Ow4KI@^s^OGE|IPUbfSJAnkD1%naoT_a*D^oe$%9Dy=5a zGKoOf{g-iqBP}E2c$|QjtIoq*`ca>mttp1(0L+$pK~g!Ib%&f#aXf^A9YoRT*>vV5 zJ}YeubadT-p{V|**=upGYmXlr>eY;jGOv(CcU3ZE*VJq;qw});sePzsrXLcY94NtL zU`s->!yC7)$^B#5-o=MYcQUZBdN3NN{p$r#i{Ua?tloEUny2O3Vjtp?qg#e9n1!Bi zzVGgEOoPlGA1>)g_70C0vF*A>09Tx=ZY;|bTE`|R_y>c5@PvV{U^1Bzu(PPj>9}M8 z+1a=^kx<){`UGU4pjSfvbobFeO#(kG@cSMki7_xjRW4k3aGk%F%(8&i+vUhA;pn5L z4MtmIK)yjsONRMLnw1tKDOHY4cwqQ5v~s26Ke%Ku`sDW$RzN4k6$?KhL~C_;q+ z17IbcEBrvL&(WVmGV-VCCQ;3*U!3h>6G4heeKRMUjYt+%=olgcX8vhcLT1zzVj?xm zURqkE=C5B-;FCZSxKeMHOXChBtv-#7U2ACQL(z{Z2JlD?pzG|ovDl!=o11vMuKt~w zQ0`TiG3?dpai1G95w6@brq(1zzm2;JwcUTrEbl5AZyWJ3I$wjxmh0J5;tprV4#|9Eh#U56`vxpr)JE# z<$*>*4YC=XwFN+4#7Ises6lu7*Y( zH!;y)_@&-AS-o?Sh9=y*d&C#0Ab4BDbi#?rIgvY*dlG74h=35Q_V8t2 zj1z7EzxFJwtmr7CHW#RW_qO>*04@j1B1w3-qe5<20PdC~fYZgk%uoIO3CjXfvi~8A zws*|A=_eRtvK$0dBh%yzu>1RXjm-sA- zU#t|e+u48gflmOnGdju>@Y`+A^9D)f`uvDxGgbZvlUX8|j98`oWyATz{C7}1s+`&M z&JH)fM*7VdX(jB9WQt+Hz9T#Nq(L_a3CGKEd4X*qCr$0`=ad(A0lKEO(G8hYR(hmdWO5p;k9+ z_G5z%S$Y~8bhF*)wu5i=Cl|96f}!WD0Vak1Hb0Z@dh8|WvpP0pw>0o1Ea{_$3XQDC zDP6v%-9=FTF)@GLg?ftDLTdFMmLV9GNw+3!I!d10djUbJ+3~HtPW3ig>x=?e$M9C~ z?_atkt*zP)3k}(?vc8@Mh?h8UaGlw>A*|)+O?dB!BK7raW66`xgfKGn0>GiB_u``Y zFZ3T>f`lU=bW9CL9MpJz>nG4UPD?Ewx<0`#$^PiQa{Bm6PQs5Ldj?OWvJ1au06cz* ztqF*=%1h*Iez#R^&#}&8By^yzdbay>!roHJC{Wv%gq%J;6gvl2{CnLI0gW;_-P*MOhcp!6th!$>Z){Y6 zJBQ_eX@n(SXL5fu!Z3n&PFph~3P}}sz{bF9T+?|T3sU5i*PZZdJT;}(X^XWV=#4Ep zPSWWW$qm32-!;CLba+ec8R?2yrMZ0~pVD_a|y#B}AuIJ+s$dj&@ z2_^W{o+Z>CF%{GikwVREK{n|quK9BWIG?JcXb&jn@T@1@dK__8g53_Ry{Wvu2G+ZC z&Zn&Zc0_Wy%vy9Ek zuJiT4WVy?5NPMM3@Qs1+1u7HPv55TqY1rW?Jj#X0Gb|V{fuDl)3+y2L7#W>QxEzWD zzaMbhN_W`59^N9^1I4b@y=9l8q6&7lMLN1nBM{0-uruAb^_R6Rnf1*vM5iu#d-oEM zeZ_rgG45<{AK>O@p*Eb-*(-ucOf1Q3@dQfLMF`2hl7LD8geTd56L8a8OHz^a z6Lm+d$hihwZw%K(OPXxCHW!@#?4p zQZj!3esOnm)1OIIs0HyL4q^_vLPQ}G^@B;)?1hhg7_w)94emlUy z9^2HTaEIRb;@vzAc9=saG{nV=UBL7k2IFZ_3%Lojhnm9`-A{E`q=Pp^TxyEp)6Z`z zL}{s|v(rUV0o!A4lH_KYKnaiL>ZAqFsS?}S`m_E#DR@EwuZ#O^?efjF@M z2SX$Qm%{rGavCP~G>Y;glqM!JPqVTw<}TLCMf+Heed#7~yq~g@>HqBb+JG10Z*fNS z(wSKXFdUC8jaUj+SX1EKxZ&0)!y5;}nXxfy!IXxy8t86>Hd;{|W(mY0~`? zLhA#H=Aj5&A`^nPG^FCZJd$V+s|q2V>T&7PAh{6D=8SDQWBYengt$ENT-)URRbeNl^reWU+C47Tn`l8 z+RMLc%*j69(n+6+aI#$jQ_kNQ{!m1a=Py4BBqAmNL1?oa*;Rn&2LRyJd$$Ii-0tT^ zq>ccBI}lS<+#^gL9$F9u>RBCxQi0bf`=O690IBwC8^C>l=bTUEc-{8Zu5iD5SC9ZW z;7+}Zvce{VQxHgDkX*p_#zaoRmJlw<91Lt8kX>L2#sB%!6Mo`|`!5S2p87ED{rmXQ zXv_E6N;sS*J?ID!TOAF%J60G5a*H*5c*HkEerNx(MiIWr{EL=sgn~k>Sg#2#0HbYi zOA;mo85#L$)@oo@>xM&D+fCjw)B;{wsTNkvVk*$ zS4o|-r(?;EZioPX4lp{PX>oy6G-SssQJ^gh=Rnv~`>v&7H_UNBlCO}HMUc}f5#mJp zujH$}S7-PJiTgRG_=s`wzrB2w&jc}`;o|aTcPNQ}9X$63a(`5TVU!OE@v|Zp(T#3a zB^Cuv*ogN8?4^J@d;2MI z+Zcg~2<3>>>7PC!ZM=+S&z4&O2>hUli7mEXy?W&MA3~^fzmE1u02STE_-K0;$y>>@ z8S?*@pA-NO->Wfe2?pO!nylI)Xlk-dE$VM;@{Q6G9JvXxUpajg2+otQ4QDK%cmfE@ zKvWXo8ZL@XkpoQnuw9fA6%~PZv@*=^wz_cTlC$rcvq;buI<_Ls<$e<~w$Yz8F|SbT2Ba6SH5p`lpV*VP5800Zak z+Xw(gzq}7!?=K8S^Yt`qZ(lGp^v1+ASTG^6GO@7G%=!=$L)TR8@SK|DRmt;BX<$jz zl$3W7{UwSXA2*vmWo56t4K5GLOSq&U>5mNY+#l0!)ao&wEunRtsMUD%*B9Wa`$zg> z1_BBP$X4NGE|{H(3f9>b3$V^=A2fv4g(0cfHTMyJTZPpur}HybbbMWZ^}GNc=cwD% zo2r^}QCv>Jpn0yXVafMUj- zg)V42jZLouVtlyjPtbO&bk`HP zN3z0LMhou0RLRM}(srp2WfJ#A#|<+O9?hO0I3&l+`s`)*58CEGCeyxA+|^M*MZOik^;DW z-!z&8HyWfI0-6F!Qd&iY5h4VWMG^kRWbQu9ad{X(0`2wRg;&ZeqAH6-rFc^S`g^Og zMhiW9h#mhb+e#oXK@gaN5-qstL4FVZpQ7k9cnp@l4x;|e#knN^iAFS$7atb1()6gn zEHvO5QoMxx{=r}|q`lTZJc8c8=PNGeZ1P5pGO&3JWs>^B@t&iU6gkXk6`B62%s1}~ z;|u^cwJ-DrgC5>Aob!&5h~~XIiJw{Vo#)90bDeujqXk@l#Y)j{udcuyOb+Qy>fogC z_qYXl6Y<|_zP(2}aRG`r*v?F)lq?q?o_6K!y8=QA5pv1E3Rvm00X-h~2eKm=7J80U z^gQTdItB-c!o$5VvA2D73-1Cmi+KORCL!X^Z_@Mi0^ox^$6nxWm&snwBkT|ln>t{} z_AuPNxt3dTm;(O!eyK$;&s>Q~#L~v%Fj%vg` zP|nQJtnr4^ud)X+2CM#e#Pb#}>WKl9g96NlzPhg|m4*Dt%|bT$_jUD-}@oyRQyt6->JBuD+saQ)`$b zhi5ikhCfUy|Swa~Y32?gvLuLA@DU}{%<4e%Ot&n9PB;#-KCF3^S zY5#|eS={s}_<^V(oF)r@HWqrNVGaPcBV4fs&~J%B(}gmNaug&tyV^5Adjc1Q5(6xI z|v@Wga_lg}AUl-L&3!_{p ze=;)E5P2B{roY+Xtb1hPff{F4dg`m*SI_ag%2zqBXlsZyOEI4F2AQ= zJc_;?v7D7}F3V{_)$}^I>8CA%fQR$V1B#35U5K{6@Dc-&7ykH*?#SJeMln+qi~`t3CTK6Ry_1P_3u;$5 z8VP-22oAXun85S=kNH^t`{PCS1$JE*GEnQkRy%lPCJ%!S0jr(44X1yfz`_zm<= z)1X(^W%yNyWdIfoI6kA8{f}IR4VN-&_O*QL{7UL$F^<-@cP;!=j+vG+8S(?Q*Z(MH z&;O&Cz4IrixC8PLG5xcEygW8od~#WI$_G#ys9VtZz=e2#vL3AGM_E2c`Wt{>A|ymL zG*%Ui_}QBj0VaxUurAOI7ukdb1$i$`P7og-tC`&N!vh0M)`Q6a=pvZ@R#~M2VEE87Xdi3L_1Ki~_d(9Ec zc7j@JvfliUV5wbM*zYL(4klCc0aJ)rE&dH+A&I7-O9>Fo1-pd2^ylwqdWY>oEAWMA|*Z`3aJ zez|f06g%i3`g#KyOu04wNMN!992&}|(@q1H$pGA78HFCXcjNR@yf}*O!y^Bwhd?01 zK;Y$n1hQGo90hWa0iOt=AxA$b>)Xe9)`fntmoQc)c$ra1I!6u6Oe8Qng#gMBX&0Br z8v5Uvnco-!i3Xb2^;mX_paxGJZph77NV^BB9ncOv9G*?wE^KD#1VRpUMPg{UW(F$} zm$mMl-R0SwkxPtLBvdb8CigR#?Mw(ZPTT~s7h4=rc{L(0sb7@v4O%~0|rE@}s41l7xbiZ{BL4~}hTpp?K;thPTrDh~lBK2mzP z_tze2KADN{?ofXOzX9<86}c#N-LUDi`89Q(p`oDRbM7pF|2LOkqkrxjgy)3u zT`)pO4>}MljO_8PgoJ+BhvN$a`49)WY4!~^(3`+%(gF{dxh#l@DDx%&qi`xESU$cF zPm~PI+VZOxu?$lSbovcPa)%DrE1UA!p+_FhF5sddn}+3f$7p#|gHLcgn;k>37uTNQ zAtop6Hnny?3&o?hkc0T}RGyWwN*TvpTU?42m?Hial;l_>qk(xC@f2mv5`Gv>j49;B z$HTh|@0VS-DiC}rb3JT2ed6H$2*6wa?`%;LTBrE<@n%8HXl7>J|Ky2j2#aga3XHq-S>>V04t1}3{fX#!=hiax@{5C$=od%o?(191G8KGNR zu5&1ExwLoojrQ%0fY};K9SD8RjwJ0lqtS~XCNBcJ`pUQ?>*qjf9xRuFR?>PHLpDy$ z%lncY*MbZY;)l{ng^~T`?xuTXQ z^Ry?I0D{GoM=3?vjWHQVM^4KSR`-3~R{p7He-!E~d}^j+L!X~uD+`$~64ny;a*=Rm~UA;O>o_TM*wd+`aSJG=UFZ#w1uFy$ zs)b#ZlTOE<&MK$QKY;~Hz}5bkfvN|}pSJ>bs7Qwc%cBj*jctH4elCCR3(oO-{RpZr zOl_nh5Ag1!I2K25YCjmDSLpnW;~#D_wIPm0HD$tISTQDBnuoObkDc6 z2WaqfHGyCSw(!HL-`X_L=hkpyO^P_XHybyx#KcUqW+Q*UPfT12gwG882c)ZiWQ5{k z5k}@WO`ze3C>L4j@G~2lUju4rFL7qz;mFoz*o|v|qa&lEU#aIkpalcBf&wnA45@c} zR}LtSmDTKG^6iq3%sRs{kV)JRK6j^C|I2yU6ja-MY4y%BT_FQiGiXKR*ZrZWB0Ac~ALqpI6N(LjHUPjO_JHS` zqT(RlfZ4XJS+tT~l;ga6wu1wfQ>c3!Wzvq9m!4$wN2WaXiD8M_I^4qHwXz8AduQ45 zqB^6awyPwVe@+YS?OJ6dd!64cj-LanMBFdePOL z;;n%B*YvXUHI;y`I71&^JhyD;gdOJ4ky>eEIs-zW zZjB=q)PLfvUbxU3v@#MlJ#7#WfM@xsKjN|X=X+1nceHF&nPUVTmoA*2?ocoEn1^5I z<6S)s$ja%NrMP{5>H+#N4kl*t$(+OZvxnanalRdTsWZpG(po99I~5ncPv-GZES9S6 z&vx(c=oW`e9_m0n~D{#p8y|h^kAgLV#*2OLV)l=)a^zq=Tua)s9faA9^Cq;$? z?lo>SSWQ^?R*5|>uj`Szqxg(cdJW@@?V!3_rF;Wr9`3b^#lP(OMtRz%WboxU^HDt+ zi;nW4*MSJJrqF-m_6 zkFmJ9(LZD?b6D*^QCo54+I~<|A{m0*_v?!EQQqD267)misL8Lcl9C3(5)f{R*;1w$ zc`504utqg-Fh^Aqy4Y@N6wX9_CIQ#`E2#V5BTci~!$m4twSzlp9=S8FG;!VFWxor1 z-_%#esOKCypKz1G*xO;tKu}!>X^n11$|0R)1&l@u^H*l#9*5t&CG}oaS^)+49&cb@ zKpk)qHqM$=6978La`YB5?8>9zh~Wk0u}God@&39_HK|{;yt=r}f%SW(l&%vYj`E`2 zqE9NGCmPn&6+~2v+9+-fr-8-M3g~2HAI=YWG<9|m3*uh8KlFK;Ph}7CeG6^lOkE zv(L~_h2upn=4M)*KmhO14FdBlE z`uIgKEO`Ua3-4s1N1Pg+DTIkaMlu-h~<`oq!~M zD#OhmSirFxJSE)ul_xb zZa+K30qe5yyx(H~Q^T#?(3~)6`x%5DY^WQDl>hvlfB#ebuPh;#`3=OlhSP2S;T+>& z#CHwD9fl&i*nkDcBCari9>%4yB03mo9{{c{FhL>bFGp>rcGKDL_j$Kwy%5FJL6a8dtXC}JpOeqry(VV%|ZVy^nUY2QC#=HD+acl6H>gl6~5L!Z6v>7<9wELaaj zi)3p02WvrA6YWi1uR0v_?e73XCgiB;=jW#b+zAQN@f#Ytn-H$fbiOLMRo$O(`OMSG zOH^awAZ)$ts4)x$=PLQ93aiBu=XFfSr2()7URn5($xAMBeA%Rb;{y95ex)3>qQc22 zt_!eg=n6n4JFtKbDT@Z_%Q|6zgXW}RAJ$@B!oa|AD^m4da&N*tZpiakJNUWwt<=`Z ziS6JZtf3$ICP!p3p5ZlV=Gv5cO>^bA$Pa2<=U*as)K4uD>Y8+r5|KtdFqRsQmlX~S z8ILtt0ssP85T+xWxwwtCrM&P8fsXzxV{=|1@h$VRqm!)O-&S)i2=0c}Xuk8^frtu? zhz4S3js(yrQkH9=tsf9@j94Upf2-ZB$|^j#Je_j)>&M9A?3ct>uB=*HzB?PQVX3ev zAIU9na@Lkz|1~zATW%3ot6e^BvHGF*RbHDvM9k=f;+BBdZ>OlDOC9$(h;Z%)KrlkZ^dBtD4a|fre<%_%Gk+H7(s77DXM~)kojr_;l zAJ1UnU@4fNX>Qx#H-&KQF9^LgaXLp9LdbpUiupY&MA9dCXX2(v{mWHO$94eKsOX0? zDgR3hw$K-P5>VeCC+9D8z+$}LCsV(F{rVYI zu>pISKwTE->FJrCneiEW{DK1Z^kC1Au%{P}ufo!?>A5*SWQ$g2rn#<6*xR?{u*Um? zNH}+5w9<738k&o+2rs75x<@c;Kg}t<|H|Mcr#)t9ONgRZ^r^2GQBY7AD0(bL4#VgT zeR*GPC0n+M%?@?9aMRx&&B$Xz+&g3VCyr~NZC=~&s=xM1}f>;kaxAXh&bo8EE( zBShJke!EF8rEiz1os|Fjf-ucLhK62*mL!VDo=)gCjc4TGV#C8k)6fmfyi!s{0*on( zzT5I0G&BJy`L2-h7m|({5=zMBZ4D_s0!dEGeXOvvazvoVav^OWVtWQafkVj81vom z*Ga$Exe~+HwBiDPJ zo6G#Y-klWIC&606!CYJvWI5ecR?YX@WGhBDdy9&T3FztRbpypQ&1JzB9F(2nbsZH0 zzZIT44DJXj(5Zw$UXs`oTn)?pa%LQ|3LX{= zrM`cU0xP^g7Z4IXnj=2Co%kIw9GX*lU1onlsDN(o)r+0%|_4v2*GScKJU|9CCRiR8+8KhXG1$%F)qLWIrD)m7H5; zVPV-?NU~{$AH#}JF!4(IKAo&~z_7NqK7^k~7Z&B_Hp9{@=z+!3(a`}_d2HKBnDX*t zuOm9Nix<|`*SAJ>Y*IgdRGHngYI^)a+Nd?C=yi;GP!vO4S(o`|rMH+6##im&Mj;oh z!P9}7K+}ODcJ%snzO44P5K=-C5;X9DySTc7FNOkpA~!E@>cwvnSWanRViEw8>u)kM z%P-rN9i5u1I9rbCE) zUY^A0!%5>^OO8hs4Y$?jEs4Y;I$E+6lcqN|@KI5H(c^NMO`!*F?>s*0&6|s)q@+P@ zM&&6fz!bT9-EPy^pSTu3G{AsM(PBG5YJ3L@35tKrElw04wFel#|)Q- zp^c7_z3{G!i+l)$s`^A~VZ_7oqMF-kdP#ee&!?I?IxygTz)<@;u(CY>+4DR#_4r3+ zTYLNM70>dK+sYJrdX|cPrjrdNX=xYl$Fh1yMG?P!`xfkoL~3ekjA6B@4fWPkMa(i! z$5%Yx7Zy55!h&|_R3(JP;J9#BVDV53oLq1rDZ`$xk%=GhE;s9Tz`fow-wo@M1EKTs zJ#0^grOd4XcsF2}>WEDJ3sh9ps;Vl3kzDmEhsAJ>llInDSRYdgO;zUU;ROX1nix*X zzoR|(EgMJ6Jk)7B9;T$~8Xp@woi*kzCIyW0Irfh1(T$5HjYNO@YO411gZ0SR_dSay zpG&ZPuCkfSd3}7uz^FcJv`{Yu7RehPZO{Mu^$Ys+u>cwradMkj!QS+x$y)w~qlFuF z`{R~CA*%a6RjoG@OifLNbBKC+dTQ|OSt#szhjC{)FfH+;M^e`Jzz>!@yw%C&-CuUk z$=U|ZPh2JH+B5?!T`BZ4vWvJW7%}*ZQ|nC^VmLW2n{nLpwbI( zba!$(fTM#)#0fSH;~*p%gQ7@rK9^)F&KBvNdus8yYk7s;phl?(Nw*<5?sIr=$&o{Z} z{2+=Btl(=zhx(P)l%RKo1p*j<4M)2k=u6~1_xrbwx0{xs+sC!)Vrs<5n7ci!Zo=+$ zs9D|wX&tE)#|pYA=cv^ifd?Zu;{44tgBSpa>%ckkZ) zSWfmSX9P-a7d{O4s}6-6qM)CR8$5fD7Ce%ig8v`FM0OI zizacnm#P9zLjueusq)sYo(s=%mldX16iVx-c9)X&mHjo62croGtMN8<4e-rD;i3K- z5)PF}2!x84ou66c-^1+*K9JBD8G`>6hDprI{Vi$rX{X!iN*0IBj1WS6*T~3-Y$L7P z>s>W3O5eG=nTL0{IpbQj z0uEU@H>#plzPNS$CK#_o_*vtw7~~-Ffj>vOT8QRHWQ3aY9^dj|)@ zuHWh77S6dV&yG}JvMjmy^=sU*oduUF97&6N_inA{6d_D$mWpI$WWc+{4lHD!oj(w)$SvXNCrFNjA^H-t z!A!GqMTexyOr6>4)rwdV5fLDYmberU5YS3l2M1UR3@j%WDbId_&OA?;{It8%QeH3> zlE=Q(jzhj>Y_X-6LuL_?B*0_EA3qYb#yBrWcY4DhHapUK<*fIhYjWmT z71yV#Z_GyVyopv33w8!)hq7IhXOy76)a!KLeIZ)kx3i?4aduX(Jr?$2sPNRgnB45m&G50{TDdX8+6 zd%?yyWznX{s&~{E*w$(0K2{^6mV=7|WA9E= zbay6ZXIDxRl@7Ebcc1GL7oK5xc^6um`{-0&sULWzZPxf!bFavjdGT7Ta+&MujI!v8 zX7OZt>JBl%BZa!zIH1d3_%-&~{UN^30RWxU)YL|@F92G^Mnow2p4sWLkqmA*OGY|% zoL)|d@-)BX&@MN>wKiVLz{SI31m|T50=)TOzC2pt7@7_o$|&saTXY{`m3vV#UiKP=)QL52EPqxK^JEpsK<#UGkSP) zb91Y@Q$5qt>NxhSn^-Wd_Ssmw>Ji-fityqq0!|mY@IkO!wSIYUq!RtB1?CW16;$uE zcH84{+ys`{3(k!zok>A-7~|m>Slxkj44es(bvC(jW&Q-xkYHF&PEP9@Pl{rD3_;K* zud|Kozvqe*Ks! z=wJ5&fQn5{rV<3!xJKvI)soy2i>t!Ty)3J#I8%9jy@!XjJWHqM1IC}DqaV6ja&eWq z>$5{)g?rVDQ9HBH(`g6g!&QUcFsIWJg{XJJbyU=^fLDQ(r?J9voJK!u^?anosJ{PW zd(32|{>z>o*$GFQObwlmYG>W{ks{G{xV1~WOB%n|YyE;+G9W`!5xw&CJvpxJWMs-K zo2lfu_?TNErc0G#u5Yy!Z!uUFt~PAr;Kf!D-W~(aH!h*K+AFPOfyWUyJJ)8ETf&IL zqC}2GSgv(w*h$R<VbJpKSVdc&JHZ(45uYFIy-^(j(s1t-)! zH8nK`F@{VijDD1ri7B{1r|P5d*?K8iG{{-vIzuFlnlvp@h&;fyN^_zdYI-H7Tfvp9 zXQ5mtazt8iP^CQ1`4^XvJIzuKWq`xoDAiO+RvK>6(3Tx47>Pkm11n!^B{9rXFEU0N z14*RebPaQK)N7z!FqVBmCFgM&h%9RTAk;NcP z%xf{ie0aXsJE~pO?j@zWI)P)% z)0ERrtyLRR>;fD4jn^U!hUUATT4LjSX=!P+vQkpn>ee8+?qF}P>_H)aR744EVAt0M zv%=4-R0n&jI1x7#_+gp2<$=lw?}=6hcsfL~A|)mD==t+o_6`ozQ8G(wy1Kg1N1*db zjET`G3W4AZY;ClFpnN+Ft7>X!si{*M4$8wLKYc<~S643>sl3g>5exMZuDa7ztQij* zW*kZ_BnAcxfE{BOXF0ArEjGoLNW7-knhg6z8W{Rr{? zLyv+&LYhBNi~U&GSv+_?{hcnSC}TCb#A5K%^5a#mxbW&r{o%dPT&Ir0DtfP=ie6)R zFNuQSRkgimF4LQ{_2G~u&VhxrLBbNZB;vPPCdBHo=l zdNyvLJSrq46sO7?-X>OQJq`Lr#(n_-jQJMp2&j;@$@zR#cJj6>&a4dxmM8@%)nPz z)x6^{tj=v;4!``Om0Z0C?J~g0 zST}D1`)ns7RR^(eNV4P%F5X_pWOv!rf#tO?B_#v^bz*p};yl0m`l7si`I5}jW_2Ww zNniIoPFWoXlFW`MrecGp8vukQVf^-Uk;>7Dnc_w3sD5(8a&mHGRKg`U`va_=vX=sqpD<U3ay7A@YU?5#S%{@J?&Qo%F>d&1lH#<$m zAxiDY-Ideak(gx_quy|fk^BaDRG{BQ51SG26Y&-yv1o%b$nYJ>=}YXDiE<{8nhuA= z*6d;?#~KeQGg?QLuH1mNiQDkO*f zq6;f46Z-wTBIIDTJOI8)^v1-k4jLNeVTJISn6*2A>66@7AHXPh2SDU;F!fujyHGRJ zeDnwjfzTj7F^1InW6@wb>*#QwiOlq};&5H==bY4{K>?oSfBpUEsHkG_5bfdL;lSXt z)9JHC$&AB?*MN>)EM)#`{b^`|-sj&uFQDw%ZE0!wUxqV6?X<++Iu=1I83S-AQi=|v z^LgTIb=yM8Y~Mi{_tlY4R!saPC+M)%3p~(I&eu8+1Ym{D#1@@B`;8I<{rL69q)Q@{ zXsr*|6D{E%t*y}*Z|VOj$5bfl#y^jy@7&Lje%;2$Mj;PGD@}Tn zj2=IJynE2${r>&?#YraZ***b5LBYdDOtzu;+X~M~op@9wRX2*-A?L7oiVLr6B&ZT! za^`7O7oKw#w1?iAk3F+~BMd-Tjmws?*V&;F)B?LECgKh@CZji|Yt#({<eTXZ8 zfcTKIwgcX{RiW-eH2{_rz7X0FZx?6JTA!wt!LgyIUDej#=KZeIJ#}*| zE@AJ`(TjAju6|(uL^X1`?d)i)6aXC;CMKpa&{Ii-lC?mMibo_Y_rl_S9v5e9NGKVP z%o0~o^|E~7+6_a%J?gF@JbOM&f7NRH2jEIVEelKad3o2LH{C&P3po@SV$<&Owszi7 zWB_8>>z3p8$lpCYUM{qnZSSm%y==32KR=HFoF~|`o(^|De>R5t79Ffx_KrI)R#mn9 z={LNE^rP=9OsuHhAS4uVKXhz+jhqNW;>4$i2X8~WBO^w&_Lkpbve?zp%g3QYS(!q} z^_fXqA2B{YJ`jf14wxlQR3oqpxLo-=xALj0Hy`Ha=Dv9K$`1tMu?ZOzEFJlsI9k6t zZ%~buuQBpkCj>lDIpxtFKfTYChps4ma1&8v{M|*`=)~u4cD#*EvV?@c_@7w-j#Q=@ zpDVXQvHlz??{C1Z`u+9KpNeH<(xInz-DS<+%X-eXav6X8L_gkm_=R+Gy45snZ`d5( zDG52s#xDUv;q-;ml)ST=k<0?mtAV5>ruazKWF_rX>y=Xnxef6>iy(L8XEkX|PLo)L zn~{@^dkP-;qAa1ODHR1QI{L5cmIwSlSC4*iP9XOzMESdML4CS(xbccv+ZmlkiCV3| z9ogYGmf0uP>8b2Ar97tBJse-C<;8{AxMQ8A2tR zwDv*klN@~$pw8_-{j|0F1F|}SY3i>y1CC}zLFT+^`{IZT+5>TlJQG@0)9%P4BgQcz z7Z2dcY0u2yfF|K@$jUKs4j=33-6S9=`L)dOOMn8=Ui;vj_FXiM;7OU7)eQv9-oO4I zZD^!N3JM&MCHXf6UbS%bI<}^WVg8zb+2o{QzO)ntx;$)#N1GNPvihUetqI@(yM`8w zro|C?9#|KXI6do(TPY2o^_DEA|DjV(Za1q*6BU#%vwYL8#q6gDX{ zJ**^wsktUaQC;L@oBN85WhI;o0^CTCl$7{6IWe}6?O5gHxD|gJKx+jt9Mar;p4NnZ zQ>n~#=OuuWm^F63LFEl6i`9oRGK}!J?!bG5(wBbQR|907z#$qCnU_j?Y5t>E5qvpY zO0LWek@^jK_PvuEe`cmZ<{?WtvG2{u5PiiB$GQoT>eh7OG?BCmvm6uET+8 z%!}0a6SZMuTc_{Ycgpie+(mMd%B&o{q{XtW%dGwtV;>09t)mE56geRb3L1A^2+b;X z-9ZPD253si1O;gVw>A@i2yM{1Y?*JN1yj6lyE3EHAiU%u|=w?8Uf z5~88=zAfAVUib+eaR+Pd#5j*f(QHM&JK7!9Eiy{woy!tKs6R_*$LM~1AFsE~*XeMHye zXG6auIXu7(Ckc-}Q&PH4NVv-MpGgA*!1B8t6TY`^h3w9c zffn@4mQu|Zk_LsO+Hi!&eD_WjzW6IE+1PL>dlNPhcyhaT?Sq7JlwsSSDNkU$g#Lt+ zg#|YwBWib}prCth#f(j{kV0UHDlAOR*1jYFWCdVL*1&WO7~ihW^ld^va*%>{psd}R z8mINN%nhWmu@IXf56dD~Au&)8q~_-*x3hcF+-gko-~o9~j@!>(wl{LEmy=;=cfw(g zsl*1{A2^t6cj@T~2eYn#4jSX^sMpt546RVioP(P&)48iVbZ-8oZy@ed#L5198(^uy zb^9&~#5P;X|DF0kJQ?AqK2~&yTVjTmnmPcG+ATqZ@(nysxXJ1q#&WpZuA#D~Lp%{u zA!(8}2#*C5*CZmfOfUy#wZE}eU@r=%S6ln?#Psv<&1ip&o6#@ray&f<3G3h~-TnIH z#TP*#;SG2&xRR1g!2iYLcDiShv@(!=0W%@g1pd4$V;j;hUs6+0+*j6gKto+t{E1 zLpZgNkpI6<=|4x${qEl{Ox%wR0k(aT^%<{Q(QIug9xm!|+nGa13CI2@-E)$rHw58F zoU=n+*pA12VPf*;!-q@PrKmSB^m_e^=jrwYtxj&7i04l{AGxISSEsg$iXOmYwze+} z1X~N|C#Ksc0ol19&C9~yyg`Pbj4E1h4@<(DSv%$TuDv0BRq~RAOw0Ux5$v4KzyS^@ zLzRF4lX$bqq1UNtq@bv*CMV`84F{;S1r6uvrz>%kL!kMwG1;yYnBo9!(>HH6-@TJs z5+Fj{;J^17@h|s$uM4NY`Gb2<@3I(UlrrZh40`&w@QLWC=YF)3jWE0V5ca3j*Dbr>Vot-G4Xn}lfzR-#~ZBrJprNJ zbbJCm=Qah%SXd#8^(dZ1w{)MHnY}8l!$m20=40th0JiqeIbB(KB6X*)U?4U9A0 ziB!eJ#DHc6JrIY|eCUii{oc+=oapA(6e)}bhAotj2E6Q!BR=3X&>yY4y5t1bh3(x= zuohkcC;R3Uv8%TnBfqy65cmx~8<~ybQRV3pbcRQC=Y;OOFh!S(ORq7+>+W-+*BP9@ zlqH9wfc{2|_(9QA)4dB>!#)Qin3i#fV*dS``?6V`#^PlN-V16Fcy*=dx9V$h$avd@PaTviUS%~RJ4qY*fdIWJ}MHTRV)R< zUasHsZ#pySrf|2?~5HwDBizk+&LIU=^I*J z4Hv->(~QOH6<&Tn*Q5(w*K8-!`isvYeSLENMmKHA#l3a5F6wp^%75Uve z8#p%BYhaLa8J^+jlc)dI*B8bSa%xcg0rJZL=q}#zqp5ucoks}JE;5jT_Zs zcfSrWdOz7$GBdk3bLc?>F-Q<_(!Uge@P-O&`@@SRRKgv=I+V;Lr$1Sq$0c%RN$}R! ztBi3CMoK_r8IQ!!oKQV91PkH3J$G7Qr`unnWRX~>iU8LrEqr29`&XmC3rK>7=zsiT77r9R6+o2v9|&TD2|WMnQRrzoyqvTUkvl=+`erc8ig_`5GJutIK$UBHENL?G>Lf+vftBM?j(`Ho0-Xo^|8o1#`kZ?)D(d;qE}~9C<~+$# zW^pw&r;?>K$#Kv^iMG*qIo51A{caA+k)|k8N^?vqANcDzH!{lOo{CLPpP>w81T0MlOPsp z!3$CIjge1RS2gzaeNk$A$oso#Y6=~Y9RktzBs%n!=LLIS{OO;zJ9VVX&Hbdf^JC#T z!%Oe&hCSE4?zzzSk7Kj59buOU^NGP5&mn1mMPSl#8J>WwQPDhLut4&IOkS2{(#yF*6gpol$8;b znygvNe5+t(@59E&&(R6&r*S{92PvZmh*7owGCXm`{-6H{$+_o#{fcGMD=`PA_sw~O zIzPXQ-C9RcE@_Gw2*@oy^<{VO&$YIC0xJ}Vs>vkTYH~qEY=4dtNEvf?UFYT=02K}^ zLUj~?35V?$woCj<;KjDgjhmdHp4SQ!aTPq(C_d-vhP2Y>L2NW--B6Js$=FjeXA zZ*-rfzz-H}JUuA@C&mj!6q+dF#>8-MU1r7);!b}k_?+_e19vjfkf>2aAdQDp&?M(E}KCJ6n_I(2Gpx zvzZxmJ=<7*VU|;EJ&ca4_*m*E?)?W3)Zf(v!0k#(Is}nUR!=X=TO&c@FM*hhB$~CQ zV?ndroZ>d~GvP)}vG!PD_irgKHi~fh-f|$od_+VJ%!fUJb*8Q^5>UuZ(|$O5<*n0K zRmuhHJY=sLL+h`?TFy^A;M1Wwue;t-Q!~~HY<>W@?6I#1h>#0^wVp;TY%(jau&MV; z_Qq)W?qN}d^K=>V;&+LHVs=NH6SuFz|CYl3=lJ%i{w-Ggi2xu49wU&Dq0w$t6&0pd z0&uW@Al#4BFMCw7$-orJP74t$-6fDL?EgyI2+tmC}-L2&yv{e8BgC&tFe z7#K3hs^OnVDAo}w9{7L@?g&r4FwUG5@1KC%0L#=aFz;gUE~wovTu~DC>;M}Sf)tg8 zfwssj9&n$+k}Wn&g7S3k1P3z#V~hbJty@)?>|Q_yuAsS}5&qrw%wGh?AF$g#_ifJ% z2)F^5r_Ez4^r@7TPpAZy*ZzGpl}t-XHMNu{lxVq)Iy!uaqagt6BF`+mv_ar&yHrB1F7z`EVf_3w5p2f zkQ!1TZs6Rsi%-kJ8q?fw<4z~Of)PmBV+0Nar)rKkP_Ho+HudLt94T*~@5OI}o;r_q zJ?shmukTIY`10y6={#PTbOz^CZR}qmc|wNGwCrpwlpBtXP&@&ioG0GiH=*VPgy-R1 zUDsZ{BDxD{y^&GWE~ljx3)HMoh>6L+RgE{aw2-l~R>1J$8(4@(y=Jj}5*q(fJNEpX zAVJ{P8(K+gz&(i;XgEWW^@s_uE~ILI1G)n}0l02NUJHAU z49OK207!^n-CA4ZIX_r3+!^4XS+j)=1!lYEHcSqa9#()(4-yHcf4&QMnIR3WoH4J< z=|lb%sd(8OMwxOzz+mwgoj!_Y?LoBvKxsJDv1X#A?HKX3!W81PO~|s8T|Dt z9S95%LhSm{&_GaByGsPJ)6AmL{QNCHI~Y}CSnG<-8B8t#*9;8iMRJ`T79`D!@QtBC zPx&rXCh_sj-h~s>uqwcC8Mlz<{cDC;V8Q6pVTWo#p=mqH)5i&*^rN2S- zvM#`=Qv&un`*i}-iAfAy569UM88EL+QV-mNIH<=I>WVhbd@ow4TCTRI3{!v;203Aj z&d;HZYel$A|I{b{H%koo7oYNdh*l4YWY_|MOH)7pdnw<(U4v@p*Ah+?Lo7%t7_)GT zgc~#H2Lm4l0tQPECJ#dV;jMbZ7uMDx;3yH12aqPK7J~;&>QDoGICiC;U+_Qp$o6J6 zCtp{`a&c>XbQJ&d=gglytP)S&qDMrSfuQDN`n+V<@tR7L(t8}dYTew6fw)(}wY3DW zkq-oFrv~%QA_tjPijZG^pk8YrK>>L5>A}TUgQg*4^6!ZGS=Z%6edWkYE*wV6rAq*cLQ9#As+$uEL;UgiF=Eezrp77nLrSJzB}iQa~i z_}9v1)}359SzcH^1w zweo9g0t0Q>Q7ZQ~(Qol`v6^pRTO=-DwylXP1n}TpvpRw^`3g!SovYJ_Jry zszWxRRy{plssxGzOo%`3zHbW@V<;d@N0q3kqA$q52Spz6V?U;*NW4ym6nju}C6(o+ zem44|tsv51fbZ|Z6eOXTkMsi|C;;~_vcx8i8>?@75)-?o%8@!PHB9!g3|{*YI}vPYtz>o!%s&WRumt>_y_ z+ehdA$Nmsbxu5pmDst-ee~M;+)m_i|h@lq(ZGzSlyTKE@)-Y_psHj-a z$$i3=IY_%7aooRFa@|Bp&$cts3my#5sZqp z`J|M6jg6?fHP!b++*h{POm|iPbW2B?{p10?@+GLWP=%>oqGEu%T zY)yq9@gC8R0MrQ64$YWs`>inD0Cg|Zp`G#r=n6muL=q8Wr=*_6CuoX6;Z>ko;4v2@ z!o|h0aB-hN5CK?ue1?etO9C#=5|!44f2PKz&0aE^ou#G?f>H|(ROt+6>#CrRw@w|i0jbwse+KUzg|VAUD@*k-qHO3^`(CQ`ciZJ zU|DLS+cZph&qS=8<=+~~$gmC!?kPQgE?klfPa9JEyLcL%kyzKSF+pK1H9h?r0_S@0 zVnAXFffwW$gu!1t{xj4bvEZVa3{Kr)ITf(D7l1J|NN~Q~?Y+vpy9IjB82%?iEzWBxXuEnT4 z%na#HFN|HF8tnbXOQcYbN=SH#s0_h2>>B{!K;sgqu1EU1*boIO-1cd5BMLpW-onVS zv5FtL0&xx`;l+XYMrGyG0R(Yr>2X8^6wyOOK#0yu$?{B0TmahIv-okb9AWOLkULJB z{BTr1!ga0S;?HO=IWRCY=I6_SH{GheJhcXE;j??mF`80Fs$SH(kP%(i1R!_vDZ%kj z&ZL3KDDte2XypHOruhG^u+%7NYWjD{6+f{z+URGAj4TB#!a6$xkMi1^TY#k8UZ$j_ z-AYKvM_2>UG`Tf?mTR>=bLLb?_!bU`sr)@^7Xs)AllvRCZO;GhMn!rJHM8{%L8w;3 z(l?^F12O}NWhU0vSWv_PWZ%@(q>yB)d0{yE3q9G1kZo(q%?|?J_Q{Ry9lK9|flh$l zccB-S`R=O@g*--N_Fmh+9^cS&TS9wfbZeMAV;3@aMB3RCcCpju^J26x4+{Ce_OKCy zJzU0E&FcDz4Vm)PF#_euJz)j!;r(8mimi{~zXwJ$kVV8ngf(hv#fF}q)Ru*u#00mE z2{8~#(g4SL-uDSWue1orJb6fB;Wo2YAW}wbmQb};xTn}N@ zO_*C+>PwZ*PCwaz?_O>Z4vN5+8ui{K9RdS-8Bikl^`rNz*BMp_xnvp{FE|DaMD3;m zrm>ctX6wjd@=g@*&Lsyk%Y(VUV_*M4s8T%to=!aV?Px|i^^uU7`yg}%3qV6dLTDw%vdSJFxUKDNRq%$XU%$#3OvdFjPfuCSZR&C5W+a}wpatTXhl6%jz}T1^qO17z z>#M2yhHYC|6DL6$8#nIVQ9{3($ z>iZHXCmt$kX$2{zRl_(^%Ad*6_|h2jk6cB1p=}3ixIllC>I7#MxA+HvwB~aq2jt|s z-l{T2hRbOSzt2Rvyc|w5TiyFpmaYZ9Fi-s|?7N2zki$pN6hE!`&n$pOohLVRe+v-x z@S=Je+l5w13|ijEOmd!83*fNzby}l`&7>aS%t}))8a`f(ya_{e&{-AxZ)_s2`0StU zJS~4H0K--CU+iEQd`Apzz<+vR7MWdz!X-xC-1FDo@POVtS(FaQP`?c(HniQ;A%Z~l z)XwfYBuFiLy+;UNZ{Ck8_cs*I3j}2;W@`BC-zWF?SClyAW@mpbM-NI-=(xCoP}6t= z+8Rq~+9P*XR0#jUWzR?sI7Rf(k?_#-i9WLW`hGXCvYJ_6el)5z$h{bcs6Zgr13izX zv1+%U*wE1%&lObS0L3>EbbBBpHdzx2SQ+$r9dwgwvZDJ#vREt0jQ1IFf*`T~LK|_4 zEb(+`55S}Mj35>z?0I!z1O{@Ky^j)MQ;`fuOF}^!y7s?6P+vlOS$=`HuvUjgu_yns zUEH%4V3iwEu4K!>9^n@U6O-eUn^1AVJioXOnbYvnBpn&!{rkWt;Q_&h7Ko})(j=Ug zAu2uB(RownHTrUAJ_6_^NFkSZ00|*rlA}uyu1Q#Xrqvv8a~T5Vy9B;szyIszZvJCP z@AR@shf5BBepbxHFG^CYg%JvUkvJoHaC&CV)6*MqJW8zh?h!-(716E&-4Ys@f%tM) zF@$0q+pz7%DjhNxAP&GI(4r<(-BZ&rMG51_nmQ zuQ`K2eA;Tm#h=!$s}J-GvI<#P3dB`ag}z7czI-Gg{#o)71TFBWQc7d?<4vspeOYOP&2%-fF$8* zh&x3W#|yVC$F_+f1q4wTw zpUL?AYch^-MN+w|N{qSNAa<%gZ(p1o4Kde@)LB`4_1uKa&LXjuDUw6{X~rC!OoHeY z64c#5K(?(f<9iY^d| z&8=Ia04{*RW)Q!uPS+C-Mi0*wv-TE~*?jV`plp!A)Zbn zBy=5~{XbbLq~YWB^=$CX$emdCrM2S%YN>e!BlYXfLD6og*Fp`zzTHCI8&FR6zPez6 zh+<3m5#cc@_z420YlK%w?ElcnLn#V!=vwcAfwX z*a3+5dX-L|ttbo%tgUjw18aqQWh)nU!Lv_yc21%Kh#D?Whd5YP?Az9J!t%!;DZnoFi1 zVRi#je{lr`e7ITm_K3K3JgbP$$%T2B==Kw4)+i8XAV*XSSXp_2`V@YtfV7PvYjtlP z_`@9c3-j|C+M@x=&_cr%2Zxf~(bTE7S7=ZZxD=o(19%)NX0$ZQi2MSFQVyI*aAS7# z<>j^SG6EL46}(_gs|t#Ry~@h=9M)40|MWLudmPsGNPBz4EG789!% z*5c~xOTy`t-oQD>0u(uy=+X)~Q}FR#uLqROFVL~Q^ciR~{?23kCr>id{kM(7I4nn{ z$K`Y!>DRfsQmUe|cQ^9+tO5xs>E%QFv?x!q9fq6HYTJjK=(4gGu@%a61PhJ+XnZcL zWbi!GN=h(b)&ZDbH%a(Q1Rw`50hyOD! z686uE>p<9ZRaLNYCOUN}?lCFW$-!Wgw6wqHS=>sKMY!e4+|DaUS#Zza6=w2sKh6P3 z9iQ8-2ynyW!`Kuc*hLjDZSD9J=onO0-NOqak}O6=0{03nL#W;%z4;;#I{@^$l!96* zhHb0OvK}6?h{^n2XndxBbJ>F1F7=}ue7e^eK0NF>7?OZOCJ8Sy&?`79^T+AP&l`1T zM_1a2A}X85o+vD#Q<>EfA*x+-$PU({)wI9ZkswMH%J1Mj=Zl-v*6800 zl{75?7%+6_fta|2q9v50!$$SU-|j5LI56>6SW9-DM|^y~w}Ti@>- zuilA56~f}MR~j(b%F0PO0e4=OKseNoU<~l}s`F@P=VOD8y*PXxZ0rM@AywUuUN%ts z^}xH6^xmf4i!@F0=$Amc8r-B?Flf^pL2L68dWkxLgPD|YB}C4*A2zoXjILD_@o$Vf zP*VALQe0iukcEX6WF`N9Mg4*Ee+9L9! zT!DPFVR~ADEh{2Q#t2lXqQb@27Lj+$rrzVKr=L(5LyYZ zgM&i{E}o`7IU!nrQYhjK;k68aT3lbhrMWXnSlIDYZ(rIY7UE2SnY+CaOpRfT6kedf z7%V5yurxXGkzr!WHbROHyifRFOG_c*HUQVMt#7ivSEG@=u@z$M2(=q#)SyLsZu6>J zh`n`@mSdF8WQ5MbdF?lh{1Ya&v_wG*sVm`xu%m+xB+YsD|ID?5J#>H#z)0y^sMT2w zwjZ6s<`KE?4X-dlhTCb1RBYhG@Sz-zj&q4Rn0e6lm)PU)^yh!P7Bxlc-#UAG6eC;o zkZfVTaHuQH`Q_%m+TE~#V~{R%v@cPPk(h$Umkj|C1aZjHpv#zIfj6f9nZ3$49f` z0ObyTMnlm0_6;6B4#n6_Md2k(Hnu?bv)i|#Ky*#aV5k$)2c$<(V`tF4fp!KgOhwKS zjvCq?@rZ|R2M-+qH=!2uYgC^&RbLdQHv8X8(Y1n`hqAg8;H&v@lbT-#qk$E<{Tdm{ zq)=PIhrY6Qg~ar;{54BQ~}LS(*K+aq?zxm|AAkrfzSfn-F<)S zBa?sQlN0Xw@Hqg4~NcYGx9t9c&&gau{1QyuzZHH8cjrp zWFMrJPv9d!s}7p2zEB%Li2YIN>EXaM{Qaw)!@^7TyI;+VHOh+(CI4KNy3Ed5MY){) zuo*95VQc?vr8&b@K^=@oV0@S5(=`?%bm|bl?kLSla>d5omg)e&ADw^62ScKF%x>F{0b zx7kgYJw0BaV#9WFfx6SbKkkc@w9?VgU?8Uzk22`+e=RW*6Jv;rtNvy0mMbhF?k83d zc5qYOz40^fIMPu+e0W`EsW}icL7|c;b!bHn3Ti_wGNC#&jAD z>*%xnO%3lVJ-vA$Jrd)|ZD2AnU5^s6ASV;ZSn0JepLoGLi9~^8ew)}LL)7wTyYv$~ zJ2LLLp!yL33f3u?Sr6!yQXVg{^)_u(CiBmE#o+ki@oki~?f6oC0*=|E`DZRBtw8ml ztMUERih^&u<^eGuRrt}&WSIW>Jf-E7E0uA#%>RFGsQ;WBdwh4$@87ItWsWITRpj#W zH@JD6QmV%HykupGEqSxbY9$E6_xHuqvl#9Q3nOc4u3q|hB*p(R*QHmXaulGQnC$Lb zsm>^xdH;E1L-^u33k!)WIX>xw=xd)IJlMHFR?Z+Q95VeRrEuuS9Qjd#DxKiTms%af zA#P8*@QhWLV^C5WH@7^UYbM;YYbCv>QC)`W@1K(M`Qg;3xf!I4O8cex7B`Ku`?!0{ zCbA96S%aagtGs530|OH4)05~m(?Q3s*JWe|JahHn*@^95($gx4iIl8x3ZJ~V;d@>5 zVnrV~oO}<~Y$P4`hj1q2DMou|s7%*Q1tc=PGgocpXJsb3xue)hz$EtG?#nHXD9puZv+IoVnnYDV51hBZ?DTx zY&!Agf-`1<*P+VKPFbM5(j#2m1m^R9e<-1|he(Tyb4%Rtg*(B|XS(86R(>GW$w-9% zvrA4~B48Ps%&)uToUYV+k0K%(lI>N|--O{PE_IBISeI2E?W3`Jd>Qp%bgU?k{W2Q= zqFf;TfQF_qB7q{jjQiHd$c2>t<|FmIkf$>585~!zwQiIMn0R?HfMEd{32bm?5WoX0 zE>_~ZJf=wScE`WX($VzxIzOSvfvbuNF(aenK-rv;k-VwtA5lO2_y_(B%iW#g z=BsnL(FX^K@E9d9^gc)NG?+Wx<>kd_yA!`jSj)^PlSo9J(e5|+A$-O$Hp!FE$%&Hh z>fFTke1{(*(Hhd@t7CGzy zGHU{=l7Y;+sy}E*C=UrkWaRJ%pctunwiNuG*p%bqj$r@Ru@;Bk5nR&tt+7r zCZ-jKadJYoxXd7{l0-~o`XMSqB)2!)7fsu)n}>~>SuS8yuf||tBRc1IZl0ds@M^Qi z)->5_VHclC(urh(^8_=vP~w1UCc@QDwxfkO3%%B?%A+r}wYQcaD-uX=N)ao_&h7*1Q-^gfP67@W>rA4$1i^=$ zCS;S<)i_{J@4kDGe|0Hha5dwd#JhE`ErFjj<{=w7nBLsCg_36)F=YE3oKbdUyT!5A zgORw)XImC9AhP%EaAI)#C#@)^lgqVSh#MB8)-Baev+zRi9eQGeL1+q`^V5_~tsip3 zw!a_Y1Y)wVOrvB9jY=P3VPoIOF?Tf2C3yN&EBVYfA%TwQmRZU(ajfyp0BkhdNh_QA z7{h^`0ohT7pC;RmBk*8g;z0lWVoQCYcJH@;wIEkdTDUhbin6w~h93FDu~?t%n#?&? zLq6>Srvx*)|Nh`^K)AeA(iUTfCs|xFgCAB8B>o)GKM?Pqn!27fi2Xz5)&SRVMF)fU z9Jc=NWeYrF;^P%*wAHoJw2Tb$f&z)M3g@(p7Q$*vGye0f9);2}PjPWRWtAuql>`sp zsKBP^+}CQw6nQgxf`^+{&4s#7A}V9K!^M0%&7KLK_S6de8F=^ZnLWmS08Slf8NOt; zs_f)fRG^fXZ}2&0-vV<(`Vd1BY#1gjW>r6sB8-aV~sRgMAYefP9pqNN(=;k430 zEC`Wsf0JcmQL-Ln(JpW=N}5zFD2gN~ij4be+jyab3p?W%)>unt*AUt|*AVJ^7UKdn z-%Ua1p_iLea`{?L9c5V5xL79E6RK|@^cj>3e2B|!o^Lr(p-JHXFm5SkW#w_zv{$99 zvT(9`QTw^G=|gOegkDlsoUxuB=i!!3gU6N?5M43Mv9AFZq-QchDvlIN@2xC9%Ix>Z$q6VmYIjFLpq=msGwaBW+AZT!?9fn%fo_L3R#s@{=0YmnygW_~OS`Bx zg98NV4~&D~mnk3HzbKbQ>RXe)&tkQo<38SRAmQptf`P#uBPuHE-j$TdVY$Rbb|;IP zs(wXC_{4T3{{#cpocN)Lu9e`>Gxf}c!Bj?;9LOxyfcp;zTsZ);+rL`Ldw=9>=760% zldA+f;f*H**9aCXeMDbgPB~VZg?u|0`!z#0kh%PEu$jMb0g!-lk@l)m(C&PvzTsdr zISkn71c#<$BTi4(`F_Ws?F^|f*|y(f@T(Ri+zcSsduo(%hn#l`txCvMRPld9P5)ve zJ3T(WJSkk4f`Zn|oTku$p}Cn~Muus~US7^-Zc&WJ&weUDxK3v85SgMXfmUAs#I@-& z0xL+rk=;tmX}>E^c?Taq44ylz8^g#`il}1_Ory~Z3rt`yJzYPfAVs~2oF zX%18Glvp<~AsX3rajZaeSIi~ipSc@4$Q(2h;UiCwA z5scYm?C!#}`mYlKoeciS_V;3eS`hfvRR18kW+ok|)g(M*!we=~K2hyV?+3eh!$FwI zK-E*^eSkdUW@4+dwx8lHlvs^hW2WNOL%3-);)<;j0wbn@7;slB=(bc6wX;A3B3`$ zw7agBuR-zOp}!y1fFu&E0z0jkSRk>T;T1o->-d=I>&cCiF*1$e0WPa=9Skur#KK3N z;`b(sPuNR%>I!gC&cJX)rqI!);Mj9MUr^A2A)7$Jz+WxYg`GEYCFSJ>{qTNv%eOZA zS3y*_WY+lLJ6_5q!Sgg5@0zae_dly8KVE#5(x03J;1J(8Fc5m^Oc)nm)8F4uEB^r3 zwed5AtXD=k5wWrFy5!3Dy__q^`uinu4r9A{Dfs%<32XE7hs4l1=v=F84OoX($6l{D z#l9c>fHoo*m*mL~L3ypv<2rb;g+awF32STn>>47+f8sn4FUlXU=Ar!TQA5b>*qtmf zbicD0bi8R|J*nnPZsUm!2*CAVcuiux2w?xj1kPUv`g?nS8BAk9Z8?=y=kEA4_&uJZEaUB>ZcwUxOU45m5zH`y~Y8B_Z2 zGtg=LvafDLgEzRjGFuBQXJ>q2&!D2e;ga%)!0k`_$dh>7eliJ9z&8N7q|` zWr1#8poAdZodOC={=fM)TVJ}bDBUhN(C81CG`(<{Q#D^f~In-UYKJzBHKv#WSy^Q&=2 z$m6kgPRN7=zen}cyLf=~UX?vCr%{!q6X&yq0H)_THD}GAtEZJ>JKZeqy&qXCzyU!K z?iLJ?d@?v;-5KpKeqCtVLsV6mf$N7sGItiHd79%rAijQNY!;Ypj2C%qHy;Qur&N2K zu6*y*Mysmzc2NI9D^IL1)0VA`GtfOf?+o)cO$-c#X{w&k8u}i1 zo&Qnz0??PTsJIw4FJ)Kke1YD577-Nz93GvV3_|=|nwJ&YdoClA|GgAX5tjm`#mZH> zMCe4hD1VeXXZgROCWTkt*uFAt@oqj*{^0GHxSX_sl`sQNp`;}7m)~1Qa>X;g2M4QK zvhD;1Qv6=L#UwPUX~`-kb|33WZjQ=S=`*8rTCjb-zIeZERDX=RX98%tj{jAuIVuW| zFOVQKDoPH_5D`%(AvHBx5F-j_ytI7@E?M~U;IL`Hm`z;Nku*$_Q2%5alRy#h`?tqU z=8hXYJYTOw`bV>~g>T;SY*15|drt@`J@-c=^Shoq&&R5{Eo}K;QC-I? ze>z>q4oZ5woYlXt-6kQ-*qjdhtVav3sSN=N%kxnnltHbX5=yCdvBc!%BW9_yhZlh_ zzKsmMKy;N;hqB_^O=<*WWOX-An^vd5Giqu5d1y2fR=_IZ<-LJ~1h22Ux*PDCnmoV~ zfF2O9p%vLT?;kIu&s`irkZhUWhFBeVOZu`(kgRou(Qfg_zS`{-OS+97-O!Hc|t#irNqr{ClVc_hZ=;B|8` z9e8Dt$Wc5>{qk8OxxsVQFqnI^Ni@M=U=Ro!muWCPj& z;u9hso|w?c$X6Pak%)hW8zw4Br1Xq`et~poja9pxq#Wn@?XDG$%j zU;KN)`J8ycIdB!SIj=hqc&gx&YNA#g1B(V6M+mKCTM|V??jwRCUoKv?$wuvgl1)g9Bi`tPvn(hKB}I!F+wksA>L}tSSDNjv1SH ze_KRCLNrPQM7x&UiwS`WJk=kUd*v00J}BY6y#_;EOH7O{89JSe0@}BNNUo!E?d@t1 z(3fD0d9Q44%F74g#l?BSun1@+j|S7tFG%IXs=u_Hr%1}Vw~ObmqDXPE|Mi|JS44;8 zK6Lby0Ji|HcfX=?6fe9TE4df#%h>A%Nj0P)i}f}9`{Txf6JWgH>d|V~8XNPrbt*8i zE2HOVyaa7S*Z~4MPFejF6erJweE|qNWiVi)F(V&!Akx}7{r`FbPX#PHzt8#?SW!|gwOd#_H;0a>;Ts6Si z98U@y+DZKpR7}{}X7bow!0>c+SC@j&b>a`fo8xN!7l&5dyoJIqQK^H=3l=SjQpa~O zd3jOD`z9M3DMt;@cz^FYz)v3lgMe-`@p8$b3cM}HMe}Qx(tK#YWTB$Q1uE+IE;pd5 z)AK>4hcRS;EzF)X2bWVVk{bbsKUxo}Q+`2{lfT~_1mI14&cXT~FBJ~i4~GuA*kpS@ zMAQrYP~PVI2l4-hvn`krCe#9bTc=`Qr<~>ysYZ!VW>L}g>F9uux2yYq%%y!;oSS|2 z(Z73hWPCibpg>SdXZ7L33|Vb$Y6$rM{NYALGBM3kfAsP0-IoZ{j@l9*f*KFkivowt z#VyI0_aLLTc9iAO%E`FUZ|~S{Vk;U|7nhriOpEIInS_*-Q3(mR!FoWQBMsavlGhk= z@}4MB4<9q%%VQ;7fZIXdp|=yka59*SbgVn2uBEB)}~`IPmlZ z0SY1E9FQh41y4NL3{;k|bPc`g33GB(5Y)}Y*O8|)4bS%v#&V9z0p0^~VYG z*D;2*;X*?EWIXYe%4R|*e5>J8aO)h_BjG&+&Rdr92feQ4IeY(FrBnU%*X(4}2x9Tc zMAYi48-jz#&BYZEpyj6WM)ufb+S?PjeOvLau`%oG*BTGiKimZ;IXKvSrChaIKtAVC z1-&O6ckRRPb*{LW_N5ptOndh?;|itFt!@UkU0(DGpRG$l^^IN2P|mIYy`O}L`>B~y z`6|ZHem_xklDe+2*e;;mB=$YMFm9#!szZ+2v#f41qHR@bE{W_cK-Vidp(sHs)AM(WR1UX7VPy!$eKR7N(dK^0} z0r7w^pm}Mc*nrWQ>^c{n7V!O#X%G*^rkfTqb9G77wU}{b`u^$4I{#4!-vq)6CMCJ8 zH1y6n++~hs;2YKqn(+45fI|=0(8|?D`t-vvWtqib7Sxhxr{HK?fNHH-^**W>> z2>60&_}u&xOE&A^BTv*EQqr`hoXQ$g?KnEPVo1_HKK$UnW8M;tN};(6uelAAP6(e!$Ss~xuVkRJx@-+i7+mmAw6nh#YMJ6h>pi5e>6G!S?t^S zH>pMUbaXWQM>GVmuu!P25-$#=_6EmDSq8>34}o0MX>rc+`V z;(z&tgx=4C<#~S}hHE@?TpAsl*rJKtGm7O}vbTO@|$CP7H$sd=pS#{QNX&yLAwV#eI@fYvZ_2yoxx`S|V9t~@pM6M*=oI@PlahKtL#0(? z9FBPb#Ou)EpS;uW|6T?z@$O={<3>fEqd)D-Mu+EicD&PG)@)whv~JkMI>JNol1^U;|pGnNmELVjtB(ibBfoKE^a|WSh-bm?vih zH#4Dn&Mc%gh*s?0?N1CTwJE1ngEC-KYLmld@(2fUR=?`s9t$Q6c7% zkVsqZdCmq|8u*02z&iqhxO6P#&zkdx%2D)?R?<>QuUBsfvmUA91+{!h$@A}fXggz7 z(fXWv>T?z;Ep1qrq6i~XD#6L+jSiF!7tXxNDKm zt#oVo5(|NuY|mSL1{e+rsJwSF2;&UH)x|$*@qJMmGHbW&Vqt+$#Z5v&N8e+Ps%i=a z3Mz!&DFt1{J-=N)9f~jc>t(#rbOao_^X-t%*++wMSoSYE)|MRaLYzKPrZ2GIG2Q zuON__y*!)gL=f;n*v_(N=oXK3jV_3gAhm9f;ix9FoDm`k>Vh<&s)HZ+Z!(zVCXOi) zT0*y3Q1dM2GgsHg10y5hX=#8ze}SY+(BLoZ*lw&ZW1=@*EO`%T9cx*&ae%HOpr*cs zh8?HWuhqM=gLOxmf}9+!TAYSeo1c+U{BCnXf}-WO`&;D>yp-A8CXas26~uxax$}{G z`$XMYSYM-E6{+;mx+Jn@R+;<2=flfoi4hTRZ;9^{HfaN^P2WCDyLx*S0`NOM6*pGj za+|cP&uF-lL*?tt7eRT-W4UM(njc9qg-Thw9A4gL4!-_c9fTGLh>s-^z=jpT0fPj<K!YH@K{@Aj46B7#uH?}*!7rbGU|=sSKe}Ci zwkbI2e|2`7&D&<^JVIm;D6~$9#>rta02jBr-SdyNvi~@kyG`88gM=6iaE#c3N^5Go z&QRZ{EyIn|5VoFmQq7w%7kl_H&A|Wy6Qvv!rDrZzM-SCmvk2)+-WY~Q>q_VBa#BYg z9|JnRa~!@!@Odm{U?l=_Yc%|ERptejTl}w)2g9QzSU@Xem8m6(PS+L+$%&Fp57>b<%FL=C5tC><*2>R3J6p%J zyQiSAuZtIV#KlJaT<;hI05bx#78JPsIY_gti0qhV82-sd;*_0zI|dQ}etx|CR5|;h z;d>G0_Dv+)s+L=|xLcPLU9}}hY8XFEb^=XRnArjeG(L>gN&s~Q$+j_@pzpU%*?RRL zV#{vYbO1vIXZJvg1kUZ5?0X&nD6$A%h1m40HQrGJ!R-DQ^EY5IjY_os%3(AC`dUr-1k*>f7m z!h?alqxf^&O3plwQZ#k>41D{(7qO_QSMW79m{OfH5T{2g^Z~_C*`IsO;nDXqssQ%b zd=qr#awh^jBscaQ&9w(be{tx%bXSCI0_p7D=w*m=2X2 z11ACe<$E$Fml`{$YC(CQRx)K_F9e|bMA;k{DJ-lE^3)lF9w=^r@Dx?FVMG}ol}eq~ z0Vm*fEP1)mX%Ke!i}J^`wasNP{tj8$^!&McEGm@l*d)fs^V-UKK|1n$%_!%1 zvz7{|_g9ddK*YPV&ma*6*9mgk9qVJ1P_@IzuJ@a|4)DOAH8H20?&i7?_WJqx%-}!~ z6O&Bgxbpd-$R8?WzlOOFX-Kgfk{KB0%+CiM_w+~b?T-|eNDxZLu ztWu#tEor*H;p^YOh4r1f8TI`yh%74j*y;{Pbgw&f(ptyF#s)$-ghxpkrcgoqWen=t zDf?)mC+xh5Ar*Z5CreDBKC0VH-oQW%h%!idohkd`dB`MHSKrZ)9u}MORK>e`YAlYZ zusL56qR%Q^FQYtD2nS{}Ae{45%4Yf;3EaZ}0!50}1pa3fk@XiNSQ2q;*VV|U5E&F- z4`D!SlJH1HV>80fJ=ti%`Wn{Sa#(Js;bd>L`$CX82WkgO?#~|r?}}o{8-EPY-H5k1XlS`<)#=AVUB$w z&Sg%E-B6q7wWY~$4N^x;bpGdj`aU}{;wQgzkS_v?=2{YwATj?M>XouzJeQGCZW>Sd z27p(1vr1umV#Y8OvhQ?9hmdW9&a?f*@XDlr-3#kMmftrKTBYd&QzjG_= zv!#notnp)GR&omcDFZRBb1jfL{#CVu^wqvZ*0q8zHI=MN-wp{eqZ$Cu@8!JN;{|7j zpO3#ld0G(8q>ASM7ZC(BW>j4r3Aj#Y}V?8{kRVM0Y#{jj-7f4 zJ4Em6LJl=WGE+HsdhOgnLg;X=om>c1vGkzGB@ASO6W_nIheM2@w;QkO@nN_%on7Na z52j`8To04?(Ufh~R>KjLpxX!NN&J99uL29NhE<2{r`S*dgd{E%LPDBjGF?}A38@=@ z=jTBg#dW(|p`mYJxZ3m0<#F4}ddz_4SMJl*xBkadAemCcGWRrL1qTGULfM2zh>6xa z8oeSb=|!11wU3-^4Zari7$! z|F2XlF*ez62i9Xt1j#Lxk|yq9BglfNjDroh+PW%Qy2O10Wm*W+K<`tE8WS^DHTw#! zYNvyb+gb-mH$gi{J3;A)?!cI3$IPXhfT~0V_st7#3ie;sU+{p$Q<_swR1SWH5=qhr z<%yY;n)#rRWDXgYaB{;c=9?SdvPr=B!C{6pCyO?9Jk%*bAO&&3Qt$V7xuWSS{>QtQ zXA_QF^;_r?(qf4qM@SkizDtNldn&Qj9`=8%Xf97@1da%5Jcf%>LYwE z7Z=*j4h^*o#`>>^;r^G-^ln?lvQU2jmvGXqKS!LGmj;f1f`k}qUaBCrdAbDo%1Qyj zQPQht4%<$n#a`gf7~(@1q>L7b>r$kos2@Ju1^Dyo1+23gtn)Ec_#g_V2*~rAAbWhh zKOSlI5BI{9dt)agO2dIkN%30!D<#w?W>44Bnm0|~k2uzqGYw>rPe26fuuv4Moc95q z{;K$7h-D5|ihT@Y>|lK!!=5m5cHG6VT1U_|(8h`L;! z@jgZ{bgQdh8Aj9~J5;Xk&9l!WH9g(;U+H`@S^RpJm31FlYQ-APipfSsyx?r( zVHkdkNh@xFiYDQO2%_`jPG`uolF!p=mi{@&y&TA4@u)UeLmi)hCIUJ*b2GDxlhui# zQO`eGhywFJOr6J)E(|qouMuckr3Qi2l3H;9&a$^0)SD1qM%=`PAGUYvi1;IB@d5Dw4EBeELwo<^l zp#>;Ofy4Eajdve8Ed(dj4L1{~&u5!;-o;n`#n`$Zp&)5!YTv#yIRDFZ_@REv&ns=Q zThkMdrd)=tA%#DCab%D0sw?xn`PIzq>0113lvp2*tM30D_t4ufWT-lznbW<@@8VQl zKn)dCb6Dyq}gf0M>_y z2wmGSKOdRShrpp)W_#0OQl}8=IaIG-6@yH{N26_Z+Q}*YaqZt5- zlF4adqc2I>bfByDnQYpTD$n^!o;Os4a3E5-4jz4pU0n`{dcw5SuwgZ>7SH8g1*LC< zui`)HqH=IF`(X3GOtNv(FBPH`^%gcm+RaQ&XfzXCN_WCp>hDMFuWa8Z$GPLg{b`HH z_7ZEYP)u@Rsj=6j`D7^sur8JNeqMC6mqpC@emiN;4dXA2=C|Fz5jE`r|xqavMc4N_Eee%YO zf}S5Hbq)SyD*~I0?i_ji4uHrfU6j$gEo@f*$~;ilBurNDm5b5PtHn zT!pw1HkL+*j;rmI=Qe$j}M=mGwkV~D`>w$)aBNAR*33Qk)xqe^(5sW zavZ>Jb!ur_m{`m8?wVy=+y-T2fczt_Np%(BI?)bR!wjp%RpkZNGz~y8F z*d5mOO(VJ(IgdCr6iHPCt*Z+Io(yw=gtu;hD8#eOttY%f_GHjI&8XbS$B}?);W!bC z)qC-md01QZeP8uJm6u4Zl`|mW=&_0R>S?ZTRN!j@6nY=Xc!PLcc;4JWC&vp*&8qqg zg2U(^E3#FtaQ-;(wA#(_P8-?mO5;O%0*%}%zy*R$fn$jXZBynIOj@+yi-pV8|g z!=e7x3Sy(i|6!ck|Mb8x||M=nJQLr~O#EiH&Ml+aAe8ln(9~Nkl)>l0WH}!MI zXLPecJ@%xaGOe3ASu+xv9nrlCPZgubbn5))YFaP?-~Lh)PTSh6{qLSsw0Xl}e=Kkd zKB<76pv_Cs2yKzUef_$;t55ZnKHY~Es@9elN7L9nUoGa@pP=U$J_YVf-?=v*PK-R{ zmBPYaChIvd8(atNhhX0`BAE3p%T3WkfC7}J;{7m$g>SB2?rT@`pA9^) zXz50tT)OC3xyHymEBbARFTZ!yUzzf5L8!=p@+l1_DZC~S@49h}8}#RtuZWq&s1ol{ z1?!*Q?KLSx3cKGPtf_`OPA~O_9#$!lj|H`;XbJ#<`X|(*F9QGMqJwn00NjfR zry3lmUx`FDzRNP6djAaB&)4r`Esrgft22r`j!HlOEquOij_q(b_62^GZq@Fu2N=Bh z{w)zqZZv_K=Cb{isZBYE0du`K@s0Z}3YU7iuOR{38UdV<%p~2`4I(t#V%L^_ZD(nHDl+s_#tPzGNA9naUF% zW$tj9QlpU?CXepjKHnfuBPM2fbLPdne$+j1or<2WbtR9)BBX2#5J5VydAJX=Od zKiz8aKh=T{Uno~|=PEPD(&-hEK>}3(gf?^E-LcNrlU8F8qmy0wqi@Pee9B z544lgJOw#O2Ii@_z$FkESUZrkjrei-XnfbbQG^(Z_bMQUc@iw{zt=0YP_tHy%6)oK zZa*WL;y&#e8Xb+069r{D@po}?ku|9?KaY0Z&pofUta)i?61_J25@V5}f(^>VWv590 zwU}@2kat`YZ+t{5^Ayxo{;aLF8n{p0s{d-zj^*O!HvgqxQr6vF=-c=2j!=6sTh>WO z{W(>E&huI&#C-`9H!=tI(y~cClD#cq{EIg=Si>>K_j1ZW%GtJ>gs4tPEM-kU$b>gMh{;02oGH> zDQ|-sCqmHjQKen#{^W#xVCu$j7G%gXv-N9*Bd+Jt}?rQvEgwBMXZH^lXF=?Q+IH5I_87$|xkHdy|>@ zwRK6oPD1YzVWm)23G^}5b#-?WVg<>hxD4Hgd)KpdM&C8(fPnT$(Y1(Q`K-6m{higdz%{LtF@9jkU)CpoE3e_qr070$H0lhbEz3LMFamGyNJ zs>pj3IKf$>X-tvPgAtWkQ~p_QJMA(NJL0qxOP&6-&>pwBX-5cMK?TpE%V+4k{xCr3 z{*7>gc1uzs=}3$jFNEL)fvIphs%NnX4c^XxEPfb>w#7g{A42hGMc~s2>t@559Sj#| z)zH*z2dNm2LY+@)V*L_FDP7;cBa%cWAU0#Nx70fisyC!xp7*{zb%P-{>8@!W^OzZf z7Kr5pdCc0FnN@cl`98H;$eoJ3KUtL)t@TJa6UA81N#Ihb=Df;dl zjmu45VKcPB$>nGX@G+$8UEVMgZcwl?uNq}ut7Z!nUOh`qzp#n)n0u5#zp1kGJ{a%4JIa3 zsEd2i&pYF@hYQoqy{o3|keUj#KW&2;US@4Ab+Vvs3&>`%aGb?Ao}(H0UkC`=O@^+n zS_#wOiNpANCOi95u7+b2#CJqRMIAP)m+{2VerXAeA03{}T+xw|lHTUvXh&$L^!s1( z&D!RVSOH;n%VREx+$YT+{)EaRT__#g`53jVxM0e^U@N|5De6!=HL&910n@}mB4ggs zb}g9Nt_fjz=Xr-+)6rM;z30PN5K414lU0NQ0s@l5$d{Y$jjfj#XJw|Hc^5bj!Hb8g{j^zd#%f3y5EI=Jbj^#oecZ(bhL5)I+RKc zOi+ElSaJ~yzIE%C$7+6Fsn3ZMyHNv;n$!h9s5=E494elzd@5;Zft?9v_aD*Ly?-># zRKb^Y5dBlR;p#eb=MHW7ipM5Yn0@&A)l_EuA9J0FN${ECBZa?w+|tr>$FXPeCpN7X z{I5gkycB!VrHpQqV8x`Ta{&o$n7)b$TxTOlkAw$JY|wq~9W3X0GiX5q(zlXpKSxGR z*kj}3Zh;yV6ATXzE;Q26V8o*pz3E#ryaHn^`a&nDCr5w&)LHQkZ|5~>51CV5`j)^{ zU-_~#ALLcnXBv%88wv|;dg6E#hJS*blDwPSR|jDrq52!X_x6$=9304mW{DxJO>;1{ zy#i5a8AD(~IcYDt6cI6TdxP&;uz?$YKPE%qlpR6=iRr7@w6Ex6Hd8nZZ0zjfCZsS* z^qgUhjD+O4e0XSRemHt?-*#5;Xk%jei;BN(l*{EwZSb+!OvuD^Re$$=JxV_Hh0YmC z+7*vT{=?wfLp;d_rpTF3^SWW3R`W;a#(WEW-sldI6*ibW7NF{ykaB38BNZp}n z?S4c#Y(3W!G~Y(7Mzecvaj5CxQ3XDf`m>$AeaV~ei+&T78>d+km#8Xj7mWn5mAtvS zx1&ocQ<)O6mWv7IKOSB2_50jW61)qu@`Q1j^ckhoDRR!G1&oE)L|*n9DIW;bL`z5 zjf{$l5%Vdq*y&qRr+=6b7Y&WrZHUpkP#0eRH{9(f(FK zLc&As&;-_dXVXc^$%upHYXr3AyRQf#KJP;tXcnbI+HSs1Kl@HoH706skfuMTqtl{e z!eeGw>(=R~2bc^4KYs>K*wx~?Pq~g(eH|Mg2a5eSVSHlo8Nd3n9!Osk_BXzN|DIt@ zP)O*EJ@)#7c7LcDEnJ0L^QLfm53T z`ct5@zJoBrV3Oaaaj~(rzPqlA-oTBrxZ%`FOIy2n#U=C07h=x%E&n9^ z>7P5D^wHpB2sSo0pm;sc*Uva1H8pa4Trb^-?0A9>Hx9HWlai=b&cLRpkCI}cd3k&1 zY`Ka~J*=$oIO!T01YVn*JJXZSAhEE(-T_bh|IPxgF-om*X@m=hPNeYugrm?z@Zj z=f@LyOtd929dxr-UtF>s`6p`-8&xFq*G36nZeqh;-4l&6o!d&G=$R2d8ZD7N@Mfjz zZJ_I44r?4WU#%AW1)D{!n6EXzEOjN~wlRK70;aNsN_ZdQJaz*CNd=tr=vwCF=a4Tss~FSv8%JjK`K$+*H^->W`((N4G|Q;AZqA|zK(RPpMEu>ev}wQe2*q?(Xgu_SpW=@0=wvBjV?C0^=DER}?#~v&)32 z{$q9rqn2aF=OjAXcHE6-x5l}L9BHuqm#@uwE1yR?`(I#bHRfdwuCM(Ei8+iCK3z(2 z&f-Z*Uns6wWd&(G0=RgQk&)1;aUG%Nx^f`4S%oSz?ZE_lNu8j~44*z12ctm8Q#(%B zRz~I*HAlHLilj!v2nH_B`h5*?kbUmz?^n2c7a5#fzyq%O{ZMVxkO?)Q&@s|{4<7?3 zKMbe@0ZiZ~?Z6Jq&4th(PDC{xL@)X7T>9_Q7(IQSUhC#@c z)%^-x%Q}|ub7yoBms&71oU=v|a6LeHhTYxWHo#__uqg`ly)om*5X;CpI+no+ zBN!VS0~Hzp$?y1;n>DU$h<}DC0cu9kKyWZ}$Qq)A!pC3kfl&?xy=Wc~jNKVjppUGQ z@ZX3$C>5o_LzYG;G%Bw}c2C%26VgfMYIp2T7wLRL1c-8w865y4*Ugf??^zE+GZE1Q z;Kk6C6dJ_ajI@-(^Sc1GI1;D_gm=)e?RjbO7hEe`;21E4DSvJ4?$ASVXw=t$7uGnrlef^XKDgOpY6rBYcme4z1NUslPc{ZBPJ76GV@C5IP zyje~H*WP$KQX=>Kd9I?eGKoL*k>`v;4Alk)?+yeB@>W&_ReOD6@_=kVo;hYWNbIx` z%VZ6PLN&GHT2Up|rxDRrK?Tt(^sjq)QWy7c-n@A%zP#l_Zz&bEKN%V|e~j*Z_7Wt( z{yuxtU}|=x#&^Uu#D;ee-u{l1!ub^We?T0nrz(!&^k3E{#_)*c&rvu-!)3(LUfT?W zybAYLw-ozNT>pv%3eur!c}s%Fep(!AzVCeg{JE`HXl8w{W@3Y^q~WwccrK7Q5L_{9 zoKlKI3+6m1#nL-J$*P~h`OSlK=qdPf146$MgylMUv%FQa#tDttqZkbL8q*Iqr`Y;L zmT903ht0&)v_0DY+_VgoH6K>;4V@YWoXz{<_;8RMUCChV98TDWZ{J9dH@&D!Rqk{z zNUxO%b)4GjNj))u#LO_UIXoP=l%_mLHjCbrK z8?_pCvt$FG&AErl58))og^}=dCgPTvW2&uV?9+>Rochaa?bjyV_v)~to~D}f`t zT2IxuKB}-HO=&*&6z)o|{M{*hc!fq@*nEES*kipc{M7)@KWH{dao8@&>F=*I^KXD9 zc6Ck3P5D17Y$5tr)6{>yzJ1Nf>8<*c3Bpyof3Z18e~lT?{27t5n}}kU*+JOJh8Ekn z)4l_EieF?AFm%}!$;AnNgu%K~XWZeJH0rW0UAVAsCt> zw0}ZUZG1unvW`$I@PDr<)Pe@lh@JFQ$6EN?wYE%U?qKW`N)8%kl3r1Kyj`hO2o71<6P1?(!`vs$)L)j}d!*ECSjvMgYNF{{4|#^Cp*wkB@H$ZVqA~l2s^nUwTo_LsP8}!p7wvZ0Rj6UnryNds%LeW5it7l4?WqB^4f z-FCRS5$_laKRQICnq+F~>J>p0PYFF`VpMkaV(D1Y;HW#2jx}ju>6rl+E9-Tu19_w+ z*^=uo%FuX_XZQNQLmCP?okd`(N`StkvW1v9jiTCh=oRdl$h#xMd8Dry@NyyK)iWyJ zs2;Ps^+q^D2MS2H!v~(qYSA^Q|2FjxM7O7q?7+8iMYc5`>c+Ga*vNO9ZttMG&T!4k zyVGxml(kvBACz#R3^yt-cY7K7`>{++$un!uus!;=^O;z>mT&R$T}gQ#(UQB)T_K;l zhI2fLinJkYj(qj%{k&4I0oCGpoRMSp*v(HR3(1K(NuQiTm`E%0W8TkxOB8c(x*>b* zni;11(b>ZM+cvc8^mvB-ovocmYqUO+Td14DwWIaZO+SmIX&a4xT90@%nA+P%?Yk7; z`KNPk$epo5ugIw6sd)3n*)5n@&I}_o!%RDi=hnx}z}?9($4cjGLA+x6s}v80jgY3M z?$sX&GKrqv{%V^Xdbsgv=2S~-AL-(hqb=t_B|@M(PDx!)4;=}}*n841`1HyhlVK<^UsDJyJo(zs`djbmQ9lS0JNM5wA(=$_f{=Sg2^m`!Vfy43kNMrKKO;VZgMXs9n#NqAS0s`P=O^u&^ zs7;0;X8sH?M)w8P#Mjgg&?QLw_4=p~9Dh~C(4dOc}mLaUtbiy>~gcMNy59HTWFnqVsLmc+9=IVcDG1pp@&jFE_yg4fCU}j zE?{G#KeJpb-?!%uJ9~4nfj=Yj5{Zp1_1t3o6XQPvZlEsm)6XtllH(~{NvKmqmY2Up zy4kNb^u-(rR7q!-$Uxxq>ASdmhm&2~woaD$fsAW3QhuoN^7sxHUd+V?wE^0n<})<% z8RC<5G0eYO4qyBEGgrG|16IWKu4O(EobHb109}~hOYXR=>K7z^}g3k}k|ImHBRg%OI`9r#ia!C6^3s^+0#BDncl zd$)SNv)$F#f7KVYvAi6*_+4S{ak%77qNl4r(nQ6iB&NQ_g;cQ3=V)NgFA$@pg{Iwv z8Glc{rpUniV2z{7Q=KaOxg&W|E(P=U=qwjJx25+yT#oD{e-?_oqLWx+VqbS=H#ki` ztodp?Rc1YU^VhiGE3H!-$HajnC{{F~=zlWCV~;`+RY>jlPfaxc-z|Nr}JT9&CzgTH*AbWC1m&q4Hfv z$2&;UjD*IQ=e{Uva@k^shh$ydcjWGO$6lS0{Y^3x5{}qjrwwr6LTFESV>LSe)5S*D8zHB?6i~1rq_6>FcZVDXZ7O~kw5$A z`yTD>IWW7c^sD3j9F4iknW}<1&SWY7bU|@!XpJ}-v7#&cD%c)Dd69n1vlxv(TKvr9 zXQ2TMBUbTFjgFQ$+)Txyrx&^TwiAt4V2_GQDP8mvtdWeYFKCh>0mA2rqCKPFGsk<; z*hozBn&vji~- zd}zSyVj%{K!*?$%4nL#BD1rbxD!bu1)hMM9XuIH-x~$x_J@a^+NYoi^MC`#j6co#1 zZ#C1EtySP~>4Sww-@v-9C0Ao?ZjM)>7g_7R7ex0jrl8=ieQQET2Rc+5lHQJsHrio} zQzD?-jINv>^2P4EydbaOaDTBR-;nMv8PXy%CD?;YKaFhK8LW*FqkZ#LMh1>%p4;e( z=Sufi8RkOtqzW;LnQ0YMar zu;gS&{=V9oa%XbbnO6qY85o%F`Z6PfBn0o)?4LnvZXqF=tIMM8rDOvFn)R?xx_sQG z9eDfeC!}?C(+bgadpn!8$=eIj3Omc`ud$*%!34;B{>Iby7%F_f%@&wtSP!h zI<5Wv$PEoOwjb9g$HN=ZcqA}J~_z<(tb@%(gnlLnv2ZJk3!bhUtz_^ z#pQ!s2vDQMRPZs)8#r3Nko_JR)GdCyjWI$1{Bn2Nc2^cdF18c9GxqMCU zCwwi4ks1aJTTE6BYA%z6%fI=~K|u2RC4=lZG{x3@FjcUpp!x>$@p%u|MWVmQYtF4& zK_4b&i~r>?8dv=flt?N{n4qg{GwwpfrqgCTn2GwUY(WiyZzd|YG76P3t*wXif*%54 zwt5vFE`Wvoz~QhEWmSol7Zw|aueN00pSqS16{xOP03+m!J1)-JNjY^{wf_ueiNGk! zI}?A`0#ti(vRbiWVY4+bz?69ERI#&`!I&#_ri)6m?z{UN6DY;Sf-=$nVnnpFE4%BZ zE~{R4$Br^dHDcVm$4f%;v7D;~R<6s;r10^czr~L(#bs#O<7mr}#f&a@g74UjIbmI# zRt&A20Oo@9;WelzW&kNK}{__+yiw27`O*_Ek5ES&Gx1GKzhp+Tqo#sd6=2~Zt3X2 zVPG)Cz(4A|x)j0yrvQg>_WZ;QjMA%;#!EC25i|fL+uNn^xP1QwF)xso&C|fLd@N8> z`lhb0kIu%XIa#Z#o^hhiI9Nw$+!29{qN-S7JDf}0)zjl|=3B4D+R+^=1apZsPFOTj z^VH24*w!wY;veJ?`Ru8%XJ*ZiJY{8^Dl6rF`H0!HP$#)b{SqS_M~4m>eTy1r_%1LD+lAtok#39lYm9i5kllTW_NG2U#$hW7^3aEwa54vep%i<)*sytEkZP+8_9 zfaRTGkd!QYs~y6K_|8m2{;MAOxMY4y+OPIf;h#S%=yoM1P~6~gRLzNu>qmehW8-ut zj*T?I{X0a+=;*wPIVN)V8bZ5cThs5{toPizubf&#NGs|AiRGQ>3t=$Ntsy0hqNfy~ zOoL=<3WB!QK@YQJ=9YEq-KMj%+1ok{Wo*`Or3gEs-n#V+RDcH2g~ikByGFhWM`j1|ia+TLioH;F)l zC?8N6*;8J|shz#>7SO{A95uox^dkA24`F01V64Y7HLP)=CI*SyjR_GL^mDc_qC0^) z5coD2&)_v&H@rBdNLULn$@Nw?QSnBGp_+Mi+NUya95(9hhZU|o5o9>(HpGH8WU?`aHdq5I|Rfs*> z{fxMm00Uqe{WX98Jo8g8@E~!TpGF>)G17thu?$Q>C*$yA?NBVT+CP0l{|OA{#hbbJVms_ou~}h4`ut} zi0N8Fgrd8Q%yS4)4?z++c_8awE{k+Uoh<7*!_{0m|4zr zx$jF{d4g4FJEPBDuLBOs|-Yb~tr) z1@xDN5lT57F--WC&!|2aHNFQghSSh+C@P|$^V1iktZ{dC!hrq9($L&${_%sL=t(Vu z_$2*Q?HOn+^0hCu88;l=bl7FK*8db@}AJRYFKK9~3RM$@V{y zvb?KgL}HvPJzSJF`$hxL-}0mW50sTdzI<_wEN(HV*%yNNI88~HE}l3{PT2QU^Vh_a zAHQh&Ge7=8e$OrvDj$y5G&qQr?t94F(t3fGdOv+}nLO*+ceRIF`?F>AOtJUD%F%8& zUf~wE!&V5{nK81j@3A!8;DYa*t}!GCSbtFMgCTe!s;QSDhZ_>5ZW~wH7(sb?%O*Vu zaUfTNN5=8`y$`|%9&sG;07^B8V)C&{3ph& zYEjxNhHuMYaa! zJ0hXKr{lHa)Bc_=Xx9!O-I!!SO^D=Kgz`o*$Dl5RE8@+gFE7 z@E&bS;DZasp`{9h@ECMY#V?Th0cHh#kGE$6UIMHY2;EZsuxgsQ8jM?t>+a|3h-1sY z!m?z}f~jJ(&lgp^t0x?85xNTAvSy7KOITRHqY(h@B|Lq(}W}{ED5p^ z9{ai-R6Lq0oJ3`;3cde_ude{Ba@)E_QIHl;DFp=u1?f@{P(V;AX{1BCM7mW{DHZAN z*raqLEnS^@UaUr+#(l_h;oWVh+lHzRF5}}T!&vxUo+SkAZq9yFjbVm_otUWG zjZ(e}haata@a$_#OJgW=8qA$1PEH*cX$~Cs^*uM>sAfgv+}&y#?sXJ9Z3TdoMEm*Er`5;f%MT=Aq{cnes_<1OjnwY!eh-AVU?fgs_r zIK0rWm5H!UYcK>%C&{YFer()_moTp0ZZ8>_yX$tyH|}E1y}aBGGC!lz^2OqmjmOj$ZHK?+ zHeqaUh)p>oEd6T97vMp*-|3uDYZ3JcX?U}K`OJa$5J(%dK5ZbByt5PnGr2`>TV z`vn*{_`J-somUvQ97OpxXTqHGAzFclc>Cebw$0rOEUbzQ9mY-a}>4wwxJ|!5qU;(X}5n}DvNDG_tDpx=D!a^C)Q(lTF zLcN7vkCEbb&8pMaLKbUy%dJ28QrB#1ahhIjuoI!$~pf6s`p}DM1|eaTg#fGi$L>2HL|{4Bwk=}a)#^Z@bWOBq^LqO z9G&{)$4f6Zen?41_7ljbZfS?d#;Tbt3c#EuBju4WAk!fwAUPO3!+<=Xb z!$mCH0W7BIgD;o~&0v4>`&Xh#I;T$iMp2bUIagzySG|tTPa_N;n`Rgg3e-%kFYy() z?mWt-T}ulA=5(A(FAl6b{LdbWbO%!yl#VU;0wEfBfU4Gv|n7a|UN3`b7 zdgNw91O9dTRK1g9JS2!=+-KqS2?}!cQk;V%X@*BnOH#W!Hn%?R9Hnh)>Mh`$8V?XA zL7Y|~B-D;5Fwjgsy9*{`S^d;~*R6Mc;ZuJ8DX6(UsXhKQtbBblAFQ((K*%3=bH;?K z-iJtVKH%rHmgl2}ov4xTGx|Q;OA|;%A{kc=Gdr!}bK-@wC5)1a$ee*`E2m!-Qv@&a zc+ukJLSXDkxbcS)ijc0(=7|sR>F`8j_Elj(~ z|B7#*pf~b>I-{?#v9q6dy4|Y>xqEWn=-L*!f(LMnRtG#$>=|yLvc0c!E$SbQy{(9N z;|hO&b^ps{;0o~!p-kZbU3wXf#SGvQ*>I8E;&A_?YbbAusPe?k5}%@1dcJ4zHjmz7 z7?gD|lJ1;FF03L-sQ)`Cu5(pHo==IFD@>nqTZMf8dgnKgzeBd+y*kjKht4Bt;*rjUYszX9^70 znno=xYoQkd>>UQsw73GAF~Py|=OQHQ$WFFAg+BxUDoJQ|NQ9$bU+pT-Zqkp7kbDRW zBP?8bCQ6(>INow16awQ7i}Ch`{cU&c=_a8(vti3~I6r~;VRPCg%nD&kRJX{9Ios`N zIz7#u9RWRACIB}Cz(qcIK#kBNgE?+5UN}_OrbF|HS+z9&q2IfNPWKWc>U$1n{m5w2 zyAv0dOo@Q~g=0K9t*6DHrt;Qzkt9XVOTWzxrkOYsLv9CD`GCbR_}YS)i3y9a@Sa%B ze%4{Y1Bj`ImN*KQuvGW6m4GeyM9}l!9*xtJ_iVFpdf6N|oX(sro32dR32E!z*udJVqPc}3Y( z&DgxWRHbES;SrKUoDO3d6LWE)g)l{Y@gj^5m9OjQ5F5=IF0+;gkgm9(E@RSD`SQm0 z+KH41)XC4EFJohRs4fRwa@N&pX!<}bO#??p;ZGZF9ylil01onwCN zdcr>!(paslOs@=lPGPcJjYdGR4)F8{W=oY`dHsQo{{iF7E;B>gE2h?M(Z`P|R=<6P zL3u?0Qb;*DMQ&>e;!1>GZb*x>fcZCk23^!=A|z?IjM&)Tn@}<4YSnlIP|0YcGwW4K z*Oj4;c?F;vp;uAY^xuji9lSGGaj0PW@0gYcYvzJy^NN zIqZ%}K}k{@DF48-JWxnG8+$5kL$m(5ZLj6-wzcQ-yy zQ(f{+A8&yQMx3TmdugE0VWo%=VVpR9rMYRDSExZ~GmHVX@Z`?QWq<{}5gTj5&)JHq$rZY{82)HXg8ie#s`1Pv5Ox7z*b7w3nq1z}p9*Fg4|CpGE~)MdHQ zkBoEUd)??q^c{v+B!~yizA4lfY#$hqDGfsgzpR5fuUbCjuNCV`LL84_gyTgc*SHpuXi17Ca6v^ZggWsRBq>;6Rmx zSg~=TuLNeQbHU!!UKz=sA1R7J!gpw7CXU|7sM@)EIA|^g1_>TLxvC8rPI|=5^3SjR z%%=Kq*sSE-CTCeRo-{TEOhXILP%7@D$$P+aSP5$VVfPR*!|hcBw@9tc@210-&Cn9CL1;ie$XF0PsLAQ zI&c{opGOSzDvjG73ADpUwd?NRz3T-92#FKE6Bb1A7q;jcrFI`~ljoinnZ$HDqvL*d z@(WG1M_g}@6*$KcAv)i~sBg39E`>5{^gukMmz;n1{kvTB zUnFJZY&-PBL4Gp1ww7$(vE2QoK&)mJ0*Fyh-C4+T3Z?fT>9s99J#g!-O()?`Lxo zJir7cl#ce*hmcF$d5v0&OuMS8X3qOjHBEC6qpv`DhBT%8$mG`{4(qjtKm9_pnW6JY zq5@l7yjYj#4AfMm4(t!-*?n!q==%;C%6sKP{?#y3M5~a4I*LZb`!>>)=eL)B6HH2V zW{C>e%Y40hHfUYAY@=Dj`E2Qwas~Y%J|#*;l^2PX(F4>xH@+_3C6>_QjY0)<>nTJ5 zxQ4U_Q`vPE`vVYG3fd;u&CEMIsaM{*xGWPxXFr(12i&tckq-y93@Jdy)-&av0b|oQ zI>yGdTj3ZObaWK(lnR#`3O=t+Lvs-!cLT2&<~jU41*Au!ttqdkm$4uVTldT@aWv8) z2Q9}&%P$zuX0@c$_5MjmJSXpapUz@YJItg)EsJko6&i=Si+nQ-{re*#s5E-6czilxqNqT?^ZdLXI8>{&N0ktbRhW)&w28d8 z^$G}xD4rt4fca|R&}7_kxHGDSgsPUAStQLllnTMBnFy$uSR9wWH|Uu-)nRk}y3sLo zp~S_S+%O_vq#2BrVOCZyPp&ZggoRy!l>zS5bereA?9ux$WlyLd{bTq~8s>WvV1Boo zZSj|g#oWR|=NI;tAY)O$11OHX>|j?y+n}jvEBU0=-B8dW{(=L^AD9VsI%A9vJ120o zHuEG{>{RhUp23LfQx*1c^-#GJlWebqP7aOu4tcAa;oO z6oV}t+wI$nnnS}K9at6?k@qv?GU@>E5(6eLEftjvKTiPYaJD0+h^b?=WcU2?&#rIZ z$blYB(%|344V#<2WTM8^Rv%e&WOo)2A_fK~<}KJNlPl)ftgLsDFtt_a0gDEek?^+* zw7r-l?b5tP4W}?OWsZ{P^ zfUE>XGV{`UZ*Qm`9t47_AiSecQdO1i#61PKm=$%W>Qq35&pMB0Iu9-X!U3u`Z>d9L zW81iA2s}MJW@~tpQ)dBhZi7Hh=bz0->b_^>n^5YAin?G!11mfn2S_DbTcchP2%&$0 z1fDF++4f=R{_dUnoAO=uqRt&bxP(_am;&!V*^ptts7U7Z>)axY7wH%?iIDBazh>63 zy<`u9jwRdAiW|nQqa4sBqp@4P=LgJ7l6cUsbNDt7V1ofyO(5S_Uh$?EdKmB{MiiGQ zC>(wLB=-2b9nM4fBnHeEq-h2?h}}gfn#-3LrBxbg@8fD|N!4yZB4&ghAEp;As%~Tx zRCGvH_lkZp0|%n|DJj4YP?9Yu-U;`O?Lwm{eEkoJODx7fJtzXbqT5@K`fK$K$>O1* zP#;bJ)Y2{g0D||Sp-7*C5Bdi~$mFfxzml76AXqUge(&H_rekI%1B%h$d~hL<4*4&p zOd;y-zyUW$G#*H&+s-C$S7?gAggS+(T0g252uiwm z<=k9^_~SBPyt<{LsB3X-q&5q%9pU7DZnR~uYms@G|Iq?8QC;b&EDP?|6AV$e2n4Ny zPRn~c(9|KhsG|39I;iA()ov^3Et3ddRIk6GX>W(KtH5~iq$+kyjEakScfEBJN_3!E zK*vdb;T-~hTb`3ZtgdTrK3)@w%u9t{VhrH`Nl%~oxC;r5Tj^P7I1SaDT!Gr^lGAnC zWQ-g z?N9iJLoK!t2)HF*uGgO~?KB*zH12P#pW?paK@cGP0qWM%SXg{ar*jG-dF|^Uc)?H+ zQy4OO8rlhLm0NOn3C)?I?jsxrU_dIA|5E=R^xu#^CZQQ7DJigJE{vc#)k$%b?ZJ%Z zvz4gmbr~z4{@u!)n(9DgK@hmEUBZKfGo~)txW}4HUSgqdf*JYtEd`PsH)ecFH=-YP z>FbX*_h(R9txsO`r`kOY*R{x=bG+@=BR&Q0Ic@dfmw-$wYV7Ix*b%Of3#<7lG!#bw z>rZ>1m{?J^sP8eS;c7#%xgpYET6ic=fdfJ=qzZ+QR9oqIzz(t=GgxmR?;NhT$Pdmy zifeCwKLv*?I$F_E`IB-Jh#07NkFigV)(9(q%~FDrf)>11Qut^VohhxYr=dI%`t>}j znA!SAi!^j=W#`%BBJ%UU)F?&HfrL=Bq45TQf5&^hpNB5LXabs?At|5De~Zd?S@QMopu7MK&bf%K_zp}W_1~bib#(w0Lr*M z0+S8UFWjEw!6(l<=el253pZu@q7-`pGOEkwFkE=Ij5S!u5b_QI1RyG6I(Pf_ z5TUfKjOqx$q0bi!u36a>A`Nxnpa;pECfrv^7Ivu?{>x8Ner9C2%c3Ry5ZV-yv6llO zNG!diH@OPnBG2te4Uy48=>zs!giS&2r%35-P@C71mX}X^vu^{5HzW|fbcmy)ZT1h zt5R%plV%eXdWB3~kkSgJBB9SeVmnt|O=x?(izBNM_WpffOAF11=xC%hsn;D}3|MhX z#n`ya34L7(JvXVHp&=uqKm#%9UkP0$gao&&%!{1U;KoRyRXzXOR`<4Kf32s_K@ybo zh>~Eo^N50q=kWFJ#99CZMI3<y9B;d6?Ea4Q~~FI?%|GbaPZ+59^zQSaFGl%`U` zs+&qC#Nwe^g@v(3_%Ym#`vwMrJm!3_0VQ4>LG%!)l9jjK-f}BXHW&I1t^t?_NuoIL z!+;-Y0GWEAPy|SQ-&bbc=hXKG_nza-FKBj^x*ZW(d}~4aUND><6KU*1(R9iv@{Wdj z*3^PAHc?O$fIoa9A~gqxp)X&)ykWH=6?mLB76lXDDvD-_@PUqG@tJqdy|_R zdv$gH1naDm9fVwH*VO@o%*HwGyCNg~z~GgNo?Oz}|X5y9lICxXOdxMX84qz|0{X z0jNgLCW+@Z?EPf@o)n~+8TO#CDS+x4kV9~bjLhmsiy~m*g9>JAG7$K@W!I~lTry?d z3P<;rTG0XjNdh4b{O$gM8lfLR_n&^i?=TEnE2m#op?`7SxmyR%;2eQg5ik%^hXF2s zF)K;JV|E987j;+W`2WgP)PR9TwiiJ9_QJL(Crpbo(J%yBhoGPVm-92o;VGF|?VLMI zCXZ8#0?0>%X~rDCDQig$WC zIW$_K)YkcngfFDL2KnFoBfy)X&okG7n94M7yA0CAqk|FvX2eeYCLbO(j10h~-W<@F z)Pmw4LE5%UfqKV>N6-uudE`rml-ks*L}lO9=kraY6B4%aA9Q^CCJY(`MHOdicsUxi z79Ssf21DDz!k=Esj4A8h?#~Y(#v~4)M8^%tCblk*+Mnu6Jvzh5N!QRIc^_I2$U$uH z?JG;IOt5;9hXD@MXc|PC!~QSwWU;I+d@yGW^mxucj}NMPikY>-QzH8^LzwKA!~Mg< z<&oWMw+wI4PeV-NBfnNS9ObQx|%6$#e&|+><3=)#wpG&!6=gGq0Iwm>H zJT!oAzJK>q8YlzfMX+V6h>`_aVW|8WtjK$xcP@9I;U*>FI@JM~2cE-!lDhHDTete$ z+#LNcHR4HE8P|LS3{W(2tWl@H&P^yGy-fE zdKJ2dOHB8UE za5{g5-wDAF0?t_ds2949{Lhh61BBv`AVB#amiL>61f~yZ5kM7NZfgp6G`+8=7w54( z0J%1Bk&NmH`vz*Zk&wBW>_|j+|MDe|0%Ot6rmM>jC@}_$P4=PW=Yn6SZnApWoiLD@wM?}B`DCiXm#b$1|yLyqsKLZ=8{4Z`|i+n&O zm`w=ctW}lZX56b7hCAh&^F)WgSzIg-m5IcCTuCk6&4!CcxekicLU z1x0Y$C%QTlnT>4GU=2UAOi2y(VW--m!lR^xUMs>*elhs3nHTNRj-*aIwB5iHz6%kO z1KTsWB`F&6(%#aa+q4Pc1tI5%gt2I8w}-Pqgd^lE7*R`#h|}`#mAjFZRhn9vBO%@C z9TpbTt=Iny^44t?w#!h8PbUQxPxhuLz~vuY{{X7a%o(6<`}(XAk`ASGC8s-d7^SRT zh2Q4rIQ*rpjnJ}sm;$+MviK>L+ZyDpARj%-`^@n$O?n(5M0Qs@AUr;r|FCo&7^TC* z%Tsf6do8v=s$LY19L$~g(vvg@c91lXr%uP?nDFtdB|Rpk;xg97gr1W5i6VO$0$R*#>k_PCxU1RPP|8+)JdIw zzURCP3NAu2qv^?=5YAG+OUc3l8(VQ{d4=0NV!Em76{J6?EX>V2KqbWQPu@ceA{ODG zXLSAnOvMKDApYXnA%TwLH9)5bciR!gPX{ss$Zp+$IYiXDpw|W0O3D%ynFhsk+B%r~ zbMCQfxoeIq?XRKX4}tuUNBq10T$8%`M8ZIML}E z5dW9248I#bfA@~c_rqTo5au68ijyAh`~F>QETGc7*}LGFB7hizYB8s53}_>e%#TH2 z;sJN2&mv;GMYIo;9QO;2r=%_ z1!R318cY2-84SJlCfud}xWN1sn2Jry(A#c*3s^rqkvb(VKe$cV2`Cbbg? zjFCt^I7p2^BD>-@qH^x_4GLuih8GdW11cVsDkuDM`#EdpOf7&!ldIz@^X!ihZP0%K zWu#NDr5W6({`0HXQU+g76O`6K^_dN=E17qQDBL)8s&lB?l@>|!Akd+`{+y>NVCl_U z(uyy&_e%nDpl|~PmP;_XHCP-Ph1^M$iu6gq{j}ZI5%MzxGXpT|a!#KrR`h( zi*7_NBE;}5tQy{7NW%yXr8h&RPeYo6R@3J%g}A@96F?Aw^z1=Gi?C$7r&Cqvf#d(b z!3{c|c2yk{lXUYAg^d0??t&D^P1i3TVc;cW{OGzapo3^&lnlG=iwD^>+>>yD;jHA`nWS+wPpd*=JAqOR@$jJ6 z?gW%bWb*GEPiy;&Y3<}=u>32fY{7amEqox8&nPZT0+{UV?0h68l|As@HbS%)`aA;f z{Bm&xo&-elm{V4R-wEa2ogZI=fl3pOp;4wa_7n>c22VOZT)eJ@MXZ8W&HG7J;F~~P2-rUxM9?PmcGV#k|!OcHCI}8s>DLz zr^sh$lKk_vyFAFVd;tdn6i9VjThaU4<8twNUYt@XeV_FH!*JMnn2YLmEL;t zDhuN8FHI}ye<&I=qH_HO0Z+sOFlG~mCx@q#~EYq3{QIGmlkXlp1 zafACyiLKbmj3Mwq8X+8>zo1Zbp8>~mywdT}5=!=?e$MpPopaw;tiT?*sSj+)pxiXFD)WCJ!bTjD6D6 z1s&%4P3}D+J0-vL)Af4`v35^lnp-$z1SBQ`S0kLEFog&V0;>Fnh9p$r@POU}4v&Y$ zSR~R+hAVK#bHVa*uil@(KjF@LGo&_8=RScTEHlvWM&sXbAlWK9x$0*}B9#f;dj%OP zW{TX|$v7n`P`2_1L-vaH=Lzumm+3V>1FG>Vw2@G*A15cZ@h{)W8)?3#1Fl{9OdZG~d< z#s^>Gzc_y)(TCd)fSf|$14Oh`sRJBH(4tEN7W3m{Am!&BJo8FJWBX)DMJd&>r0M~_(7kzibw@7_?#N>Id|8Q&shwg^P>Ai z?`EcW7wT^rMYo55|Tz0<3vC%jZ>jPZW;y-fv`zSSEkP+d5l_-wir7I1~!xdBJ z%da%Dt+iRU;bjN@G+FE8L&}(YEAxujQkSVQr4ipTDSPh_Kgpybc?mo&wg#se57Y2)F z;S!3%L1KKmIy!G&VUPko7J3=;Bt=Y2jO7BZ)P4C)29Uj`!1!FeQfmexxIK)at*eVc zMke*N4=(acOP`$K1_DOM)KqDdH{idd8}g?|s9v_&4Ed7t=O^*y`xbL=A~p$5mq3n+ z+#9oM#nisKbw>dY^y^UHK(>7gR|Tlcs$I@H!4K!)*eFDGBRU8V>|8{V@hQakO$8Q~ z95A9rgK=#$vv9R=ae&h1@1ywFA2LhelgIL>-ERv8c{d)hfarA+xJwRAF4>sc0}qS! zr9GFuZIbbNrfw#AU}o)hT%RAhJKIy!D7vn>9|{Z)K7Q2F^zpp!so^@>FN`|uVksmK z({HAzY}*$-K@AKP19xanV_wy`xUFnzS)#V`rsTMi@zke|&%VM#Bz2cUJ#Sn);J|st z5V3hc_q?T=A=qIPN{8(aF&c?S2b{JGav50zPLJi1n{Tc} zsNLyC{r<+tZ{+mRs)Xt3>9WSgDPlp?Q@&2mIU<&Wy1SpcZbnTg$jW|jt!&io0hg?_ z`FSHp7#Dc;>V1hY7WB@_s2VdWFYhTZzZ?;f6CXbp@UZO>^t<)S9*h~IjH{%jrEv)e z(5)d%At52?s1CO4w#CemftJ6F_{P6}eeCAu7J1h?6)~*3c;UjGmqp&m)pr7U%tw;X z;$3Q~uNO%Y3+VMA5=^hGtmGM;|9arcJiluANNo*W(yURVN2lOMN5fL@L zUp!bBl7eEpyJ#iKs}8I0q}diO@5EYDd(z?e+lq*<*rze))EqR45D6qVQ#)s&*DYO_ z)STd!*$rD)H5vgY1+Ak+<(Z`=CM_+vUWn3ye!Obf=z`I)Sj>uuiyNVUh!sucbRhpo zWs}*G%lNo`eDz-7pT#G4$gT^&aU>{UbjUgIMX-se!I3T`)@9@I0pe38 z^YG!rky5LqClV4Nv9USekhZkHAmct_au=0bOZ z2&I5ip;C_e@U)%J=fL8J)1^&9nnf;SciIgK7J5@8_BZ2BvNAInJHpvTz#Q4SVG-ZB zN+56`M*{`3lqy;~IuyYXuPKNo7x{ta#XWty&ZSGR{LXXPrrVWZUYVThGQ*@=<5uOW z0v=yr-=14nhpM{l28&a^kQ#O2!i68c9PE$o-i^3$X*PFg=%?xrEp(Fpo$s81n^!OE zU(KN^f3vjqdJ_x_jluR#6?~9ghrk?&$Q6v)oWLV%xt?!yz_2sAhq>fiqMBuuVwz0c zz(QYI$ou#4dwUKsuy^|G_@Zi1dxw{uyuS;QpFiK7RlLJh#bV^>+O0f6{AZmp+l|13 z#Rbd_Dw=*y4>OC~Mxjl(uTy~S{DZJL<7Xf%iX|o|H*#NDSTKfWlU;fAbaN0DDZL~c z_%N$77bNlY_VoqKw1rWfI(5o>*o+6vW2uvX6CAFrIo{3ALmXr~UiT3iO3Tg7<#hx9N=oRva*Fwr>)hMw7HNX-$FHs_uY^J)9<%=I>o1^I znNX>)GcRz2&7??o=g!c%bLZHqk5(+Hz&cigdO{Hlqd8Xrp;>f6Ahd6A>m4u6DMSx^ zhRs1BBhy7V=XkJE0>Stk@&*tGxd8C~AsjW%WN6m1KbodFVT+E5so<8eFMg=jSG-#d z*Y@z5c&mQ~*p1q5<@ZlCf6ytS^nOlGxL0YOSy}mQePhFCLT~5SNI!YP0n6-unD07d zUNUBYnAv*ka7}0)l}~I>mU?1tPwuVcTC28MX$%|k^Aiz9Ow(Z2eHfgOvYjbU$hJDN zJzAMxYW(7KJDUi0)`&6lweZuaqb+?#1XbkZbS0zj^guI4w7|H+iNJ)s>LieD$gQN& zmis@u<(26}R4hAzbC-Ysp8ZaV7arLn*wdk71)LQW(QZUyUH3NqH63RzIyyMmnEpbn zCXvU(#Ka^)#-iR0cg?rKhK@VR0M67%iDjG_Ptu0#P7g4z;yQ^dSU=Q%=!-t+l9yPTR3v_~rkIj!3 z;*_+sC9;~mhb2u!%12dkTglmC;FVogR<_^B>XtAxG(?y-R_Rz^w>*?kS0~J@Sy|dK zno6KQHhd}OSBd)pulZJ?vxt3(wIxCG z3Mduq7s1l8wW}-a`pR&Dc*&Su6qvKpJ#Gc)@qtd<23}z2JX~+(oZ!ASb2poTkDutt za@V|;tLs>In7Qrt-VdjI^I&?Z-jO0x+qJ6QMKGR2FXh(c%+JsBq?uc)S&kMEqCH*)n2vAsVGayG-#l#WP%uLbglS$j>zwW ztxl(!%87^97Lb>>MhOJZs%>vUiGZGgp&=Dw{#BrwGVqXkf@Hz+7lHBcTgYSqmrhnwBTJZojvbCFVtNqk|iu2Ok__Sy|bYol950f@n4TXuBs#JOBsUiH32FgMrlttT`w%e5h45L=(cl?dX zy%B#+3b=`1u0!rkOh#r194J{6d;&9aZ=J)#IU!!e*!-YSszkYF)qZP|vv4cVuzftX zkI$))+ft^>Lu7WZ`PGa5ZTmj`BKxuKke!32{n4I5KacJGsvfX+4S;nirW_A3Ujf@) z$W}#>C7(a{zOb@dD2&PJoIty#XM8ypcoWN>OKEa2N#wSUIbAjvYig}-ICl&Qu=`Vz z`~N(0M@LmZmY0+3>NY}?u>8M1|M>NJZ+isi%<^&;ScLWocAD`lfg7;wlPB-M5WmRn z$O%A$5jsWSA*c{;jc}goIh4o0ptPDgq%UZD=7ep?3#mUgvO6u>O65^*RKxj zC1lm?k}4}JqhWSDrKW}k$i-1U(#j(rDV<`>UEqhAg7u{nco*}lH^X;3ux4e=J+;7X zd3Ec#nhiZT<HY72oj~OhYw z=KhK&LNby=|J}I5bbvw4mXw5qyt=wN$~cOpq>2Z!mRl9v(sVjG+MSu3WAJNCtgWq8 zYBMnb57YhidLn&tZv^}K(6|j9ORPdRbOrBHN?r?fpQWBy@Je5VhZf0aYZ5ih$-%+p zxbgg86AqHS>EY9XiG#-q3ZLZUUJT=cMV+Yea5$t;2 z$=*WoylxgUtDYpyAm-{Ujzep3!aq<7(ukRwGa}aCEz5=PmT`&pY&;I3&EXzC$O=HY?ScvBZ&aG%XXw9PbVZM zCL00(@)y}okLS$}U!chjzS>uBUJ=-6p&Kc)PHP1hIk+8nh2L)egE)0hB)4ffT1f&B zEtsderGN{!L49tckY-^Cb9v(D&vHIQGz0cE2O38JaC>36Mz0y1l{Fjv3Af4D*fxLx zo@Fb+5tT(2`4Wrz&?-m8rkfU1vxtnKNcpttaNx(S4of$AK#@T!2a{klyuH!JYL8NG zH#K%nSlgbB9v~gNOLY1un>B~(vg=XDwyr50b=7=bFBtj396%$a381e#%Cb5GreGD0 zqBPV-_rWl_7tm+Qpq9G^s4MfUUl>ryg2*&=?%W)sSmfFlkO(dik3AuAG<%;mjP*C7SdyE4)}w?Q)+B(Zfk6O z=zcIdvH$!R;(ERXK%jMSP}%PibMKq8cziK)FqC-!hIAmo4Mw>nJY$x*_tSF~+*p~_ ziX{ySo}rYod!g#8Q13!QFAN`(QiWk1^pfG-nPi>-ogqj`^rcGmdE$_60VXU}oAyCf z56M6+Vdc8!JkbZv(n)Xty?lI@!1Vw1QO{U0rRAJHN5lmPn*II#f}@r`k>eIHhx^~Z{e3PKveZ#t}35O@*d%FoU&3wgN41#Yy%SeG`FqD2^;VP1TB=O}P{ z*KtMlvk96JmVeko0Q}mYN=XqUU~e&ryEJY8xOZ-=q`K7N#nv|OpkH=2_yr@=Ghkwb z2~9Cf9AH*0On-L2xWF8&5=6}>sx@GSge*h=$fkubY5_2gR8LP&OmW}vp%iy^%FiB~ z%M*0op$Vl##am!!f0LKD1ic=(gC2JiCpW7ZJ^cszd3`lXYHRT$^W(N(mDwJ54l+JI zd@G>oprH|?4xAChVk4N0R>gQByQp&8$-dbhy)grH#B3^9S#3K#3sgBSGPxR91OE@f ze3>XJmoF=;3{H&ko*(p6uOSks*RLUe8g1D_s;-RrpZ7~nJF-k+y*z}` z5l)-~vkXt}5B~nj@7;#MmJGbXr(|sE(#KRh$(iZ%8}|qP_e-dnDi2m8Hnz9BM=eiG zuP!~{wXv%xs4jhY_XYE$3M|fj@ls7uwIS9&-}b)ziZ{D}z}Qy5JPzznyIcGf&##*P zUd2BzBIg(((0kI$TjN+zS9iGGD?vk`An@mlzke5b;-e#}tZWE1^zK5iOz+l|j}KNR z{l8!J>RNqD0ggrW-6uqX4h3$9(?nc)O)3w?un0so{`1OGF_2a&K-8-~eY%p{r2pJm z?5K;BCIc-W1aS#@nC=W^#b4F(@(iC@SeTuEdFuDKpT7rjl(pKSL{5%n{x$Y-dH_{i z=WVW$lbm)X8{SboT-G zgp>Hk=S2fwbu&K8D66U(PpmL8nZjSR0R^;Hx#>$Ujc+TuFpn`f;XyRGX4H0ng$y&( zZ_rV?k-D`FPeD^NLOQzTL-2L7G;ecVZpn^RTYHWR^Ct4|QBryWi`=6nViT0EWpPRv zm=<@av45|UcM6La``DPqR+^ANR->PLwm9`KOTZH+X%bb0rKP3w8ELUVCxkg^+`K%O z8fDQtSiMu^rgjV~1#s@0Wm}C>gd}~odYK&Ww-+KcMTp@yL;=^#+}yPi9&f*6!N4Ei zX$7`FHO!eeTa-Uu?Aq07#5FE;kM;7A*qq(Aq^j5FkCcRPCMV=ZnB;o#B6n*?Q43qL zMA#GlnDOTup*o_i0y3(6pI>4yUgk3~r*~ETk+6vtpX!VGWY@Y_! zh4im=S%!6?8g$H`rHr`F-L!7@(Zu}Ya}#d!fR1Dd?#^8$>?9FDi^<9T&|mxb5r zp4%ivc}+L7E>s_kE7{oijyui~|Jp0vH3Ts+#{D1|emuHObCUnq*0z{MYHe{b>-~A5 zs?E-mp6$V)#kocA*tRg!t*W)Ev;Zpkif(W+wmro?d|;NYf`ux5w3XD-2HH{A0YomA@Z!qLQ$bOSH7K z4=;PglCQc{WNlc^VCXP+ zqll3*P7Qs1MasLq;+%$JH+gvEfPge@d{=_rPzI?4{jiz$Y9*&wZnYEZ9NF*pUmM>& z&1R59%J6avCVmBhA!EFLo59krxv-np8*+0Ok$^n{fIm&6q8CblM6fl^%*s;j=}CAZ z=?}%&^wxIni89I&roQRw(QO}02&F@~!&VTuNA8^fD24OrI~moDjAu9dAWp~#xkjZ* zQe=aZitEPX$V^mrBsY`r+qayb!pZCHp}pMHj~=!;bSQ>)bjpt(k}IS3O8WX}T-*(` zKgHC$fB*$`^}PTix z5#_Gc)M%Lwx@CU_uP&vgwcF4onl^%F7in6jv!v)O?#iOb7 zo&0)S7T+En6mHHQsZ&sReZ=Sf!6%9ABZ1v-F)v?!FaF`G(-q6PKTvY4rmxT4;dJfj zyWiZ(+QYux&bvHa5K1X99SoyQA-Z zfKO$1vD$2bLFkuO)xj#+=V3Drd^qL003Idud7SYlNB(@E?lM6fJ)X>rj6V01-MRf0 z%Mw&&rRwe&8LF9Dt$&&5JG}6|y`my|akERNgkp9nJ*=_FR0s{tNi}`)k0m7)$4fQU z8NW6e2w!a1Ye`FIP&@u$eIiwrzV8&3m?To9*BmqwU7R#78O9uy-O>{Onwc7-n<3Jh z)qaI91(-IZ>fFZwcR&h!y@}ut%Mpdp}2y)ykSkpwuXI& z!iyJkRe5oDJ|yk!opiTH5bsaZ&?u;cpI|7snSWMY+TM(_>|S%Pkrz6g(iPZN5Kh|! z>cSWft@-dvNg8*TM_yiGD_`1EBn*w~JSR`3U&iPrMWdC#cSrVM*U)4zM;?w1;Jz4P z;r4d{S8_{BjXEMoGv1PlIFEH=(_HQr*liCD3sa*}B>MfK?oTX*!C8UD5yvkH+(==(wUD>5*#;k>Vl^^jDF<&M z?cFI14H&?ODlE)$Bhva4mDv=wP00%~3Jf>5S1YvUk9K!aSy@l4XGKjGdY?U!j81rk zvG)2V0z5pPLU<`Q=g%Ral7ol+7}#+r6Gd-am+XO~bAfz*dY**6HWG`I*X$9@V2gk~ z5%QkxAr4OPMJoRBo*SoY^ORv(_{p5>}C-qK^8o%{g(Vd-u9~QvQBZ zH}O@-3uIlZq+k%M7;*yR+#*vm8Bqou?~q1P&zODJr`+7;`=LmL!M@3o)4j8jjTtTx z+Atr;pK2v_jz6lS`!!|+oK197KnA4UoA>TL#lew>Sdnzsnijy!Wes`^d`IT`Fz8Q) zpjC5yeeWYr5Fz{Xv=f^G30~M_{C;#8_)jpYo6Isle^yc}zKr&vq3#X5!T{+gSxP7Z(U&(yzkWI1&E$fAv6T<`y~wza*nG@MQp?RzjD@8Wc#naPH`rAx9m-u?zFpCv z^?tRrrEWg-KJnyeLZr3*c6T^Coz1~Y-#LTR_jwf+`sce7Hh0tl(~{MVE>?q!&qr{n zo|>2Y0|3cME>kv{wd!W{HwB18QS4J_zxM2LFGSP}G(yixzP+rXm!Y1S#D&*)YYY$H z*#8mC1-oLt_O%H! zWpdCZmgruPGzNc?v{&UkUtG$9h_gE3WS|AtC5z+Ru}f? zoosnMpn!ET;DlC4%F1ZaQbCvW%^NdspmPBH${C0pvb^JW9>DRL2|^l)gf_=6AK>Cq zDkPPaiMU(t?yO@@rXm>DQ+1DD+S=OLye;(x8Jx*zvEIn%ned&pu6|$Q@pnNru}8$U zc}kj^*`Ge)jT9|?LUK-$c){}mik)?R$TJqzzxa?u`;SFRc|g--mXSXH*>3qx#>%LS zQCDmq};~Vxq1C2zP8HE+m%`MK3zm2=imVMW-MRms^z+{8 z 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 diff --git a/_usb_8h_source.html b/_usb_8h_source.html index 0966b20f..53a22d2b 100644 --- a/_usb_8h_source.html +++ b/_usb_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Usb.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + -

- + + + + - + - - + + + +
 

Macro Definition Documentation

- + +

◆ bmREQ_GET_DESCR

+
@@ -241,11 +220,13 @@ Typedefs
-

Definition at line 60 of file UsbCore.h.

+

Definition at line 60 of file UsbCore.h.

- + +

◆ bmREQ_SET

+
@@ -255,11 +236,13 @@ Typedefs
-

Definition at line 61 of file UsbCore.h.

+

Definition at line 61 of file UsbCore.h.

- + +

◆ bmREQ_CL_GET_INTF

+
@@ -269,11 +252,13 @@ Typedefs
-

Definition at line 62 of file UsbCore.h.

+

Definition at line 62 of file UsbCore.h.

- + +

◆ USB_CLASS_USE_CLASS_INFO

+
@@ -283,11 +268,13 @@ Typedefs
-

Definition at line 69 of file UsbCore.h.

+

Definition at line 69 of file UsbCore.h.

- + +

◆ USB_CLASS_AUDIO

+
@@ -297,11 +284,13 @@ Typedefs
-

Definition at line 70 of file UsbCore.h.

+

Definition at line 70 of file UsbCore.h.

- + +

◆ USB_CLASS_COM_AND_CDC_CTRL

+
@@ -311,11 +300,13 @@ Typedefs
-

Definition at line 71 of file UsbCore.h.

+

Definition at line 71 of file UsbCore.h.

- + +

◆ USB_CLASS_HID

+
@@ -325,11 +316,13 @@ Typedefs
-

Definition at line 72 of file UsbCore.h.

+

Definition at line 72 of file UsbCore.h.

- + +

◆ USB_CLASS_PHYSICAL

+
@@ -339,11 +332,13 @@ Typedefs
-

Definition at line 73 of file UsbCore.h.

+

Definition at line 73 of file UsbCore.h.

- + +

◆ USB_CLASS_IMAGE

+
@@ -353,11 +348,13 @@ Typedefs
-

Definition at line 74 of file UsbCore.h.

+

Definition at line 74 of file UsbCore.h.

- + +

◆ USB_CLASS_PRINTER

+
@@ -367,11 +364,13 @@ Typedefs
-

Definition at line 75 of file UsbCore.h.

+

Definition at line 75 of file UsbCore.h.

- + +

◆ USB_CLASS_MASS_STORAGE

+
@@ -381,11 +380,13 @@ Typedefs
-

Definition at line 76 of file UsbCore.h.

+

Definition at line 76 of file UsbCore.h.

- + +

◆ USB_CLASS_HUB

+
@@ -395,11 +396,13 @@ Typedefs
-

Definition at line 77 of file UsbCore.h.

+

Definition at line 77 of file UsbCore.h.

- + +

◆ USB_CLASS_CDC_DATA

+
@@ -409,11 +412,13 @@ Typedefs
-

Definition at line 78 of file UsbCore.h.

+

Definition at line 78 of file UsbCore.h.

- + +

◆ USB_CLASS_SMART_CARD

+
@@ -423,11 +428,13 @@ Typedefs
-

Definition at line 79 of file UsbCore.h.

+

Definition at line 79 of file UsbCore.h.

- + +

◆ USB_CLASS_CONTENT_SECURITY

+
@@ -437,11 +444,13 @@ Typedefs
-

Definition at line 80 of file UsbCore.h.

+

Definition at line 80 of file UsbCore.h.

- + +

◆ USB_CLASS_VIDEO

+
@@ -451,11 +460,13 @@ Typedefs
-

Definition at line 81 of file UsbCore.h.

+

Definition at line 81 of file UsbCore.h.

- + +

◆ USB_CLASS_PERSONAL_HEALTH

+
@@ -465,11 +476,13 @@ Typedefs
-

Definition at line 82 of file UsbCore.h.

+

Definition at line 82 of file UsbCore.h.

- + +

◆ USB_CLASS_DIAGNOSTIC_DEVICE

+
@@ -479,11 +492,13 @@ Typedefs
-

Definition at line 83 of file UsbCore.h.

+

Definition at line 83 of file UsbCore.h.

- + +

◆ USB_CLASS_WIRELESS_CTRL

+
@@ -493,11 +508,13 @@ Typedefs
-

Definition at line 84 of file UsbCore.h.

+

Definition at line 84 of file UsbCore.h.

- + +

◆ USB_CLASS_MISC

+
@@ -507,11 +524,13 @@ Typedefs
-

Definition at line 85 of file UsbCore.h.

+

Definition at line 85 of file UsbCore.h.

- + +

◆ USB_CLASS_APP_SPECIFIC

+
@@ -521,11 +540,13 @@ Typedefs
-

Definition at line 86 of file UsbCore.h.

+

Definition at line 86 of file UsbCore.h.

- + +

◆ USB_CLASS_VENDOR_SPECIFIC

+
@@ -535,11 +556,13 @@ Typedefs
-

Definition at line 87 of file UsbCore.h.

+

Definition at line 87 of file UsbCore.h.

- + +

◆ USB_DEV_CONFIG_ERROR_DEVICE_NOT_SUPPORTED

+
@@ -549,11 +572,13 @@ Typedefs
-

Definition at line 90 of file UsbCore.h.

+

Definition at line 90 of file UsbCore.h.

- + +

◆ USB_DEV_CONFIG_ERROR_DEVICE_INIT_INCOMPLETE

+
@@ -563,11 +588,13 @@ Typedefs
-

Definition at line 91 of file UsbCore.h.

+

Definition at line 91 of file UsbCore.h.

- + +

◆ USB_ERROR_UNABLE_TO_REGISTER_DEVICE_CLASS

+
@@ -577,11 +604,13 @@ Typedefs
-

Definition at line 92 of file UsbCore.h.

+

Definition at line 92 of file UsbCore.h.

- + +

◆ USB_ERROR_OUT_OF_ADDRESS_SPACE_IN_POOL

+
@@ -591,11 +620,13 @@ Typedefs
-

Definition at line 93 of file UsbCore.h.

+

Definition at line 93 of file UsbCore.h.

- + +

◆ USB_ERROR_HUB_ADDRESS_OVERFLOW

+
@@ -605,11 +636,13 @@ Typedefs
-

Definition at line 94 of file UsbCore.h.

+

Definition at line 94 of file UsbCore.h.

- + +

◆ USB_ERROR_ADDRESS_NOT_FOUND_IN_POOL

+
@@ -619,11 +652,13 @@ Typedefs
-

Definition at line 95 of file UsbCore.h.

+

Definition at line 95 of file UsbCore.h.

- + +

◆ USB_ERROR_EPINFO_IS_NULL

+
@@ -633,11 +668,13 @@ Typedefs
-

Definition at line 96 of file UsbCore.h.

+

Definition at line 96 of file UsbCore.h.

- + +

◆ USB_ERROR_INVALID_ARGUMENT

+
@@ -647,11 +684,13 @@ Typedefs
-

Definition at line 97 of file UsbCore.h.

+

Definition at line 97 of file UsbCore.h.

- + +

◆ USB_ERROR_CLASS_INSTANCE_ALREADY_IN_USE

+
@@ -661,11 +700,13 @@ Typedefs
-

Definition at line 98 of file UsbCore.h.

+

Definition at line 98 of file UsbCore.h.

- + +

◆ USB_ERROR_INVALID_MAX_PKT_SIZE

+
@@ -675,11 +716,13 @@ Typedefs
-

Definition at line 99 of file UsbCore.h.

+

Definition at line 99 of file UsbCore.h.

- + +

◆ USB_ERROR_EP_NOT_FOUND_IN_TBL

+
@@ -689,11 +732,13 @@ Typedefs
-

Definition at line 100 of file UsbCore.h.

+

Definition at line 100 of file UsbCore.h.

- + +

◆ USB_ERROR_CONFIG_REQUIRES_ADDITIONAL_RESET

+
@@ -703,11 +748,13 @@ Typedefs
-

Definition at line 101 of file UsbCore.h.

+

Definition at line 101 of file UsbCore.h.

- + +

◆ USB_ERROR_FailGetDevDescr

+
@@ -717,11 +764,13 @@ Typedefs
-

Definition at line 102 of file UsbCore.h.

+

Definition at line 102 of file UsbCore.h.

- + +

◆ USB_ERROR_FailSetDevTblEntry

+
@@ -731,11 +780,13 @@ Typedefs
-

Definition at line 103 of file UsbCore.h.

+

Definition at line 103 of file UsbCore.h.

- + +

◆ USB_ERROR_FailGetConfDescr

+
@@ -745,11 +796,13 @@ Typedefs
-

Definition at line 104 of file UsbCore.h.

+

Definition at line 104 of file UsbCore.h.

- + +

◆ USB_ERROR_TRANSFER_TIMEOUT

+
@@ -759,11 +812,13 @@ Typedefs
-

Definition at line 105 of file UsbCore.h.

+

Definition at line 105 of file UsbCore.h.

- + +

◆ USB_XFER_TIMEOUT

+
@@ -773,11 +828,13 @@ Typedefs
-

Definition at line 107 of file UsbCore.h.

+

Definition at line 107 of file UsbCore.h.

- + +

◆ USB_RETRY_LIMIT

+
@@ -787,11 +844,13 @@ Typedefs
-

Definition at line 109 of file UsbCore.h.

+

Definition at line 109 of file UsbCore.h.

- + +

◆ USB_SETTLE_DELAY

+
@@ -801,11 +860,13 @@ Typedefs
-

Definition at line 110 of file UsbCore.h.

+

Definition at line 110 of file UsbCore.h.

- + +

◆ USB_NUMDEVICES

+
@@ -815,11 +876,13 @@ Typedefs
-

Definition at line 112 of file UsbCore.h.

+

Definition at line 112 of file UsbCore.h.

- + +

◆ HUB_PORT_RESET_DELAY

+
@@ -829,11 +892,13 @@ Typedefs
-

Definition at line 114 of file UsbCore.h.

+

Definition at line 114 of file UsbCore.h.

- + +

◆ USB_STATE_MASK

+
@@ -843,11 +908,13 @@ Typedefs
-

Definition at line 117 of file UsbCore.h.

+

Definition at line 117 of file UsbCore.h.

- + +

◆ USB_STATE_DETACHED

+
@@ -857,11 +924,13 @@ Typedefs
-

Definition at line 119 of file UsbCore.h.

+

Definition at line 119 of file UsbCore.h.

- + +

◆ USB_DETACHED_SUBSTATE_INITIALIZE

+
@@ -871,11 +940,13 @@ Typedefs
-

Definition at line 120 of file UsbCore.h.

+

Definition at line 120 of file UsbCore.h.

- + +

◆ USB_DETACHED_SUBSTATE_WAIT_FOR_DEVICE

+
@@ -885,11 +956,13 @@ Typedefs
-

Definition at line 121 of file UsbCore.h.

+

Definition at line 121 of file UsbCore.h.

- + +

◆ USB_DETACHED_SUBSTATE_ILLEGAL

+
@@ -899,11 +972,13 @@ Typedefs
-

Definition at line 122 of file UsbCore.h.

+

Definition at line 122 of file UsbCore.h.

- + +

◆ USB_ATTACHED_SUBSTATE_SETTLE

+
@@ -913,11 +988,13 @@ Typedefs
-

Definition at line 123 of file UsbCore.h.

+

Definition at line 123 of file UsbCore.h.

- + +

◆ USB_ATTACHED_SUBSTATE_RESET_DEVICE

+
@@ -927,11 +1004,13 @@ Typedefs
-

Definition at line 124 of file UsbCore.h.

+

Definition at line 124 of file UsbCore.h.

- + +

◆ USB_ATTACHED_SUBSTATE_WAIT_RESET_COMPLETE

+
@@ -941,11 +1020,13 @@ Typedefs
-

Definition at line 125 of file UsbCore.h.

+

Definition at line 125 of file UsbCore.h.

- + +

◆ USB_ATTACHED_SUBSTATE_WAIT_SOF

+
@@ -955,11 +1036,13 @@ Typedefs
-

Definition at line 126 of file UsbCore.h.

+

Definition at line 126 of file UsbCore.h.

- + +

◆ USB_ATTACHED_SUBSTATE_WAIT_RESET

+
@@ -969,11 +1052,13 @@ Typedefs
-

Definition at line 127 of file UsbCore.h.

+

Definition at line 127 of file UsbCore.h.

- + +

◆ USB_ATTACHED_SUBSTATE_GET_DEVICE_DESCRIPTOR_SIZE

+
@@ -983,11 +1068,13 @@ Typedefs
-

Definition at line 128 of file UsbCore.h.

+

Definition at line 128 of file UsbCore.h.

- + +

◆ USB_STATE_ADDRESSING

+
@@ -997,11 +1084,13 @@ Typedefs
-

Definition at line 129 of file UsbCore.h.

+

Definition at line 129 of file UsbCore.h.

- + +

◆ USB_STATE_CONFIGURING

+
@@ -1011,11 +1100,13 @@ Typedefs
-

Definition at line 130 of file UsbCore.h.

+

Definition at line 130 of file UsbCore.h.

- + +

◆ USB_STATE_RUNNING

+
@@ -1025,11 +1116,13 @@ Typedefs
-

Definition at line 131 of file UsbCore.h.

+

Definition at line 131 of file UsbCore.h.

- + +

◆ USB_STATE_ERROR

+
@@ -1039,12 +1132,14 @@ Typedefs
-

Definition at line 132 of file UsbCore.h.

+

Definition at line 132 of file UsbCore.h.

Typedef Documentation

- + +

◆ MAX3421E

+
@@ -1054,11 +1149,13 @@ Typedefs
-

Definition at line 56 of file UsbCore.h.

+

Definition at line 56 of file UsbCore.h.

- + +

◆ PSETUP_PKT

+
@@ -1075,7 +1172,7 @@ Typedefs diff --git a/_usb_core_8h_source.html b/_usb_core_8h_source.html index 8555e335..b607de83 100644 --- a/_usb_core_8h_source.html +++ b/_usb_core_8h_source.html @@ -3,7 +3,8 @@ - + +USB Host Shield 2.0: UsbCore.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
UsbCore.h
-Go to the documentation of this file.
1 /* Copyright (C) 2011 Circuits At Home, LTD. All rights reserved.
2 
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 2 of the License, or
6 (at your option) any later version.
7 
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12 
13 You should have received a copy of the GNU General Public License
14 along with this program; if not, write to the Free Software
15 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16 
17 Contact information
18 -------------------
19 
20 Circuits At Home, LTD
21 Web : http://www.circuitsathome.com
22 e-mail : support@circuitsathome.com
23  */
24 
25 #if !defined(_usb_h_) || defined(USBCORE_H)
26 #error "Never include UsbCore.h directly; include Usb.h instead"
27 #else
28 #define USBCORE_H
29 
30 // Not used anymore? If anyone uses this, please let us know so that this may be
31 // moved to the proper place, settings.h.
32 //#define USB_METHODS_INLINE
33 
34 /* shield pins. First parameter - SS pin, second parameter - INT pin */
35 #ifdef BOARD_BLACK_WIDDOW
36 typedef MAX3421e<P6, P3> MAX3421E; // Black Widow
37 #elif defined(CORE_TEENSY) && (defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB1286__))
38 #if EXT_RAM
39 typedef MAX3421e<P20, P7> MAX3421E; // Teensy++ 2.0 with XMEM2
40 #else
41 typedef MAX3421e<P9, P8> MAX3421E; // Teensy++ 1.0 and 2.0
42 #endif
43 #elif defined(BOARD_MEGA_ADK)
44 typedef MAX3421e<P53, P54> MAX3421E; // Arduino Mega ADK
45 #elif defined(ARDUINO_AVR_BALANDUINO)
46 typedef MAX3421e<P20, P19> MAX3421E; // Balanduino
47 #elif defined(__ARDUINO_X86__) && PLATFORM_ID == 0x06
48 typedef MAX3421e<P3, P2> MAX3421E; // The Intel Galileo supports much faster read and write speed at pin 2 and 3
49 #elif defined(ESP8266)
50 typedef MAX3421e<P15, P5> MAX3421E; // ESP8266 boards
51 #elif defined(ESP32)
52 typedef MAX3421e<P5, P17> MAX3421E; // ESP32 boards
53 #elif (defined(__AVR_ATmega644P__) || defined(__AVR_ATmega1284P__))
54 typedef MAX3421e<Pb4, Pb3> MAX3421E; // Sanguino
55 #else
56 typedef MAX3421e<P10, P9> MAX3421E; // Official Arduinos (UNO, Duemilanove, Mega, 2560, Leonardo, Due etc.), Intel Edison, Intel Galileo 2 or Teensy 2.0 and 3.x
57 #endif
58 
59 /* Common setup data constant combinations */
60 #define bmREQ_GET_DESCR USB_SETUP_DEVICE_TO_HOST|USB_SETUP_TYPE_STANDARD|USB_SETUP_RECIPIENT_DEVICE //get descriptor request type
61 #define bmREQ_SET USB_SETUP_HOST_TO_DEVICE|USB_SETUP_TYPE_STANDARD|USB_SETUP_RECIPIENT_DEVICE //set request type for all but 'set feature' and 'set interface'
62 #define bmREQ_CL_GET_INTF USB_SETUP_DEVICE_TO_HOST|USB_SETUP_TYPE_CLASS|USB_SETUP_RECIPIENT_INTERFACE //get interface request type
63 
64 // D7 data transfer direction (0 - host-to-device, 1 - device-to-host)
65 // D6-5 Type (0- standard, 1 - class, 2 - vendor, 3 - reserved)
66 // D4-0 Recipient (0 - device, 1 - interface, 2 - endpoint, 3 - other, 4..31 - reserved)
67 
68 // USB Device Classes
69 #define USB_CLASS_USE_CLASS_INFO 0x00 // Use Class Info in the Interface Descriptors
70 #define USB_CLASS_AUDIO 0x01 // Audio
71 #define USB_CLASS_COM_AND_CDC_CTRL 0x02 // Communications and CDC Control
72 #define USB_CLASS_HID 0x03 // HID
73 #define USB_CLASS_PHYSICAL 0x05 // Physical
74 #define USB_CLASS_IMAGE 0x06 // Image
75 #define USB_CLASS_PRINTER 0x07 // Printer
76 #define USB_CLASS_MASS_STORAGE 0x08 // Mass Storage
77 #define USB_CLASS_HUB 0x09 // Hub
78 #define USB_CLASS_CDC_DATA 0x0a // CDC-Data
79 #define USB_CLASS_SMART_CARD 0x0b // Smart-Card
80 #define USB_CLASS_CONTENT_SECURITY 0x0d // Content Security
81 #define USB_CLASS_VIDEO 0x0e // Video
82 #define USB_CLASS_PERSONAL_HEALTH 0x0f // Personal Healthcare
83 #define USB_CLASS_DIAGNOSTIC_DEVICE 0xdc // Diagnostic Device
84 #define USB_CLASS_WIRELESS_CTRL 0xe0 // Wireless Controller
85 #define USB_CLASS_MISC 0xef // Miscellaneous
86 #define USB_CLASS_APP_SPECIFIC 0xfe // Application Specific
87 #define USB_CLASS_VENDOR_SPECIFIC 0xff // Vendor Specific
88 
89 // Additional Error Codes
90 #define USB_DEV_CONFIG_ERROR_DEVICE_NOT_SUPPORTED 0xD1
91 #define USB_DEV_CONFIG_ERROR_DEVICE_INIT_INCOMPLETE 0xD2
92 #define USB_ERROR_UNABLE_TO_REGISTER_DEVICE_CLASS 0xD3
93 #define USB_ERROR_OUT_OF_ADDRESS_SPACE_IN_POOL 0xD4
94 #define USB_ERROR_HUB_ADDRESS_OVERFLOW 0xD5
95 #define USB_ERROR_ADDRESS_NOT_FOUND_IN_POOL 0xD6
96 #define USB_ERROR_EPINFO_IS_NULL 0xD7
97 #define USB_ERROR_INVALID_ARGUMENT 0xD8
98 #define USB_ERROR_CLASS_INSTANCE_ALREADY_IN_USE 0xD9
99 #define USB_ERROR_INVALID_MAX_PKT_SIZE 0xDA
100 #define USB_ERROR_EP_NOT_FOUND_IN_TBL 0xDB
101 #define USB_ERROR_CONFIG_REQUIRES_ADDITIONAL_RESET 0xE0
102 #define USB_ERROR_FailGetDevDescr 0xE1
103 #define USB_ERROR_FailSetDevTblEntry 0xE2
104 #define USB_ERROR_FailGetConfDescr 0xE3
105 #define USB_ERROR_TRANSFER_TIMEOUT 0xFF
106 
107 #define USB_XFER_TIMEOUT 5000 // (5000) USB transfer timeout in milliseconds, per section 9.2.6.1 of USB 2.0 spec
108 //#define USB_NAK_LIMIT 32000 // NAK limit for a transfer. 0 means NAKs are not counted
109 #define USB_RETRY_LIMIT 3 // 3 retry limit for a transfer
110 #define USB_SETTLE_DELAY 200 // settle delay in milliseconds
111 
112 #define USB_NUMDEVICES 16 //number of USB devices
113 //#define HUB_MAX_HUBS 7 // maximum number of hubs that can be attached to the host controller
114 #define HUB_PORT_RESET_DELAY 20 // hub port reset delay 10 ms recomended, can be up to 20 ms
115 
116 /* USB state machine states */
117 #define USB_STATE_MASK 0xf0
118 
119 #define USB_STATE_DETACHED 0x10
120 #define USB_DETACHED_SUBSTATE_INITIALIZE 0x11
121 #define USB_DETACHED_SUBSTATE_WAIT_FOR_DEVICE 0x12
122 #define USB_DETACHED_SUBSTATE_ILLEGAL 0x13
123 #define USB_ATTACHED_SUBSTATE_SETTLE 0x20
124 #define USB_ATTACHED_SUBSTATE_RESET_DEVICE 0x30
125 #define USB_ATTACHED_SUBSTATE_WAIT_RESET_COMPLETE 0x40
126 #define USB_ATTACHED_SUBSTATE_WAIT_SOF 0x50
127 #define USB_ATTACHED_SUBSTATE_WAIT_RESET 0x51
128 #define USB_ATTACHED_SUBSTATE_GET_DEVICE_DESCRIPTOR_SIZE 0x60
129 #define USB_STATE_ADDRESSING 0x70
130 #define USB_STATE_CONFIGURING 0x80
131 #define USB_STATE_RUNNING 0x90
132 #define USB_STATE_ERROR 0xa0
133 
135 public:
136 
137  virtual uint8_t Init(uint8_t parent __attribute__((unused)), uint8_t port __attribute__((unused)), bool lowspeed __attribute__((unused))) {
138  return 0;
139  }
140 
141  virtual uint8_t ConfigureDevice(uint8_t parent __attribute__((unused)), uint8_t port __attribute__((unused)), bool lowspeed __attribute__((unused))) {
142  return 0;
143  }
144 
145  virtual uint8_t Release() {
146  return 0;
147  }
148 
149  virtual uint8_t Poll() {
150  return 0;
151  }
152 
153  virtual uint8_t GetAddress() {
154  return 0;
155  }
156 
157  virtual void ResetHubPort(uint8_t port __attribute__((unused))) {
158  return;
159  } // Note used for hubs only!
160 
161  virtual bool VIDPIDOK(uint16_t vid __attribute__((unused)), uint16_t pid __attribute__((unused))) {
162  return false;
163  }
164 
165  virtual bool DEVCLASSOK(uint8_t klass __attribute__((unused))) {
166  return false;
167  }
168 
169  virtual bool DEVSUBCLASSOK(uint8_t subklass __attribute__((unused))) {
170  return true;
171  }
172 
173 };
174 
175 /* USB Setup Packet Structure */
176 typedef struct {
177 
178  union { // offset description
179  uint8_t bmRequestType; // 0 Bit-map of request type
180 
181  struct {
182  uint8_t recipient : 5; // Recipient of the request
183  uint8_t type : 2; // Type of request
184  uint8_t direction : 1; // Direction of data X-fer
185  } __attribute__((packed));
186  } ReqType_u;
187  uint8_t bRequest; // 1 Request
188 
189  union {
190  uint16_t wValue; // 2 Depends on bRequest
191 
192  struct {
193  uint8_t wValueLo;
194  uint8_t wValueHi;
195  } __attribute__((packed));
196  } wVal_u;
197  uint16_t wIndex; // 4 Depends on bRequest
198  uint16_t wLength; // 6 Depends on bRequest
199 } __attribute__((packed)) SETUP_PKT, *PSETUP_PKT;
200 
201 
202 
203 // Base class for incoming data parser
204 
206 public:
207  virtual void Parse(const uint16_t len, const uint8_t *pbuf, const uint16_t &offset) = 0;
208 };
209 
210 class USB : public MAX3421E {
212  USBDeviceConfig* devConfig[USB_NUMDEVICES];
213  uint8_t bmHubPre;
214 
215 public:
216  USB(void);
217 
218  void SetHubPreMask() {
219  bmHubPre |= bmHUBPRE;
220  };
221 
223  bmHubPre &= (~bmHUBPRE);
224  };
225 
227  return (AddressPool&)addrPool;
228  };
229 
231  for(uint8_t i = 0; i < USB_NUMDEVICES; i++) {
232  if(!devConfig[i]) {
233  devConfig[i] = pdev;
234  return 0;
235  }
236  }
238  };
239 
241  addrPool.ForEachUsbDevice(pfunc);
242  };
243  uint8_t getUsbTaskState(void);
244  void setUsbTaskState(uint8_t state);
245 
246  EpInfo* getEpInfoEntry(uint8_t addr, uint8_t ep);
247  uint8_t setEpInfoEntry(uint8_t addr, uint8_t epcount, EpInfo* eprecord_ptr);
248 
249  /* Control requests */
250  uint8_t getDevDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t* dataptr);
251  uint8_t getConfDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t conf, uint8_t* dataptr);
252 
253  uint8_t getConfDescr(uint8_t addr, uint8_t ep, uint8_t conf, USBReadParser *p);
254 
255  uint8_t getStrDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t index, uint16_t langid, uint8_t* dataptr);
256  uint8_t setAddr(uint8_t oldaddr, uint8_t ep, uint8_t newaddr);
257  uint8_t setConf(uint8_t addr, uint8_t ep, uint8_t conf_value);
258 
259  uint8_t ctrlData(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t* dataptr, bool direction);
260  uint8_t ctrlStatus(uint8_t ep, bool direction, uint16_t nak_limit);
261  uint8_t inTransfer(uint8_t addr, uint8_t ep, uint16_t *nbytesptr, uint8_t* data, uint8_t bInterval = 0);
262  uint8_t outTransfer(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t* data);
263  uint8_t dispatchPkt(uint8_t token, uint8_t ep, uint16_t nak_limit);
264 
265  void Task(void);
266 
267  uint8_t DefaultAddressing(uint8_t parent, uint8_t port, bool lowspeed);
268  uint8_t Configuring(uint8_t parent, uint8_t port, bool lowspeed);
269  uint8_t ReleaseDevice(uint8_t addr);
270 
271  uint8_t ctrlReq(uint8_t addr, uint8_t ep, uint8_t bmReqType, uint8_t bRequest, uint8_t wValLo, uint8_t wValHi,
272  uint16_t wInd, uint16_t total, uint16_t nbytes, uint8_t* dataptr, USBReadParser *p);
273 
274 private:
275  void init();
276  uint8_t SetAddress(uint8_t addr, uint8_t ep, EpInfo **ppep, uint16_t *nak_limit);
277  uint8_t OutTransfer(EpInfo *pep, uint16_t nak_limit, uint16_t nbytes, uint8_t *data);
278  uint8_t InTransfer(EpInfo *pep, uint16_t nak_limit, uint16_t *nbytesptr, uint8_t *data, uint8_t bInterval = 0);
279  uint8_t AttemptConfig(uint8_t driver, uint8_t parent, uint8_t port, bool lowspeed);
280 };
281 
282 #if 0 //defined(USB_METHODS_INLINE)
283 //get device descriptor
284 
285 inline uint8_t USB::getDevDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t* dataptr) {
286  return ( ctrlReq(addr, ep, bmREQ_GET_DESCR, USB_REQUEST_GET_DESCRIPTOR, 0x00, USB_DESCRIPTOR_DEVICE, 0x0000, nbytes, dataptr));
287 }
288 //get configuration descriptor
289 
290 inline uint8_t USB::getConfDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t conf, uint8_t* dataptr) {
291  return ( ctrlReq(addr, ep, bmREQ_GET_DESCR, USB_REQUEST_GET_DESCRIPTOR, conf, USB_DESCRIPTOR_CONFIGURATION, 0x0000, nbytes, dataptr));
292 }
293 //get string descriptor
294 
295 inline uint8_t USB::getStrDescr(uint8_t addr, uint8_t ep, uint16_t nuint8_ts, uint8_t index, uint16_t langid, uint8_t* dataptr) {
296  return ( ctrlReq(addr, ep, bmREQ_GET_DESCR, USB_REQUEST_GET_DESCRIPTOR, index, USB_DESCRIPTOR_STRING, langid, nuint8_ts, dataptr));
297 }
298 //set address
299 
300 inline uint8_t USB::setAddr(uint8_t oldaddr, uint8_t ep, uint8_t newaddr) {
301  return ( ctrlReq(oldaddr, ep, bmREQ_SET, USB_REQUEST_SET_ADDRESS, newaddr, 0x00, 0x0000, 0x0000, NULL));
302 }
303 //set configuration
304 
305 inline uint8_t USB::setConf(uint8_t addr, uint8_t ep, uint8_t conf_value) {
306  return ( ctrlReq(addr, ep, bmREQ_SET, USB_REQUEST_SET_CONFIGURATION, conf_value, 0x00, 0x0000, 0x0000, NULL));
307 }
308 
309 #endif // defined(USB_METHODS_INLINE)
310 
311 #endif /* USBCORE_H */
uint8_t getConfDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t conf, uint8_t *dataptr)
Definition: Usb.cpp:801
+Go to the documentation of this file.
1 /* Copyright (C) 2011 Circuits At Home, LTD. All rights reserved.
2 
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 2 of the License, or
6 (at your option) any later version.
7 
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12 
13 You should have received a copy of the GNU General Public License
14 along with this program; if not, write to the Free Software
15 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16 
17 Contact information
18 -------------------
19 
20 Circuits At Home, LTD
21 Web : http://www.circuitsathome.com
22 e-mail : support@circuitsathome.com
23  */
24 
25 #if !defined(_usb_h_) || defined(USBCORE_H)
26 #error "Never include UsbCore.h directly; include Usb.h instead"
27 #else
28 #define USBCORE_H
29 
30 // Not used anymore? If anyone uses this, please let us know so that this may be
31 // moved to the proper place, settings.h.
32 //#define USB_METHODS_INLINE
33 
34 /* shield pins. First parameter - SS pin, second parameter - INT pin */
35 #ifdef BOARD_BLACK_WIDDOW
36 typedef MAX3421e<P6, P3> MAX3421E; // Black Widow
37 #elif defined(CORE_TEENSY) && (defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB1286__))
38 #if EXT_RAM
39 typedef MAX3421e<P20, P7> MAX3421E; // Teensy++ 2.0 with XMEM2
40 #else
41 typedef MAX3421e<P9, P8> MAX3421E; // Teensy++ 1.0 and 2.0
42 #endif
43 #elif defined(BOARD_MEGA_ADK)
44 typedef MAX3421e<P53, P54> MAX3421E; // Arduino Mega ADK
45 #elif defined(ARDUINO_AVR_BALANDUINO)
46 typedef MAX3421e<P20, P19> MAX3421E; // Balanduino
47 #elif defined(__ARDUINO_X86__) && PLATFORM_ID == 0x06
48 typedef MAX3421e<P3, P2> MAX3421E; // The Intel Galileo supports much faster read and write speed at pin 2 and 3
49 #elif defined(ESP8266)
50 typedef MAX3421e<P15, P5> MAX3421E; // ESP8266 boards
51 #elif defined(ESP32)
52 typedef MAX3421e<P5, P17> MAX3421E; // ESP32 boards
53 #elif (defined(__AVR_ATmega644P__) || defined(__AVR_ATmega1284P__))
54 typedef MAX3421e<Pb4, Pb3> MAX3421E; // Sanguino
55 #else
56 typedef MAX3421e<P10, P9> MAX3421E; // Official Arduinos (UNO, Duemilanove, Mega, 2560, Leonardo, Due etc.), Intel Edison, Intel Galileo 2 or Teensy 2.0 and 3.x
57 #endif
58 
59 /* Common setup data constant combinations */
60 #define bmREQ_GET_DESCR USB_SETUP_DEVICE_TO_HOST|USB_SETUP_TYPE_STANDARD|USB_SETUP_RECIPIENT_DEVICE //get descriptor request type
61 #define bmREQ_SET USB_SETUP_HOST_TO_DEVICE|USB_SETUP_TYPE_STANDARD|USB_SETUP_RECIPIENT_DEVICE //set request type for all but 'set feature' and 'set interface'
62 #define bmREQ_CL_GET_INTF USB_SETUP_DEVICE_TO_HOST|USB_SETUP_TYPE_CLASS|USB_SETUP_RECIPIENT_INTERFACE //get interface request type
63 
64 // D7 data transfer direction (0 - host-to-device, 1 - device-to-host)
65 // D6-5 Type (0- standard, 1 - class, 2 - vendor, 3 - reserved)
66 // D4-0 Recipient (0 - device, 1 - interface, 2 - endpoint, 3 - other, 4..31 - reserved)
67 
68 // USB Device Classes
69 #define USB_CLASS_USE_CLASS_INFO 0x00 // Use Class Info in the Interface Descriptors
70 #define USB_CLASS_AUDIO 0x01 // Audio
71 #define USB_CLASS_COM_AND_CDC_CTRL 0x02 // Communications and CDC Control
72 #define USB_CLASS_HID 0x03 // HID
73 #define USB_CLASS_PHYSICAL 0x05 // Physical
74 #define USB_CLASS_IMAGE 0x06 // Image
75 #define USB_CLASS_PRINTER 0x07 // Printer
76 #define USB_CLASS_MASS_STORAGE 0x08 // Mass Storage
77 #define USB_CLASS_HUB 0x09 // Hub
78 #define USB_CLASS_CDC_DATA 0x0a // CDC-Data
79 #define USB_CLASS_SMART_CARD 0x0b // Smart-Card
80 #define USB_CLASS_CONTENT_SECURITY 0x0d // Content Security
81 #define USB_CLASS_VIDEO 0x0e // Video
82 #define USB_CLASS_PERSONAL_HEALTH 0x0f // Personal Healthcare
83 #define USB_CLASS_DIAGNOSTIC_DEVICE 0xdc // Diagnostic Device
84 #define USB_CLASS_WIRELESS_CTRL 0xe0 // Wireless Controller
85 #define USB_CLASS_MISC 0xef // Miscellaneous
86 #define USB_CLASS_APP_SPECIFIC 0xfe // Application Specific
87 #define USB_CLASS_VENDOR_SPECIFIC 0xff // Vendor Specific
88 
89 // Additional Error Codes
90 #define USB_DEV_CONFIG_ERROR_DEVICE_NOT_SUPPORTED 0xD1
91 #define USB_DEV_CONFIG_ERROR_DEVICE_INIT_INCOMPLETE 0xD2
92 #define USB_ERROR_UNABLE_TO_REGISTER_DEVICE_CLASS 0xD3
93 #define USB_ERROR_OUT_OF_ADDRESS_SPACE_IN_POOL 0xD4
94 #define USB_ERROR_HUB_ADDRESS_OVERFLOW 0xD5
95 #define USB_ERROR_ADDRESS_NOT_FOUND_IN_POOL 0xD6
96 #define USB_ERROR_EPINFO_IS_NULL 0xD7
97 #define USB_ERROR_INVALID_ARGUMENT 0xD8
98 #define USB_ERROR_CLASS_INSTANCE_ALREADY_IN_USE 0xD9
99 #define USB_ERROR_INVALID_MAX_PKT_SIZE 0xDA
100 #define USB_ERROR_EP_NOT_FOUND_IN_TBL 0xDB
101 #define USB_ERROR_CONFIG_REQUIRES_ADDITIONAL_RESET 0xE0
102 #define USB_ERROR_FailGetDevDescr 0xE1
103 #define USB_ERROR_FailSetDevTblEntry 0xE2
104 #define USB_ERROR_FailGetConfDescr 0xE3
105 #define USB_ERROR_TRANSFER_TIMEOUT 0xFF
106 
107 #define USB_XFER_TIMEOUT 5000 // (5000) USB transfer timeout in milliseconds, per section 9.2.6.1 of USB 2.0 spec
108 //#define USB_NAK_LIMIT 32000 // NAK limit for a transfer. 0 means NAKs are not counted
109 #define USB_RETRY_LIMIT 3 // 3 retry limit for a transfer
110 #define USB_SETTLE_DELAY 200 // settle delay in milliseconds
111 
112 #define USB_NUMDEVICES 16 //number of USB devices
113 //#define HUB_MAX_HUBS 7 // maximum number of hubs that can be attached to the host controller
114 #define HUB_PORT_RESET_DELAY 20 // hub port reset delay 10 ms recomended, can be up to 20 ms
115 
116 /* USB state machine states */
117 #define USB_STATE_MASK 0xf0
118 
119 #define USB_STATE_DETACHED 0x10
120 #define USB_DETACHED_SUBSTATE_INITIALIZE 0x11
121 #define USB_DETACHED_SUBSTATE_WAIT_FOR_DEVICE 0x12
122 #define USB_DETACHED_SUBSTATE_ILLEGAL 0x13
123 #define USB_ATTACHED_SUBSTATE_SETTLE 0x20
124 #define USB_ATTACHED_SUBSTATE_RESET_DEVICE 0x30
125 #define USB_ATTACHED_SUBSTATE_WAIT_RESET_COMPLETE 0x40
126 #define USB_ATTACHED_SUBSTATE_WAIT_SOF 0x50
127 #define USB_ATTACHED_SUBSTATE_WAIT_RESET 0x51
128 #define USB_ATTACHED_SUBSTATE_GET_DEVICE_DESCRIPTOR_SIZE 0x60
129 #define USB_STATE_ADDRESSING 0x70
130 #define USB_STATE_CONFIGURING 0x80
131 #define USB_STATE_RUNNING 0x90
132 #define USB_STATE_ERROR 0xa0
133 
135 public:
136 
137  virtual uint8_t Init(uint8_t parent __attribute__((unused)), uint8_t port __attribute__((unused)), bool lowspeed __attribute__((unused))) {
138  return 0;
139  }
140 
141  virtual uint8_t ConfigureDevice(uint8_t parent __attribute__((unused)), uint8_t port __attribute__((unused)), bool lowspeed __attribute__((unused))) {
142  return 0;
143  }
144 
145  virtual uint8_t Release() {
146  return 0;
147  }
148 
149  virtual uint8_t Poll() {
150  return 0;
151  }
152 
153  virtual uint8_t GetAddress() {
154  return 0;
155  }
156 
157  virtual void ResetHubPort(uint8_t port __attribute__((unused))) {
158  return;
159  } // Note used for hubs only!
160 
161  virtual bool VIDPIDOK(uint16_t vid __attribute__((unused)), uint16_t pid __attribute__((unused))) {
162  return false;
163  }
164 
165  virtual bool DEVCLASSOK(uint8_t klass __attribute__((unused))) {
166  return false;
167  }
168 
169  virtual bool DEVSUBCLASSOK(uint8_t subklass __attribute__((unused))) {
170  return true;
171  }
172 
173 };
174 
175 /* USB Setup Packet Structure */
176 typedef struct {
177 
178  union { // offset description
179  uint8_t bmRequestType; // 0 Bit-map of request type
180 
181  struct {
182  uint8_t recipient : 5; // Recipient of the request
183  uint8_t type : 2; // Type of request
184  uint8_t direction : 1; // Direction of data X-fer
185  } __attribute__((packed));
186  } ReqType_u;
187  uint8_t bRequest; // 1 Request
188 
189  union {
190  uint16_t wValue; // 2 Depends on bRequest
191 
192  struct {
193  uint8_t wValueLo;
194  uint8_t wValueHi;
195  } __attribute__((packed));
196  } wVal_u;
197  uint16_t wIndex; // 4 Depends on bRequest
198  uint16_t wLength; // 6 Depends on bRequest
199 } __attribute__((packed)) SETUP_PKT, *PSETUP_PKT;
200 
201 
202 
203 // Base class for incoming data parser
204 
206 public:
207  virtual void Parse(const uint16_t len, const uint8_t *pbuf, const uint16_t &offset) = 0;
208 };
209 
210 class USB : public MAX3421E {
212  USBDeviceConfig* devConfig[USB_NUMDEVICES];
213  uint8_t bmHubPre;
214 
215 public:
216  USB(void);
217 
218  void SetHubPreMask() {
219  bmHubPre |= bmHUBPRE;
220  };
221 
223  bmHubPre &= (~bmHUBPRE);
224  };
225 
227  return (AddressPool&)addrPool;
228  };
229 
231  for(uint8_t i = 0; i < USB_NUMDEVICES; i++) {
232  if(!devConfig[i]) {
233  devConfig[i] = pdev;
234  return 0;
235  }
236  }
238  };
239 
241  addrPool.ForEachUsbDevice(pfunc);
242  };
243  uint8_t getUsbTaskState(void);
244  void setUsbTaskState(uint8_t state);
245 
246  EpInfo* getEpInfoEntry(uint8_t addr, uint8_t ep);
247  uint8_t setEpInfoEntry(uint8_t addr, uint8_t epcount, EpInfo* eprecord_ptr);
248 
249  /* Control requests */
250  uint8_t getDevDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t* dataptr);
251  uint8_t getConfDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t conf, uint8_t* dataptr);
252 
253  uint8_t getConfDescr(uint8_t addr, uint8_t ep, uint8_t conf, USBReadParser *p);
254 
255  uint8_t getStrDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t index, uint16_t langid, uint8_t* dataptr);
256  uint8_t setAddr(uint8_t oldaddr, uint8_t ep, uint8_t newaddr);
257  uint8_t setConf(uint8_t addr, uint8_t ep, uint8_t conf_value);
258 
259  uint8_t ctrlData(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t* dataptr, bool direction);
260  uint8_t ctrlStatus(uint8_t ep, bool direction, uint16_t nak_limit);
261  uint8_t inTransfer(uint8_t addr, uint8_t ep, uint16_t *nbytesptr, uint8_t* data, uint8_t bInterval = 0);
262  uint8_t outTransfer(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t* data);
263  uint8_t dispatchPkt(uint8_t token, uint8_t ep, uint16_t nak_limit);
264 
265  void Task(void);
266 
267  uint8_t DefaultAddressing(uint8_t parent, uint8_t port, bool lowspeed);
268  uint8_t Configuring(uint8_t parent, uint8_t port, bool lowspeed);
269  uint8_t ReleaseDevice(uint8_t addr);
270 
271  uint8_t ctrlReq(uint8_t addr, uint8_t ep, uint8_t bmReqType, uint8_t bRequest, uint8_t wValLo, uint8_t wValHi,
272  uint16_t wInd, uint16_t total, uint16_t nbytes, uint8_t* dataptr, USBReadParser *p);
273 
274 private:
275  void init();
276  uint8_t SetAddress(uint8_t addr, uint8_t ep, EpInfo **ppep, uint16_t *nak_limit);
277  uint8_t OutTransfer(EpInfo *pep, uint16_t nak_limit, uint16_t nbytes, uint8_t *data);
278  uint8_t InTransfer(EpInfo *pep, uint16_t nak_limit, uint16_t *nbytesptr, uint8_t *data, uint8_t bInterval = 0);
279  uint8_t AttemptConfig(uint8_t driver, uint8_t parent, uint8_t port, bool lowspeed);
280 };
281 
282 #if 0 //defined(USB_METHODS_INLINE)
283 //get device descriptor
284 
285 inline uint8_t USB::getDevDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t* dataptr) {
286  return ( ctrlReq(addr, ep, bmREQ_GET_DESCR, USB_REQUEST_GET_DESCRIPTOR, 0x00, USB_DESCRIPTOR_DEVICE, 0x0000, nbytes, dataptr));
287 }
288 //get configuration descriptor
289 
290 inline uint8_t USB::getConfDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t conf, uint8_t* dataptr) {
291  return ( ctrlReq(addr, ep, bmREQ_GET_DESCR, USB_REQUEST_GET_DESCRIPTOR, conf, USB_DESCRIPTOR_CONFIGURATION, 0x0000, nbytes, dataptr));
292 }
293 //get string descriptor
294 
295 inline uint8_t USB::getStrDescr(uint8_t addr, uint8_t ep, uint16_t nuint8_ts, uint8_t index, uint16_t langid, uint8_t* dataptr) {
296  return ( ctrlReq(addr, ep, bmREQ_GET_DESCR, USB_REQUEST_GET_DESCRIPTOR, index, USB_DESCRIPTOR_STRING, langid, nuint8_ts, dataptr));
297 }
298 //set address
299 
300 inline uint8_t USB::setAddr(uint8_t oldaddr, uint8_t ep, uint8_t newaddr) {
301  return ( ctrlReq(oldaddr, ep, bmREQ_SET, USB_REQUEST_SET_ADDRESS, newaddr, 0x00, 0x0000, 0x0000, NULL));
302 }
303 //set configuration
304 
305 inline uint8_t USB::setConf(uint8_t addr, uint8_t ep, uint8_t conf_value) {
306  return ( ctrlReq(addr, ep, bmREQ_SET, USB_REQUEST_SET_CONFIGURATION, conf_value, 0x00, 0x0000, 0x0000, NULL));
307 }
308 
309 #endif // defined(USB_METHODS_INLINE)
310 
311 #endif /* USBCORE_H */
uint8_t getConfDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t conf, uint8_t *dataptr)
Definition: Usb.cpp:801
uint16_t wValue
Definition: UsbCore.h:190
virtual uint8_t Poll()
Definition: UsbCore.h:149
@@ -109,15 +86,18 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
void SetHubPreMask()
Definition: UsbCore.h:218
Definition: address.h:39
#define bmREQ_GET_DESCR
Definition: UsbCore.h:60
+
uint8_t direction
Definition: UsbCore.h:184
virtual void ResetHubPort(uint8_t port)
Definition: UsbCore.h:157
#define USB_ERROR_UNABLE_TO_REGISTER_DEVICE_CLASS
Definition: UsbCore.h:92
uint8_t getStrDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t index, uint16_t langid, uint8_t *dataptr)
Definition: Usb.cpp:826
+
uint8_t type
Definition: UsbCore.h:183
#define USB_REQUEST_SET_ADDRESS
Definition: usb_ch9.h:43
MAX3421e< P10, P9 > MAX3421E
Definition: UsbCore.h:56
virtual bool DEVSUBCLASSOK(uint8_t subklass)
Definition: UsbCore.h:169
+
struct SETUP_PKT * PSETUP_PKT
void ForEachUsbDevice(UsbDeviceHandleFunc pfunc)
Definition: address.h:199
virtual uint8_t Init(uint8_t parent, uint8_t port, bool lowspeed)
Definition: UsbCore.h:137
AddressPool & GetAddressPool()
Definition: UsbCore.h:226
@@ -130,6 +110,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
virtual bool DEVCLASSOK(uint8_t klass)
Definition: UsbCore.h:165
void ForEachUsbDevice(UsbDeviceHandleFunc pfunc)
Definition: UsbCore.h:240
#define USB_REQUEST_SET_CONFIGURATION
Definition: usb_ch9.h:47
+
uint8_t recipient
Definition: UsbCore.h:182
uint8_t wValueHi
Definition: UsbCore.h:194
uint8_t getDevDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t *dataptr)
defined(USB_METHODS_INLINE)
Definition: Usb.cpp:796
uint8_t wValueLo
Definition: UsbCore.h:193
@@ -139,7 +120,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/_wii_8cpp.html b/_wii_8cpp.html index 57d46c5c..1eace55b 100644 --- a/_wii_8cpp.html +++ b/_wii_8cpp.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Wii.cpp File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- + - - - - + + + +
@@ -115,7 +92,9 @@ Variables  

Variable Documentation

- + +

◆ WII_LEDS

+
@@ -125,11 +104,13 @@ Variables
Initial value:
= {
0x00,
0x10,
0x20,
0x40,
0x80,
0x90,
0xA0,
0xC0,
0xD0,
0xE0,
0xF0,
}
-

Definition at line 25 of file Wii.cpp.

+

Definition at line 25 of file Wii.cpp.

- + +

◆ WII_BUTTONS

+
@@ -139,11 +120,13 @@ Variables
Initial value:
= {
0x00008,
0x00002,
0x00004,
0x00001,
0,
0x00010,
0x00100,
0x00200,
0x01000,
0x08000,
0x10000,
0x20000,
0x00400,
0x00800,
}
-

Definition at line 40 of file Wii.cpp.

+

Definition at line 40 of file Wii.cpp.

- + +

◆ WII_PROCONTROLLER_BUTTONS

+
@@ -153,7 +136,7 @@ Variables
Initial value:
= {
0x00100,
0x00080,
0x00040,
0x00200,
0,
0x00004,
0x20000,
0x10000,
0x00010,
0x00008,
0, 0,
0x04000,
0x01000,
0x00800,
0x02000,
0x00020,
0x00002,
0x08000,
0x00400,
}
-

Definition at line 59 of file Wii.cpp.

+

Definition at line 59 of file Wii.cpp.

@@ -162,7 +145,7 @@ Variables diff --git a/_wii_8cpp__incl.map b/_wii_8cpp__incl.map index 946f5cdc..35e4cf8a 100644 --- a/_wii_8cpp__incl.map +++ b/_wii_8cpp__incl.map @@ -1,8 +1,8 @@ - + - - - - + + + + diff --git a/_wii_8cpp__incl.md5 b/_wii_8cpp__incl.md5 index 90a48635..16fb198e 100644 --- a/_wii_8cpp__incl.md5 +++ b/_wii_8cpp__incl.md5 @@ -1 +1 @@ -38127c822874d8407cb01375c5f2f11b \ No newline at end of file +230d657150b96397e6c72f7fb46df52c \ No newline at end of file diff --git a/_wii_8cpp__incl.png b/_wii_8cpp__incl.png index f211dcd96cbf6ff50bd8b8625987450a2d79e2f2..8ff2079b841e0bc810ddc0646960d15d6610b395 100644 GIT binary patch literal 15444 zcmc(GWmr{R+wBJFbR*p%Azc!ilEwf8X$fhhW79~Nq>6M4NOx~Q8bn$oq(SNKhBNo` zoa;T;`M&S`K9@gS?6uZhbI!HydyadIG2g#bQN+ig#DPE{_)nGO)WQFA5C}>t76v$a zQWd`d{=+bNt|$k&L;lNZ$&Z6T=pj$#q%}O!cIMnYK5O0z?R)EaQK%~^5n_Lkv5L4q zXW(@}B537*V_dMy&c<#)OiZfAX_L)XKpf(ap;8bw%ve`_*mc%d_4+Z3bb2e35 zeWhtH&K#QB?@H6K5#aCdvwdOq2D%M2IbB(fWWb_n3mFo@@j{O91Y@yd^QkDb~{yxpsf{7hb} z5qdLo^Nqd!{{GG^>7WluN#O$nFYqV@u^@Q9thpE=W!NoVCmp4)>tAYW=C$s1gy4R7 zmZzkoG_v4+vZ={Nj1wFh+R@&Q@_^+91QN7>T_~MxBQu;Kkv(eVxHZ8Ad7`OF^6Aqj zUXw1Ypb-Pm>+J08imIx>xVQ(m7sGz2{_T6gzp_RiOBZT%EG*Dzmm8u(^c$VgcXxNm zCAEoY`=Bv_OAN0~Syt@*D!)Q7>J6~(;-rijC*-ZK%-bUkjK3E?PZQ|Kehfs_N>KdQEncI{P{6{j{hkyr2aG1A}N} z8zDnj;C;*Z_=wYbZ}Z)}qot+YKR)idI9iJ)m=kd?Q8hF)vW!}NJyzni@iL@rr+5cag$Y+yR>;LY zcuh=9jyu1H(lV{KGp>zs=~l`8dgaY8AaJl8$+O(`{sEU)3A6RrQ=O?^9vs2uhsfZ9 zf&q6{4@=H0_lA3BjlBP$Uf8w$yZZGtIUnJFLhnBZq@Iq=t7sO_74`xgIS&^bMoLOx zD3GF}suWL_GtTWlWayDw8(sU%-YfBR5Xgd$fbL?#eTEUC|2xqB6LJ4P52_pb>5g{( z_N9uvyR2(}7e-)!0*N9Yom;$Zz0SkMz+3NmJrmB$xqH~_Q(g7xPjPvSG8A5Py~YAcdUH#rA9&!H@eacy|SW~XUn_y;z) zczF1}^qVX(|4?s!KR<2w-tM47PWT&e!t?f`H|ymu!gLvi&Z)|G=vGiDPDl(ZPxC(c zugyy_bt|j4p5QWUEJs184$v^?ISf)r|?f&s8*VEO0gSC0%bg0y+C z9YS{b<#Ht8uV3o}kgEUuULTcUh<`@^5i%@3CcD0RALZq`HHDZP=R+dwe5q%763?D} zQqwC6jEuaub`nh^rnO!l|4W)xd~&qa&u<_@B6SSLZ8#7n$0)rw|3IX4Et2QkVvWyF z7%>9oW(B+Q&Y=s-CG~c`Os%3;`}%K_S^ZnhtBKQIUx34vd8N*I5I%UuT?lPL(1@P zPwQK=i;8f_xb-0r5TA?38)Hf0o>kK8L+N5+tQj7tLPA20uC5>-b3ob_-AzQ<;C3UG zri#HKAq_CVc632)=29q)B*_LLC2ohvHH2qk%Ln0>(x}LO`_)zw3JEET#vq_B*xQJqm59ie4U=JsGyeX8LB!{rm)ih=R;u;dAuO_T zbubmv+uK`CULFO4gM;&8!i^CR#*`P0fk*DYy={xk?Mg3Rbb-YY0_hAR>`mZ$y|}&} z-b?34eR_IY%D&Lwj|)km2_-rLDVdGJY+y}kx9LbhFIlH*JVgkzqCLygL3{E9v`$SC*sy+CSQ94^70HoYN zzEB3)Q1V$RpL0j0JazGtU#}G6k7E6I;4h$1-3qPDsJd+%bRl!u!g58h3L8 zYl$Kx=6;6S`u}*4j-k~Hmdoiu)Y7$~blJPxn-F`9!XO##=Qft8kS9)+BpU3@9i4l! z*&`{r64teN+T{pFwgN~@j3$@wJ8=2Tu`twrgyIp)hfJeDD3hdYA~)?6;>7&B*;k6% zEjZq*uO*7=>KFvHX}E-htZ|>82g}dE?Q+LAd0i|x|2jXKC`-4hYD4kYU~k_X=joW3 zz!9*t4^Vh@ci7i;{c?TU>f-R7h@T|-)}*R@7(r>Oz$CGyr5IQT@DsV`y2I#p1w1c; z{fH4l=O>d7eXe$%`W%ny$jO~MYN=XTv0h&-{5cpDX03GJGauSyxXz+^RGO>4Vlq); zmn5`PPA(jC6)C15egw+;GcHh7RO+T0U06UO z<2flB*NdWSB^4Ew2Tv4rbgo*;Gc?f?Y_?_SA-5R5g`%UIpYJw3YDOo3fa||qSn&Vo zFW&E=dM$m&Gx#8+EJUkZGPET_5(RR@9R8#%pk} z|MJ*v)Eu#PovK$A-(ghFS;~XX`(9b*=FRnn;=htV>8`6(dvkMH`27caS0H-L`G-aT z(oBz5tEax*h-;PmLQzocWrXu-jf}`j48)*K?nYe+T$UmB1bnCfGm`Plw|npHbZq}- z;)Po!jSRm1wQxIuUu}Wkx!f%VLaIgDK=w(|Sv_li+;P`@5NkkTP(lyRVOwO6W!BO1~hJ^Z*;& zb^o!8KLUL4P~a1@9Ae#U@yyO->a}5SCa-U z<()Sy##Y7UFkzMW4V;;s&}z>&*#yo**8kDhX~fF&>?Po1}@hk)(X2 zrzNF=RSx~zFkvK(VT9|yBk<5MTkn$mw=2|~-0)TYe~&##Yn3hS1uz?A1c-vo`4(W& z3Sk>#e!Rt?LxmDdODl=3VS08c#dy#^Is?LcL4>DEV6rTP!QGDqh{_CG!bmuLp$JjZ zZbli)-T&Rr=&mJ2P2#^py0#$`Q{P?S35bl8cu4fV{bt7w^e83uV;gyA5N008&i4yK zcAhtp81vWEt{CTg`x84X6Of*~LE0fdgSH-nc^?O7F zv@bd;j5C){cc>vd?x0P|l#h;AZUmu(cf^>4EXE7pp4TLf$qo3X?*1xFW#cYGYjfN) zL{W%3#}lx?>nPGxthCkDXae&VpF)AX*HVwGsY&T`G>8qp%{FpbCnsj#s~u7dLIM&* zvc>SWH$uXjTbjH4RzQ%Fi=AEYd^wT{3wt9tDTx)`KK&wD{NmB^?oQaSlvGp|f32@3 zU!#5mxC3VvaoS!YtF4*W9&pc3CZ|wh+ZaM_Kl@z(_(F@Q~mm8Z_9Dx zrvYT(&5TOUsL9=}l$vfKv@BpJST}5Us&b2sr`&pltwT17e zPyD>__5AZ2cM>=v)ZHpEvDj%DO*z<(qncoDcaDr9?(sKm_0kDOo^tZhQKO}vXinPK z7KWe)9o55SGFn>3ago1%n5l11%gYYb@z0FJCu%S4FLAhrCWHc%a(!cPFs3>NCHnck zcOp6Q!v~e~jr?itm*K(Yr2nw zVvVk=`9`fnBCeZuociZ?^ojkH_?dd8-5;5>J?#yyOzN^{YPT43)t|OpF%w}U;0Ij+ z_o^$cM%i>;r{1VR=h=w)n@^|jQ%j1IL7|d&-hTKCrl4L*7vsSiYjf-1RK3T+UH0T` zHxl0q79xWzr7n&XO)ih6NhMr+iOEgDDnOmUJ%?Yb_j<2I<(Zxe?o{0;U0(r0+7~|^ z_Mbl_QhM0-N)`RjK(hP(w2dsABMUt!Z67>%FJL*}4uIyJcV@A-1ekg-Sgcu@BlCoX zp}8g=)Hfgc&0n(HRl4mww4D*6nV+W#w%2R=v$PbYoNCxHUHc$gV_G`L6cSZ zZ@rVyL<$ND5pS*L$cfMKZ!0{UP~ot}_pGyg7Ew~Rb~E4RgaFujP*WyZ*_z3vW?0r< zX5j94>qDEX4i@iTV@t)E0p){}6L~YU+@)Njd?QNgXRf$YZv8`8IF;~xilnEF8 zPXRCRblsXDZQ{BCfna1|!62lQM1yp7caM9k>|}Ozb$OkkV_=vZ{_XodJnT?sAOFle zLMlk`NuK%!VZ`KZOJ2(5b$3MZUP7N20w6szOG_pW4%{$8It6QM_IZy#_>eZ2VTmw+ zdXT4(pzXN6y1E)lOKbnKr^WlM;_VmM<&DELkMcSXkB3!+cbDI95Yb)1OX4sji9A*HB_&G)qg%=BwSN z%eCG47AhzdT2Wgo|MKO16I0Vv+Xt)*r9DGgR@e|uKE99fpFdYDFPpd>tttxvCZ-O) z@zZNqSw+RZ!Uw`BD%v=I1FH5C*)Rg-2??)bD=l^P4!7OeK1jv&wNK8>d`fFQv!32< z>)nk5DHPgXrr+2Bs1}`8-f6ARx!Av#lQLuMMqSF1Pp*IBg5>!j%R0Pstd z0NV5R6fHy|sj$nniDt6scW>i9eM;e~FC1~*nT|KNwA^x_6Lk(g0Th7Y#bZ00?fg?0 zy`Q(!#ZeTA9sHdfkjlu<7QGj%38;`7@1u2I%ziwlG z-4+feold?}mMym_pk`%dO_O{_xi*{`*4iqi5JUYQR2(d=!ume-BEP>@*VcA#mAA&! z)Cm4vU9BrDskND0PPWW=dnmfYVEeeax%opv!q?VxK=ctxUEhClGQ`@b9|OLSn?LOF zIP>%Kmow^x2Xt=-$$lm|Q`y+;(321oF9Mq91Uzc0X=7VBmRU_RrCqI8o zPJaI?U&VMJiBCycxjRkN<#_mah4H>Cwxh`+PK+S(f&s6zI9+R#B|ahpKbjX&RbCJsp;#_n$ZkW2-%W@ko*X`2%-rTRyw-6D2oS8n(obSBkW+w zFM7OAxBHg={MnMIFSJ8UOZocxafuQ@X_^By__FXr})5#pynM`ZQ=|^2W#J?w6f|Y<(iP!H=}`blrOU zxhYT=M)?}d&AhI+HxCF17?_?;2?-0U1|(@s5w)pcowBwAkcIy3l#*34un$DtGGTpbdgfIwi(Y7X(dkWMfJgsRMX79sOx%v2LB)li?R9|XO zmSq4+gjMot`%Mm6HfxtY7AdS&FLG;AU^FKzR&6*_z!J@VVF-!&oM-uE8klv~%Z!HQ z%=3B*G6=HfV`}IELy*m#o=#xlY+4=L6x1{A1iZ<m+TD%CYYe`$YYQ^D@6SuBrY$8N%E}n?!Z+iN+ zQqA)G`IsaDX&Lt&Jr)_+mT9;oBe+N(n;7AZg=^!*Ft+;AL2-a&FMDhQiAoi8bn=A~ zyMT#p2wdj6V$x^#N~GqNZCRNFhH z%IdVB_1S$|M6tF2lyu@W+uRO$5u=i-WyDV7Kf?%~9Ety|vAjEniA5-Ew+`9d3BOo; z3>UUH3*@sn{AYHO2n}W3Ppnze(rg$1j0MCU7J}jXPmatrCx?9aP?vr?P7Ll61$XuJ zHDVD6`F{1V0mJBuIUA`p^9-E;6C6(Ckj=qSETf_VU6Y`B(n13jo|nm2UkT*v@l?e` zUK~9+@`#xK{1UORPIuxaSK@)6-rCCXPi3tJPDj*_98^BY;|32RKbRgnpn?5!L21-1<1>&)3f>DPdXk?vh2;ztTjR zcs=%6r)sxQtEzA+Ee6#-f7X!6H*N4fL(w;&L9?T)q;3x8mbgLjd1r7@P^2a)$sHbr z*D>R87j@|TxJHi#f~4QTd9Sn62Q}}yocBo)46+^P1w|QERqVDiZUja?PFV8tB$pNA zFWGXHR9ktJX2Q*vnc)-^gd(X8)1PZ?RNt)p=w#z44phjo*%ysMao>|%Y&7rs*?dgYe)yz6oOxLs4!Ds0eaB@)ip9wu zT`-+r8UYm*x>?nwpU}<=2A?Hycw^%-77axFK+bY|R`fw#ofbxW+_U1?acBo7cucwh z7T{gWiuv?nX}=+P7Vt?kBxajQ<0h`>N+h=1Ixe%W4O9-h1rWqQ)Uu_be5)wONgUh~Jn zNhCw{8)p241!1$uR~z%d-AVC0`v1(Gkh;M zEW$DdiiJU)p((q1_=1* z9W4=2U`Yw*jUA|eAXadPzjICQqs7`hL04YK>!W5@DI9S%eraJb?z>v?2J@7@#rL}0Ybf8oBj6g_1zVaXBYSO%3J63c~S4(`f zp`GG`9}?{-+58ug@8VXL5&zBe$by)R%yhg+6C;+8N(isAvJxOSXRwD+yp&!;mKpN;(sdaM$S zzCCXYZObPB^2$hCzUGOklbhOZ{LCBp{X5xpYa*IP#IbGhTY}NJkmhY}k%`J!0My2L; zD5B@=33im;(g96dq47nbzro08&)1qmF&_oa>f(v5IZyVsSS@;d6<~)NlHqB7_5Qj zXWR4(%>iLUc{U}%$&EI&s!Fb4yiuW5fl;lkJ)7s*Gha+oJ(Xz^8k)hUjlohN$X_Fr zg+Xb?+kx-lj!oj>OEQwT=YeeFaEI2fGTl+?R( zef7d3@A|B)7%ndZBpF|`K_}w4s0w&-6z&v-X%rP%P?bg>9p?0v;E_zvo0+kKYa>2o1a1F z;bB&YTDR|*fV%WLsal3q@gHq%XcX0j5I`)3X=9R-l$tL$N%fmOdgZv7c2M%O!CMm= z8(FCpg+nTQE{@LojSz39Yw+R9E?;`zuG`uTmgg52{al=H31h)df5FnNZKN#M8>15b z{zA)7n#AO{2f3k^vu;RVUhZG%;_>8%a0m$4Xs*|W3Z9-MUsdM9i`b)|{$O5>JQ|5l zNYPdW-~$9ZJ@3e%nYovT2!qh6xqfR#i17TBLVk~~2zYY?<@raayAUd>kf;4S)8h}Q zgjG7*gPxwBo5DgZ`$YCO*f}1LSPfWy4R{tGIg~yp`Y1JK3F`mn5B#zA_9J%oFhH>; zY9>d4vl$XMA{?3Etco{+fTl=R`{f%+@0}N}4Ox%ic*9i(L@*aoj+NURB4Xmt3?fN0 zBPihKPvG6fVtEMe0Mt#3KB2Z$urECJ?5T2 zDXbArwF7{M5NMpT>?;nXDxj;LB82IYk?9m6++@zis@{8?J-ft6`uG4#Dxt(*XjY5rZ+XDqd?dX%-$XE-j&f ztec&R3bk~ zkCanDtpHlb^uSKf&ldnqdzWxCGZO+W<3qovr`WXF?<&6a$#MZhueVJ6{Ioz-`H9o) z)8E`8wm2_w;49sQc#y|{6N0zkD~4`wALDV*?EvPB0-!iaNgBC#7V^$j=LBSe-R0*cMSLz9!}zki2(X|^Rb#Vahl_%i?g=Y0TwZ09cd%MAK+O+73^^Oy2) zYxL6D>bC%Tcxh;8F4WmS4I1}cF3rD3|AT=gbL)%aQXgwjs(5HGd1p^_tC}hsV;Wul zJ&3zICctZQjrGcTKSI>sS_*AB3*}atdH|BW`JhK=d(Io1fgyeWZ(KWS{bz{y3H%=% zxICNO(F;rTDe%TCuc*NL)AKI+=IQ}ZxA!{-9S7y}7J0zTCVOp zj}?B~d7p&dgpZ*BwEIJZmGX#kbN?QIn?N9fs-%X(}Ry6lt})HvMK<~ zDyOQ9J$``JWwQ=*cYC0zI%!A{HJPU|Z9Mu#O~ligArv1MlRn_Z>3Yu40B0@@J1S9D ze*a4K4~3N#lAMBqW`oc&g|(qwKn}9|UcQB)-Yc#zWF~sT61RA@w}D5Jy+1qF$Ru1( z-rY^&qcubCqC?iL0W^Pm5vOIY5*;YMrR8g@S{SvY4|-!`jjTLYb7OpLa;j%YttggM&lVexBGqJUQ(jp<6^m2X`X0N9iF^ zfku(nS+PbD%UO-knTPktl((t92VuHCHz0x)rR%rU)ei@Dvl@We0XWG3d)@~qvW~eq zenrYa&Ureb<@bQy2q~cS_v9X3+}s3~3N5TTytvT~`1fJ5;l4c|qKELMrTGRg&8d<1 zo^I_xQ-D%Z;^e8nH}6kC;iZ=3{~yqK%i3eO_u1}TczC#fX(?A=VBmc!s$xIe$ua|A z0m0nf-Ub*lcDz`7i|%!+uLQz=p)3JoE%+1BSjkC`)?ROlbMyZIwjTy0M&uc&Y+#?+DO2(RsyYn7dYN9+7>;d z_=0AbnVAQE{D=VHHwKWp)zMVK{2?;!&z?Wm1qKShGH>T48k&Fsn<9ZHWGV=gaO$ga zYEo=0p%{Gqe*f^WrD80tITDp8HkowekOCA2C|F%}b)qdGsR4_iVcf~%38Y0W1@PIG zfCSE2pyHMyJa; zl=o@Lw`N)iuL`8?@YmU&SgB0_Q))T-hlVDk+<+HmqS|tpWy_`{9dLwPz7A2$2_xA2 z&2SeN|E8uKdf5R*GXL#1@3|g8!lL>soGAeJ9T{-p@i&x%G2=@nj_cj@_w`}tt7i59 zZ{HGl@gJEK85tN*Kz_yvL3Q7qZAVH$-@hx_PE|z#yz1WiUp z#${YY7(P{~nES4vu92w>a8ta)v$}2J!wfV)=i?l}oh-wCfB->?&*B=P>|#{V*7oEf z3k&6}`^pcJpcy^86Cxk*cE%O}^%-z@=xjUROd%>Nn#6C86G})I)6pTLp{a@Fh?5@M zkRnU?ac!dwBQhY+6l<4Le)a=$=gl5q+m%#QFp6nKv$L`wz|CS)^{waoigG4_?T~RX z!;~-&FokKC&Dz|)XPKa#kWc;}YZ+XKqnjHB1la@drgdtqQ|G_(Vv{C>n?~3U@<5Ey*fSYEB%qf1KS@dv~FVdUTZ9UsNR6JR#<> z-@6U;{{wYxoB9oFhy1JnJ6O6(??j1iCn&;`TUsQxX6kvwTvnrQ4}fyU55PSTpM>2O z+fah+@$ly zPC>!XqA*w$QY-@Xr~qiLhuoBegv1s+abRpL&UJkxKsiHPx0NZk@)8JRkx@}*1Ox<8 zd|D1v<%MToDrW|v{X*$)vYVWkB9S4^%xu1|m9JH78W3>wTUF|2==nR7iw`rKpx8Ek z|NcG3+0J}RYDj1(&aW>M(Ec@sseOKt1}4A(Ib9qY%x^Zk?=i5m|FUowiWs@QK2inR z=Hk!1=WIMYz2I{NdNt#V6v3zKUz3^JwR8bv1YCseEB)@!2M_w5r$1)Zjl5`UAm;+_ z1f&g6vdb76(xRfG?gNXc$xxc8jPM{QHloI9Z{AnL^N_{iq)?;L(Wz1~j9}FpMTz0N z8GrNL?Ul#f%~^>3vnKj=-y?wWkz}xg%htd_+Vh{cSd@tQmYb~cO~;jI7(6GnlilX; zJ)wedz|A?jxU}Uxzutb4?Wz_|j^(STP;ThkyxqQ^vpRd&*-87B;@d@ziay%uh8~3E{_k8ZbK6j7;smt zlw|zG7glVTuQfZAm(h8XcQ7yHZlhOJ%cNNq8zrPwPle_)}` zF;!Gl`9Y@s^eOXK6@%D@hNGzlCrb1oyznpi_xyWlai4&E#%hjimUd#YU}q@(3fLVb zaB%x8UDjS4uP<@H%M_U^+J5}z5oJRIN zf8U!x$K5oXacvoEu}ULI6*n-55K5k-JG9i^b7J}Z?=n)FYMJ_josA9Yf3gs0=Hx2vDlWHg2R*8^P{!+t+F*jmVPVRVA@&^|fR3{W z=5LxB<^mfP6>GX5$6BtaqQc;|>qFDxeT6;uumd`Z&tuO2=<*o5ZLhWdhThZJnY*NP z<%^Ulpp=`)MGplE#*sEVTO55cR>TO(co+d#lCFk`T^b;NZ*Sg*$K2u=8_!R*T;Z!3 zF(f2~vbBPu3zLDP7~;M+@9;|0#7N=Y&E+fLe5c#*z>PINTJ`Jb>r()%Hf^|lDnUWU zQ+pemkZQ}grM1aR<|7bNyv}C9*sm=p0n>T3*1IHi*XVEF-vj8CRvge_Cbd(zmXw$o^!jTem~&9IDLnn|Jpq`k35y@^J*bX+zn$8s|uTK!QN zfWHgCZZ4x6-S4hy&dw2Frfv4G_8!4$P}E}!WY_+Tp#VmJOA-!tJA|aAF-m_u2K3Q; zwVZEqYHH}GJKhgIeoSz>K{F9o3nM5Hg*#Tum#Y;zqc=kSg31+2QcIaGHs*?^^k;w( zp2(A*Q&BOnK3SmA2owxESZZFLbr}<{7o4Z7=O^+axfUk$g85`r$iV?SFz3@eeM%wX zwhcoDp!)(1J`iJwN#dE<3YcK<3e1-@Fexc*P$v$}C{9A@xtNVhC02r1LDfdix4iJ7 zf5l@zi=2@5Gt$SOGrBaA-3Ze2!DjJm2ypKTVd25UUa$n{b9Zu-wZq+===bevE*e0tabGw>p%Gu_M2ahJim>&hMEfSlFW_>%FXgqxjuV;_S?X*BDPaHk@`gPU#=5k>(zL)%-DUt1OXAGb+ zMsvr0K*&+SAmK5-)L=IZuCwQj1x!R7#{j6#LE5_JcsdBdBKek|Vtd#5qrG4^Q$!@k z{#k3eyqa3bs5y~(YJn^!gw9W#V0Sm>MC;fY?gQ@$OHbEq(X0WcZU8lUv!odmCSA|> zNdQ(TZkNb=EJ#TM(hc9c%d-({Wp`Hw6Hz%j7*M53UJEzQpT<{LFTK?Qxpf?ex_w+W+u!1m(%Xw*XKMH25a5eaxC~jGk+{ zdct0M>jDUePy+nUKe3pU2E7PZ)(`0hQ;Uy@!Osxv*;(p?!~T0vx>l^2`qpQxf^k~V zx%Pveft1J8$m}p)dKb|9&9FGieB|tu6 z{P?CTe3x9fj0b5}J?W_J5>HZI|JTtT%pfZ%t*aZ~9zzVd4Do$P^kyJQ5)1c;AF&O1 zpz_-&Qec<_gaZ)2jF-Du53Y~iEpBsO!#Hwpcs5U6$@KL(bd^2_slgt zn)>#xsonJS)cJFw4V3h2@tKaPx_SigwQEA~CMNjB4}!%QnIslh%rWU7gb|nvT~4!R z`Vay6!S389oSFXudw8bap%*DY=$c79TTv<)_hjR0dE?j`*-vgIh|b0iGd6ol)X;cC z2S)%akCC)|2u{@FZ);U$4GkhuRKjKGT&%&JOU#LJWDybUz%xsOM?NyRc+1l&9)G|x+T4Gj}I=;hRf>BLQ_MgCD@=n{j4Qm(YszNdm2>AXTBg^zQR}~V8S*~rg zo0ix4+qF*V@erv)2QkTI19HH9Bls?%x5ZPj96l3NC^ISBh>%X#3b@s zGIGf7VXiTY6jR8S`FMA5f+lOJ@!<$mCPiW9|Lmj!-yy-9u#sr`u20u~7#LK6VSVn% Q-NKNk@+xv=GH(L^7pJWO2><{9 literal 15588 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 - + + USB Host Shield 2.0: Wii.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@

- + - - + + + +
- + - - + + + +
- - - - + + + +
@@ -149,7 +126,9 @@ Enumerations  

Macro Definition Documentation

- + +

◆ WII_FLAG_MOTION_PLUS_CONNECTED

+
@@ -159,11 +138,13 @@ Enumerations
-

Definition at line 27 of file Wii.h.

+

Definition at line 27 of file Wii.h.

- + +

◆ WII_FLAG_NUNCHUCK_CONNECTED

+
@@ -173,11 +154,13 @@ Enumerations
-

Definition at line 28 of file Wii.h.

+

Definition at line 28 of file Wii.h.

- + +

◆ WII_FLAG_CALIBRATE_BALANCE_BOARD

+
@@ -187,11 +170,13 @@ Enumerations
-

Definition at line 29 of file Wii.h.

+

Definition at line 29 of file Wii.h.

- + +

◆ wii_check_flag

+
@@ -205,11 +190,13 @@ Enumerations
-

Definition at line 31 of file Wii.h.

+

Definition at line 31 of file Wii.h.

- + +

◆ wii_set_flag

+
@@ -223,11 +210,13 @@ Enumerations
-

Definition at line 32 of file Wii.h.

+

Definition at line 32 of file Wii.h.

- + +

◆ wii_clear_flag

+
@@ -241,12 +230,14 @@ Enumerations
-

Definition at line 33 of file Wii.h.

+

Definition at line 33 of file Wii.h.

Enumeration Type Documentation

- + +

◆ HatEnum

+
@@ -257,19 +248,19 @@ Enumerations

Enum used to read the joystick on the Nunchuck.

- -
Enumerator
HatX  -

Read the x-axis on the Nunchuck joystick.

+
Enumerator
HatX 

Read the x-axis on the Nunchuck joystick.

HatY  -

Read the y-axis on the Nunchuck joystick.

+
HatY 

Read the y-axis on the Nunchuck joystick.

-

Definition at line 36 of file Wii.h.

+

Definition at line 36 of file Wii.h.

- + +

◆ BalanceBoardEnum

+
@@ -280,17 +271,13 @@ Enumerations

Enum used to read the weight on Wii Balance Board.

- - - - + + + +
Enumerator
TopRight  -
BotRight  -
TopLeft  -
BotLeft  -
Enumerator
TopRight 
BotRight 
TopLeft 
BotLeft 
-

Definition at line 44 of file Wii.h.

+

Definition at line 44 of file Wii.h.

@@ -299,7 +286,7 @@ Enumerations diff --git a/_wii_8h__dep__incl.md5 b/_wii_8h__dep__incl.md5 index 141f0cf4..0f042ba6 100644 --- a/_wii_8h__dep__incl.md5 +++ b/_wii_8h__dep__incl.md5 @@ -1 +1 @@ -68e486939ecaf1de2be16bf264fe38d3 \ No newline at end of file +cd6696ab2d85cd1fa739c986e5b9679c \ No newline at end of file diff --git a/_wii_8h__dep__incl.png b/_wii_8h__dep__incl.png index ab5864894641c681a74e12ebab6ec275bd0375fa..65a296ebbe105dccd9ad7546103736d86cc23090 100644 GIT binary patch delta 1841 zcmV-12hRBZ4ABmdHGc;NNklN+KH?sumF9YmtPgw8FH!3KS{S$diZoTG0BKn+bIqgGM#UA@9FKF^D%cOcc#N&1VKOwz+3795P!jWvWrylOrtZXs;X+S z>-Zf`oH((4`}X)_FgoX348uxGOGP3PLxnL(M@NU*Y~HtTU;JUT_9p;TRaNP9y5B8o z5zy=PbcUtM@yU6z3(hkcZr!?dpdRN*w`3(+MpWq z(ChVMV`GezG=C3fJQWIs&*uw=!(`Xxa`AXP9LLFSe}8{^db&&|%gD&6uC4|Es(}n< zJmqrv?Ch-1=L3LnINaOYyJycH%G2xh%4D(?D^_G>W!2Qw007lM1~Z;Qp->``^!N7z zKwn>CcxDvxJ6sdzk|QmO3j z?j9N%ibkVlWo0zCvw#17fk3ch#|{7p1OiNzM|a(q5V>4FIXU^}%^Sbpzh%o708p#d zcDsGms()1_B_#rZfaZ2`a&iCw!!V`_BVlZRu358Y{rdHFb#)syY{<;a1c37Lasxlgd9n-6lU*!~B|Ah$}FqjU*((>~D5C}FfxJ|R!oLGU5CxbLK_2lOtuc@g; zoEP=+X|?tMfX&t)2!v4PMe6zWYp|`Y9{^@%B7gqbi!wD*&(_x0kw_E(FbsS65J#CB zseflf15RE>N2Af_&wUdUjNKMV2s+P+iNLE@!{q)10069|#e*z6I?u*NH^BFMA_PHL zEZxYmqw};_x(R~XnGlTvOl@EHwzIPn0PJ@Au3fv-YBh#oIF5(IVYk~&ddBDG&6|%NJ!)-jZEtTM z92~rK=@RwP?c28-8ylZId1ABKu3o(wCzu>RuWu7R`)D?s^YZctf>5bc7K?=-2!p|J z;lc%{)0vi*76=3gf*2kiCVw|YHRd9fO08Ba*&Y}ec>MS=HL|z2m&#IHTpTl)utI~u zka&HY5Uo}_K0e;v-R<#s$k)zPR8-W})n#U8s@3Y%t5+x7!pO+T#*G`vwp1#WN~P3C z#l^*BLnf1rj*i9&CdESLZEkL^R4ToA@uFNV&(6*UfQpI=r_*V(*?;IvS^y|0D0uho z9ohDHJeMzDral@P8X_A$pRb^xAWkqT7PwB(>2%G_&AWH+Cc6@eq^PLq>C>n2J@4JS zN4{$3;K74u&z|k;>+^cOCXJR_FhLNZQ0U~zlZAzaLZPs_y883y&(z5K_wN@K6^TTm zqeqVhgTa`=1stCX^jr*Lp0Q#E6Y{esx4uPAR#w*G!-wev7r-*|6p2K4?%bghTmZ|+ zb5Y?u*+r^&##rAj^S4pc!Rd5rG@7}QANJ?Eb?XcU1KN@n1uBh3Gw;pZwBCcp0#fDp f~HGc*(Nkl&> zI-1Yt>zz#v3=R$s4h~jqCd%{m>(>t-J~W%nKbw@)EH5tufMlLL*REZwJ)`WrfIh z2nB3N=asvrHdwP0SR#xKiH~=sVbL`l$a5xMA zTU%R^NTjEyM@%P+i;H*f-kqMFHX4m~yIrc>KtfM~Ab-qe^YiD=0f1o`o6W{B3;=jM zp5ESGf)MrKMN!n=y?aTL92y#0U0szbH<0#vYq3~79uLQH$z)Qm*C&%nmSsI24?k(e zuxHO6zR=dzmd$1*%uPzq?(S{?aJ$_)oeltWI-SeqYHe-h@gP zT4uA{?CjszM#tyrc880vJt~!IYU&NP(eZgsO}%MqQVG?3zA!iUHXcvm86A^nJf2!u zSbyQTLU9lwaJ$2J62Rn1(|>LocRDdmT}+;jAHOLSN*AIEg~F>>|9twCz>okA&(EI| zfxtT2Zo#d&S@rbkUl?-0;rZmr(oTzt99M8U7ct}@)u)hhux!4o>vy4=O6A(xi00;R zf8y3w968|ryn+zw>bg8V9mG6nqpT+=o`3Q}@st;er@T-+<%QxYFBDICp?Jy*#Zz7= zp7KKRloyJpyih#lh2kkM6i<1fc*+aKQ)U$Z(^t~>iFbq~|7dRht=^-QynpIgUgtx*W^=&mJhfV_$z-Bwny-HO@`a}9t*tG->Twg(R$@MXW>Unms(em`GzI2<;c4JyrBj^nOgy?XHAL5)Up`}S?2 z<*i${Iy*bt+uJW*yqL@7%EzmvYJbmxfq_6E5R1hCz~}RwK7E?sz9kxshC-o%fq{xW zOiWC8z23RGxkw~Z{M0f#JG->B6bgmjy?b}_=FN)n>L`8)eDvrMhRY({r;0DPa=eF+_*6^GQu|yI@z|j?(XhzI9w70faT?7zRWPpp+kqt$A8PiZ+7=x z|HT!Np21+yU@&B}*&|1eAcS-}T_%$`eE4uM7!;B#DHKDJWICNL2?Br+OsCT%NtTb7 z=SR<4?koH@5DtgKXfy(V(P+GP?;c5#e7qtD4jg#@{{4^fNF*W@_U+qOFkwlCX=Z+^4;+~e*F0G@G#z#>VnB+Dp`dVwGWyMXq59)@st;h a;`uM}Q7ta5NeEN`0000 - - - - + + + + diff --git a/_wii_8h__incl.md5 b/_wii_8h__incl.md5 index 6bc35bec..b796d868 100644 --- a/_wii_8h__incl.md5 +++ b/_wii_8h__incl.md5 @@ -1 +1 @@ -a8d2a81727ce46fe1f181ac702c5895a \ No newline at end of file +bc8787b4f0a06d996d94818acf6bfe3a \ No newline at end of file diff --git a/_wii_8h__incl.png b/_wii_8h__incl.png index b26a29a2815bd0672227892e5f02350f415a3412..896707de891a922a5458f77705c52a16d059cdcf 100644 GIT binary patch literal 12484 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 literal 12949 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 - + + USB Host Shield 2.0: Wii.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- + - - + + + + - + - - + + + + - + - - + + + +
- + - - - + + +
@@ -110,7 +87,9 @@ Variables  

Variable Documentation

- + +

◆ XBOXOLD_BUTTONS

+
@@ -121,7 +100,7 @@ Variables
Initial value:
= {
0x01,
0x08,
0x02,
0x04,
0x20,
0x10,
0x40,
0x80,
4,
5,
6,
7,
1,
0,
2,
3,
}

Buttons on the controllers

-

Definition at line 24 of file XBOXOLD.cpp.

+

Definition at line 24 of file XBOXOLD.cpp.

@@ -130,7 +109,7 @@ Variables diff --git a/_x_b_o_x_o_l_d_8cpp__incl.map b/_x_b_o_x_o_l_d_8cpp__incl.map index cc79d3e0..90c4ed5f 100644 --- a/_x_b_o_x_o_l_d_8cpp__incl.map +++ b/_x_b_o_x_o_l_d_8cpp__incl.map @@ -1,7 +1,7 @@ - + - - - + + + diff --git a/_x_b_o_x_o_l_d_8cpp__incl.md5 b/_x_b_o_x_o_l_d_8cpp__incl.md5 index 4e66fc26..bc962cd7 100644 --- a/_x_b_o_x_o_l_d_8cpp__incl.md5 +++ b/_x_b_o_x_o_l_d_8cpp__incl.md5 @@ -1 +1 @@ -6e170bd84842a4541b9931c43ed0f42c \ No newline at end of file +d14013d39d687e63de1d15795f5252c3 \ No newline at end of file diff --git a/_x_b_o_x_o_l_d_8cpp__incl.png b/_x_b_o_x_o_l_d_8cpp__incl.png index a81a928432848dc752c9e1462804d890baa88d61..e34ce5d2cfd37e117b094327673bebdc54f5bfaf 100644 GIT binary patch literal 13628 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 A - + + USB Host Shield 2.0: XBOXOLD.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- + - - + + + +
- - - - + + + +
@@ -108,7 +85,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -147,7 +124,9 @@ Macros  

Macro Definition Documentation

- + +

◆ EP_MAXPKTSIZE

+
@@ -157,11 +136,13 @@ Macros
-

Definition at line 26 of file XBOXOLD.h.

+

Definition at line 26 of file XBOXOLD.h.

- + +

◆ XBOX_CONTROL_PIPE

+
@@ -171,11 +152,13 @@ Macros
-

Definition at line 29 of file XBOXOLD.h.

+

Definition at line 29 of file XBOXOLD.h.

- + +

◆ XBOX_INPUT_PIPE

+
@@ -185,11 +168,13 @@ Macros
-

Definition at line 30 of file XBOXOLD.h.

+

Definition at line 30 of file XBOXOLD.h.

- + +

◆ XBOX_OUTPUT_PIPE

+
@@ -199,11 +184,13 @@ Macros
-

Definition at line 31 of file XBOXOLD.h.

+

Definition at line 31 of file XBOXOLD.h.

- + +

◆ XBOX_VID

+
@@ -213,11 +200,13 @@ Macros
-

Definition at line 34 of file XBOXOLD.h.

+

Definition at line 34 of file XBOXOLD.h.

- + +

◆ MADCATZ_VID

+
@@ -227,11 +216,13 @@ Macros
-

Definition at line 35 of file XBOXOLD.h.

+

Definition at line 35 of file XBOXOLD.h.

- + +

◆ JOYTECH_VID

+
@@ -241,11 +232,13 @@ Macros
-

Definition at line 36 of file XBOXOLD.h.

+

Definition at line 36 of file XBOXOLD.h.

- + +

◆ XBOX_OLD_PID1

+
@@ -255,11 +248,13 @@ Macros
-

Definition at line 38 of file XBOXOLD.h.

+

Definition at line 38 of file XBOXOLD.h.

- + +

◆ XBOX_OLD_PID2

+
@@ -269,11 +264,13 @@ Macros
-

Definition at line 39 of file XBOXOLD.h.

+

Definition at line 39 of file XBOXOLD.h.

- + +

◆ XBOX_OLD_PID3

+
@@ -283,11 +280,13 @@ Macros
-

Definition at line 40 of file XBOXOLD.h.

+

Definition at line 40 of file XBOXOLD.h.

- + +

◆ XBOX_OLD_PID4

+
@@ -297,11 +296,13 @@ Macros
-

Definition at line 41 of file XBOXOLD.h.

+

Definition at line 41 of file XBOXOLD.h.

- + +

◆ XBOX_MAX_ENDPOINTS

+
@@ -311,7 +312,7 @@ Macros
-

Definition at line 43 of file XBOXOLD.h.

+

Definition at line 43 of file XBOXOLD.h.

@@ -320,7 +321,7 @@ Macros diff --git a/_x_b_o_x_o_l_d_8h__dep__incl.map b/_x_b_o_x_o_l_d_8h__dep__incl.map index 6b34c4a8..5b7d9d15 100644 --- a/_x_b_o_x_o_l_d_8h__dep__incl.map +++ b/_x_b_o_x_o_l_d_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/_x_b_o_x_o_l_d_8h__dep__incl.md5 b/_x_b_o_x_o_l_d_8h__dep__incl.md5 index cc366f2a..5636aca6 100644 --- a/_x_b_o_x_o_l_d_8h__dep__incl.md5 +++ b/_x_b_o_x_o_l_d_8h__dep__incl.md5 @@ -1 +1 @@ -82c0a98cce5027def9ffaed26c3bac43 \ No newline at end of file +40aa5e977625e2239fdc92221cc54178 \ No newline at end of file diff --git a/_x_b_o_x_o_l_d_8h__dep__incl.png b/_x_b_o_x_o_l_d_8h__dep__incl.png index cfb8c228ed8bf81424e4297ac93bb299580cc288..f1981e4545d792093e93427f311775636be4243b 100644 GIT binary patch literal 2907 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 - - - - + + + + diff --git a/_x_b_o_x_o_l_d_8h__incl.md5 b/_x_b_o_x_o_l_d_8h__incl.md5 index 00cfe4cd..4d76a76a 100644 --- a/_x_b_o_x_o_l_d_8h__incl.md5 +++ b/_x_b_o_x_o_l_d_8h__incl.md5 @@ -1 +1 @@ -6f0fa83f2b72b0b7a7795b417af236ee \ No newline at end of file +a5adfa0570ca84123bf5bd39bb76ff4d \ No newline at end of file diff --git a/_x_b_o_x_o_l_d_8h__incl.png b/_x_b_o_x_o_l_d_8h__incl.png index 7f9c416320c2489da2e346d9bf4c8f01831bf428..2f486ac8a50ac3875bc0c4a82881b5ecf1d4cd7d 100644 GIT binary patch literal 13306 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 - + + USB Host Shield 2.0: XBOXOLD.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - - + + + +
@@ -105,7 +82,7 @@ Include dependency graph for XBOXONE.cpp: diff --git a/_x_b_o_x_o_n_e_8cpp__incl.map b/_x_b_o_x_o_n_e_8cpp__incl.map index ffe5640e..c33935c5 100644 --- a/_x_b_o_x_o_n_e_8cpp__incl.map +++ b/_x_b_o_x_o_n_e_8cpp__incl.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/_x_b_o_x_o_n_e_8cpp__incl.md5 b/_x_b_o_x_o_n_e_8cpp__incl.md5 index adfce4de..561c5fc7 100644 --- a/_x_b_o_x_o_n_e_8cpp__incl.md5 +++ b/_x_b_o_x_o_n_e_8cpp__incl.md5 @@ -1 +1 @@ -a31c4a2760319c972359266d1c3ccfe5 \ No newline at end of file +4f538d4414a636d7fa50b4947c386571 \ No newline at end of file diff --git a/_x_b_o_x_o_n_e_8cpp__incl.png b/_x_b_o_x_o_n_e_8cpp__incl.png index 2b11d73fcd3f2b94321db840d6a217fce543d3aa..126a392d73589c746491707f1bc76d95cf6fd875 100644 GIT binary patch literal 9035 zcmch7by(D4oAn4vhagCUfD8iC-Klg6NQX2?OSi;;k|NzI(jYOUbSmvo(%mt1!}qZ7 zySwkVd+q+Y7jrRj{pR^Sao^{h``it1^D9YmW@hyI`g*j{b31g$rgLalBpJOs#g`2v(xBO&%I9Rewbpq_$a}aL zH#awzmV+aH!%WkJ%$EVN`B&w{bkAQpW{7*!8n5iL?SWGj~3LK6Of08(t3KS zV>@{&8Sk^QXk1)f?@bE_+6yRU2obYr7fa~sri@+N+S($|*RqyqZqLx6s+p1D;TTV! zK9wlZuCetB8!6ngJ3m-arXKH4wbQ=HB@nRLllRoaIg936EO>sCH|^eA|t9oGK) zH&#MIf=+`wYg=2}{O)dPipNq{)H)&$KO7@8G&DRSqV?ivz6 zC;@eyK{SJ6;{1GT@I;*}BObL#ICv`ojpy|dFVOsuDe7a}g-;_EIW(l!&mtv?jg5UD z9eoM8(2mAFIHU)8NJ<(Gqwy!r@;!){cN*9t2zkd5~B|4)@dP_G=KqT1nyI>P`-yTY3WMaYuvC&efRdjb88NwdqJW*s_ z>oH#B_3k_5=3FUbVSk6F>s;Yo4IX>Z`T5Tv5{h%@@d~+m=okI0s&cF(BqV)l{P
_vZNtF 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 literal 7498 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 - + + USB Host Shield 2.0: XBOXONE.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - + + +
@@ -106,7 +83,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -169,7 +146,9 @@ Macros  

Macro Definition Documentation

- + +

◆ XBOX_ONE_EP_MAXPKTSIZE

+
@@ -179,11 +158,13 @@ Macros
-

Definition at line 30 of file XBOXONE.h.

+

Definition at line 30 of file XBOXONE.h.

- + +

◆ XBOX_ONE_CONTROL_PIPE

+
@@ -193,11 +174,13 @@ Macros
-

Definition at line 33 of file XBOXONE.h.

+

Definition at line 33 of file XBOXONE.h.

- + +

◆ XBOX_ONE_OUTPUT_PIPE

+
@@ -207,11 +190,13 @@ Macros
-

Definition at line 34 of file XBOXONE.h.

+

Definition at line 34 of file XBOXONE.h.

- + +

◆ XBOX_ONE_INPUT_PIPE

+
@@ -221,11 +206,13 @@ Macros
-

Definition at line 35 of file XBOXONE.h.

+

Definition at line 35 of file XBOXONE.h.

- + +

◆ XBOX_ONE_MAX_ENDPOINTS

+
@@ -235,11 +222,13 @@ Macros
-

Definition at line 37 of file XBOXONE.h.

+

Definition at line 37 of file XBOXONE.h.

- + +

◆ XBOX_VID1

+
@@ -249,11 +238,13 @@ Macros
-

Definition at line 42 of file XBOXONE.h.

+

Definition at line 42 of file XBOXONE.h.

- + +

◆ XBOX_ONE_PID1

+
@@ -263,11 +254,13 @@ Macros
-

Definition at line 43 of file XBOXONE.h.

+

Definition at line 43 of file XBOXONE.h.

- + +

◆ XBOX_ONE_PID2

+
@@ -277,11 +270,13 @@ Macros
-

Definition at line 44 of file XBOXONE.h.

+

Definition at line 44 of file XBOXONE.h.

- + +

◆ XBOX_ONE_PID3

+
@@ -291,11 +286,13 @@ Macros
-

Definition at line 45 of file XBOXONE.h.

+

Definition at line 45 of file XBOXONE.h.

- + +

◆ XBOX_ONE_PID4

+
@@ -305,11 +302,13 @@ Macros
-

Definition at line 46 of file XBOXONE.h.

+

Definition at line 46 of file XBOXONE.h.

- + +

◆ XBOX_ONE_PID13

+
@@ -319,11 +318,13 @@ Macros
-

Definition at line 47 of file XBOXONE.h.

+

Definition at line 47 of file XBOXONE.h.

- + +

◆ XBOX_VID2

+
@@ -333,11 +334,13 @@ Macros
-

Definition at line 50 of file XBOXONE.h.

+

Definition at line 50 of file XBOXONE.h.

- + +

◆ XBOX_VID3

+
@@ -347,11 +350,13 @@ Macros
-

Definition at line 51 of file XBOXONE.h.

+

Definition at line 51 of file XBOXONE.h.

- + +

◆ XBOX_VID4

+
@@ -361,11 +366,13 @@ Macros
-

Definition at line 52 of file XBOXONE.h.

+

Definition at line 52 of file XBOXONE.h.

- + +

◆ XBOX_VID5

+
@@ -375,11 +382,13 @@ Macros
-

Definition at line 53 of file XBOXONE.h.

+

Definition at line 53 of file XBOXONE.h.

- + +

◆ XBOX_VID6

+
@@ -389,11 +398,13 @@ Macros
-

Definition at line 54 of file XBOXONE.h.

+

Definition at line 54 of file XBOXONE.h.

- + +

◆ XBOX_ONE_PID5

+
@@ -403,11 +414,13 @@ Macros
-

Definition at line 56 of file XBOXONE.h.

+

Definition at line 56 of file XBOXONE.h.

- + +

◆ XBOX_ONE_PID6

+
@@ -417,11 +430,13 @@ Macros
-

Definition at line 57 of file XBOXONE.h.

+

Definition at line 57 of file XBOXONE.h.

- + +

◆ XBOX_ONE_PID7

+
@@ -431,11 +446,13 @@ Macros
-

Definition at line 58 of file XBOXONE.h.

+

Definition at line 58 of file XBOXONE.h.

- + +

◆ XBOX_ONE_PID8

+
@@ -445,11 +462,13 @@ Macros
-

Definition at line 59 of file XBOXONE.h.

+

Definition at line 59 of file XBOXONE.h.

- + +

◆ XBOX_ONE_PID9

+
@@ -459,11 +478,13 @@ Macros
-

Definition at line 60 of file XBOXONE.h.

+

Definition at line 60 of file XBOXONE.h.

- + +

◆ XBOX_ONE_PID10

+
@@ -473,11 +494,13 @@ Macros
-

Definition at line 61 of file XBOXONE.h.

+

Definition at line 61 of file XBOXONE.h.

- + +

◆ XBOX_ONE_PID11

+
@@ -487,11 +510,13 @@ Macros
-

Definition at line 62 of file XBOXONE.h.

+

Definition at line 62 of file XBOXONE.h.

- + +

◆ XBOX_ONE_PID12

+
@@ -501,7 +526,7 @@ Macros
-

Definition at line 63 of file XBOXONE.h.

+

Definition at line 63 of file XBOXONE.h.

@@ -510,7 +535,7 @@ Macros diff --git a/_x_b_o_x_o_n_e_8h__dep__incl.map b/_x_b_o_x_o_n_e_8h__dep__incl.map index eb200c31..d0f2f8e3 100644 --- a/_x_b_o_x_o_n_e_8h__dep__incl.map +++ b/_x_b_o_x_o_n_e_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/_x_b_o_x_o_n_e_8h__dep__incl.md5 b/_x_b_o_x_o_n_e_8h__dep__incl.md5 index c13f788f..138afee0 100644 --- a/_x_b_o_x_o_n_e_8h__dep__incl.md5 +++ b/_x_b_o_x_o_n_e_8h__dep__incl.md5 @@ -1 +1 @@ -fd61d6c8f3280fcb7695abf658ecef71 \ No newline at end of file +62b27de5bf2e11b4776c6317ba9ba67c \ No newline at end of file diff --git a/_x_b_o_x_o_n_e_8h__dep__incl.png b/_x_b_o_x_o_n_e_8h__dep__incl.png index 3f0b18426115fdb1e9d46a8ad0c143f45f993748..1e211b9d06ae706fcf7ab5d30d1e8ca2acdd4e92 100644 GIT binary patch literal 2875 zcmb`J`8$;BAIBe3xklNGEMs3HRI+EA8OvD4ntj)|86p*GW-O@_8X^+H7-WPjV~^$x z#Rf#T7Q*-Goa=k8^9OwI=X##|hx>Z&<#T`D@7IUmh_X5gk$?aIa1?2c za0dHW@V&~*4SrqPe|rdahk|Ua5WxPgrV8bPQEFMe!ugPUWLpWM{oGZ@# zB9W{_iVQ9hLn^Pqp$CMQ^;t_G4oSwq8ZW~GZ^VS0<# z6R27kuI>8ur%Kvg!8RhYugl zvvc$E>LX?u2m*p4A~PIL^v@qFMS09d^q{b?uv@K9UO~Z*HqI_!6|u0iq?JV_H&#Bq?(MY(%>4cR-Q9DGii(g>Q_~Is8I#kqP0AVloTp?m zb8O5QyZrKZCYLq_?dsx^m7U#;9wgc3YR2tuM=PFv9Duf02?-D9tYBvuNZl(RtgrC# za3{jJfFHxs+PVEo4umFynj>q=%i|6I>Ce+fUm76N9REi~rTY4MqnqD&0DS`k0zy8` zGWelY=`aru&tH2ESYH_9;^MM;0M*&LDgQ;Tq%hN3ksELnJL48$k9T)>$Kzl4XcnCb zwuHet2_h;LZxa>y`T48dDOVyQmcD&E1f240P}I}Q4ZV2v>hkvb7cdDJ26+dN`cebm zCa97U5-BMumS;|~qDAVIjWsmF`yQPHwQv}y_NB7M#@5&7M`tI$eY;YKDj%IUxwRKN zKcZCcaY_`z1+1*B7#3<87e%R0V=_>=brYb{wo=9%lWR52~#v9vl^r(oc|CJPSYnzPVc^e&fzBI{+127sV4W&--#jD4=R2 zIq5zeZrQ)vt;m{`(m8kTXHE3|M=ZAk$z3bogSKu@3LfTX(GUd`xwNiF7&anhRU9u{fb^PyuO z5_qPxYlAE%%6!Ncge_Qkzv?F6j9RO3T}tcTm!7v&__;c`xwvSIsggLUt4ym~Zll{D zc+f+O*)({Dw@gk$4h~Y31S0R0luZAOmGlk_LvHVE7Dh~B-YhZwI#}&7n+K7|(ykox z)Qbz~2nUxsn(@*=A-bcT

Z>5;0Y)EslX&iyzT#=^Vcw)%>ESjKc@4Io$U0rZN{= z{C!3$PQV{n=5760F?Dh(neEx$)&*X!&6Ak?uU?VPWd;jWK^N1_g+(X;(9j_4D0WsN z>=N#T!{4D#C{qCbvFLx_$^T(9L4(f_7EuaXq9_qjKT$>uqm z#~>$KZohB7d<%JIUzAZcqw}x45U*bo)AF->e7dB#I3cX<<`U_*-{5g^#y|qxTv52j zzk{@mSE2cJ#B6>W8gfLV=h`CYpeC_cEOtBym1Gu#$kM(L8L7Qha9YaH((peUXF5>H zIpZC-IuP>1^HGAGBob6W-~p5A8YBi3KYjX?M%!JT8&t~<-TS%qh(2_s-2ykye>R(ad9RlCZJpWQY$ZD zZDS)$K#=W4=9&16m+4WwfxfMxT)Q6=$9>3`&Kl#Zv)%*;@!RJx*tg~cEJ&CkQxx~ET@ zu`$EPE|19F1!H&+$VdeYUV^^U5x2u)v)SY0s@XQ#HcEFhuvJcIbUE_j!a^tk(U~zC zBwNy4S&5Vt^l6Vhk&jdX5C3rC$I8sBSFhIB*F&4}lfUC2iFfQ8!rnE2fh~6^0@Dl8*udD>S5-9r z=Z|58;cCbcn7Ft&c5XmAXa~%o#Kgqq{gJUyosjOSsiKzQC#o#6KMj9DRn+am1p`CF zNm@*} zm)hCY^=2>`0Zk$@ZZn0vy}XD-V()XI{I~E_3MInHNvMAJ(`&wNf{X#ZI;v%xV3&(4 zD=X{jPOGY7IDOg2BhMbr$Gl-MX0Nxge9ro{UM(pvKMbpIRfEG|%+P2!ysI;jPcLH9 z&c^?DY`tY^WlhadUS2TyO~Yp>8S$LHVRW0kkaxbHG(vyO=HY~9Mprx#z<%9 zhdODcfNif)w&7wsgCz3XHL(s|sQe4PrL6O?Mt#!KI4 r>CEHaySIZ24pIJM$lreT@)lQ!C-vi!mCa?a8U~OSC`2tR;Ld*m9~x}` literal 2570 zcmbuBc{tSDAIIIYMb<2Z$S#BsGqNvZ(iq#MOa_e_GNQ3$W=y8CC3kF-G$$N4C816_yy5H`7e#`Uw{rUTx=bX>;ob%5)pZDkedQO@r+*LwMNlZXM zK;jJ4*&E0NU|tv92dwpZ&`}@>qtCiJ3w--NetKR`6%aVUI^*nsz!$DOLctFCDc=eS zMU4je=`kD=ABsXKqj%-Alk~JCwEcsaKfem7D3x=GBO%gzb&1 zC=|-k@g+y$(}@xeS4MC>A6uA{laqXYW2FS4KgCY^s-*Jj6zC`Hb$d=76bAEWwiRQq zLnS{jm}fUC!>gG`tW)mKbu@N(|b z(hJMeR#rqJ5ng0Vi43bpGJGe7hjHA|6OyUXd%FZ{TT@ewyndm54zb^(-u_rmf4}mP zBgIM-{USY06O&(>nrM~Km2l>%I7{GdWHLF~5%+cb)9hcNY#E`K>jrE_N!}|_S65G! zJWBlZL0+|@vU0pJvgm>#rfw|U;-aBKIh{WJJU%bXypl90ZAz=Es90W^XcT`8#bU8U zVlz}L$F0oC$w^!_#Ax~>M@B|wY-~&{*|FFYTK0Nv?RvT3!FDz#+TDGC?q0A44G9VH z_Lc>^YRSglxZzEKP&4boM)aHf6V~TkTBcfm@w1NKtYR{mWo6nH7QPH$<8bLbJR@*k zG}(~?X%8|f%-1APJJIJ5h?yE)9UYL0B-l(#>oOXBC(L}CR0!P6)z$UKAd3pJ* zoC60BswgYZuj8E;cRusTTeBjS!%O@F8Ang++_0T`roUb39&TJ#y;t z_Ab6Il}X?)ZmvwYm3bF?PBIB^uDm%YCYA%$vazw*qT3$}jf~XQon(>8-5Ey_rNax< zOQy8sjP{y zdvOs%fdpF=3}EUYrB|TM|eMYRM26I)aq6yCMCs+ zS(Y6MHR7WlJR^Tg*j*A_-Qafak9}`N1jI%nm9`Ff7ui=JqM9aCQc?(Jvmr5nO=fOY zxBc6FOG+xLqz8npwb_!~+4dhZGGsY6i$6psx@M}Lqy_Aq7&(7SSV-H9rhXRHr5F_* zJvF@afP1Br$C64)?iCX=Ka0BCy%oTU2-`mNjf3IW@)WlpVhaX_$G7bS9dvYTziv)E zDKqLeBeCm!Cw7MHd<7jI!dP_rAc3DJZ@buBTTAWTaFXtbh}+%e_h+h==QV3ct!Z-< z`eWi-1|z;r(iy%x#;gs)YiCqv&sI;2H}~2}dC6T1C$%Ph!rwD)iU=pIzW@AA++DJp zUBlYU$TTiBxVN$OBX=FwU+P-(aq~!&bbD4q!)lp+uMep!7RwdS!%@0I#_taO+8W3E z!v2w8HcX?@?Dh`ta%&FcwHR8G+CTkH_K3OB+U1W*!I-=%O8BrZ@b$hm369;~mhQ;A zgqE9-Qi5%n&JgaQ8Fd^_a_JG3w6I}nJ$p3q=KZ%r>e&vRTf?Mmig#C$a$PfC9-OH**b?khY zPRrEl;EKLFzr^R_L(8}DLk)VEq2@~Eq96aOJu*>h;3zEsmMUPv9}B~!t}=oS z-#UkejLppv8rfMM#271-o0}Lw?Ai;*j~}0!n%XFBVs`_W1%tXE~TXQG+_ z+g&!L!F1}81Mi|lgoS^Gl=gMMkrvE`YH_Mjnu-vWo72Z{{XiBq2G7-E54IEI@rWq{|yR|Ro(^>}2JOQj}uJ2^V`cbx@x#WFK?# z^OA!41im&kY}e&qCd5Oi>%@B@yxb1hs3rQ^Xqr%%g=ZV3tGc9 z+OoZqdj;9q4yTmdTi@K?AbwpODA3i_mGL0^aYW`TCpw+p5I*+$ z?c1ct>6W<2Rf1^BC4k*7E-o!`ye>;XNRUbflA$wb08)XI$#x^5h%X%rz1pbfM0qkS zw?8gqVDtAzBmZBsva(D-pryAp)SR5P*24Su5&r%#weoK9YBMvlcTr$)4wV|cwRS0d zlYGvi;8A|Q+uoPak&)cOLKW%naZENXfQfgo%kL+l|5!j_Fc@bInK=kcC&0tQLs3B? zB{fwpD6+ q!8hM@>GDwA(iaI5lK - - - + + + diff --git a/_x_b_o_x_o_n_e_8h__incl.md5 b/_x_b_o_x_o_n_e_8h__incl.md5 index 14781353..77d2358c 100644 --- a/_x_b_o_x_o_n_e_8h__incl.md5 +++ b/_x_b_o_x_o_n_e_8h__incl.md5 @@ -1 +1 @@ -0dde0ce6aa02e651aff1df3147ecf48a \ No newline at end of file +2a496eec75d3a13d8c9db56169dc7730 \ No newline at end of file diff --git a/_x_b_o_x_o_n_e_8h__incl.png b/_x_b_o_x_o_n_e_8h__incl.png index 0f51394d60f3b68d2499945ccc5e3d78412b932a..74db3b63391d3e03a655a519d0b186f7a062838b 100644 GIT binary patch literal 6994 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 literal 6495 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 diff --git a/_x_b_o_x_o_n_e_8h_source.html b/_x_b_o_x_o_n_e_8h_source.html index 1527a8bd..19824e9c 100644 --- a/_x_b_o_x_o_n_e_8h_source.html +++ b/_x_b_o_x_o_n_e_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: XBOXONE.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + -

- + + + + - + - - + + + +
- - + + - - - - - + + + + +
@@ -118,7 +95,7 @@ Classes diff --git a/_x_b_o_x_o_n_e_s_b_t_8h__incl.map b/_x_b_o_x_o_n_e_s_b_t_8h__incl.map index af16788e..fc0f041d 100644 --- a/_x_b_o_x_o_n_e_s_b_t_8h__incl.map +++ b/_x_b_o_x_o_n_e_s_b_t_8h__incl.map @@ -1,10 +1,10 @@ - - + + - - - - - + + + + + diff --git a/_x_b_o_x_o_n_e_s_b_t_8h__incl.md5 b/_x_b_o_x_o_n_e_s_b_t_8h__incl.md5 index 438ec367..bcdea021 100644 --- a/_x_b_o_x_o_n_e_s_b_t_8h__incl.md5 +++ b/_x_b_o_x_o_n_e_s_b_t_8h__incl.md5 @@ -1 +1 @@ -93ae8d9e86736b483d76f436b3f06b8a \ No newline at end of file +e389b3d40dbf2d8df1d6978c89be27e1 \ No newline at end of file diff --git a/_x_b_o_x_o_n_e_s_b_t_8h__incl.png b/_x_b_o_x_o_n_e_s_b_t_8h__incl.png index ea802f4048f2645b3b86c7f020bbcb40e63ac547..ce4a8fe8e1d82e8031dd22087ac91c55fb547514 100644 GIT binary patch literal 27110 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

sEONR?L0*>&h0wYe6zDfX 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 - + + USB Host Shield 2.0: XBOXONESBT.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + -

- + + + + - + - - + + + +
- - - + + +
@@ -138,7 +115,9 @@ Variables  

Enumeration Type Documentation

- + +

◆ DPADEnum

+
@@ -148,50 +127,34 @@ Variables
- - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + +
Enumerator
DPAD_UP  -
DPAD_UP_RIGHT  -
DPAD_RIGHT  -
DPAD_RIGHT_DOWN  -
DPAD_DOWN  -
DPAD_DOWN_LEFT  -
DPAD_LEFT  -
DPAD_LEFT_UP  -
DPAD_OFF  -
DPAD_OFF  -
DPAD_UP  -
DPAD_UP_RIGHT  -
DPAD_RIGHT  -
DPAD_RIGHT_DOWN  -
DPAD_DOWN  -
DPAD_DOWN_LEFT  -
DPAD_LEFT  -
DPAD_LEFT_UP  -
Enumerator
DPAD_UP 
DPAD_UP_RIGHT 
DPAD_RIGHT 
DPAD_RIGHT_DOWN 
DPAD_DOWN 
DPAD_DOWN_LEFT 
DPAD_LEFT 
DPAD_LEFT_UP 
DPAD_OFF 
DPAD_OFF 
DPAD_UP 
DPAD_UP_RIGHT 
DPAD_RIGHT 
DPAD_RIGHT_DOWN 
DPAD_DOWN 
DPAD_DOWN_LEFT 
DPAD_LEFT 
DPAD_LEFT_UP 
-

Definition at line 45 of file XBOXONESParser.cpp.

+

Definition at line 45 of file XBOXONESParser.cpp.

Variable Documentation

- + +

◆ XBOX_ONE_S_BUTTONS

+
@@ -206,7 +169,7 @@ Variables

Buttons on the controller

-

Definition at line 24 of file XBOXONESParser.cpp.

+

Definition at line 24 of file XBOXONESParser.cpp.

@@ -215,7 +178,7 @@ Variables diff --git a/_x_b_o_x_o_n_e_s_parser_8cpp__incl.map b/_x_b_o_x_o_n_e_s_parser_8cpp__incl.map index 808b36c2..56c293db 100644 --- a/_x_b_o_x_o_n_e_s_parser_8cpp__incl.map +++ b/_x_b_o_x_o_n_e_s_parser_8cpp__incl.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/_x_b_o_x_o_n_e_s_parser_8cpp__incl.md5 b/_x_b_o_x_o_n_e_s_parser_8cpp__incl.md5 index 26b8e571..39ca97fe 100644 --- a/_x_b_o_x_o_n_e_s_parser_8cpp__incl.md5 +++ b/_x_b_o_x_o_n_e_s_parser_8cpp__incl.md5 @@ -1 +1 @@ -13b8de04793db6abb3033117443283af \ No newline at end of file +2cd1b59752bd095b43616905e1e210d0 \ No newline at end of file diff --git a/_x_b_o_x_o_n_e_s_parser_8cpp__incl.png b/_x_b_o_x_o_n_e_s_parser_8cpp__incl.png index 4c0bd1e64b766baa4c2d2310796e2d7cae890768..7a8177f948aa4e5392b88b5feb8fc08ed270ceba 100644 GIT binary patch literal 8855 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 literal 8153 zcmd6Mg^Syt-2fup;X7;`Bz4ujXtt&u5P7(*31RDZ@;7Ch}{R7_Dz*UF&0KD3i4N-u% z2Zl0|VvyUr-;{=|Zx9GPR9Z|}+4;xztc$YJ_yzZ#4KzFjo#X3Q+5QnCMsl@=MBgb* zIx%MS(LkPo6szqD)hNRXP4SEh)sjHf`(iD6dQLzjm^xs#hH9Zf*>K|VwfTl8ts-PzIGTg>C`^i+1VLd=ZE1X@*=&<$~gb_#`*Lo^2zk<%r}Ku zO;;|WLS8_;Zmutl#_~1Rey96OTxaL%waw0wSzBAHS6P!e^CxL*fk}8A{ste}m{@en z$jFp@y7m0Q_YwE}{QUiRA=$<0ZrJ{EXIn>ycq)#Pl2Ua|jls>;IU52orr#Gi_BPLL zFeQaN2sW?tE+rPcfscC5`IXIw1L`0Z4IMFeyD=Ye4 zkuOYtA^vM(7vomLY*Q4x~9*<=dPH!CNLj(dbI6N$xC6~zNxTfIi@6VVx z-`a})`Sa&$_j3*iIUnB(MzuoUtSmZ-5Rxwo3;O(SC$hXvb#;78OG|8aOJdH>&JakU zPMx1dnW@3q-s0ZzamVj;$;?Ae)ZS)MQ|rJ09$18Wlczv;Pmf9^oeUF^(RiWG-u`~e zcXlJ&g=VyxT6T7JVs2|vegT0JmqXL9Vw5300sIBYK2wvE20Jq~>J=7GRSPt~oFA^X zp->X*^}+1?9v4q8Pquy1)6*R{f@?IV#*;(v~Xg$1nA+?T+ec?jco#_#It!hH0ot92!vUuqqe5-4z%b3LKQX z*nF6FYrY8%9M1laTA{YEu`#vN&P+glKGW88RgvzWm8Xf?)FcQ?;-jM@ec)L~SAD>R zf!prw?KS&i5r&6{djTIbKQA*I&^IthRT!9=(Y7A=M@=YxtcV?Kf`^Zfih&`w-y}Cc z<3xpuhlkk7$q5q=&mWjb@O*{v>gsTSo|#!?O4Y!C!t-qL;bT%Be8^r8Yg6;&~4<*y41OL zS7&x?C~!iy8zV0tzd*nB`^XmMN{rw<0&+FGOqk2%QWNDkoxTvGbkz2V{E602#1v9a+2SRMo-sCV<}!?s(hT9IyufZK`w>CP+&c$D}3 zM{Hnz$QxZ<*iYFwO72hFLHfBn1^oj9l2z8T8%(=X6?sQCA3l5lOB~7jQJ;2<;c>P{ z;j}gJ8SZ(87R=71S&r#(ar8McF>&ae54nLMBqS6J7t-bJ8y$W6>E@j7r(7Zf_ig|o zU51*t%5l2%^%OAr-l&?M!JqEvv-PZGlKLx<@NjW))r-~G4JE<97sC%jULCc=(JuOZ`!R5Qb0z#sywe<)ipG7g3DN9 zVq$)EbqRwVg4Fc)Z|mHg?#0LL^ry%>lfaf#m6i2Jb5(}g7{RXYR!>1eflNw>j*22j zAc(-(M9CeVo^~#_`4c>Q=AR{>ytF=?^))D{ErLpNVRyHv5{^9HG_*097YIuQEjli)CwOo{Uv;Jj z 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 - + + USB Host Shield 2.0: XBOXONESParser.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
ButtonEnum
#define PSTR(str)
-
#define MFK_CASTUINT8T
Definition: settings.h:196
+
#define MFK_CASTUINT8T
Definition: settings.h:194
const uint8_t XBOX_ONE_S_BUTTONS[]
@@ -126,7 +103,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/_x_b_o_x_o_n_e_s_parser_8h.html b/_x_b_o_x_o_n_e_s_parser_8h.html index db32fc61..75c66826 100644 --- a/_x_b_o_x_o_n_e_s_parser_8h.html +++ b/_x_b_o_x_o_n_e_s_parser_8h.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: XBOXONESParser.h File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + +
- - + +
@@ -104,8 +81,8 @@ This graph shows which files directly or indirectly include this file:
- - + +
@@ -125,7 +102,7 @@ Classes diff --git a/_x_b_o_x_o_n_e_s_parser_8h__dep__incl.map b/_x_b_o_x_o_n_e_s_parser_8h__dep__incl.map index 19df4c37..68deb462 100644 --- a/_x_b_o_x_o_n_e_s_parser_8h__dep__incl.map +++ b/_x_b_o_x_o_n_e_s_parser_8h__dep__incl.map @@ -1,4 +1,4 @@ - - + + diff --git a/_x_b_o_x_o_n_e_s_parser_8h__dep__incl.md5 b/_x_b_o_x_o_n_e_s_parser_8h__dep__incl.md5 index bc96dc0e..1f30a759 100644 --- a/_x_b_o_x_o_n_e_s_parser_8h__dep__incl.md5 +++ b/_x_b_o_x_o_n_e_s_parser_8h__dep__incl.md5 @@ -1 +1 @@ -2fa9bb92b71bd9cdab65f8c86258361f \ No newline at end of file +6383e2808a863ad4f39a9c6a65aa310a \ No newline at end of file diff --git a/_x_b_o_x_o_n_e_s_parser_8h__dep__incl.png b/_x_b_o_x_o_n_e_s_parser_8h__dep__incl.png index f2d0d648a495eb7b8ca64986f1065c8745ab765a..3fefcfe6fa5aec1f9b5bec2e92ce8386ef06bcbd 100644 GIT binary patch literal 6267 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 nDy|>@EB^oWq@h@L4~_XRY=7Ja literal 6137 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 y3=E>C3)9;cW~1A!J3)$2*O>ofi~nm}|3 - - + + diff --git a/_x_b_o_x_o_n_e_s_parser_8h__incl.md5 b/_x_b_o_x_o_n_e_s_parser_8h__incl.md5 index ef566f13..bda88880 100644 --- a/_x_b_o_x_o_n_e_s_parser_8h__incl.md5 +++ b/_x_b_o_x_o_n_e_s_parser_8h__incl.md5 @@ -1 +1 @@ -f726eecac58f6cf4c79697a592dc61db \ No newline at end of file +0bbedfc0106560aed16828d155495a03 \ No newline at end of file diff --git a/_x_b_o_x_o_n_e_s_parser_8h__incl.png b/_x_b_o_x_o_n_e_s_parser_8h__incl.png index cfa9409712b195161c454b7d90e4a1b916aa9359..ff44b4bba118facf9f720fd2fc06b1752bbf2278 100644 GIT binary patch literal 6092 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 JLe@0+e*lAKzI^}y literal 5161 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 g - + + USB Host Shield 2.0: XBOXONESParser.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - - + + + +
@@ -105,7 +82,7 @@ Include dependency graph for XBOXRECV.cpp: diff --git a/_x_b_o_x_r_e_c_v_8cpp__incl.map b/_x_b_o_x_r_e_c_v_8cpp__incl.map index eec4ecc3..b09e01b4 100644 --- a/_x_b_o_x_r_e_c_v_8cpp__incl.map +++ b/_x_b_o_x_r_e_c_v_8cpp__incl.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/_x_b_o_x_r_e_c_v_8cpp__incl.md5 b/_x_b_o_x_r_e_c_v_8cpp__incl.md5 index b0488834..e9c2cced 100644 --- a/_x_b_o_x_r_e_c_v_8cpp__incl.md5 +++ b/_x_b_o_x_r_e_c_v_8cpp__incl.md5 @@ -1 +1 @@ -afd0356fb2e414737dbcea38c7c8282b \ No newline at end of file +6ca63669978b108ea8fd430b01be5e9e \ No newline at end of file diff --git a/_x_b_o_x_r_e_c_v_8cpp__incl.png b/_x_b_o_x_r_e_c_v_8cpp__incl.png index c5fd77b577fe6bb656d7ca49f508f58f4015e8b5..4a14c39ea4d196725ea5ff43ae4c99392ee17c3e 100644 GIT binary patch literal 9799 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 E0q**)tN;K2 diff --git a/_x_b_o_x_r_e_c_v_8cpp_source.html b/_x_b_o_x_r_e_c_v_8cpp_source.html index b1a699f7..47090f9b 100644 --- a/_x_b_o_x_r_e_c_v_8cpp_source.html +++ b/_x_b_o_x_r_e_c_v_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: XBOXRECV.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - + + +
@@ -106,7 +83,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -153,7 +130,9 @@ Macros  

Macro Definition Documentation

- + +

◆ EP_MAXPKTSIZE

+
@@ -163,11 +142,13 @@ Macros
-

Definition at line 27 of file XBOXRECV.h.

+

Definition at line 27 of file XBOXRECV.h.

- + +

◆ XBOX_CONTROL_PIPE

+
@@ -177,11 +158,13 @@ Macros
-

Definition at line 30 of file XBOXRECV.h.

+

Definition at line 30 of file XBOXRECV.h.

- + +

◆ XBOX_INPUT_PIPE_1

+
@@ -191,11 +174,13 @@ Macros
-

Definition at line 31 of file XBOXRECV.h.

+

Definition at line 31 of file XBOXRECV.h.

- + +

◆ XBOX_OUTPUT_PIPE_1

+
@@ -205,11 +190,13 @@ Macros
-

Definition at line 32 of file XBOXRECV.h.

+

Definition at line 32 of file XBOXRECV.h.

- + +

◆ XBOX_INPUT_PIPE_2

+
@@ -219,11 +206,13 @@ Macros
-

Definition at line 33 of file XBOXRECV.h.

+

Definition at line 33 of file XBOXRECV.h.

- + +

◆ XBOX_OUTPUT_PIPE_2

+
@@ -233,11 +222,13 @@ Macros
-

Definition at line 34 of file XBOXRECV.h.

+

Definition at line 34 of file XBOXRECV.h.

- + +

◆ XBOX_INPUT_PIPE_3

+
@@ -247,11 +238,13 @@ Macros
-

Definition at line 35 of file XBOXRECV.h.

+

Definition at line 35 of file XBOXRECV.h.

- + +

◆ XBOX_OUTPUT_PIPE_3

+
@@ -261,11 +254,13 @@ Macros
-

Definition at line 36 of file XBOXRECV.h.

+

Definition at line 36 of file XBOXRECV.h.

- + +

◆ XBOX_INPUT_PIPE_4

+
@@ -275,11 +270,13 @@ Macros
-

Definition at line 37 of file XBOXRECV.h.

+

Definition at line 37 of file XBOXRECV.h.

- + +

◆ XBOX_OUTPUT_PIPE_4

+
@@ -289,11 +286,13 @@ Macros
-

Definition at line 38 of file XBOXRECV.h.

+

Definition at line 38 of file XBOXRECV.h.

- + +

◆ XBOX_VID

+
@@ -303,11 +302,13 @@ Macros
-

Definition at line 41 of file XBOXRECV.h.

+

Definition at line 41 of file XBOXRECV.h.

- + +

◆ MADCATZ_VID

+
@@ -317,11 +318,13 @@ Macros
-

Definition at line 42 of file XBOXRECV.h.

+

Definition at line 42 of file XBOXRECV.h.

- + +

◆ JOYTECH_VID

+
@@ -331,11 +334,13 @@ Macros
-

Definition at line 43 of file XBOXRECV.h.

+

Definition at line 43 of file XBOXRECV.h.

- + +

◆ XBOX_WIRELESS_RECEIVER_PID

+
@@ -345,11 +350,13 @@ Macros
-

Definition at line 45 of file XBOXRECV.h.

+

Definition at line 45 of file XBOXRECV.h.

- + +

◆ XBOX_WIRELESS_RECEIVER_THIRD_PARTY_PID

+
@@ -359,11 +366,13 @@ Macros
-

Definition at line 46 of file XBOXRECV.h.

+

Definition at line 46 of file XBOXRECV.h.

- + +

◆ XBOX_MAX_ENDPOINTS

+
@@ -373,7 +382,7 @@ Macros
-

Definition at line 48 of file XBOXRECV.h.

+

Definition at line 48 of file XBOXRECV.h.

@@ -382,7 +391,7 @@ Macros diff --git a/_x_b_o_x_r_e_c_v_8h__dep__incl.map b/_x_b_o_x_r_e_c_v_8h__dep__incl.map index d385722e..a5db4122 100644 --- a/_x_b_o_x_r_e_c_v_8h__dep__incl.map +++ b/_x_b_o_x_r_e_c_v_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/_x_b_o_x_r_e_c_v_8h__dep__incl.md5 b/_x_b_o_x_r_e_c_v_8h__dep__incl.md5 index 10cd6192..ca6d54fe 100644 --- a/_x_b_o_x_r_e_c_v_8h__dep__incl.md5 +++ b/_x_b_o_x_r_e_c_v_8h__dep__incl.md5 @@ -1 +1 @@ -1b17ab2dd30a29c1f644e03c41d46777 \ No newline at end of file +c63f097fed6791ddd934ab2f88d1fc85 \ No newline at end of file diff --git a/_x_b_o_x_r_e_c_v_8h__dep__incl.png b/_x_b_o_x_r_e_c_v_8h__dep__incl.png index 1c8a97f5099cad09052d208b85646edb0ea989ff..1d3dd779acdfff987ea5c65de3a8bcfcc00914e8 100644 GIT binary patch literal 3632 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 PtpqNdw=k+Sz{mX?N@eZn literal 3111 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 diff --git a/_x_b_o_x_r_e_c_v_8h__incl.map b/_x_b_o_x_r_e_c_v_8h__incl.map index 17cebabe..4f2cc8c8 100644 --- a/_x_b_o_x_r_e_c_v_8h__incl.map +++ b/_x_b_o_x_r_e_c_v_8h__incl.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/_x_b_o_x_r_e_c_v_8h__incl.md5 b/_x_b_o_x_r_e_c_v_8h__incl.md5 index e4e3f6bf..63f0f207 100644 --- a/_x_b_o_x_r_e_c_v_8h__incl.md5 +++ b/_x_b_o_x_r_e_c_v_8h__incl.md5 @@ -1 +1 @@ -b243ba8a771536bf11d1fde69b3f7cff \ No newline at end of file +78db048a5c5881107b171aa2f31c9649 \ No newline at end of file diff --git a/_x_b_o_x_r_e_c_v_8h__incl.png b/_x_b_o_x_r_e_c_v_8h__incl.png index 2511b7aed7a7ff49b853877f24ff1905c9d8ec38..35e99362208ea4ba35361e1a5cbf7f38503d56f2 100644 GIT binary patch literal 7439 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 - + + USB Host Shield 2.0: XBOXRECV.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - - - - + + + + + +
@@ -107,7 +84,7 @@ Include dependency graph for XBOXUSB.cpp: diff --git a/_x_b_o_x_u_s_b_8cpp__incl.map b/_x_b_o_x_u_s_b_8cpp__incl.map index ab21819a..7fbe80d1 100644 --- a/_x_b_o_x_u_s_b_8cpp__incl.map +++ b/_x_b_o_x_u_s_b_8cpp__incl.map @@ -1,8 +1,8 @@ - - - - - - + + + + + + diff --git a/_x_b_o_x_u_s_b_8cpp__incl.md5 b/_x_b_o_x_u_s_b_8cpp__incl.md5 index 56fff921..d4f8925b 100644 --- a/_x_b_o_x_u_s_b_8cpp__incl.md5 +++ b/_x_b_o_x_u_s_b_8cpp__incl.md5 @@ -1 +1 @@ -c0796622753a276d2229e35ba1e7b14a \ No newline at end of file +807e2c62bb3b87c5cd4d582d24faff91 \ No newline at end of file diff --git a/_x_b_o_x_u_s_b_8cpp__incl.png b/_x_b_o_x_u_s_b_8cpp__incl.png index 2dc359a11471d717248db6d19f44b51218631a51..2a6d9909f014226cf8e392980c25a291df701fcb 100644 GIT binary patch literal 15608 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 diff --git a/_x_b_o_x_u_s_b_8cpp_source.html b/_x_b_o_x_u_s_b_8cpp_source.html index 3d6f5c79..848b025e 100644 --- a/_x_b_o_x_u_s_b_8cpp_source.html +++ b/_x_b_o_x_u_s_b_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: XBOXUSB.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - - - + + + + +
@@ -109,7 +86,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -160,7 +137,9 @@ Macros  

Macro Definition Documentation

- + +

◆ EP_MAXPKTSIZE

+
@@ -170,11 +149,13 @@ Macros
-

Definition at line 26 of file XBOXUSB.h.

+

Definition at line 26 of file XBOXUSB.h.

- + +

◆ XBOX_CONTROL_PIPE

+
@@ -184,11 +165,13 @@ Macros
-

Definition at line 29 of file XBOXUSB.h.

+

Definition at line 29 of file XBOXUSB.h.

- + +

◆ XBOX_INPUT_PIPE

+
@@ -198,11 +181,13 @@ Macros
-

Definition at line 30 of file XBOXUSB.h.

+

Definition at line 30 of file XBOXUSB.h.

- + +

◆ XBOX_OUTPUT_PIPE

+
@@ -212,11 +197,13 @@ Macros
-

Definition at line 31 of file XBOXUSB.h.

+

Definition at line 31 of file XBOXUSB.h.

- + +

◆ XBOX_VID

+
@@ -226,11 +213,13 @@ Macros
-

Definition at line 34 of file XBOXUSB.h.

+

Definition at line 34 of file XBOXUSB.h.

- + +

◆ MADCATZ_VID

+
@@ -240,11 +229,13 @@ Macros
-

Definition at line 35 of file XBOXUSB.h.

+

Definition at line 35 of file XBOXUSB.h.

- + +

◆ JOYTECH_VID

+
@@ -254,11 +245,13 @@ Macros
-

Definition at line 36 of file XBOXUSB.h.

+

Definition at line 36 of file XBOXUSB.h.

- + +

◆ GAMESTOP_VID

+
@@ -268,11 +261,13 @@ Macros
-

Definition at line 37 of file XBOXUSB.h.

+

Definition at line 37 of file XBOXUSB.h.

- + +

◆ XBOX_WIRED_PID

+
@@ -282,11 +277,13 @@ Macros
-

Definition at line 39 of file XBOXUSB.h.

+

Definition at line 39 of file XBOXUSB.h.

- + +

◆ XBOX_WIRELESS_PID

+
@@ -296,11 +293,13 @@ Macros
-

Definition at line 40 of file XBOXUSB.h.

+

Definition at line 40 of file XBOXUSB.h.

- + +

◆ XBOX_WIRELESS_RECEIVER_PID

+
@@ -310,11 +309,13 @@ Macros
-

Definition at line 41 of file XBOXUSB.h.

+

Definition at line 41 of file XBOXUSB.h.

- + +

◆ XBOX_WIRELESS_RECEIVER_THIRD_PARTY_PID

+
@@ -324,11 +325,13 @@ Macros
-

Definition at line 42 of file XBOXUSB.h.

+

Definition at line 42 of file XBOXUSB.h.

- + +

◆ MADCATZ_WIRED_PID

+
@@ -338,11 +341,13 @@ Macros
-

Definition at line 43 of file XBOXUSB.h.

+

Definition at line 43 of file XBOXUSB.h.

- + +

◆ JOYTECH_WIRED_PID

+
@@ -352,11 +357,13 @@ Macros
-

Definition at line 44 of file XBOXUSB.h.

+

Definition at line 44 of file XBOXUSB.h.

- + +

◆ GAMESTOP_WIRED_PID

+
@@ -366,11 +373,13 @@ Macros
-

Definition at line 45 of file XBOXUSB.h.

+

Definition at line 45 of file XBOXUSB.h.

- + +

◆ AFTERGLOW_WIRED_PID

+
@@ -380,11 +389,13 @@ Macros
-

Definition at line 46 of file XBOXUSB.h.

+

Definition at line 46 of file XBOXUSB.h.

- + +

◆ XBOX_REPORT_BUFFER_SIZE

+
@@ -394,11 +405,13 @@ Macros
-

Definition at line 48 of file XBOXUSB.h.

+

Definition at line 48 of file XBOXUSB.h.

- + +

◆ XBOX_MAX_ENDPOINTS

+
@@ -408,7 +421,7 @@ Macros
-

Definition at line 50 of file XBOXUSB.h.

+

Definition at line 50 of file XBOXUSB.h.

@@ -417,7 +430,7 @@ Macros diff --git a/_x_b_o_x_u_s_b_8h__dep__incl.map b/_x_b_o_x_u_s_b_8h__dep__incl.map index 97a167a3..e1163f4f 100644 --- a/_x_b_o_x_u_s_b_8h__dep__incl.map +++ b/_x_b_o_x_u_s_b_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/_x_b_o_x_u_s_b_8h__dep__incl.md5 b/_x_b_o_x_u_s_b_8h__dep__incl.md5 index ffb0405c..3486b50b 100644 --- a/_x_b_o_x_u_s_b_8h__dep__incl.md5 +++ b/_x_b_o_x_u_s_b_8h__dep__incl.md5 @@ -1 +1 @@ -18da52fa9e2758f5b169a34307b52822 \ No newline at end of file +e72de7b87014e17ae5652145a0bf146b \ No newline at end of file diff --git a/_x_b_o_x_u_s_b_8h__dep__incl.png b/_x_b_o_x_u_s_b_8h__dep__incl.png index 4852ab9f9247cff444d0b2b6d4e8c3866e1e2909..4ec8b1b1cba67d8b99cd56a836e1e6606f8fba21 100644 GIT binary patch literal 3484 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 YlPp>s!iwk*wp$QgEhA)whJDO`07C4MvH$=8 literal 2848 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 jWti{VfA^8V1D!R5kT_r4N?8FdFN2 - - - - - + + + + + diff --git a/_x_b_o_x_u_s_b_8h__incl.md5 b/_x_b_o_x_u_s_b_8h__incl.md5 index 9ea5abe3..55decb56 100644 --- a/_x_b_o_x_u_s_b_8h__incl.md5 +++ b/_x_b_o_x_u_s_b_8h__incl.md5 @@ -1 +1 @@ -bffb200b269ce5778ffd1fb3cca482e2 \ No newline at end of file +6f08202f11b618a1375a96c653bf625c \ No newline at end of file diff --git a/_x_b_o_x_u_s_b_8h__incl.png b/_x_b_o_x_u_s_b_8h__incl.png index 8ba28600e4770bc003eeb78659a19686ae02512a..9f2ddacbd66daf91f6f971774bc102c2ada38538 100644 GIT binary patch literal 13514 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 Ab^rhX literal 13466 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 - + + USB Host Shield 2.0: XBOXUSB.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
 

Macro Definition Documentation

- + +

◆ USB_NAK_MAX_POWER

+
@@ -143,11 +122,13 @@ Typedefs
-

Definition at line 34 of file address.h.

+

Definition at line 34 of file address.h.

- + +

◆ USB_NAK_DEFAULT

+
@@ -157,11 +138,13 @@ Typedefs
-

Definition at line 35 of file address.h.

+

Definition at line 35 of file address.h.

- + +

◆ USB_NAK_NOWAIT

+
@@ -171,11 +154,13 @@ Typedefs
-

Definition at line 36 of file address.h.

+

Definition at line 36 of file address.h.

- + +

◆ USB_NAK_NONAK

+
@@ -185,11 +170,13 @@ Typedefs
-

Definition at line 37 of file address.h.

+

Definition at line 37 of file address.h.

- + +

◆ bmUSB_DEV_ADDR_ADDRESS

+
@@ -199,11 +186,13 @@ Typedefs
-

Definition at line 78 of file address.h.

+

Definition at line 78 of file address.h.

- + +

◆ bmUSB_DEV_ADDR_PARENT

+
@@ -213,11 +202,13 @@ Typedefs
-

Definition at line 79 of file address.h.

+

Definition at line 79 of file address.h.

- + +

◆ bmUSB_DEV_ADDR_HUB

+
@@ -227,11 +218,13 @@ Typedefs
-

Definition at line 80 of file address.h.

+

Definition at line 80 of file address.h.

- + +

◆ ADDR_ERROR_INVALID_INDEX

+
@@ -241,11 +234,13 @@ Typedefs
-

Definition at line 99 of file address.h.

+

Definition at line 99 of file address.h.

- + +

◆ ADDR_ERROR_INVALID_ADDRESS

+
@@ -255,12 +250,14 @@ Typedefs
-

Definition at line 100 of file address.h.

+

Definition at line 100 of file address.h.

Typedef Documentation

- + +

◆ UsbDeviceHandleFunc

+
@@ -270,7 +267,7 @@ Typedefs
-

Definition at line 97 of file address.h.

+

Definition at line 97 of file address.h.

@@ -279,7 +276,7 @@ Typedefs diff --git a/address_8h_source.html b/address_8h_source.html index eaf1c570..aa81235f 100644 --- a/address_8h_source.html +++ b/address_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: address.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
address.h
-Go to the documentation of this file.
1 /* Copyright (C) 2011 Circuits At Home, LTD. All rights reserved.
2 
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 2 of the License, or
6 (at your option) any later version.
7 
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12 
13 You should have received a copy of the GNU General Public License
14 along with this program; if not, write to the Free Software
15 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16 
17 Contact information
18 -------------------
19 
20 Circuits At Home, LTD
21 Web : http://www.circuitsathome.com
22 e-mail : support@circuitsathome.com
23  */
24 
25 #if !defined(_usb_h_) || defined(__ADDRESS_H__)
26 #error "Never include address.h directly; include Usb.h instead"
27 #else
28 #define __ADDRESS_H__
29 
30 
31 
32 /* NAK powers. To save space in endpoint data structure, amount of retries before giving up and returning 0x4 is stored in */
33 /* bmNakPower as a power of 2. The actual nak_limit is then calculated as nak_limit = ( 2^bmNakPower - 1) */
34 #define USB_NAK_MAX_POWER 15 //NAK binary order maximum value
35 #define USB_NAK_DEFAULT 14 //default 32K-1 NAKs before giving up
36 #define USB_NAK_NOWAIT 1 //Single NAK stops transfer
37 #define USB_NAK_NONAK 0 //Do not count NAKs, stop retrying after USB Timeout
38 
39 struct EpInfo {
40  uint8_t epAddr; // Endpoint address
41  uint8_t maxPktSize; // Maximum packet size
42 
43  union {
44  uint8_t epAttribs;
45 
46  struct {
47  uint8_t bmSndToggle : 1; // Send toggle, when zero bmSNDTOG0, bmSNDTOG1 otherwise
48  uint8_t bmRcvToggle : 1; // Send toggle, when zero bmRCVTOG0, bmRCVTOG1 otherwise
49  uint8_t bmNakPower : 6; // Binary order for NAK_LIMIT value
50  } __attribute__((packed));
51  };
52 } __attribute__((packed));
53 
54 // 7 6 5 4 3 2 1 0
55 // ---------------------------------
56 // | | H | P | P | P | A | A | A |
57 // ---------------------------------
58 //
59 // H - if 1 the address is a hub address
60 // P - parent hub address
61 // A - device address / port number in case of hub
62 //
63 
65 
66  union {
67 
68  struct {
69  uint8_t bmAddress : 3; // device address/port number
70  uint8_t bmParent : 3; // parent hub address
71  uint8_t bmHub : 1; // hub flag
72  uint8_t bmReserved : 1; // reserved, must be zero
73  } __attribute__((packed));
74  uint8_t devAddress;
75  };
76 } __attribute__((packed));
77 
78 #define bmUSB_DEV_ADDR_ADDRESS 0x07
79 #define bmUSB_DEV_ADDR_PARENT 0x38
80 #define bmUSB_DEV_ADDR_HUB 0x40
81 
82 struct UsbDevice {
83  EpInfo *epinfo; // endpoint info pointer
85  uint8_t epcount; // number of endpoints
86  bool lowspeed; // indicates if a device is the low speed one
87  // uint8_t devclass; // device class
88 } __attribute__((packed));
89 
90 class AddressPool {
91 public:
92  virtual UsbDevice* GetUsbDevicePtr(uint8_t addr) = 0;
93  virtual uint8_t AllocAddress(uint8_t parent, bool is_hub = false, uint8_t port = 0) = 0;
94  virtual void FreeAddress(uint8_t addr) = 0;
95 };
96 
97 typedef void (*UsbDeviceHandleFunc)(UsbDevice *pdev);
98 
99 #define ADDR_ERROR_INVALID_INDEX 0xFF
100 #define ADDR_ERROR_INVALID_ADDRESS 0xFF
101 
102 template <const uint8_t MAX_DEVICES_ALLOWED>
103 class AddressPoolImpl : public AddressPool {
104  EpInfo dev0ep; //Endpoint data structure used during enumeration for uninitialized device
105 
106  uint8_t hubCounter; // hub counter is kept
107  // in order to avoid hub address duplication
108 
109  UsbDevice thePool[MAX_DEVICES_ALLOWED];
110 
111  // Initializes address pool entry
112 
113  void InitEntry(uint8_t index) {
114  thePool[index].address.devAddress = 0;
115  thePool[index].epcount = 1;
116  thePool[index].lowspeed = 0;
117  thePool[index].epinfo = &dev0ep;
118  };
119 
120  // Returns thePool index for a given address
121 
122  uint8_t FindAddressIndex(uint8_t address = 0) {
123  for(uint8_t i = 1; i < MAX_DEVICES_ALLOWED; i++) {
124  if(thePool[i].address.devAddress == address)
125  return i;
126  }
127  return 0;
128  };
129 
130  // Returns thePool child index for a given parent
131 
132  uint8_t FindChildIndex(UsbDeviceAddress addr, uint8_t start = 1) {
133  for(uint8_t i = (start < 1 || start >= MAX_DEVICES_ALLOWED) ? 1 : start; i < MAX_DEVICES_ALLOWED; i++) {
134  if(thePool[i].address.bmParent == addr.bmAddress)
135  return i;
136  }
137  return 0;
138  };
139 
140  // Frees address entry specified by index parameter
141 
142  void FreeAddressByIndex(uint8_t index) {
143  // Zero field is reserved and should not be affected
144  if(index == 0)
145  return;
146 
147  UsbDeviceAddress uda = thePool[index].address;
148  // If a hub was switched off all port addresses should be freed
149  if(uda.bmHub == 1) {
150  for(uint8_t i = 1; (i = FindChildIndex(uda, i));)
151  FreeAddressByIndex(i);
152 
153  // If the hub had the last allocated address, hubCounter should be decremented
154  if(hubCounter == uda.bmAddress)
155  hubCounter--;
156  }
157  InitEntry(index);
158  }
159 
160  // Initializes the whole address pool at once
161 
162  void InitAllAddresses() {
163  for(uint8_t i = 1; i < MAX_DEVICES_ALLOWED; i++)
164  InitEntry(i);
165 
166  hubCounter = 0;
167  };
168 
169 public:
170 
171  AddressPoolImpl() : hubCounter(0) {
172  // Zero address is reserved
173  InitEntry(0);
174 
175  thePool[0].address.devAddress = 0;
176  thePool[0].epinfo = &dev0ep;
177  dev0ep.epAddr = 0;
178  dev0ep.maxPktSize = 8;
179  dev0ep.bmSndToggle = 0; // Set DATA0/1 toggles to 0
180  dev0ep.bmRcvToggle = 0;
181  dev0ep.bmNakPower = USB_NAK_MAX_POWER;
182 
183  InitAllAddresses();
184  };
185 
186  // Returns a pointer to a specified address entry
187 
188  virtual UsbDevice* GetUsbDevicePtr(uint8_t addr) {
189  if(!addr)
190  return thePool;
191 
192  uint8_t index = FindAddressIndex(addr);
193 
194  return (!index) ? NULL : thePool + index;
195  };
196 
197  // Performs an operation specified by pfunc for each addressed device
198 
200  if(!pfunc)
201  return;
202 
203  for(uint8_t i = 1; i < MAX_DEVICES_ALLOWED; i++)
204  if(thePool[i].address.devAddress)
205  pfunc(thePool + i);
206  };
207 
208  // Allocates new address
209 
210  virtual uint8_t AllocAddress(uint8_t parent, bool is_hub = false, uint8_t port = 0) {
211  /* if (parent != 0 && port == 0)
212  USB_HOST_SERIAL.println("PRT:0"); */
213  UsbDeviceAddress _parent;
214  _parent.devAddress = parent;
215  if(_parent.bmReserved || port > 7)
216  //if(parent > 127 || port > 7)
217  return 0;
218 
219  if(is_hub && hubCounter == 7)
220  return 0;
221 
222  // finds first empty address entry starting from one
223  uint8_t index = FindAddressIndex(0);
224 
225  if(!index) // if empty entry is not found
226  return 0;
227 
228  if(_parent.devAddress == 0) {
229  if(is_hub) {
230  thePool[index].address.devAddress = 0x41;
231  hubCounter++;
232  } else
233  thePool[index].address.devAddress = 1;
234 
235  return thePool[index].address.devAddress;
236  }
237 
238  UsbDeviceAddress addr;
239  addr.devAddress = 0; // Ensure all bits are zero
240  addr.bmParent = _parent.bmAddress;
241  if(is_hub) {
242  addr.bmHub = 1;
243  addr.bmAddress = ++hubCounter;
244  } else {
245  addr.bmHub = 0;
246  addr.bmAddress = port;
247  }
248  thePool[index].address = addr;
249  /*
250  USB_HOST_SERIAL.print("Addr:");
251  USB_HOST_SERIAL.print(addr.bmHub, HEX);
252  USB_HOST_SERIAL.print(".");
253  USB_HOST_SERIAL.print(addr.bmParent, HEX);
254  USB_HOST_SERIAL.print(".");
255  USB_HOST_SERIAL.println(addr.bmAddress, HEX);
256  */
257  return thePool[index].address.devAddress;
258  };
259 
260  // Empties pool entry
261 
262  virtual void FreeAddress(uint8_t addr) {
263  // if the root hub is disconnected all the addresses should be initialized
264  if(addr == 0x41) {
265  InitAllAddresses();
266  return;
267  }
268  uint8_t index = FindAddressIndex(addr);
269  FreeAddressByIndex(index);
270  };
271 
272  // Returns number of hubs attached
273  // It can be rather helpfull to find out if there are hubs attached than getting the exact number of hubs.
274  //uint8_t GetNumHubs()
275  //{
276  // return hubCounter;
277  //};
278  //uint8_t GetNumDevices()
279  //{
280  // uint8_t counter = 0;
281 
282  // for (uint8_t i=1; i<MAX_DEVICES_ALLOWED; i++)
283  // if (thePool[i].address != 0);
284  // counter ++;
285 
286  // return counter;
287  //};
288 };
289 
290 #endif // __ADDRESS_H__
uint8_t bmRcvToggle
Definition: address.h:48
+Go to the documentation of this file.
1 /* Copyright (C) 2011 Circuits At Home, LTD. All rights reserved.
2 
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 2 of the License, or
6 (at your option) any later version.
7 
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12 
13 You should have received a copy of the GNU General Public License
14 along with this program; if not, write to the Free Software
15 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16 
17 Contact information
18 -------------------
19 
20 Circuits At Home, LTD
21 Web : http://www.circuitsathome.com
22 e-mail : support@circuitsathome.com
23  */
24 
25 #if !defined(_usb_h_) || defined(__ADDRESS_H__)
26 #error "Never include address.h directly; include Usb.h instead"
27 #else
28 #define __ADDRESS_H__
29 
30 
31 
32 /* NAK powers. To save space in endpoint data structure, amount of retries before giving up and returning 0x4 is stored in */
33 /* bmNakPower as a power of 2. The actual nak_limit is then calculated as nak_limit = ( 2^bmNakPower - 1) */
34 #define USB_NAK_MAX_POWER 15 //NAK binary order maximum value
35 #define USB_NAK_DEFAULT 14 //default 32K-1 NAKs before giving up
36 #define USB_NAK_NOWAIT 1 //Single NAK stops transfer
37 #define USB_NAK_NONAK 0 //Do not count NAKs, stop retrying after USB Timeout
38 
39 struct EpInfo {
40  uint8_t epAddr; // Endpoint address
41  uint8_t maxPktSize; // Maximum packet size
42 
43  union {
44  uint8_t epAttribs;
45 
46  struct {
47  uint8_t bmSndToggle : 1; // Send toggle, when zero bmSNDTOG0, bmSNDTOG1 otherwise
48  uint8_t bmRcvToggle : 1; // Send toggle, when zero bmRCVTOG0, bmRCVTOG1 otherwise
49  uint8_t bmNakPower : 6; // Binary order for NAK_LIMIT value
50  } __attribute__((packed));
51  };
52 } __attribute__((packed));
53 
54 // 7 6 5 4 3 2 1 0
55 // ---------------------------------
56 // | | H | P | P | P | A | A | A |
57 // ---------------------------------
58 //
59 // H - if 1 the address is a hub address
60 // P - parent hub address
61 // A - device address / port number in case of hub
62 //
63 
65 
66  union {
67 
68  struct {
69  uint8_t bmAddress : 3; // device address/port number
70  uint8_t bmParent : 3; // parent hub address
71  uint8_t bmHub : 1; // hub flag
72  uint8_t bmReserved : 1; // reserved, must be zero
73  } __attribute__((packed));
74  uint8_t devAddress;
75  };
76 } __attribute__((packed));
77 
78 #define bmUSB_DEV_ADDR_ADDRESS 0x07
79 #define bmUSB_DEV_ADDR_PARENT 0x38
80 #define bmUSB_DEV_ADDR_HUB 0x40
81 
82 struct UsbDevice {
83  EpInfo *epinfo; // endpoint info pointer
85  uint8_t epcount; // number of endpoints
86  bool lowspeed; // indicates if a device is the low speed one
87  // uint8_t devclass; // device class
88 } __attribute__((packed));
89 
90 class AddressPool {
91 public:
92  virtual UsbDevice* GetUsbDevicePtr(uint8_t addr) = 0;
93  virtual uint8_t AllocAddress(uint8_t parent, bool is_hub = false, uint8_t port = 0) = 0;
94  virtual void FreeAddress(uint8_t addr) = 0;
95 };
96 
97 typedef void (*UsbDeviceHandleFunc)(UsbDevice *pdev);
98 
99 #define ADDR_ERROR_INVALID_INDEX 0xFF
100 #define ADDR_ERROR_INVALID_ADDRESS 0xFF
101 
102 template <const uint8_t MAX_DEVICES_ALLOWED>
103 class AddressPoolImpl : public AddressPool {
104  EpInfo dev0ep; //Endpoint data structure used during enumeration for uninitialized device
105 
106  uint8_t hubCounter; // hub counter is kept
107  // in order to avoid hub address duplication
108 
109  UsbDevice thePool[MAX_DEVICES_ALLOWED];
110 
111  // Initializes address pool entry
112 
113  void InitEntry(uint8_t index) {
114  thePool[index].address.devAddress = 0;
115  thePool[index].epcount = 1;
116  thePool[index].lowspeed = 0;
117  thePool[index].epinfo = &dev0ep;
118  };
119 
120  // Returns thePool index for a given address
121 
122  uint8_t FindAddressIndex(uint8_t address = 0) {
123  for(uint8_t i = 1; i < MAX_DEVICES_ALLOWED; i++) {
124  if(thePool[i].address.devAddress == address)
125  return i;
126  }
127  return 0;
128  };
129 
130  // Returns thePool child index for a given parent
131 
132  uint8_t FindChildIndex(UsbDeviceAddress addr, uint8_t start = 1) {
133  for(uint8_t i = (start < 1 || start >= MAX_DEVICES_ALLOWED) ? 1 : start; i < MAX_DEVICES_ALLOWED; i++) {
134  if(thePool[i].address.bmParent == addr.bmAddress)
135  return i;
136  }
137  return 0;
138  };
139 
140  // Frees address entry specified by index parameter
141 
142  void FreeAddressByIndex(uint8_t index) {
143  // Zero field is reserved and should not be affected
144  if(index == 0)
145  return;
146 
147  UsbDeviceAddress uda = thePool[index].address;
148  // If a hub was switched off all port addresses should be freed
149  if(uda.bmHub == 1) {
150  for(uint8_t i = 1; (i = FindChildIndex(uda, i));)
151  FreeAddressByIndex(i);
152 
153  // If the hub had the last allocated address, hubCounter should be decremented
154  if(hubCounter == uda.bmAddress)
155  hubCounter--;
156  }
157  InitEntry(index);
158  }
159 
160  // Initializes the whole address pool at once
161 
162  void InitAllAddresses() {
163  for(uint8_t i = 1; i < MAX_DEVICES_ALLOWED; i++)
164  InitEntry(i);
165 
166  hubCounter = 0;
167  };
168 
169 public:
170 
171  AddressPoolImpl() : hubCounter(0) {
172  // Zero address is reserved
173  InitEntry(0);
174 
175  thePool[0].address.devAddress = 0;
176  thePool[0].epinfo = &dev0ep;
177  dev0ep.epAddr = 0;
178  dev0ep.maxPktSize = 8;
179  dev0ep.bmSndToggle = 0; // Set DATA0/1 toggles to 0
180  dev0ep.bmRcvToggle = 0;
181  dev0ep.bmNakPower = USB_NAK_MAX_POWER;
182 
183  InitAllAddresses();
184  };
185 
186  // Returns a pointer to a specified address entry
187 
188  virtual UsbDevice* GetUsbDevicePtr(uint8_t addr) {
189  if(!addr)
190  return thePool;
191 
192  uint8_t index = FindAddressIndex(addr);
193 
194  return (!index) ? NULL : thePool + index;
195  };
196 
197  // Performs an operation specified by pfunc for each addressed device
198 
200  if(!pfunc)
201  return;
202 
203  for(uint8_t i = 1; i < MAX_DEVICES_ALLOWED; i++)
204  if(thePool[i].address.devAddress)
205  pfunc(thePool + i);
206  };
207 
208  // Allocates new address
209 
210  virtual uint8_t AllocAddress(uint8_t parent, bool is_hub = false, uint8_t port = 0) {
211  /* if (parent != 0 && port == 0)
212  USB_HOST_SERIAL.println("PRT:0"); */
213  UsbDeviceAddress _parent;
214  _parent.devAddress = parent;
215  if(_parent.bmReserved || port > 7)
216  //if(parent > 127 || port > 7)
217  return 0;
218 
219  if(is_hub && hubCounter == 7)
220  return 0;
221 
222  // finds first empty address entry starting from one
223  uint8_t index = FindAddressIndex(0);
224 
225  if(!index) // if empty entry is not found
226  return 0;
227 
228  if(_parent.devAddress == 0) {
229  if(is_hub) {
230  thePool[index].address.devAddress = 0x41;
231  hubCounter++;
232  } else
233  thePool[index].address.devAddress = 1;
234 
235  return thePool[index].address.devAddress;
236  }
237 
238  UsbDeviceAddress addr;
239  addr.devAddress = 0; // Ensure all bits are zero
240  addr.bmParent = _parent.bmAddress;
241  if(is_hub) {
242  addr.bmHub = 1;
243  addr.bmAddress = ++hubCounter;
244  } else {
245  addr.bmHub = 0;
246  addr.bmAddress = port;
247  }
248  thePool[index].address = addr;
249  /*
250  USB_HOST_SERIAL.print("Addr:");
251  USB_HOST_SERIAL.print(addr.bmHub, HEX);
252  USB_HOST_SERIAL.print(".");
253  USB_HOST_SERIAL.print(addr.bmParent, HEX);
254  USB_HOST_SERIAL.print(".");
255  USB_HOST_SERIAL.println(addr.bmAddress, HEX);
256  */
257  return thePool[index].address.devAddress;
258  };
259 
260  // Empties pool entry
261 
262  virtual void FreeAddress(uint8_t addr) {
263  // if the root hub is disconnected all the addresses should be initialized
264  if(addr == 0x41) {
265  InitAllAddresses();
266  return;
267  }
268  uint8_t index = FindAddressIndex(addr);
269  FreeAddressByIndex(index);
270  };
271 
272  // Returns number of hubs attached
273  // It can be rather helpfull to find out if there are hubs attached than getting the exact number of hubs.
274  //uint8_t GetNumHubs()
275  //{
276  // return hubCounter;
277  //};
278  //uint8_t GetNumDevices()
279  //{
280  // uint8_t counter = 0;
281 
282  // for (uint8_t i=1; i<MAX_DEVICES_ALLOWED; i++)
283  // if (thePool[i].address != 0);
284  // counter ++;
285 
286  // return counter;
287  //};
288 };
289 
290 #endif // __ADDRESS_H__
uint8_t bmRcvToggle
Definition: address.h:48
EpInfo * epinfo
Definition: address.h:83
bool lowspeed
Definition: address.h:86
@@ -118,7 +95,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/adk_8cpp.html b/adk_8cpp.html index c0a3d423..f89c7141 100644 --- a/adk_8cpp.html +++ b/adk_8cpp.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: adk.cpp File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- - + +
@@ -103,7 +80,7 @@ Include dependency graph for adk.cpp:
diff --git a/adk_8cpp__incl.map b/adk_8cpp__incl.map index eb12d3fa..dbe9d53f 100644 --- a/adk_8cpp__incl.map +++ b/adk_8cpp__incl.map @@ -1,4 +1,4 @@ - - + + diff --git a/adk_8cpp__incl.md5 b/adk_8cpp__incl.md5 index aeb01f6d..b86ac594 100644 --- a/adk_8cpp__incl.md5 +++ b/adk_8cpp__incl.md5 @@ -1 +1 @@ -44064901c7f950ea3e40c91d455ee2ad \ No newline at end of file +37a39de020a1edaf438fb10fe5d6d241 \ No newline at end of file diff --git a/adk_8cpp__incl.png b/adk_8cpp__incl.png index b1518db0b0dd4321aa1808264c0e0aa043b4dcaa..75cb16037ca748ad07dce0e66807f6f16ba2ecdd 100644 GIT binary patch literal 3377 zcmcInc{r5s8vbM{+Z08UJt{SpqJBy*V#EH!IxLch*M1 zIcpd)RtlIaX$)8_!3B2G2bLuy?D{0u+Z&TXJvRAG<@CkgTdi>9QKX;cIX34D3D4yx z(mwHr5akuqGfeQ7vIE5~U5U?}LZ&qE{$uaP?|TGI1gYz5`Q~6&v0JYe{xKCqT`<7o zTTVbmEW+F`JfCGiXa0qx$^F)1%R)078+xJx(%9d>rp*h&D0ghYJ%29JlX1CURzEgN z^s>*)LQYtK2qx(vsW;UynWtj*(6UP%dWOXHoHjm4pkzCIkPLf70}fW>0r;uAP} z81)Se=4NI15?6&3C8F$x+KWC~^AqX%7#NYe7NqzHBwZ+qcReSP>Bs z10I(;dU}w~&M!igH3F8PVA0rsbLY;DSGgZnbZUwR%adDFq$hP0h$9dNKYxxS96x_+ zb7j)z4Lagax|lM9{MPRyC4VYSG>Go$G3v?Dklfzh-kKwvM^{al+1c?_O~e-!oh9$@ z?buY^PG}2IzIbuH_wsaZUfzN8gqK-I84a(9{`w!HiXD=r)mnrGazDI@JZZ#TOl=8TVSi|Idk-dEDjZtv@= zmBWX`3pW3z@81{Ed$Ut|YweQavxof#e=xBxVzWFkM*m=k6ILSG&cTLlthN3a%NT^ zEaR_B0I%}Zp6u;KoTNrYN29;>oSi;3&y|-Qkp!;A#YKsS zm&CF|>yLW=(o$day23!JE=*Fa=Wv7~TCBKYA{z+vPA`zENa@Obe^SGbEfMoh(YyDs ze1VQAPz!JOq($WBN+ET0^6KiKE$GFc;_!f(WL=2}gZ%3j7J?!oBAGrezgfTZ^z>TF z>}wsEmQGHIpdS0PKz9Gj8%RGHR#96^Qgo;T)!Pw?93B`zlU@!jdQ3NkL^2OT#Ex`O-#D|g z<$~$}nK%qw^_$}m5SZ{**-=3_Uty51deiQ!mOH$U%r_)SpF5{-hGv19floZ1U6`Td zfPguo|;0@e?2O7Y!EIq$!hJ(f-hIn=^ndVUlSvl zo6{?^9mz7|HD1SIa&nS3{r!?-m_}FyIFp14oXY8ZV3Z8m5D5PO7cRA};`%XG(LUQ2 zkt}X}&oJi2& z;pfi>)4~)K@ z_tSmO*{B=&ou(`|!KkkXnrZV+V)se$X7!gUC){{ftIZe1Z z=cd|C(~aU%Q*{Nz#OUp%nKDZUTXgDnmcJ@2I{+6tbBe!A7VTndpu(0dVLc!KC-9GBeicSsIX z4a;!d46|O+e=p^vevF4dI+`XZwSK2rA~lFn%HeS1h7i6(_Ar44d*|KBk=*MZBErXI z`T&pVW9LeA!(bM+;Rz=N$`F8}sUV)yy!$8|baAMZh1Z_%8b+#hwTM1@eJ1$8LmH$DNtLRv)WGKQ=(*|wNr?YFo8mQ7mUiMrpWM_@;q(T9vo_J zo|>4@=ZTI4&0bMiSpsuq((wNK%=-HJC2i}4{v1=1qGR4g_r8JQV#~$JhtvKOl3qlg z!@OOOYCAR_L!r=cE10&ElcW_)2o=1pU0qwNRc!Tz8q8WO9Pq5sGcx+vE*Td8`ZbJ1 zwXgLNk9_<%`PnlrVCzRkGx>S5HEoc+DgKC{VB~7k4#d4L6CCKLEG#Vt$H&i(cblXu zQ}!GRhhEgwjL?|Dj`>tChO~^#;PCLNz-5wCXoQ1etu=3zUD+EO`SIp34bYaot*T0X z`ZSVSyBcCR^Euy;xzN1Fk^?t6G8ccqCQ&J*tgM7Fr!aBdLreQ*yS9~~DLnW>;vHN^hzPXK9=Po10)kXX6E z+S$27eRucO(4t-O^HYqItcj^b1hhzzFzRWkI?-pL8kHdufBr7J{Dlf96M#2|TeSIh|Jd*2$cs`epDt)=L1TRehySb@m(yfPy7y;_yV$0i zEAL-myX>5ti0=qQv|b($XKgQa$hMksfhDrYt2@t~KheuNQuQEiL?wwNjAX-LG;_9a<7+i&tDGA%iAqFDi`_BKlec4^E;~M=8SgD(tG^#yPrcG)Fe( zCdkXPLwXh#B9MB~pUWJ$03EFWe8b|qlUV3;(@JCdL{)x^RxyMX5a*qyt~hrE=Y~fD z8Ctr*0&ljF)g8x={!!&fVv>${$OFU7*4Vwv%sl8fg3x5civ0q-y{D=ZzkfHLb(LUx z5(qd!qtP#=N`z?y>hv&F0bq$SfAddZc_pX(lrscKIGgTG|jg1n` zZ~;K|4Gm`v$?55@0AIoTpXox^g_jco3&&$Sf=+riy={YonJ$iZepJfVkj9S^ zP$5SZ{>Uu_VV_i(H&G-eCYsjR5(swsY#EnKJ5Nnbp&A=$`An+r%_ixW_O)R<6LNDO zGs$>^F)}y%@!;1`jn_KN6vEr213S8_*4{}ERSDYIiEh7#IHjm~YW>mCT3=@`_ zqrw{Ybnk|PZ}dr*TEhi0x?MZ@`prft#s~2~Q2H!K@OCyY z8kCfPlRQ-GRMJHFAl~f}ypqY9TwurqyQB$2OhpfeCej(#r3=4wS1-C$v4EtbS_6%; zYe`>&?e8iYO>1@?u1!(%v<|UZLHQ2zV@@aD>ysRvDtPjcmE*E3fd z6Nn1ZkR?LMC_qq)wY@!|va&LiAtX6D`Q_6riGAn7^67rpsBCK zc3x0CtE8>0tW=socZDe&92}r@!Kj%nkK=8#iIa!%B|~CJ?UL&1m_@fQMOqoCai@aVuuVt{PseNs8g6#2#&^8f)QW`Fs)}| zqIR7d!G1(Y4VpotdA&siO{(B4_0KB(T2QF)i_PM^_92DqQ;zj4T2NJGWuig(^a4`U zv1e_~Tc%^^;lqd7%K7)R3kMOa+T5vQBNckfq8Aqzde5H44-adrb5bD?h`q8?Stg2~ z>+3-oWMpJlb53q<{l`1=HO@w-*f38|&-Sk3_wO-t4K7~6M0GsBMMfM%8{L#)PD(wHr)#`b;M?YI7a3q3M&*U}=Bzdp754TtuY8WgiXqGR->Arxb=L4j+7J=|4Cu|!YVg%%g_Lodm@?Q ztBlgwS>@2v;#{tQ5u?xS%u2B^2UO39X!76(9?}Pl1*t8eSMewU?8{BhmXpOMe29^2 z-luou1*yp7sBNTdH`T5L~ z0uC=(a#M$jzz!l$6uMy8&`c5I(KdG$Vf~@56VwbWWZr z3TCm&!jy!)6H@lnkH^2l>l}C|Ca$Hke|a)UxHgMoRs?CGe4@M>(eb1?C%S%ZPiC9- z+GC_xZIPdj+7(k%C#PFPL=Ez1==!7!$6}wYS@``@Day>XFDi4kA9K;EVco#@Ug;qS zzSwCR|H{Scw~!pYwB*5W`a*j3d^4Ffb?~FxqReofptU?Xn>hK1gO_$O6!d8ju?Y`6 z4-v-FfldZ_@`xd4V5iX|e>owfw(?LQ7bjI5zFU*|n8d0)2^YOKHya=lHUp>baeo@{ zQ(|PC@|1n_oK~OV>f5`Gj#TWAkUX&La9DAqa=xOa<>RHWKOvTvBa+K~&zlwri}d57 zqX`$9Jvb0S`|mUq#YCE(&qsgwzzzNHfA4xblI>G=w+7}Fl^;?eYx(Q7X zw+B)~ao|dyGaaYmv%+Xz@ARO_4{NzQQKWTe<}k+|vyHBUD=8@r_^!*Of}%##?q4zB zr=+Cpoh*l4bc9}=`z)EXE-o%^?CkvQ;UWB%-)vR#%PTBD9svOXkY{WciC?tu>SdUj zn#R6-d8ccJh>-A2R@Roq_f7B9qe&fM35n>pZ)t&ozW4nk$KD!&z<-p;9jKwEK4mW< zCU#ThLqbBD196Zl%MQ}4k?6U(XL7hHgC*SK&{LaxD95&|0QY-S*Ye;j`p{?G4gb Z3QxBU8B;ZR5x_42NaJr9v`X1J;y*VI<*fh! diff --git a/adk_8cpp_source.html b/adk_8cpp_source.html index 5324ba5f..9d070b03 100644 --- a/adk_8cpp_source.html +++ b/adk_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: adk.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + + - + - - + + + +
- +
@@ -103,7 +80,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -150,7 +127,9 @@ Macros  

Macro Definition Documentation

- + +

◆ ADK_VID

+
@@ -160,11 +139,13 @@ Macros
-

Definition at line 25 of file adk.h.

+

Definition at line 25 of file adk.h.

- + +

◆ ADK_PID

+
@@ -174,11 +155,13 @@ Macros
-

Definition at line 26 of file adk.h.

+

Definition at line 26 of file adk.h.

- + +

◆ ADB_PID

+
@@ -188,11 +171,13 @@ Macros
-

Definition at line 27 of file adk.h.

+

Definition at line 27 of file adk.h.

- + +

◆ XOOM

+
@@ -202,11 +187,13 @@ Macros
-

Definition at line 29 of file adk.h.

+

Definition at line 29 of file adk.h.

- + +

◆ ADK_GETPROTO

+
@@ -216,11 +203,13 @@ Macros
-

Definition at line 35 of file adk.h.

+

Definition at line 35 of file adk.h.

- + +

◆ ADK_SENDSTR

+
@@ -230,11 +219,13 @@ Macros
-

Definition at line 36 of file adk.h.

+

Definition at line 36 of file adk.h.

- + +

◆ ADK_ACCSTART

+
@@ -244,11 +235,13 @@ Macros
-

Definition at line 37 of file adk.h.

+

Definition at line 37 of file adk.h.

- + +

◆ bmREQ_ADK_GET

+
@@ -258,11 +251,13 @@ Macros
-

Definition at line 39 of file adk.h.

+

Definition at line 39 of file adk.h.

- + +

◆ bmREQ_ADK_SEND

+
@@ -272,11 +267,13 @@ Macros
-

Definition at line 40 of file adk.h.

+

Definition at line 40 of file adk.h.

- + +

◆ ACCESSORY_STRING_MANUFACTURER

+
@@ -286,11 +283,13 @@ Macros
-

Definition at line 42 of file adk.h.

+

Definition at line 42 of file adk.h.

- + +

◆ ACCESSORY_STRING_MODEL

+
@@ -300,11 +299,13 @@ Macros
-

Definition at line 43 of file adk.h.

+

Definition at line 43 of file adk.h.

- + +

◆ ACCESSORY_STRING_DESCRIPTION

+
@@ -314,11 +315,13 @@ Macros
-

Definition at line 44 of file adk.h.

+

Definition at line 44 of file adk.h.

- + +

◆ ACCESSORY_STRING_VERSION

+
@@ -328,11 +331,13 @@ Macros
-

Definition at line 45 of file adk.h.

+

Definition at line 45 of file adk.h.

- + +

◆ ACCESSORY_STRING_URI

+
@@ -342,11 +347,13 @@ Macros
-

Definition at line 46 of file adk.h.

+

Definition at line 46 of file adk.h.

- + +

◆ ACCESSORY_STRING_SERIAL

+
@@ -356,11 +363,13 @@ Macros
-

Definition at line 47 of file adk.h.

+

Definition at line 47 of file adk.h.

- + +

◆ ADK_MAX_ENDPOINTS

+
@@ -370,7 +379,7 @@ Macros
-

Definition at line 49 of file adk.h.

+

Definition at line 49 of file adk.h.

@@ -379,7 +388,7 @@ Macros diff --git a/adk_8h__dep__incl.map b/adk_8h__dep__incl.map index 2c793cd8..0c6c30e2 100644 --- a/adk_8h__dep__incl.map +++ b/adk_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/adk_8h__dep__incl.md5 b/adk_8h__dep__incl.md5 index 721031bf..18dadafe 100644 --- a/adk_8h__dep__incl.md5 +++ b/adk_8h__dep__incl.md5 @@ -1 +1 @@ -e6d0d56c52d3fb6e81b76806cae456b2 \ No newline at end of file +a78ec97d5c424edcde2b6c3a1b1b88c2 \ No newline at end of file diff --git a/adk_8h__dep__incl.png b/adk_8h__dep__incl.png index b9ff26e3126a8ab5fa9a9de8e145ad385c2ded18..ac19e5e4c08002604239b088ecd2ace8a18f9a40 100644 GIT binary patch literal 2219 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 diff --git a/adk_8h__incl.map b/adk_8h__incl.map index 89c23cc9..09d79817 100644 --- a/adk_8h__incl.map +++ b/adk_8h__incl.map @@ -1,3 +1,3 @@ - + diff --git a/adk_8h__incl.md5 b/adk_8h__incl.md5 index 78ab8688..383ea7d2 100644 --- a/adk_8h__incl.md5 +++ b/adk_8h__incl.md5 @@ -1 +1 @@ -6316d3a392a1c1e1b044b310cd053323 \ No newline at end of file +42c5ecb0a034afd3b6c9fa96def7afb2 \ No newline at end of file diff --git a/adk_8h__incl.png b/adk_8h__incl.png index 436fec59ac6710077840041f4ea393651f96cc9f..a6f8b015906dab513d273f9b3ea8d692dbb6b532 100644 GIT binary patch literal 1725 zcmV;u215CXP)v{Je= z`!J+iI|ITngJ-+*J&@t_%=!P1GiT;ZXAT%eQ4lZS-#Y<55oJ&%u4EFJMS8t{@$=w7 zUteEL3C28|VHj3eSeTxkzF1k!oA>YEKY8+mnK?_(0DxYv->_kW;7M`i_U+qe&YWSE z$JLk-Wl%+wnFFt1zuvfUBmHysnshZ@f{HzZD(u&pZ*u3(oy(Umzk2m5B_+jRFjQAp zQxw(T-|uuf-@SXMR4OYgD`R%CSS$}7JUD;;d~$Mf%tvmwyRotH!-o&GwY4UbiCap* zt!Dy(fZ1%;XfzIoWB>mBt*x!&C&Z3(Ysi!R=3;T($c~- z0f2k=?pdwYhK7dD&d$%DKXX*!)-wb_*lf0pj0~AfmYJCe0ORB1PN(zW!Gq=H{7zO!e~()HWh+pk`|+SS#Sl$6BUpuu2BOiZNr_51y-!a~U;BqVsf-U}Bl1cO0^ zLO~aLyTL;0s&qG zqTwQwl$2CoUvD;>_wL=Bot<4#QE}qL39VLZGMU=j+l@w}&1O4w>Qu~LMxzk`y1Tmp zpt-sE)2B}h&prnB`gcL1W{OWl%+wK^0L3RYVz75oJ(CltC3io}3K~{53c@68ZJktv>-^>(hG$mH39_{N~X9tN2yE)i0uKnJZ<&rl>!A7@YGygy;dsyN=7P`==G(-MHEn`re^Kb z)K@0}L60#IR7Rm#URanN{qjmt(Mpv{z@==$&H(iKQi)_*Mk2ulJ;p$2nX0N1lANAl zkR-Kp=P!bW6IN!$ij>k)1&(7lj;&j#$jnR;G@RfQ&6=8001N=DsS)-VgGG?hYJbLY z48vgi_Me1~1ymG0Jv~B%NKLIwO^sa}#0xz=J<<8IOrLmHa=U#PhLw~U`EAx@*8!>jt~GWT}trV?3`qHhj)#ch^yOXQ3h4G$Y2=e@pxu0iN@pceDhuD*;|++ z|NEXn7XD@W`}>QFi=b#+^|Y#AFHqpOXK zOn>|Q{P}aaT+VFv`>buQtE)SF`0$MzH(tJc>2kSt@7`@PnFwNf0=9YcX1m?)^?H3i zACBXZ^5e&kdpw@u;o*}fPwv^X2LL)cIu^2Eo&^qLCL9hoH#ciE8v2yg)YKFR1R|e0 z91f*YDU->Hii(_0Cq+?oH}>`QsnzQA^zW|xE17=)We$Fc T0NxG*00000NkvXXu0mjfKO{V; literal 1683 zcmV;E25k9>P)iD_wsCK8OX3N7cM zWY4m!g3C^w)6DN__M4sgzW>f;XPcP{W@l$X8X^4C0q_jggEr}=N6fhPcsw4D=Z}QK zfr5g9_V#wVMZlQf>g(%Ck}NMTPiZEa0eRNNs+^3DAFKy$;Og15X%i!{=$*?1w-4H+n;w?;&r%45LfzfnBO@d6c)YT*^61f{3WWjy zFf%jba=CmypI9ueudiQN@a@~TEiEmLjg3~Tm66ro-+%k|?a!Y->-G9$$BwO9wTeSv z9NVY0wY9dk*5mQG-EO5)+1=fpwBNdQD-;S{yLPRstLxdbXN*$A!^0;|oNzjw3&j8c zoL#%~-`O9gcdgUcG8C7^G5ZW@hHWg9oY5y8 zy}iBX&!2B=Yum7418bcGL8#SgnM~Hu(D3fvJ8pq->~Eu^qg`EH@87@w^5qKvKq#Dh zF41UIqtPVOTCJ8|#O-!lESA-)SO2WeoSd9wLMoMh|Nfm@U>w`$^y$+Ui>0ThXK-+^ zzrR0`NF?n_r7{wUB-3MKWAq}Oot-2}-o1O5o5v->QBN!u%gD%($z-2CeL8pU9A)3K zWsA$@ibkW+Xw>C$(Tk{5s?N^NhYuh2^z=|hzFwmg9Q7POe*E&~%QZDMPN%b?qJpyT z-@iXUKi_V*I~)#^$;2p?o15Fw(c$%aZ{EDgJ>*})^8GV0G4Vh8USPzZZtqj92W_w( zw847NhGqRWK0Z#8WXdD?ZGyodi*p>f=2W_w(w847N2J1l^tOsqd9<;%F&<5*48>|OyupYF*de8>zK^v?GZLl7+ z!Fte!xqpW*1_t~O9=xJ1U%dFIq(qgSoteDUXcQ+;*23`1aX;Up1OnlKfmZfxu`iDlE)_=Mk=+-MfwSSxzVv)YU=kYyh?%r829!T2Je8vpaTF{HnmR zfxh0c+2(dFi$ubW8%veSEU50F>#3<(ClUz(0Ext`)ymwF%{$QbtXLu2y!kHxfJ7qP zwrwqJcd1xk@7Yrc0NA>9ZB~{Px-*@pJFqJ+R<}#zI){p^Sxvg%>Yg{P^)BBlpdlH_3D$5YXv# ztTjX;k!1So*ROK9e9=g3Hk-|6qg%MNk3=G2oJWquV$_l6-rioH&u1_gN=r*0J$gjl zQ&LirOz3pFa5&6bvsyj(J61+U#hvUhUCsR{XQ&UqUNje;kBS(%TbNBAu8w>`g zr>6n!oH_u2Ac$}{91e#Gg4nljA7$rxqNjJhC61p&B60otb(6`YP$(1%g~?>PapMM+ zd*{xbva&LnOlB|`d_EsFHqM+mlb4s5ot=I7@Znf2Mjtke1ncDz#}5}h=)li>fHGJQ z+F(6sgY}>d%kNdJ|7(OM!^6X7vzcz0*FIHMRgH~}sSRman9XL!uZ6JoQ~W8?ZTw(8 dXp?Sw{sj;e#c)RULzVyl002ovPDHLkV1gI(PJI9X diff --git a/adk_8h_source.html b/adk_8h_source.html index 532a0c3a..623e084a 100644 --- a/adk_8h_source.html +++ b/adk_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: adk.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + + - + - - + + + + - + - - + + + +
avrpins.h
-Go to the documentation of this file.
1 /* Copyright (C) 2011 Circuits At Home, LTD. All rights reserved.
2 
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 2 of the License, or
6 (at your option) any later version.
7 
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12 
13 You should have received a copy of the GNU General Public License
14 along with this program; if not, write to the Free Software
15 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16 
17 Contact information
18 -------------------
19 
20 Circuits At Home, LTD
21 Web : http://www.circuitsathome.com
22 e-mail : support@circuitsathome.com
23  */
24 
25 /* derived from Konstantin Chizhov's AVR port templates */
26 
27 #if !defined(_usb_h_) || defined(_avrpins_h_)
28 #error "Never include avrpins.h directly; include Usb.h instead"
29 #else
30 #define _avrpins_h_
31 
32 #if defined(__AVR__)
33 
34 // pointers are 16 bits on AVR
35 #define pgm_read_pointer(p) pgm_read_word(p)
36 
37 // Support for these boards needs to be manually activated in settings.h or in a makefile
38 #if !defined(BOARD_MEGA_ADK) && defined(__AVR_ATmega2560__) && (USE_UHS_MEGA_ADK || defined(ARDUINO_AVR_ADK))
39 #define BOARD_MEGA_ADK
40 #elif !defined(BOARD_BLACK_WIDDOW) && USE_UHS_BLACK_WIDDOW
41 #define BOARD_BLACK_WIDDOW
42 #endif
43 
44 #ifdef PORTA
45 #define USE_PORTA
46 #endif
47 #ifdef PORTB
48 #define USE_PORTB
49 #endif
50 #ifdef PORTC
51 #define USE_PORTC
52 #endif
53 #ifdef PORTD
54 #define USE_PORTD
55 #endif
56 #ifdef PORTE
57 #define USE_PORTE
58 #endif
59 #ifdef PORTF
60 #define USE_PORTF
61 #endif
62 #ifdef PORTG
63 #define USE_PORTG
64 #endif
65 #ifdef PORTH
66 #define USE_PORTH
67 #endif
68 #ifdef PORTJ
69 #define USE_PORTJ
70 #endif
71 #ifdef PORTK
72 #define USE_PORTK
73 #endif
74 #ifdef PORTL
75 #define USE_PORTL
76 #endif
77 #ifdef PORTQ
78 #define USE_PORTQ
79 #endif
80 #ifdef PORTR
81 #define USE_PORTR
82 #endif
83 
84 #ifdef TCCR0A
85 #define USE_TCCR0A
86 #endif
87 #ifdef TCCR1A
88 #define USE_TCCR1A
89 #endif
90 #ifdef TCCR2A
91 #define USE_TCCR2A
92 #endif
93 
94 //Port definitions for AtTiny, AtMega families.
95 
96 #define MAKE_PORT(portName, ddrName, pinName, className, ID) \
97  class className{\
98  public:\
99  typedef uint8_t DataT;\
100  public:\
101  static void Write(DataT value){portName = value;}\
102  static void ClearAndSet(DataT clearMask, DataT value){portName = (portName & ~clearMask) | value;}\
103  static DataT Read(){return portName;}\
104  static void DirWrite(DataT value){ddrName = value;}\
105  static DataT DirRead(){return ddrName;}\
106  static void Set(DataT value){portName |= value;}\
107  static void Clear(DataT value){portName &= ~value;}\
108  static void Toggle(DataT value){portName ^= value;}\
109  static void DirSet(DataT value){ddrName |= value;}\
110  static void DirClear(DataT value){ddrName &= ~value;}\
111  static void DirToggle(DataT value){ddrName ^= value;}\
112  static DataT PinRead(){return pinName;}\
113  enum{Id = ID};\
114  enum{Width=sizeof(DataT)*8};\
115  };
116 
117 // TCCR registers to set/clear Arduino PWM
118 #define MAKE_TCCR(TccrName, className) \
119  class className{\
120  public:\
121  typedef uint8_t DataT;\
122  public:\
123  static void Write(DataT value){TccrName = value;}\
124  static void ClearAndSet(DataT clearMask, DataT value){TccrName = (TccrName & ~clearMask) | value;}\
125  static DataT Read(){return TccrName;}\
126  static void Set(DataT value){TccrName |= value;}\
127  static void Clear(DataT value){TccrName &= ~value;}\
128  static void Toggle(DataT value){TccrName ^= value;}\
129  enum{Width=sizeof(DataT)*8};\
130  };
131 
132 #ifdef USE_PORTA
133 
134 MAKE_PORT(PORTA, DDRA, PINA, Porta, 'A')
135 #endif
136 #ifdef USE_PORTB
137 MAKE_PORT(PORTB, DDRB, PINB, Portb, 'B')
138 #endif
139 #ifdef USE_PORTC
140 MAKE_PORT(PORTC, DDRC, PINC, Portc, 'C')
141 #endif
142 #ifdef USE_PORTD
143 MAKE_PORT(PORTD, DDRD, PIND, Portd, 'D')
144 #endif
145 #ifdef USE_PORTE
146 MAKE_PORT(PORTE, DDRE, PINE, Porte, 'E')
147 #endif
148 #ifdef USE_PORTF
149 MAKE_PORT(PORTF, DDRF, PINF, Portf, 'F')
150 #endif
151 #ifdef USE_PORTG
152 MAKE_PORT(PORTG, DDRG, PING, Portg, 'G')
153 #endif
154 #ifdef USE_PORTH
155 MAKE_PORT(PORTH, DDRH, PINH, Porth, 'H')
156 #endif
157 #ifdef USE_PORTJ
158 MAKE_PORT(PORTJ, DDRJ, PINJ, Portj, 'J')
159 #endif
160 #ifdef USE_PORTK
161 MAKE_PORT(PORTK, DDRK, PINK, Portk, 'K')
162 #endif
163 #ifdef USE_PORTL
164 MAKE_PORT(PORTL, DDRL, PINL, Portl, 'L')
165 #endif
166 #ifdef USE_PORTQ
167 MAKE_PORT(PORTQ, DDRQ, PINQ, Portq, 'Q')
168 #endif
169 #ifdef USE_PORTR
170 MAKE_PORT(PORTR, DDRR, PINR, Portr, 'R')
171 #endif
172 
173 #ifdef USE_TCCR0A
174 MAKE_TCCR(TCCR0A, Tccr0a)
175 #endif
176 #ifdef USE_TCCR1A
177 MAKE_TCCR(TCCR1A, Tccr1a)
178 #endif
179 #ifdef USE_TCCR2A
180 MAKE_TCCR(TCCR2A, Tccr2a)
181 #endif
182 
183 // this class represents one pin in a IO port.
184 // It is fully static.
185 template<typename PORT, uint8_t PIN>
186 class TPin {
187  // BOOST_STATIC_ASSERT(PIN < PORT::Width);
188 public:
189  typedef PORT Port;
190 
191  enum {
192  Number = PIN
193  };
194 
195  static void Set() {
196  PORT::Set(1 << PIN);
197  }
198 
199  static void Set(uint8_t val) {
200  if(val)
201  Set();
202  else Clear();
203  }
204 
205  static void SetDir(uint8_t val) {
206  if(val)
207  SetDirWrite();
208  else SetDirRead();
209  }
210 
211  static void Clear() {
212  PORT::Clear(1 << PIN);
213  }
214 
215  static void Toggle() {
216  PORT::Toggle(1 << PIN);
217  }
218 
219  static void SetDirRead() {
220  PORT::DirClear(1 << PIN);
221  }
222 
223  static void SetDirWrite() {
224  PORT::DirSet(1 << PIN);
225  }
226 
227  static uint8_t IsSet() {
228  return PORT::PinRead() & (uint8_t)(1 << PIN);
229  }
230 
231  static void WaiteForSet() {
232  while(IsSet() == 0) {
233  }
234  }
235 
236  static void WaiteForClear() {
237  while(IsSet()) {
238  }
239  }
240 }; //class TPin...
241 
242 // this class represents one bit in TCCR port.
243 // used to set/clear TCCRx bits
244 // It is fully static.
245 
246 template<typename TCCR, uint8_t COM>
247 class TCom {
248  // BOOST_STATIC_ASSERT(PIN < PORT::Width);
249 public:
250  typedef TCCR Tccr;
251 
252  enum {
253  Com = COM
254  };
255 
256  static void Set() {
257  TCCR::Set(1 << COM);
258  }
259 
260  static void Clear() {
261  TCCR::Clear(1 << COM);
262  }
263 
264  static void Toggle() {
265  TCCR::Toggle(1 << COM);
266  }
267 }; //class TCom...
268 
269 //Short pin definitions
270 #ifdef USE_PORTA
271 typedef TPin<Porta, 0 > Pa0;
272 typedef TPin<Porta, 1 > Pa1;
273 typedef TPin<Porta, 2 > Pa2;
274 typedef TPin<Porta, 3 > Pa3;
275 typedef TPin<Porta, 4 > Pa4;
276 typedef TPin<Porta, 5 > Pa5;
277 typedef TPin<Porta, 6 > Pa6;
278 typedef TPin<Porta, 7 > Pa7;
279 #endif
280 
281 #ifdef USE_PORTB
282 typedef TPin<Portb, 0 > Pb0;
283 typedef TPin<Portb, 1 > Pb1;
284 typedef TPin<Portb, 2 > Pb2;
285 typedef TPin<Portb, 3 > Pb3;
286 typedef TPin<Portb, 4 > Pb4;
287 typedef TPin<Portb, 5 > Pb5;
288 typedef TPin<Portb, 6 > Pb6;
289 typedef TPin<Portb, 7 > Pb7;
290 #endif
291 
292 #ifdef USE_PORTC
293 typedef TPin<Portc, 0 > Pc0;
294 typedef TPin<Portc, 1 > Pc1;
295 typedef TPin<Portc, 2 > Pc2;
296 typedef TPin<Portc, 3 > Pc3;
297 typedef TPin<Portc, 4 > Pc4;
298 typedef TPin<Portc, 5 > Pc5;
299 typedef TPin<Portc, 6 > Pc6;
300 typedef TPin<Portc, 7 > Pc7;
301 #endif
302 
303 #ifdef USE_PORTD
304 typedef TPin<Portd, 0 > Pd0;
305 typedef TPin<Portd, 1 > Pd1;
306 typedef TPin<Portd, 2 > Pd2;
307 typedef TPin<Portd, 3 > Pd3;
308 typedef TPin<Portd, 4 > Pd4;
309 typedef TPin<Portd, 5 > Pd5;
310 typedef TPin<Portd, 6 > Pd6;
311 typedef TPin<Portd, 7 > Pd7;
312 #endif
313 
314 #ifdef USE_PORTE
315 typedef TPin<Porte, 0 > Pe0;
316 typedef TPin<Porte, 1 > Pe1;
317 typedef TPin<Porte, 2 > Pe2;
318 typedef TPin<Porte, 3 > Pe3;
319 typedef TPin<Porte, 4 > Pe4;
320 typedef TPin<Porte, 5 > Pe5;
321 typedef TPin<Porte, 6 > Pe6;
322 typedef TPin<Porte, 7 > Pe7;
323 #endif
324 
325 #ifdef USE_PORTF
326 typedef TPin<Portf, 0 > Pf0;
327 typedef TPin<Portf, 1 > Pf1;
328 typedef TPin<Portf, 2 > Pf2;
329 typedef TPin<Portf, 3 > Pf3;
330 typedef TPin<Portf, 4 > Pf4;
331 typedef TPin<Portf, 5 > Pf5;
332 typedef TPin<Portf, 6 > Pf6;
333 typedef TPin<Portf, 7 > Pf7;
334 #endif
335 
336 #ifdef USE_PORTG
337 typedef TPin<Portg, 0 > Pg0;
338 typedef TPin<Portg, 1 > Pg1;
339 typedef TPin<Portg, 2 > Pg2;
340 typedef TPin<Portg, 3 > Pg3;
341 typedef TPin<Portg, 4 > Pg4;
342 typedef TPin<Portg, 5 > Pg5;
343 typedef TPin<Portg, 6 > Pg6;
344 typedef TPin<Portg, 7 > Pg7;
345 #endif
346 
347 #ifdef USE_PORTH
348 typedef TPin<Porth, 0 > Ph0;
349 typedef TPin<Porth, 1 > Ph1;
350 typedef TPin<Porth, 2 > Ph2;
351 typedef TPin<Porth, 3 > Ph3;
352 typedef TPin<Porth, 4 > Ph4;
353 typedef TPin<Porth, 5 > Ph5;
354 typedef TPin<Porth, 6 > Ph6;
355 typedef TPin<Porth, 7 > Ph7;
356 #endif
357 
358 #ifdef USE_PORTJ
359 typedef TPin<Portj, 0 > Pj0;
360 typedef TPin<Portj, 1 > Pj1;
361 typedef TPin<Portj, 2 > Pj2;
362 typedef TPin<Portj, 3 > Pj3;
363 typedef TPin<Portj, 4 > Pj4;
364 typedef TPin<Portj, 5 > Pj5;
365 typedef TPin<Portj, 6 > Pj6;
366 typedef TPin<Portj, 7 > Pj7;
367 #endif
368 
369 #ifdef USE_PORTK
370 typedef TPin<Portk, 0 > Pk0;
371 typedef TPin<Portk, 1 > Pk1;
372 typedef TPin<Portk, 2 > Pk2;
373 typedef TPin<Portk, 3 > Pk3;
374 typedef TPin<Portk, 4 > Pk4;
375 typedef TPin<Portk, 5 > Pk5;
376 typedef TPin<Portk, 6 > Pk6;
377 typedef TPin<Portk, 7 > Pk7;
378 #endif
379 
380 #ifdef USE_PORTL
381 typedef TPin<Portl, 0 > Pl0;
382 typedef TPin<Portl, 1 > Pl1;
383 typedef TPin<Portl, 2 > Pl2;
384 typedef TPin<Portl, 3 > Pl3;
385 typedef TPin<Portl, 4 > Pl4;
386 typedef TPin<Portl, 5 > Pl5;
387 typedef TPin<Portl, 6 > Pl6;
388 typedef TPin<Portl, 7 > Pl7;
389 #endif
390 
391 #ifdef USE_PORTQ
392 typedef TPin<Portq, 0 > Pq0;
393 typedef TPin<Portq, 1 > Pq1;
394 typedef TPin<Portq, 2 > Pq2;
395 typedef TPin<Portq, 3 > Pq3;
396 typedef TPin<Portq, 4 > Pq4;
397 typedef TPin<Portq, 5 > Pq5;
398 typedef TPin<Portq, 6 > Pq6;
399 typedef TPin<Portq, 7 > Pq7;
400 #endif
401 
402 #ifdef USE_PORTR
403 typedef TPin<Portr, 0 > Pr0;
404 typedef TPin<Portr, 1 > Pr1;
405 typedef TPin<Portr, 2 > Pr2;
406 typedef TPin<Portr, 3 > Pr3;
407 typedef TPin<Portr, 4 > Pr4;
408 typedef TPin<Portr, 5 > Pr5;
409 typedef TPin<Portr, 6 > Pr6;
410 typedef TPin<Portr, 7 > Pr7;
411 #endif
412 
413 #ifdef USE_TCCR0A
414 typedef TCom<Tccr0a, COM0A1> Tc0a; //P6
415 typedef TCom<Tccr0a, COM0B1> Tc0b; //P5
416 #endif
417 
418 #ifdef USE_TCCR1A
419 typedef TCom<Tccr1a, COM1A1> Tc1a; //P9
420 typedef TCom<Tccr1a, COM1B1> Tc1b; //P10
421 #endif
422 
423 #ifdef USE_TCCR2A
424 typedef TCom<Tccr2a, COM2A1> Tc2a; //P11
425 typedef TCom<Tccr2a, COM2B1> Tc2b; //P3
426 #endif
427 
428 template<typename Tp_pin, typename Tc_bit>
429 class Tp_Tc {
430 public:
431 
432  static void SetDir(uint8_t val) {
433  if(val)
434  SetDirWrite();
435  else SetDirRead();
436  }
437 
438  static void SetDirRead() {
439  Tp_pin::SetDirRead(); //set pin direction
440  Tc_bit::Clear(); //disconnect pin from PWM
441  }
442 
443  static void SetDirWrite() {
444  Tp_pin::SetDirWrite();
445  Tc_bit::Clear();
446  }
447 };
448 
449 /* pin definitions for cases where it's necessary to clear compare output mode bits */
450 
451 //typedef Tp_Tc<Pd3, Tc2b> P3; //Arduino pin 3
452 //typedef Tp_Tc<Pd5, Tc0b> P5; //Arduino pin 5
453 //typedef Tp_Tc<Pd6, Tc0a> P6; //Arduino pin 6
454 //typedef Tp_Tc<Pb1, Tc1a> P9; //Arduino pin 9
455 //typedef Tp_Tc<Pb2, Tc1b> P10; //Arduino pin 10
456 //typedef Tp_Tc<Pb3, Tc2a> P11; //Arduino pin 11
457 
458 /* Arduino pin definitions */
459 #if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)
460 // "Mega" Arduino pin numbers
461 
462 #define P0 Pe0
463 #define P1 Pe1
464 #define P2 Pe4
465 #define P3 Pe5
466 #define P4 Pg5
467 #define P5 Pe3
468 #define P6 Ph3
469 #define P7 Ph4
470 
471 #define P8 Ph5
472 #define P9 Ph6
473 #define P10 Pb4
474 #define P11 Pb5
475 #define P12 Pb6
476 #define P13 Pb7
477 
478 #define P14 Pj1
479 #define P15 Pj0
480 #define P16 Ph1
481 #define P17 Ph0
482 #define P18 Pd3
483 #define P19 Pd2
484 #define P20 Pd1
485 #define P21 Pd0
486 
487 #define P22 Pa0
488 #define P23 Pa1
489 #define P24 Pa2
490 #define P25 Pa3
491 #define P26 Pa4
492 #define P27 Pa5
493 #define P28 Pa6
494 #define P29 Pa7
495 #define P30 Pc7
496 #define P31 Pc6
497 #define P32 Pc5
498 #define P33 Pc4
499 #define P34 Pc3
500 #define P35 Pc2
501 #define P36 Pc1
502 #define P37 Pc0
503 
504 #define P38 Pd7
505 #define P39 Pg2
506 #define P40 Pg1
507 #define P41 Pg0
508 #define P42 Pl7
509 #define P43 Pl6
510 #define P44 Pl5
511 #define P45 Pl4
512 #define P46 Pl3
513 #define P47 Pl2
514 #define P48 Pl1
515 #define P49 Pl0
516 #define P50 Pb3
517 #define P51 Pb2
518 #define P52 Pb1
519 #define P53 Pb0
520 
521 #ifdef BOARD_MEGA_ADK // These pins are not broken out on the Arduino ADK
522 #define P54 Pe6 // INT on Arduino ADK
523 #define P55 Pj2 // MAX_RESET on Arduino ADK
524 #endif
525 
526 // "Mega" pin numbers
527 
528 #elif defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__)
529 // "Classic" Arduino pin numbers
530 
531 #define P0 Pd0
532 #define P1 Pd1
533 #define P2 Pd2
534 #define P3 Pd3
535 #define P4 Pd4
536 #define P5 Pd5
537 #define P6 Pd6
538 #define P7 Pd7
539 
540 #define P8 Pb0
541 #define P9 Pb1
542 #define P10 Pb2
543 #define P11 Pb3
544 #define P12 Pb4
545 #define P13 Pb5
546 
547 #define P14 Pc0
548 #define P15 Pc1
549 #define P16 Pc2
550 #define P17 Pc3
551 #define P18 Pc4
552 #define P19 Pc5
553 
554 // "Classic" Arduino pin numbers
555 
556 #elif defined(CORE_TEENSY) && defined(__AVR_ATmega32U4__)
557 // Teensy 2.0 pin numbers
558 // http://www.pjrc.com/teensy/pinout.html
559 #define P0 Pb0
560 #define P1 Pb1
561 #define P2 Pb2
562 #define P3 Pb3
563 #define P4 Pb7
564 #define P5 Pd0
565 #define P6 Pd1
566 #define P7 Pd2
567 #define P8 Pd3
568 #define P9 Pc6
569 #define P10 Pc7
570 #define P11 Pd6
571 #define P12 Pd7
572 #define P13 Pb4
573 #define P14 Pb5
574 #define P15 Pb6
575 #define P16 Pf7
576 #define P17 Pf6
577 #define P18 Pf5
578 #define P19 Pf4
579 #define P20 Pf1
580 #define P21 Pf0
581 #define P22 Pd4
582 #define P23 Pd5
583 #define P24 Pe6
584 // Teensy 2.0
585 
586 #elif defined(__AVR_ATmega32U4__)
587 // Arduino Leonardo pin numbers
588 
589 #define P0 Pd2 // D0 - PD2
590 #define P1 Pd3 // D1 - PD3
591 #define P2 Pd1 // D2 - PD1
592 #define P3 Pd0 // D3 - PD0
593 #define P4 Pd4 // D4 - PD4
594 #define P5 Pc6 // D5 - PC6
595 #define P6 Pd7 // D6 - PD7
596 #define P7 Pe6 // D7 - PE6
597 
598 #define P8 Pb4 // D8 - PB4
599 #define P9 Pb5 // D9 - PB5
600 #define P10 Pb6 // D10 - PB6
601 #define P11 Pb7 // D11 - PB7
602 #define P12 Pd6 // D12 - PD6
603 #define P13 Pc7 // D13 - PC7
604 
605 #define P14 Pb3 // D14 - MISO - PB3
606 #define P15 Pb1 // D15 - SCK - PB1
607 #define P16 Pb2 // D16 - MOSI - PB2
608 #define P17 Pb0 // D17 - SS - PB0
609 
610 #define P18 Pf7 // D18 - A0 - PF7
611 #define P19 Pf6 // D19 - A1 - PF6
612 #define P20 Pf5 // D20 - A2 - PF5
613 #define P21 Pf4 // D21 - A3 - PF4
614 #define P22 Pf1 // D22 - A4 - PF1
615 #define P23 Pf0 // D23 - A5 - PF0
616 
617 #define P24 Pd4 // D24 / D4 - A6 - PD4
618 #define P25 Pd7 // D25 / D6 - A7 - PD7
619 #define P26 Pb4 // D26 / D8 - A8 - PB4
620 #define P27 Pb5 // D27 / D9 - A9 - PB5
621 #define P28 Pb6 // D28 / D10 - A10 - PB6
622 #define P29 Pd6 // D29 / D12 - A11 - PD6
623 
624 // Arduino Leonardo pin numbers
625 
626 #elif defined(CORE_TEENSY) && (defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB1286__))
627 // Teensy++ 1.0 and 2.0 pin numbers
628 // http://www.pjrc.com/teensy/pinout.html
629 #define P0 Pd0
630 #define P1 Pd1
631 #define P2 Pd2
632 #define P3 Pd3
633 #define P4 Pd4
634 #define P5 Pd5
635 #define P6 Pd6
636 #define P7 Pd7
637 #define P8 Pe0
638 #define P9 Pe1
639 #define P10 Pc0
640 #define P11 Pc1
641 #define P12 Pc2
642 #define P13 Pc3
643 #define P14 Pc4
644 #define P15 Pc5
645 #define P16 Pc6
646 #define P17 Pc7
647 #define P18 Pe6
648 #define P19 Pe7
649 #define P20 Pb0
650 #define P21 Pb1
651 #define P22 Pb2
652 #define P23 Pb3
653 #define P24 Pb4
654 #define P25 Pb5
655 #define P26 Pb6
656 #define P27 Pb7
657 #define P28 Pa0
658 #define P29 Pa1
659 #define P30 Pa2
660 #define P31 Pa3
661 #define P32 Pa4
662 #define P33 Pa5
663 #define P34 Pa6
664 #define P35 Pa7
665 #define P36 Pe4
666 #define P37 Pe5
667 #define P38 Pf0
668 #define P39 Pf1
669 #define P40 Pf2
670 #define P41 Pf3
671 #define P42 Pf4
672 #define P43 Pf5
673 #define P44 Pf6
674 #define P45 Pf7
675 // Teensy++ 1.0 and 2.0
676 
677 #elif defined(ARDUINO_AVR_BALANDUINO) && (defined(__AVR_ATmega644__) || defined(__AVR_ATmega1284P__))
678 // Balanduino pin numbers
679 // http://balanduino.net/
680 #define P0 Pd0 /* 0 - PD0 */
681 #define P1 Pd1 /* 1 - PD1 */
682 
683 #if BALANDUINO_REVISION < 13
684  #define P2 Pb2 /* 2 - PB2 */
685  #define P3 Pd6 /* 3 - PD6 */
686  #define P4 Pd7 /* 4 - PD7 */
687  #define P5 Pb3 /* 5 - PB3 */
688 #else
689  #define P2 Pd2 /* 2 - PD2 */
690  #define P3 Pd3 /* 3 - PD3 */
691  #define P4 Pd6 /* 4 - PD6 */
692  #define P5 Pd7 /* 5 - PD7 */
693 #endif
694 
695 #define P6 Pb4 /* 6 - PB4 */
696 #define P7 Pa0 /* 7 - PA0 */
697 #define P8 Pa1 /* 8 - PA1 */
698 #define P9 Pa2 /* 9 - PA2 */
699 #define P10 Pa3 /* 10 - PA3 */
700 #define P11 Pa4 /* 11 - PA4 */
701 #define P12 Pa5 /* 12 - PA5 */
702 #define P13 Pc1 /* 13 - PC1 */
703 #define P14 Pc0 /* 14 - PC0 */
704 
705 #if BALANDUINO_REVISION < 13
706  #define P15 Pd2 /* 15 - PD2 */
707  #define P16 Pd3 /* 16 - PD3 */
708 #else
709  #define P15 Pb2 /* 15 - PB2 */
710  #define P16 Pb3 /* 16 - PB2 */
711 #endif
712 
713 #define P17 Pd4 /* 17 - PD4 */
714 #define P18 Pd5 /* 18 - PD5 */
715 #define P19 Pc2 /* 19 - PC2 */
716 #define P20 Pc3 /* 20 - PC3 */
717 #define P21 Pc4 /* 21 - PC4 */
718 #define P22 Pc5 /* 22 - PC5 */
719 #define P23 Pc6 /* 23 - PC6 */
720 #define P24 Pc7 /* 24 - PC7 */
721 #define P25 Pb0 /* 25 - PB0 */
722 #define P26 Pb1 /* 26 - PB1 */
723 #define P27 Pb5 /* 27 - PB5 */
724 #define P28 Pb6 /* 28 - PB6 */
725 #define P29 Pb7 /* 29 - PB7 */
726 #define P30 Pa6 /* 30 - PA6 */
727 #define P31 Pa7 /* 31 - PA7 */
728 // Balanduino
729 
730 #elif defined(ARDUINO_AVR_UNO_PRO) && defined(__AVR_ATmega1284P__)
731 // UNO*Pro pin numbers
732 // Homepage: http://www.hobbytronics.co.uk/arduino-uno-pro
733 // Pin Reference: http://www.hobbytronics.co.uk/download/uno_pro/pins_arduino.h
734 #define P0 Pd0
735 #define P1 Pd1
736 #define P2 Pb2
737 #define P3 Pb3
738 #define P4 Pb0
739 #define P5 Pb1
740 #define P6 Pd2
741 #define P7 Pd3
742 #define P8 Pd5
743 #define P9 Pd6
744 #define P10 Pb4
745 #define P11 Pb5
746 #define P12 Pb6
747 #define P13 Pb7
748 #define P14 Pa7
749 #define P15 Pa6
750 #define P16 Pa5
751 #define P17 Pa4
752 #define P18 Pa3
753 #define P19 Pa2
754 #define P20 Pa1
755 #define P21 Pa0
756 #define P22 Pc0
757 #define P23 Pc1
758 #define P24 Pc2
759 #define P25 Pc3
760 #define P26 Pc4
761 #define P27 Pc5
762 #define P28 Pc6
763 #define P29 Pc7
764 #define P30 Pd4
765 #define P31 Pd7
766 // UNO*Pro
767 
768 #elif defined(__AVR_ATmega644__) || defined(__AVR_ATmega644P__) || defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__)
769 // Sanguino pin numbers
770 // Homepage: http://sanguino.cc/hardware
771 // Hardware add-on: https://github.com/Lauszus/Sanguino
772 #define P0 Pb0
773 #define P1 Pb1
774 #define P2 Pb2
775 #define P3 Pb3
776 #define P4 Pb4
777 #define P5 Pb5
778 #define P6 Pb6
779 #define P7 Pb7
780 #define P8 Pd0
781 #define P9 Pd1
782 #define P10 Pd2
783 #define P11 Pd3
784 #define P12 Pd4
785 #define P13 Pd5
786 #define P14 Pd6
787 #define P15 Pd7
788 #define P16 Pc0
789 #define P17 Pc1
790 #define P18 Pc2
791 #define P19 Pc3
792 #define P20 Pc4
793 #define P21 Pc5
794 #define P22 Pc6
795 #define P23 Pc7
796 #define P24 Pa0
797 #define P25 Pa1
798 #define P26 Pa2
799 #define P27 Pa3
800 #define P28 Pa4
801 #define P29 Pa5
802 #define P30 Pa6
803 #define P31 Pa7
804 // Sanguino
805 
806 #else
807 #error "Please define board in avrpins.h"
808 
809 #endif // Arduino pin definitions
810 
811 #elif defined(__arm__)
812 
813 // pointers are 32 bits on ARM
814 #define pgm_read_pointer(p) pgm_read_dword(p)
815 
816 #if defined(CORE_TEENSY) && (defined(__MK20DX128__) || defined(__MK20DX256__) || defined(__MK64FX512__) || defined(__MK66FX1M0__))
817 
818 #include "core_pins.h"
819 #include "avr_emulation.h"
820 
821 #define GPIO_BITBAND_ADDR(reg, bit) (((uint32_t)&(reg) - 0x40000000) * 32 + (bit) * 4 + 0x42000000)
822 #define GPIO_BITBAND_PTR(reg, bit) ((uint8_t *)GPIO_BITBAND_ADDR((reg), (bit)))
823 
824 #define MAKE_PIN(className, baseReg, pinNum, configReg) \
825 class className { \
826 public: \
827  static void Set() { \
828  *GPIO_BITBAND_PTR(baseReg, pinNum) = 1; \
829  } \
830  static void Clear() { \
831  *GPIO_BITBAND_PTR(baseReg, pinNum) = 0; \
832  } \
833  static void SetDirRead() { \
834  configReg = PORT_PCR_SRE | PORT_PCR_DSE | PORT_PCR_MUX(1); \
835  *(GPIO_BITBAND_PTR(baseReg, pinNum) + 640) = 0; \
836  } \
837  static void SetDirWrite() { \
838  configReg = PORT_PCR_SRE | PORT_PCR_DSE | PORT_PCR_MUX(1); \
839  *(GPIO_BITBAND_PTR(baseReg, pinNum) + 640) = 1; \
840  } \
841  static uint8_t IsSet() { \
842  return *(GPIO_BITBAND_PTR(baseReg, pinNum) + 512); \
843  } \
844 };
845 
846 MAKE_PIN(P0, CORE_PIN0_PORTREG, CORE_PIN0_BIT, CORE_PIN0_CONFIG);
847 MAKE_PIN(P1, CORE_PIN1_PORTREG, CORE_PIN1_BIT, CORE_PIN1_CONFIG);
848 MAKE_PIN(P2, CORE_PIN2_PORTREG, CORE_PIN2_BIT, CORE_PIN2_CONFIG);
849 MAKE_PIN(P3, CORE_PIN3_PORTREG, CORE_PIN3_BIT, CORE_PIN3_CONFIG);
850 MAKE_PIN(P4, CORE_PIN4_PORTREG, CORE_PIN4_BIT, CORE_PIN4_CONFIG);
851 MAKE_PIN(P5, CORE_PIN5_PORTREG, CORE_PIN5_BIT, CORE_PIN5_CONFIG);
852 MAKE_PIN(P6, CORE_PIN6_PORTREG, CORE_PIN6_BIT, CORE_PIN6_CONFIG);
853 MAKE_PIN(P7, CORE_PIN7_PORTREG, CORE_PIN7_BIT, CORE_PIN7_CONFIG);
854 MAKE_PIN(P8, CORE_PIN8_PORTREG, CORE_PIN8_BIT, CORE_PIN8_CONFIG);
855 MAKE_PIN(P9, CORE_PIN9_PORTREG, CORE_PIN9_BIT, CORE_PIN9_CONFIG);
856 MAKE_PIN(P10, CORE_PIN10_PORTREG, CORE_PIN10_BIT, CORE_PIN10_CONFIG);
857 MAKE_PIN(P11, CORE_PIN11_PORTREG, CORE_PIN11_BIT, CORE_PIN11_CONFIG);
858 MAKE_PIN(P12, CORE_PIN12_PORTREG, CORE_PIN12_BIT, CORE_PIN12_CONFIG);
859 MAKE_PIN(P13, CORE_PIN13_PORTREG, CORE_PIN13_BIT, CORE_PIN13_CONFIG);
860 MAKE_PIN(P14, CORE_PIN14_PORTREG, CORE_PIN14_BIT, CORE_PIN14_CONFIG);
861 MAKE_PIN(P15, CORE_PIN15_PORTREG, CORE_PIN15_BIT, CORE_PIN15_CONFIG);
862 MAKE_PIN(P16, CORE_PIN16_PORTREG, CORE_PIN16_BIT, CORE_PIN16_CONFIG);
863 MAKE_PIN(P17, CORE_PIN17_PORTREG, CORE_PIN17_BIT, CORE_PIN17_CONFIG);
864 MAKE_PIN(P18, CORE_PIN18_PORTREG, CORE_PIN18_BIT, CORE_PIN18_CONFIG);
865 MAKE_PIN(P19, CORE_PIN19_PORTREG, CORE_PIN19_BIT, CORE_PIN19_CONFIG);
866 MAKE_PIN(P20, CORE_PIN20_PORTREG, CORE_PIN20_BIT, CORE_PIN20_CONFIG);
867 MAKE_PIN(P21, CORE_PIN21_PORTREG, CORE_PIN21_BIT, CORE_PIN21_CONFIG);
868 MAKE_PIN(P22, CORE_PIN22_PORTREG, CORE_PIN22_BIT, CORE_PIN22_CONFIG);
869 MAKE_PIN(P23, CORE_PIN23_PORTREG, CORE_PIN23_BIT, CORE_PIN23_CONFIG);
870 MAKE_PIN(P24, CORE_PIN24_PORTREG, CORE_PIN24_BIT, CORE_PIN24_CONFIG);
871 MAKE_PIN(P25, CORE_PIN25_PORTREG, CORE_PIN25_BIT, CORE_PIN25_CONFIG);
872 MAKE_PIN(P26, CORE_PIN26_PORTREG, CORE_PIN26_BIT, CORE_PIN26_CONFIG);
873 MAKE_PIN(P27, CORE_PIN27_PORTREG, CORE_PIN27_BIT, CORE_PIN27_CONFIG);
874 MAKE_PIN(P28, CORE_PIN28_PORTREG, CORE_PIN28_BIT, CORE_PIN28_CONFIG);
875 MAKE_PIN(P29, CORE_PIN29_PORTREG, CORE_PIN29_BIT, CORE_PIN29_CONFIG);
876 MAKE_PIN(P30, CORE_PIN30_PORTREG, CORE_PIN30_BIT, CORE_PIN30_CONFIG);
877 MAKE_PIN(P31, CORE_PIN31_PORTREG, CORE_PIN31_BIT, CORE_PIN31_CONFIG);
878 MAKE_PIN(P32, CORE_PIN32_PORTREG, CORE_PIN32_BIT, CORE_PIN32_CONFIG);
879 MAKE_PIN(P33, CORE_PIN33_PORTREG, CORE_PIN33_BIT, CORE_PIN33_CONFIG);
880 #if defined(__MK64FX512__) || defined(__MK66FX1M0__)
881 MAKE_PIN(P34, CORE_PIN34_PORTREG, CORE_PIN34_BIT, CORE_PIN34_CONFIG);
882 MAKE_PIN(P35, CORE_PIN35_PORTREG, CORE_PIN35_BIT, CORE_PIN35_CONFIG);
883 MAKE_PIN(P36, CORE_PIN36_PORTREG, CORE_PIN36_BIT, CORE_PIN36_CONFIG);
884 MAKE_PIN(P37, CORE_PIN37_PORTREG, CORE_PIN37_BIT, CORE_PIN37_CONFIG);
885 MAKE_PIN(P38, CORE_PIN38_PORTREG, CORE_PIN38_BIT, CORE_PIN38_CONFIG);
886 MAKE_PIN(P39, CORE_PIN39_PORTREG, CORE_PIN39_BIT, CORE_PIN39_CONFIG);
887 MAKE_PIN(P40, CORE_PIN40_PORTREG, CORE_PIN40_BIT, CORE_PIN40_CONFIG);
888 MAKE_PIN(P41, CORE_PIN41_PORTREG, CORE_PIN41_BIT, CORE_PIN41_CONFIG);
889 MAKE_PIN(P42, CORE_PIN42_PORTREG, CORE_PIN42_BIT, CORE_PIN42_CONFIG);
890 MAKE_PIN(P43, CORE_PIN43_PORTREG, CORE_PIN43_BIT, CORE_PIN43_CONFIG);
891 MAKE_PIN(P44, CORE_PIN44_PORTREG, CORE_PIN44_BIT, CORE_PIN44_CONFIG);
892 MAKE_PIN(P45, CORE_PIN45_PORTREG, CORE_PIN45_BIT, CORE_PIN45_CONFIG);
893 MAKE_PIN(P46, CORE_PIN46_PORTREG, CORE_PIN46_BIT, CORE_PIN46_CONFIG);
894 MAKE_PIN(P47, CORE_PIN47_PORTREG, CORE_PIN47_BIT, CORE_PIN47_CONFIG);
895 MAKE_PIN(P48, CORE_PIN48_PORTREG, CORE_PIN48_BIT, CORE_PIN48_CONFIG);
896 MAKE_PIN(P49, CORE_PIN49_PORTREG, CORE_PIN49_BIT, CORE_PIN49_CONFIG);
897 MAKE_PIN(P50, CORE_PIN50_PORTREG, CORE_PIN50_BIT, CORE_PIN50_CONFIG);
898 MAKE_PIN(P51, CORE_PIN51_PORTREG, CORE_PIN51_BIT, CORE_PIN51_CONFIG);
899 MAKE_PIN(P52, CORE_PIN52_PORTREG, CORE_PIN52_BIT, CORE_PIN52_CONFIG);
900 MAKE_PIN(P53, CORE_PIN53_PORTREG, CORE_PIN53_BIT, CORE_PIN53_CONFIG);
901 MAKE_PIN(P54, CORE_PIN54_PORTREG, CORE_PIN54_BIT, CORE_PIN54_CONFIG);
902 MAKE_PIN(P55, CORE_PIN55_PORTREG, CORE_PIN55_BIT, CORE_PIN55_CONFIG);
903 MAKE_PIN(P56, CORE_PIN56_PORTREG, CORE_PIN56_BIT, CORE_PIN56_CONFIG);
904 MAKE_PIN(P57, CORE_PIN57_PORTREG, CORE_PIN57_BIT, CORE_PIN57_CONFIG);
905 MAKE_PIN(P58, CORE_PIN58_PORTREG, CORE_PIN58_BIT, CORE_PIN58_CONFIG);
906 MAKE_PIN(P59, CORE_PIN59_PORTREG, CORE_PIN59_BIT, CORE_PIN59_CONFIG);
907 MAKE_PIN(P60, CORE_PIN60_PORTREG, CORE_PIN60_BIT, CORE_PIN60_CONFIG);
908 MAKE_PIN(P61, CORE_PIN61_PORTREG, CORE_PIN61_BIT, CORE_PIN61_CONFIG);
909 MAKE_PIN(P62, CORE_PIN62_PORTREG, CORE_PIN62_BIT, CORE_PIN62_CONFIG);
910 MAKE_PIN(P63, CORE_PIN63_PORTREG, CORE_PIN63_BIT, CORE_PIN63_CONFIG);
911 #endif
912 
913 #undef MAKE_PIN
914 
915 #elif defined(CORE_TEENSY) && (defined(__MKL26Z64__))
916 
917 // we could get lower level by making these macros work properly.
918 // for now just use the semi optimised version, it costs a lookup in the pin pgm table per op
919 // but for now it will do.
920 //#define GPIO_BITBAND_ADDR(reg, bit) (((volatile uint8_t *)&(reg) + ((bit) >> 3)))
921 //#define GPIO_BITBAND_MASK(reg, bit) (1<<((bit) & 7))
922 //#define GPIO_BITBAND_PTR(reg, bit) ((volatile uint8_t *)GPIO_BITBAND_ADDR((reg), (bit)))
923 
924 #include "core_pins.h"
925 #include "avr_emulation.h"
926 
927 #define MAKE_PIN(className, baseReg, pinNum, configReg) \
928 class className { \
929 public: \
930  static void Set() { \
931  *portSetRegister(pinNum) = digitalPinToBitMask(pinNum); \
932  } \
933  static void Clear() { \
934  *portClearRegister(pinNum) = digitalPinToBitMask(pinNum); \
935  } \
936  static void SetDirRead() { \
937  configReg = PORT_PCR_SRE | PORT_PCR_DSE | PORT_PCR_MUX(1); \
938  *portModeRegister(pinNum) &= ~digitalPinToBitMask(pinNum); \
939  } \
940  static void SetDirWrite() { \
941  configReg = PORT_PCR_SRE | PORT_PCR_DSE | PORT_PCR_MUX(1); \
942  *portModeRegister(pinNum) |= digitalPinToBitMask(pinNum); \
943  } \
944  static uint8_t IsSet() { \
945  return (*portInputRegister(pinNum) & digitalPinToBitMask(pinNum)) ? 1 : 0; \
946  } \
947 };
948 
949 MAKE_PIN(P0, CORE_PIN0_PORTREG, 0, CORE_PIN0_CONFIG);
950 MAKE_PIN(P1, CORE_PIN1_PORTREG, 1, CORE_PIN1_CONFIG);
951 MAKE_PIN(P2, CORE_PIN2_PORTREG, 2, CORE_PIN2_CONFIG);
952 MAKE_PIN(P3, CORE_PIN3_PORTREG, 3, CORE_PIN3_CONFIG);
953 MAKE_PIN(P4, CORE_PIN4_PORTREG, 4, CORE_PIN4_CONFIG);
954 MAKE_PIN(P5, CORE_PIN5_PORTREG, 5, CORE_PIN5_CONFIG);
955 MAKE_PIN(P6, CORE_PIN6_PORTREG, 6, CORE_PIN6_CONFIG);
956 MAKE_PIN(P7, CORE_PIN7_PORTREG, 7, CORE_PIN7_CONFIG);
957 MAKE_PIN(P8, CORE_PIN8_PORTREG, 8, CORE_PIN8_CONFIG);
958 MAKE_PIN(P9, CORE_PIN9_PORTREG, 9, CORE_PIN9_CONFIG);
959 MAKE_PIN(P10, CORE_PIN10_PORTREG, 10, CORE_PIN10_CONFIG);
960 MAKE_PIN(P11, CORE_PIN11_PORTREG, 11, CORE_PIN11_CONFIG);
961 MAKE_PIN(P12, CORE_PIN12_PORTREG, 12, CORE_PIN12_CONFIG);
962 MAKE_PIN(P13, CORE_PIN13_PORTREG, 13, CORE_PIN13_CONFIG);
963 MAKE_PIN(P14, CORE_PIN14_PORTREG, 14, CORE_PIN14_CONFIG);
964 MAKE_PIN(P15, CORE_PIN15_PORTREG, 15, CORE_PIN15_CONFIG);
965 MAKE_PIN(P16, CORE_PIN16_PORTREG, 16, CORE_PIN16_CONFIG);
966 MAKE_PIN(P17, CORE_PIN17_PORTREG, 17, CORE_PIN17_CONFIG);
967 MAKE_PIN(P18, CORE_PIN18_PORTREG, 18, CORE_PIN18_CONFIG);
968 MAKE_PIN(P19, CORE_PIN19_PORTREG, 19, CORE_PIN19_CONFIG);
969 MAKE_PIN(P20, CORE_PIN20_PORTREG, 20, CORE_PIN20_CONFIG);
970 MAKE_PIN(P21, CORE_PIN21_PORTREG, 21, CORE_PIN21_CONFIG);
971 MAKE_PIN(P22, CORE_PIN22_PORTREG, 22, CORE_PIN22_CONFIG);
972 MAKE_PIN(P23, CORE_PIN23_PORTREG, 23, CORE_PIN23_CONFIG);
973 MAKE_PIN(P24, CORE_PIN24_PORTREG, 24, CORE_PIN24_CONFIG);
974 MAKE_PIN(P25, CORE_PIN25_PORTREG, 25, CORE_PIN25_CONFIG);
975 MAKE_PIN(P26, CORE_PIN26_PORTREG, 26, CORE_PIN26_CONFIG);
976 
977 #undef MAKE_PIN
978 
979 #elif defined(ARDUINO_SAM_DUE) && defined(__SAM3X8E__)
980 
981 // SetDirRead:
982 // Disable interrupts
983 // Disable the pull up resistor
984 // Set to INPUT
985 // Enable PIO
986 
987 // SetDirWrite:
988 // Disable interrupts
989 // Disable the pull up resistor
990 // Set to OUTPUT
991 // Enable PIO
992 
993 #define MAKE_PIN(className, pio, pinMask) \
994 class className { \
995 public: \
996  static void Set() { \
997  pio->PIO_SODR = pinMask; \
998  } \
999  static void Clear() { \
1000  pio->PIO_CODR = pinMask; \
1001  } \
1002  static void SetDirRead() { \
1003  pio->PIO_IDR = pinMask ; \
1004  pio->PIO_PUDR = pinMask; \
1005  pio->PIO_ODR = pinMask; \
1006  pio->PIO_PER = pinMask; \
1007  } \
1008  static void SetDirWrite() { \
1009  pio->PIO_IDR = pinMask ; \
1010  pio->PIO_PUDR = pinMask; \
1011  pio->PIO_OER = pinMask; \
1012  pio->PIO_PER = pinMask; \
1013  } \
1014  static uint8_t IsSet() { \
1015  return pio->PIO_PDSR & pinMask; \
1016  } \
1017 };
1018 
1019 // See: http://arduino.cc/en/Hacking/PinMappingSAM3X and variant.cpp
1020 
1021 MAKE_PIN(P0, PIOA, PIO_PA8);
1022 MAKE_PIN(P1, PIOA, PIO_PA9);
1023 MAKE_PIN(P2, PIOB, PIO_PB25);
1024 MAKE_PIN(P3, PIOC, PIO_PC28);
1025 MAKE_PIN(P4, PIOC, PIO_PC26);
1026 MAKE_PIN(P5, PIOC, PIO_PC25);
1027 MAKE_PIN(P6, PIOC, PIO_PC24);
1028 MAKE_PIN(P7, PIOC, PIO_PC23);
1029 MAKE_PIN(P8, PIOC, PIO_PC22);
1030 MAKE_PIN(P9, PIOC, PIO_PC21);
1031 MAKE_PIN(P10, PIOC, PIO_PC29);
1032 MAKE_PIN(P11, PIOD, PIO_PD7);
1033 MAKE_PIN(P12, PIOD, PIO_PD8);
1034 MAKE_PIN(P13, PIOB, PIO_PB27);
1035 MAKE_PIN(P14, PIOD, PIO_PD4);
1036 MAKE_PIN(P15, PIOD, PIO_PD5);
1037 MAKE_PIN(P16, PIOA, PIO_PA13);
1038 MAKE_PIN(P17, PIOA, PIO_PA12);
1039 MAKE_PIN(P18, PIOA, PIO_PA11);
1040 MAKE_PIN(P19, PIOA, PIO_PA10);
1041 MAKE_PIN(P20, PIOB, PIO_PB12);
1042 MAKE_PIN(P21, PIOB, PIO_PB13);
1043 MAKE_PIN(P22, PIOB, PIO_PB26);
1044 MAKE_PIN(P23, PIOA, PIO_PA14);
1045 MAKE_PIN(P24, PIOA, PIO_PA15);
1046 MAKE_PIN(P25, PIOD, PIO_PD0);
1047 MAKE_PIN(P26, PIOD, PIO_PD1);
1048 MAKE_PIN(P27, PIOD, PIO_PD2);
1049 MAKE_PIN(P28, PIOD, PIO_PD3);
1050 MAKE_PIN(P29, PIOD, PIO_PD6);
1051 MAKE_PIN(P30, PIOD, PIO_PD9);
1052 MAKE_PIN(P31, PIOA, PIO_PA7);
1053 MAKE_PIN(P32, PIOD, PIO_PD10);
1054 MAKE_PIN(P33, PIOC, PIO_PC1);
1055 MAKE_PIN(P34, PIOC, PIO_PC2);
1056 MAKE_PIN(P35, PIOC, PIO_PC3);
1057 MAKE_PIN(P36, PIOC, PIO_PC4);
1058 MAKE_PIN(P37, PIOC, PIO_PC5);
1059 MAKE_PIN(P38, PIOC, PIO_PC6);
1060 MAKE_PIN(P39, PIOC, PIO_PC7);
1061 MAKE_PIN(P40, PIOC, PIO_PC8);
1062 MAKE_PIN(P41, PIOC, PIO_PC9);
1063 MAKE_PIN(P42, PIOA, PIO_PA19);
1064 MAKE_PIN(P43, PIOA, PIO_PA20);
1065 MAKE_PIN(P44, PIOC, PIO_PC19);
1066 MAKE_PIN(P45, PIOC, PIO_PC18);
1067 MAKE_PIN(P46, PIOC, PIO_PC17);
1068 MAKE_PIN(P47, PIOC, PIO_PC16);
1069 MAKE_PIN(P48, PIOC, PIO_PC15);
1070 MAKE_PIN(P49, PIOC, PIO_PC14);
1071 MAKE_PIN(P50, PIOC, PIO_PC13);
1072 MAKE_PIN(P51, PIOC, PIO_PC12);
1073 MAKE_PIN(P52, PIOB, PIO_PB21);
1074 MAKE_PIN(P53, PIOB, PIO_PB14);
1075 MAKE_PIN(P54, PIOA, PIO_PA16);
1076 MAKE_PIN(P55, PIOA, PIO_PA24);
1077 MAKE_PIN(P56, PIOA, PIO_PA23);
1078 MAKE_PIN(P57, PIOA, PIO_PA22);
1079 MAKE_PIN(P58, PIOA, PIO_PA6);
1080 MAKE_PIN(P59, PIOA, PIO_PA4);
1081 MAKE_PIN(P60, PIOA, PIO_PA3);
1082 MAKE_PIN(P61, PIOA, PIO_PA2);
1083 MAKE_PIN(P62, PIOB, PIO_PB17);
1084 MAKE_PIN(P63, PIOB, PIO_PB18);
1085 MAKE_PIN(P64, PIOB, PIO_PB19);
1086 MAKE_PIN(P65, PIOB, PIO_PB20);
1087 MAKE_PIN(P66, PIOB, PIO_PB15);
1088 MAKE_PIN(P67, PIOB, PIO_PB16);
1089 MAKE_PIN(P68, PIOA, PIO_PA1);
1090 MAKE_PIN(P69, PIOA, PIO_PA0);
1091 MAKE_PIN(P70, PIOA, PIO_PA17);
1092 MAKE_PIN(P71, PIOA, PIO_PA18);
1093 MAKE_PIN(P72, PIOC, PIO_PC30);
1094 MAKE_PIN(P73, PIOA, PIO_PA21);
1095 MAKE_PIN(P74, PIOA, PIO_PA25); // MISO
1096 MAKE_PIN(P75, PIOA, PIO_PA26); // MOSI
1097 MAKE_PIN(P76, PIOA, PIO_PA27); // CLK
1098 MAKE_PIN(P77, PIOA, PIO_PA28);
1099 MAKE_PIN(P78, PIOB, PIO_PB23); // Unconnected
1100 
1101 #undef MAKE_PIN
1102 
1103 #elif defined(RBL_NRF51822)
1104 
1105 #define MAKE_PIN(className, pin) \
1106 class className { \
1107 public: \
1108  static void Set() { \
1109  nrf_gpio_pin_set(pin); \
1110  } \
1111  static void Clear() { \
1112  nrf_gpio_pin_clear(pin); \
1113  } \
1114  static void SetDirRead() { \
1115  nrf_gpio_cfg_input(pin, NRF_GPIO_PIN_NOPULL); \
1116  } \
1117  static void SetDirWrite() { \
1118  nrf_gpio_cfg_output(pin); \
1119  } \
1120  static uint8_t IsSet() { \
1121  return (uint8_t)nrf_gpio_pin_read(pin); \
1122  } \
1123 };
1124 
1125 // See: pin_transform.c in RBL nRF51822 SDK
1126 MAKE_PIN(P0, Pin_nRF51822_to_Arduino(D0));
1127 MAKE_PIN(P1, Pin_nRF51822_to_Arduino(D1));
1128 MAKE_PIN(P2, Pin_nRF51822_to_Arduino(D2));
1129 MAKE_PIN(P3, Pin_nRF51822_to_Arduino(D3));
1130 MAKE_PIN(P4, Pin_nRF51822_to_Arduino(D4));
1131 MAKE_PIN(P5, Pin_nRF51822_to_Arduino(D5));
1132 MAKE_PIN(P6, Pin_nRF51822_to_Arduino(D6));
1133 MAKE_PIN(P7, Pin_nRF51822_to_Arduino(D7));
1134 MAKE_PIN(P8, Pin_nRF51822_to_Arduino(D8));
1135 MAKE_PIN(P9, Pin_nRF51822_to_Arduino(D9)); // INT
1136 MAKE_PIN(P10, Pin_nRF51822_to_Arduino(D10)); // SS
1137 MAKE_PIN(P11, Pin_nRF51822_to_Arduino(D11));
1138 MAKE_PIN(P12, Pin_nRF51822_to_Arduino(D12));
1139 MAKE_PIN(P13, Pin_nRF51822_to_Arduino(D13));
1140 MAKE_PIN(P14, Pin_nRF51822_to_Arduino(D14));
1141 MAKE_PIN(P15, Pin_nRF51822_to_Arduino(D15));
1142 MAKE_PIN(P17, Pin_nRF51822_to_Arduino(D17)); // MISO
1143 MAKE_PIN(P18, Pin_nRF51822_to_Arduino(D18)); // MOSI
1144 MAKE_PIN(P16, Pin_nRF51822_to_Arduino(D16)); // CLK
1145 MAKE_PIN(P19, Pin_nRF51822_to_Arduino(D19));
1146 MAKE_PIN(P20, Pin_nRF51822_to_Arduino(D20));
1147 MAKE_PIN(P21, Pin_nRF51822_to_Arduino(D21));
1148 MAKE_PIN(P22, Pin_nRF51822_to_Arduino(D22));
1149 MAKE_PIN(P23, Pin_nRF51822_to_Arduino(D23));
1150 MAKE_PIN(P24, Pin_nRF51822_to_Arduino(D24));
1151 
1152 #undef MAKE_PIN
1153 
1154 #elif defined(STM32F446xx)
1155 // NUCLEO-F446RE
1156 
1157 #define MAKE_PIN(className, port, pin) \
1158 class className { \
1159 public: \
1160  static void Set() { \
1161  HAL_GPIO_WritePin(port, pin, GPIO_PIN_SET); \
1162  } \
1163  static void Clear() { \
1164  HAL_GPIO_WritePin(port, pin, GPIO_PIN_RESET); \
1165  } \
1166  static void SetDirRead() { \
1167  static GPIO_InitTypeDef GPIO_InitStruct; \
1168  GPIO_InitStruct.Pin = pin; \
1169  GPIO_InitStruct.Mode = GPIO_MODE_INPUT; \
1170  GPIO_InitStruct.Pull = GPIO_NOPULL; \
1171  HAL_GPIO_Init(port, &GPIO_InitStruct); \
1172  } \
1173  static void SetDirWrite() { \
1174  static GPIO_InitTypeDef GPIO_InitStruct; \
1175  GPIO_InitStruct.Pin = pin; \
1176  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; \
1177  GPIO_InitStruct.Pull = GPIO_NOPULL; \
1178  GPIO_InitStruct.Speed = GPIO_SPEED_HIGH; \
1179  HAL_GPIO_Init(port, &GPIO_InitStruct); \
1180  } \
1181  static GPIO_PinState IsSet() { \
1182  return HAL_GPIO_ReadPin(port, pin); \
1183  } \
1184 };
1185 
1186 MAKE_PIN(P0, GPIOA, GPIO_PIN_3); // D0
1187 MAKE_PIN(P1, GPIOA, GPIO_PIN_2); // D1
1188 MAKE_PIN(P2, GPIOA, GPIO_PIN_10); // D2
1189 MAKE_PIN(P3, GPIOB, GPIO_PIN_3); // D3
1190 MAKE_PIN(P4, GPIOB, GPIO_PIN_5); // D4
1191 MAKE_PIN(P5, GPIOB, GPIO_PIN_4); // D5
1192 MAKE_PIN(P6, GPIOB, GPIO_PIN_10); // D6
1193 MAKE_PIN(P7, GPIOA, GPIO_PIN_8); // D7
1194 MAKE_PIN(P8, GPIOA, GPIO_PIN_9); // D8
1195 MAKE_PIN(P9, GPIOC, GPIO_PIN_7); // D9
1196 MAKE_PIN(P10, GPIOB, GPIO_PIN_6); // D10
1197 MAKE_PIN(P11, GPIOA, GPIO_PIN_7); // D11
1198 MAKE_PIN(P12, GPIOA, GPIO_PIN_6); // D12
1199 MAKE_PIN(P13, GPIOA, GPIO_PIN_5); // D13
1200 
1201 MAKE_PIN(P14, GPIOA, GPIO_PIN_0); // A0
1202 MAKE_PIN(P15, GPIOA, GPIO_PIN_1); // A1
1203 MAKE_PIN(P16, GPIOA, GPIO_PIN_4); // A2
1204 MAKE_PIN(P17, GPIOB, GPIO_PIN_0); // A3
1205 MAKE_PIN(P18, GPIOC, GPIO_PIN_1); // A4
1206 MAKE_PIN(P19, GPIOC, GPIO_PIN_0); // A5
1207 
1208 #undef MAKE_PIN
1209 
1210 #else
1211 #error "Please define board in avrpins.h"
1212 
1213 #endif
1214 
1215 #elif defined(__ARDUINO_ARC__)
1216 
1217 #include <avr/pgmspace.h>
1218 // Pointers are 32 bits on arc
1219 #define pgm_read_pointer(p) pgm_read_dword(p)
1220 
1221 #define MAKE_PIN(className, pin) \
1222 class className { \
1223 public: \
1224  static void Set() { \
1225  digitalWrite(pin, HIGH);\
1226  } \
1227  static void Clear() { \
1228  digitalWrite(pin, LOW); \
1229  } \
1230  static void SetDirRead() { \
1231  pinMode(pin, INPUT); \
1232  } \
1233  static void SetDirWrite() { \
1234  pinMode(pin, OUTPUT); \
1235  } \
1236  static uint8_t IsSet() { \
1237  return digitalRead(pin); \
1238  } \
1239 };
1240 
1241 MAKE_PIN(P0, 0);
1242 MAKE_PIN(P1, 1);
1243 MAKE_PIN(P2, 2);
1244 MAKE_PIN(P3, 3); //PWM
1245 MAKE_PIN(P4, 4);
1246 MAKE_PIN(P5, 5); //PWM
1247 MAKE_PIN(P6, 6); //PWM
1248 MAKE_PIN(P7, 7);
1249 MAKE_PIN(P8, 8);
1250 MAKE_PIN(P9, 9); //PWM
1251 
1252 MAKE_PIN(P10, 10); //SPI SS
1253 MAKE_PIN(P11, 11); //SPI MOSI
1254 MAKE_PIN(P12, 12); //SPI MISO
1255 MAKE_PIN(P13, 13); //SPI SCK / BUILTIN LED
1256 
1257 MAKE_PIN(P14, 14); // A0
1258 MAKE_PIN(P15, 15); // A1
1259 MAKE_PIN(P16, 16); // A2
1260 MAKE_PIN(P17, 17); // A3
1261 MAKE_PIN(P18, 18); // A4 SDA
1262 MAKE_PIN(P19, 19); // A5 SCL
1263 MAKE_PIN(P20, 20); // ATN
1264 
1265 #undef MAKE_PIN
1266 
1267 #elif defined(__ARDUINO_X86__) // Intel Galileo, Intel Galileo 2 and Intel Edison
1268 
1269 #include <avr/pgmspace.h>
1270 
1271 // Pointers are 32 bits on x86
1272 #define pgm_read_pointer(p) pgm_read_dword(p)
1273 
1274 #if PLATFORM_ID == 0xE1 // Edison platform id
1275 #define pinToFastPin(pin) 1 // As far as I can tell all pins can be used as fast pins
1276 #endif
1277 
1278 // Pin 2 and 3 on the Intel Galileo supports a higher rate,
1279 // so it is recommended to use one of these as the SS pin.
1280 
1281 #define MAKE_PIN(className, pin) \
1282 class className { \
1283 public: \
1284  static void Set() { \
1285  fastDigitalWrite(pin, HIGH); \
1286  } \
1287  static void Clear() { \
1288  fastDigitalWrite(pin, LOW); \
1289  } \
1290  static void SetDirRead() { \
1291  if (pinToFastPin(pin)) \
1292  pinMode(pin, INPUT_FAST); \
1293  else \
1294  pinMode(pin, INPUT); \
1295  } \
1296  static void SetDirWrite() { \
1297  if (pinToFastPin(pin)) \
1298  pinMode(pin, OUTPUT_FAST); \
1299  else \
1300  pinMode(pin, OUTPUT); \
1301  } \
1302  static uint8_t IsSet() { \
1303  return fastDigitalRead(pin); \
1304  } \
1305 };
1306 
1307 MAKE_PIN(P0, 0);
1308 MAKE_PIN(P1, 1);
1309 MAKE_PIN(P2, 2);
1310 MAKE_PIN(P3, 3);
1311 MAKE_PIN(P4, 4);
1312 MAKE_PIN(P5, 5);
1313 MAKE_PIN(P6, 6);
1314 MAKE_PIN(P7, 7);
1315 MAKE_PIN(P8, 8);
1316 MAKE_PIN(P9, 9);
1317 MAKE_PIN(P10, 10);
1318 MAKE_PIN(P11, 11);
1319 MAKE_PIN(P12, 12);
1320 MAKE_PIN(P13, 13);
1321 MAKE_PIN(P14, 14); // A0
1322 MAKE_PIN(P15, 15); // A1
1323 MAKE_PIN(P16, 16); // A2
1324 MAKE_PIN(P17, 17); // A3
1325 MAKE_PIN(P18, 18); // A4
1326 MAKE_PIN(P19, 19); // A5
1327 
1328 #undef MAKE_PIN
1329 
1330 #elif defined(__MIPSEL__)
1331 // MIPSEL (MIPS architecture using a little endian byte order)
1332 
1333 // MIPS size_t = 4
1334 #define pgm_read_pointer(p) pgm_read_dword(p)
1335 
1336 #define MAKE_PIN(className, pin) \
1337 class className { \
1338 public: \
1339  static void Set() { \
1340  digitalWrite(pin, HIGH);\
1341  } \
1342  static void Clear() { \
1343  digitalWrite(pin, LOW); \
1344  } \
1345  static void SetDirRead() { \
1346  pinMode(pin, INPUT); \
1347  } \
1348  static void SetDirWrite() { \
1349  pinMode(pin, OUTPUT); \
1350  } \
1351  static uint8_t IsSet() { \
1352  return digitalRead(pin); \
1353  } \
1354 };
1355 
1356 // 0 .. 13 - Digital pins
1357 MAKE_PIN(P0, 0); // RX
1358 MAKE_PIN(P1, 1); // TX
1359 MAKE_PIN(P2, 2); //
1360 MAKE_PIN(P3, 3); //
1361 MAKE_PIN(P4, 4); //
1362 MAKE_PIN(P5, 5); //
1363 MAKE_PIN(P6, 6); //
1364 MAKE_PIN(P7, 7); //
1365 MAKE_PIN(P8, 8); //
1366 MAKE_PIN(P9, 9); //
1367 MAKE_PIN(P10, 10); //
1368 MAKE_PIN(P11, 11); //
1369 MAKE_PIN(P12, 12); //
1370 MAKE_PIN(P13, 13); //
1371 
1372 #undef MAKE_PIN
1373 
1374 #elif defined(ESP8266) || defined(ESP32)
1375 
1376 #define MAKE_PIN(className, pin) \
1377 class className { \
1378 public: \
1379  static void Set() { \
1380  digitalWrite(pin, HIGH);\
1381  } \
1382  static void Clear() { \
1383  digitalWrite(pin, LOW); \
1384  } \
1385  static void SetDirRead() { \
1386  pinMode(pin, INPUT); \
1387  } \
1388  static void SetDirWrite() { \
1389  pinMode(pin, OUTPUT); \
1390  } \
1391  static uint8_t IsSet() { \
1392  return digitalRead(pin); \
1393  } \
1394 };
1395 
1396 #if defined(ESP8266)
1397 
1398 // Workaround the following issue: https://github.com/esp8266/Arduino/pull/5735
1399 #undef pgm_read_ptr_aligned
1400 #ifdef __cplusplus
1401 #define pgm_read_ptr_aligned(addr) (*reinterpret_cast<const void* const*>(addr))
1402 #else
1403 #define pgm_read_ptr_aligned(addr) (*(const void* const*)(addr))
1404 #endif
1405 
1406 #undef pgm_read_ptr
1407 #if PGM_READ_UNALIGNED
1408 #define pgm_read_ptr(p) pgm_read_ptr_unaligned(p)
1409 #else
1410 #define pgm_read_ptr(p) pgm_read_ptr_aligned(p)
1411 #endif
1412 
1413 #ifdef pgm_read_pointer
1414 #undef pgm_read_pointer
1415 #endif
1416 #define pgm_read_pointer(p) pgm_read_ptr(p)
1417 
1418 // Pinout for ESP-12 module
1419 // 0 .. 16 - Digital pins
1420 // GPIO 6 to 11 and 16 are not usable in this library.
1421 
1422 MAKE_PIN(P0, 0);
1423 MAKE_PIN(P1, 1); // TX0
1424 MAKE_PIN(P2, 2); // TX1
1425 MAKE_PIN(P3, 3); // RX0
1426 MAKE_PIN(P4, 4); // SDA
1427 MAKE_PIN(P5, 5); // SCL
1428 MAKE_PIN(P12, 12); // MISO
1429 MAKE_PIN(P13, 13); // MOSI
1430 MAKE_PIN(P14, 14); // SCK
1431 MAKE_PIN(P15, 15); // SS
1432 
1433 #elif defined(ESP32)
1434 
1435 // Workaround strict-aliasing warnings
1436 #ifdef pgm_read_word
1437 #undef pgm_read_word
1438 #endif
1439 #ifdef pgm_read_dword
1440 #undef pgm_read_dword
1441 #endif
1442 #ifdef pgm_read_float
1443 #undef pgm_read_float
1444 #endif
1445 #ifdef pgm_read_ptr
1446 #undef pgm_read_ptr
1447 #endif
1448 
1449 #define pgm_read_word(addr) ({ \
1450  typeof(addr) _addr = (addr); \
1451  *(const unsigned short *)(_addr); \
1452 })
1453 #define pgm_read_dword(addr) ({ \
1454  typeof(addr) _addr = (addr); \
1455  *(const unsigned long *)(_addr); \
1456 })
1457 #define pgm_read_float(addr) ({ \
1458  typeof(addr) _addr = (addr); \
1459  *(const float *)(_addr); \
1460 })
1461 #define pgm_read_ptr(addr) ({ \
1462  typeof(addr) _addr = (addr); \
1463  *(void * const *)(_addr); \
1464 })
1465 
1466 // Pinout for ESP32 dev module
1467 
1468 MAKE_PIN(P0, 0);
1469 MAKE_PIN(P1, 1); // TX0
1470 MAKE_PIN(P10, 10); // TX1
1471 MAKE_PIN(P3, 3); // RX0
1472 MAKE_PIN(P21, 21); // SDA
1473 MAKE_PIN(P22, 22); // SCL
1474 MAKE_PIN(P19, 19); // MISO
1475 MAKE_PIN(P23, 23); // MOSI
1476 MAKE_PIN(P18, 18); // SCK
1477 MAKE_PIN(P5, 5); // SS
1478 MAKE_PIN(P17, 17); // INT
1479 
1480 #endif
1481 
1482 #undef MAKE_PIN
1483 
1484 // pgm_read_ptr is not defined in the ESP32, so we have to undef the diffinition from version_helper.h
1485 #ifdef pgm_read_pointer
1486 #undef pgm_read_pointer
1487 #endif
1488 #define pgm_read_pointer(p) pgm_read_ptr(p)
1489 
1490 #else
1491 #error "Please define board in avrpins.h"
1492 
1493 #endif
1494 
1495 #endif //_avrpins_h_
+Go to the documentation of this file.
1 /* Copyright (C) 2011 Circuits At Home, LTD. All rights reserved.
2 
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 2 of the License, or
6 (at your option) any later version.
7 
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12 
13 You should have received a copy of the GNU General Public License
14 along with this program; if not, write to the Free Software
15 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16 
17 Contact information
18 -------------------
19 
20 Circuits At Home, LTD
21 Web : http://www.circuitsathome.com
22 e-mail : support@circuitsathome.com
23  */
24 
25 /* derived from Konstantin Chizhov's AVR port templates */
26 
27 #if !defined(_usb_h_) || defined(_avrpins_h_)
28 #error "Never include avrpins.h directly; include Usb.h instead"
29 #else
30 #define _avrpins_h_
31 
32 #if defined(__AVR__)
33 
34 // pointers are 16 bits on AVR
35 #define pgm_read_pointer(p) pgm_read_word(p)
36 
37 // Support for these boards needs to be manually activated in settings.h or in a makefile
38 #if !defined(BOARD_MEGA_ADK) && defined(__AVR_ATmega2560__) && (USE_UHS_MEGA_ADK || defined(ARDUINO_AVR_ADK))
39 #define BOARD_MEGA_ADK
40 #elif !defined(BOARD_BLACK_WIDDOW) && USE_UHS_BLACK_WIDDOW
41 #define BOARD_BLACK_WIDDOW
42 #endif
43 
44 #ifdef PORTA
45 #define USE_PORTA
46 #endif
47 #ifdef PORTB
48 #define USE_PORTB
49 #endif
50 #ifdef PORTC
51 #define USE_PORTC
52 #endif
53 #ifdef PORTD
54 #define USE_PORTD
55 #endif
56 #ifdef PORTE
57 #define USE_PORTE
58 #endif
59 #ifdef PORTF
60 #define USE_PORTF
61 #endif
62 #ifdef PORTG
63 #define USE_PORTG
64 #endif
65 #ifdef PORTH
66 #define USE_PORTH
67 #endif
68 #ifdef PORTJ
69 #define USE_PORTJ
70 #endif
71 #ifdef PORTK
72 #define USE_PORTK
73 #endif
74 #ifdef PORTL
75 #define USE_PORTL
76 #endif
77 #ifdef PORTQ
78 #define USE_PORTQ
79 #endif
80 #ifdef PORTR
81 #define USE_PORTR
82 #endif
83 
84 #ifdef TCCR0A
85 #define USE_TCCR0A
86 #endif
87 #ifdef TCCR1A
88 #define USE_TCCR1A
89 #endif
90 #ifdef TCCR2A
91 #define USE_TCCR2A
92 #endif
93 
94 //Port definitions for AtTiny, AtMega families.
95 
96 #define MAKE_PORT(portName, ddrName, pinName, className, ID) \
97  class className{\
98  public:\
99  typedef uint8_t DataT;\
100  public:\
101  static void Write(DataT value){portName = value;}\
102  static void ClearAndSet(DataT clearMask, DataT value){portName = (portName & ~clearMask) | value;}\
103  static DataT Read(){return portName;}\
104  static void DirWrite(DataT value){ddrName = value;}\
105  static DataT DirRead(){return ddrName;}\
106  static void Set(DataT value){portName |= value;}\
107  static void Clear(DataT value){portName &= ~value;}\
108  static void Toggle(DataT value){portName ^= value;}\
109  static void DirSet(DataT value){ddrName |= value;}\
110  static void DirClear(DataT value){ddrName &= ~value;}\
111  static void DirToggle(DataT value){ddrName ^= value;}\
112  static DataT PinRead(){return pinName;}\
113  enum{Id = ID};\
114  enum{Width=sizeof(DataT)*8};\
115  };
116 
117 // TCCR registers to set/clear Arduino PWM
118 #define MAKE_TCCR(TccrName, className) \
119  class className{\
120  public:\
121  typedef uint8_t DataT;\
122  public:\
123  static void Write(DataT value){TccrName = value;}\
124  static void ClearAndSet(DataT clearMask, DataT value){TccrName = (TccrName & ~clearMask) | value;}\
125  static DataT Read(){return TccrName;}\
126  static void Set(DataT value){TccrName |= value;}\
127  static void Clear(DataT value){TccrName &= ~value;}\
128  static void Toggle(DataT value){TccrName ^= value;}\
129  enum{Width=sizeof(DataT)*8};\
130  };
131 
132 #ifdef USE_PORTA
133 
134 MAKE_PORT(PORTA, DDRA, PINA, Porta, 'A')
135 #endif
136 #ifdef USE_PORTB
137 MAKE_PORT(PORTB, DDRB, PINB, Portb, 'B')
138 #endif
139 #ifdef USE_PORTC
140 MAKE_PORT(PORTC, DDRC, PINC, Portc, 'C')
141 #endif
142 #ifdef USE_PORTD
143 MAKE_PORT(PORTD, DDRD, PIND, Portd, 'D')
144 #endif
145 #ifdef USE_PORTE
146 MAKE_PORT(PORTE, DDRE, PINE, Porte, 'E')
147 #endif
148 #ifdef USE_PORTF
149 MAKE_PORT(PORTF, DDRF, PINF, Portf, 'F')
150 #endif
151 #ifdef USE_PORTG
152 MAKE_PORT(PORTG, DDRG, PING, Portg, 'G')
153 #endif
154 #ifdef USE_PORTH
155 MAKE_PORT(PORTH, DDRH, PINH, Porth, 'H')
156 #endif
157 #ifdef USE_PORTJ
158 MAKE_PORT(PORTJ, DDRJ, PINJ, Portj, 'J')
159 #endif
160 #ifdef USE_PORTK
161 MAKE_PORT(PORTK, DDRK, PINK, Portk, 'K')
162 #endif
163 #ifdef USE_PORTL
164 MAKE_PORT(PORTL, DDRL, PINL, Portl, 'L')
165 #endif
166 #ifdef USE_PORTQ
167 MAKE_PORT(PORTQ, DDRQ, PINQ, Portq, 'Q')
168 #endif
169 #ifdef USE_PORTR
170 MAKE_PORT(PORTR, DDRR, PINR, Portr, 'R')
171 #endif
172 
173 #ifdef USE_TCCR0A
174 MAKE_TCCR(TCCR0A, Tccr0a)
175 #endif
176 #ifdef USE_TCCR1A
177 MAKE_TCCR(TCCR1A, Tccr1a)
178 #endif
179 #ifdef USE_TCCR2A
180 MAKE_TCCR(TCCR2A, Tccr2a)
181 #endif
182 
183 // this class represents one pin in a IO port.
184 // It is fully static.
185 template<typename PORT, uint8_t PIN>
186 class TPin {
187  // BOOST_STATIC_ASSERT(PIN < PORT::Width);
188 public:
189  typedef PORT Port;
190 
191  enum {
192  Number = PIN
193  };
194 
195  static void Set() {
196  PORT::Set(1 << PIN);
197  }
198 
199  static void Set(uint8_t val) {
200  if(val)
201  Set();
202  else Clear();
203  }
204 
205  static void SetDir(uint8_t val) {
206  if(val)
207  SetDirWrite();
208  else SetDirRead();
209  }
210 
211  static void Clear() {
212  PORT::Clear(1 << PIN);
213  }
214 
215  static void Toggle() {
216  PORT::Toggle(1 << PIN);
217  }
218 
219  static void SetDirRead() {
220  PORT::DirClear(1 << PIN);
221  }
222 
223  static void SetDirWrite() {
224  PORT::DirSet(1 << PIN);
225  }
226 
227  static uint8_t IsSet() {
228  return PORT::PinRead() & (uint8_t)(1 << PIN);
229  }
230 
231  static void WaiteForSet() {
232  while(IsSet() == 0) {
233  }
234  }
235 
236  static void WaiteForClear() {
237  while(IsSet()) {
238  }
239  }
240 }; //class TPin...
241 
242 // this class represents one bit in TCCR port.
243 // used to set/clear TCCRx bits
244 // It is fully static.
245 
246 template<typename TCCR, uint8_t COM>
247 class TCom {
248  // BOOST_STATIC_ASSERT(PIN < PORT::Width);
249 public:
250  typedef TCCR Tccr;
251 
252  enum {
253  Com = COM
254  };
255 
256  static void Set() {
257  TCCR::Set(1 << COM);
258  }
259 
260  static void Clear() {
261  TCCR::Clear(1 << COM);
262  }
263 
264  static void Toggle() {
265  TCCR::Toggle(1 << COM);
266  }
267 }; //class TCom...
268 
269 //Short pin definitions
270 #ifdef USE_PORTA
271 typedef TPin<Porta, 0 > Pa0;
272 typedef TPin<Porta, 1 > Pa1;
273 typedef TPin<Porta, 2 > Pa2;
274 typedef TPin<Porta, 3 > Pa3;
275 typedef TPin<Porta, 4 > Pa4;
276 typedef TPin<Porta, 5 > Pa5;
277 typedef TPin<Porta, 6 > Pa6;
278 typedef TPin<Porta, 7 > Pa7;
279 #endif
280 
281 #ifdef USE_PORTB
282 typedef TPin<Portb, 0 > Pb0;
283 typedef TPin<Portb, 1 > Pb1;
284 typedef TPin<Portb, 2 > Pb2;
285 typedef TPin<Portb, 3 > Pb3;
286 typedef TPin<Portb, 4 > Pb4;
287 typedef TPin<Portb, 5 > Pb5;
288 typedef TPin<Portb, 6 > Pb6;
289 typedef TPin<Portb, 7 > Pb7;
290 #endif
291 
292 #ifdef USE_PORTC
293 typedef TPin<Portc, 0 > Pc0;
294 typedef TPin<Portc, 1 > Pc1;
295 typedef TPin<Portc, 2 > Pc2;
296 typedef TPin<Portc, 3 > Pc3;
297 typedef TPin<Portc, 4 > Pc4;
298 typedef TPin<Portc, 5 > Pc5;
299 typedef TPin<Portc, 6 > Pc6;
300 typedef TPin<Portc, 7 > Pc7;
301 #endif
302 
303 #ifdef USE_PORTD
304 typedef TPin<Portd, 0 > Pd0;
305 typedef TPin<Portd, 1 > Pd1;
306 typedef TPin<Portd, 2 > Pd2;
307 typedef TPin<Portd, 3 > Pd3;
308 typedef TPin<Portd, 4 > Pd4;
309 typedef TPin<Portd, 5 > Pd5;
310 typedef TPin<Portd, 6 > Pd6;
311 typedef TPin<Portd, 7 > Pd7;
312 #endif
313 
314 #ifdef USE_PORTE
315 typedef TPin<Porte, 0 > Pe0;
316 typedef TPin<Porte, 1 > Pe1;
317 typedef TPin<Porte, 2 > Pe2;
318 typedef TPin<Porte, 3 > Pe3;
319 typedef TPin<Porte, 4 > Pe4;
320 typedef TPin<Porte, 5 > Pe5;
321 typedef TPin<Porte, 6 > Pe6;
322 typedef TPin<Porte, 7 > Pe7;
323 #endif
324 
325 #ifdef USE_PORTF
326 typedef TPin<Portf, 0 > Pf0;
327 typedef TPin<Portf, 1 > Pf1;
328 typedef TPin<Portf, 2 > Pf2;
329 typedef TPin<Portf, 3 > Pf3;
330 typedef TPin<Portf, 4 > Pf4;
331 typedef TPin<Portf, 5 > Pf5;
332 typedef TPin<Portf, 6 > Pf6;
333 typedef TPin<Portf, 7 > Pf7;
334 #endif
335 
336 #ifdef USE_PORTG
337 typedef TPin<Portg, 0 > Pg0;
338 typedef TPin<Portg, 1 > Pg1;
339 typedef TPin<Portg, 2 > Pg2;
340 typedef TPin<Portg, 3 > Pg3;
341 typedef TPin<Portg, 4 > Pg4;
342 typedef TPin<Portg, 5 > Pg5;
343 typedef TPin<Portg, 6 > Pg6;
344 typedef TPin<Portg, 7 > Pg7;
345 #endif
346 
347 #ifdef USE_PORTH
348 typedef TPin<Porth, 0 > Ph0;
349 typedef TPin<Porth, 1 > Ph1;
350 typedef TPin<Porth, 2 > Ph2;
351 typedef TPin<Porth, 3 > Ph3;
352 typedef TPin<Porth, 4 > Ph4;
353 typedef TPin<Porth, 5 > Ph5;
354 typedef TPin<Porth, 6 > Ph6;
355 typedef TPin<Porth, 7 > Ph7;
356 #endif
357 
358 #ifdef USE_PORTJ
359 typedef TPin<Portj, 0 > Pj0;
360 typedef TPin<Portj, 1 > Pj1;
361 typedef TPin<Portj, 2 > Pj2;
362 typedef TPin<Portj, 3 > Pj3;
363 typedef TPin<Portj, 4 > Pj4;
364 typedef TPin<Portj, 5 > Pj5;
365 typedef TPin<Portj, 6 > Pj6;
366 typedef TPin<Portj, 7 > Pj7;
367 #endif
368 
369 #ifdef USE_PORTK
370 typedef TPin<Portk, 0 > Pk0;
371 typedef TPin<Portk, 1 > Pk1;
372 typedef TPin<Portk, 2 > Pk2;
373 typedef TPin<Portk, 3 > Pk3;
374 typedef TPin<Portk, 4 > Pk4;
375 typedef TPin<Portk, 5 > Pk5;
376 typedef TPin<Portk, 6 > Pk6;
377 typedef TPin<Portk, 7 > Pk7;
378 #endif
379 
380 #ifdef USE_PORTL
381 typedef TPin<Portl, 0 > Pl0;
382 typedef TPin<Portl, 1 > Pl1;
383 typedef TPin<Portl, 2 > Pl2;
384 typedef TPin<Portl, 3 > Pl3;
385 typedef TPin<Portl, 4 > Pl4;
386 typedef TPin<Portl, 5 > Pl5;
387 typedef TPin<Portl, 6 > Pl6;
388 typedef TPin<Portl, 7 > Pl7;
389 #endif
390 
391 #ifdef USE_PORTQ
392 typedef TPin<Portq, 0 > Pq0;
393 typedef TPin<Portq, 1 > Pq1;
394 typedef TPin<Portq, 2 > Pq2;
395 typedef TPin<Portq, 3 > Pq3;
396 typedef TPin<Portq, 4 > Pq4;
397 typedef TPin<Portq, 5 > Pq5;
398 typedef TPin<Portq, 6 > Pq6;
399 typedef TPin<Portq, 7 > Pq7;
400 #endif
401 
402 #ifdef USE_PORTR
403 typedef TPin<Portr, 0 > Pr0;
404 typedef TPin<Portr, 1 > Pr1;
405 typedef TPin<Portr, 2 > Pr2;
406 typedef TPin<Portr, 3 > Pr3;
407 typedef TPin<Portr, 4 > Pr4;
408 typedef TPin<Portr, 5 > Pr5;
409 typedef TPin<Portr, 6 > Pr6;
410 typedef TPin<Portr, 7 > Pr7;
411 #endif
412 
413 #ifdef USE_TCCR0A
414 typedef TCom<Tccr0a, COM0A1> Tc0a; //P6
415 typedef TCom<Tccr0a, COM0B1> Tc0b; //P5
416 #endif
417 
418 #ifdef USE_TCCR1A
419 typedef TCom<Tccr1a, COM1A1> Tc1a; //P9
420 typedef TCom<Tccr1a, COM1B1> Tc1b; //P10
421 #endif
422 
423 #ifdef USE_TCCR2A
424 typedef TCom<Tccr2a, COM2A1> Tc2a; //P11
425 typedef TCom<Tccr2a, COM2B1> Tc2b; //P3
426 #endif
427 
428 template<typename Tp_pin, typename Tc_bit>
429 class Tp_Tc {
430 public:
431 
432  static void SetDir(uint8_t val) {
433  if(val)
434  SetDirWrite();
435  else SetDirRead();
436  }
437 
438  static void SetDirRead() {
439  Tp_pin::SetDirRead(); //set pin direction
440  Tc_bit::Clear(); //disconnect pin from PWM
441  }
442 
443  static void SetDirWrite() {
444  Tp_pin::SetDirWrite();
445  Tc_bit::Clear();
446  }
447 };
448 
449 /* pin definitions for cases where it's necessary to clear compare output mode bits */
450 
451 //typedef Tp_Tc<Pd3, Tc2b> P3; //Arduino pin 3
452 //typedef Tp_Tc<Pd5, Tc0b> P5; //Arduino pin 5
453 //typedef Tp_Tc<Pd6, Tc0a> P6; //Arduino pin 6
454 //typedef Tp_Tc<Pb1, Tc1a> P9; //Arduino pin 9
455 //typedef Tp_Tc<Pb2, Tc1b> P10; //Arduino pin 10
456 //typedef Tp_Tc<Pb3, Tc2a> P11; //Arduino pin 11
457 
458 /* Arduino pin definitions */
459 #if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)
460 // "Mega" Arduino pin numbers
461 
462 #define P0 Pe0
463 #define P1 Pe1
464 #define P2 Pe4
465 #define P3 Pe5
466 #define P4 Pg5
467 #define P5 Pe3
468 #define P6 Ph3
469 #define P7 Ph4
470 
471 #define P8 Ph5
472 #define P9 Ph6
473 #define P10 Pb4
474 #define P11 Pb5
475 #define P12 Pb6
476 #define P13 Pb7
477 
478 #define P14 Pj1
479 #define P15 Pj0
480 #define P16 Ph1
481 #define P17 Ph0
482 #define P18 Pd3
483 #define P19 Pd2
484 #define P20 Pd1
485 #define P21 Pd0
486 
487 #define P22 Pa0
488 #define P23 Pa1
489 #define P24 Pa2
490 #define P25 Pa3
491 #define P26 Pa4
492 #define P27 Pa5
493 #define P28 Pa6
494 #define P29 Pa7
495 #define P30 Pc7
496 #define P31 Pc6
497 #define P32 Pc5
498 #define P33 Pc4
499 #define P34 Pc3
500 #define P35 Pc2
501 #define P36 Pc1
502 #define P37 Pc0
503 
504 #define P38 Pd7
505 #define P39 Pg2
506 #define P40 Pg1
507 #define P41 Pg0
508 #define P42 Pl7
509 #define P43 Pl6
510 #define P44 Pl5
511 #define P45 Pl4
512 #define P46 Pl3
513 #define P47 Pl2
514 #define P48 Pl1
515 #define P49 Pl0
516 #define P50 Pb3
517 #define P51 Pb2
518 #define P52 Pb1
519 #define P53 Pb0
520 
521 #ifdef BOARD_MEGA_ADK // These pins are not broken out on the Arduino ADK
522 #define P54 Pe6 // INT on Arduino ADK
523 #define P55 Pj2 // MAX_RESET on Arduino ADK
524 #endif
525 
526 // "Mega" pin numbers
527 
528 #elif defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__)
529 // "Classic" Arduino pin numbers
530 
531 #define P0 Pd0
532 #define P1 Pd1
533 #define P2 Pd2
534 #define P3 Pd3
535 #define P4 Pd4
536 #define P5 Pd5
537 #define P6 Pd6
538 #define P7 Pd7
539 
540 #define P8 Pb0
541 #define P9 Pb1
542 #define P10 Pb2
543 #define P11 Pb3
544 #define P12 Pb4
545 #define P13 Pb5
546 
547 #define P14 Pc0
548 #define P15 Pc1
549 #define P16 Pc2
550 #define P17 Pc3
551 #define P18 Pc4
552 #define P19 Pc5
553 
554 // "Classic" Arduino pin numbers
555 
556 #elif defined(CORE_TEENSY) && defined(__AVR_ATmega32U4__)
557 // Teensy 2.0 pin numbers
558 // http://www.pjrc.com/teensy/pinout.html
559 #define P0 Pb0
560 #define P1 Pb1
561 #define P2 Pb2
562 #define P3 Pb3
563 #define P4 Pb7
564 #define P5 Pd0
565 #define P6 Pd1
566 #define P7 Pd2
567 #define P8 Pd3
568 #define P9 Pc6
569 #define P10 Pc7
570 #define P11 Pd6
571 #define P12 Pd7
572 #define P13 Pb4
573 #define P14 Pb5
574 #define P15 Pb6
575 #define P16 Pf7
576 #define P17 Pf6
577 #define P18 Pf5
578 #define P19 Pf4
579 #define P20 Pf1
580 #define P21 Pf0
581 #define P22 Pd4
582 #define P23 Pd5
583 #define P24 Pe6
584 // Teensy 2.0
585 
586 #elif defined(__AVR_ATmega32U4__)
587 // Arduino Leonardo pin numbers
588 
589 #define P0 Pd2 // D0 - PD2
590 #define P1 Pd3 // D1 - PD3
591 #define P2 Pd1 // D2 - PD1
592 #define P3 Pd0 // D3 - PD0
593 #define P4 Pd4 // D4 - PD4
594 #define P5 Pc6 // D5 - PC6
595 #define P6 Pd7 // D6 - PD7
596 #define P7 Pe6 // D7 - PE6
597 
598 #define P8 Pb4 // D8 - PB4
599 #define P9 Pb5 // D9 - PB5
600 #define P10 Pb6 // D10 - PB6
601 #define P11 Pb7 // D11 - PB7
602 #define P12 Pd6 // D12 - PD6
603 #define P13 Pc7 // D13 - PC7
604 
605 #define P14 Pb3 // D14 - MISO - PB3
606 #define P15 Pb1 // D15 - SCK - PB1
607 #define P16 Pb2 // D16 - MOSI - PB2
608 #define P17 Pb0 // D17 - SS - PB0
609 
610 #define P18 Pf7 // D18 - A0 - PF7
611 #define P19 Pf6 // D19 - A1 - PF6
612 #define P20 Pf5 // D20 - A2 - PF5
613 #define P21 Pf4 // D21 - A3 - PF4
614 #define P22 Pf1 // D22 - A4 - PF1
615 #define P23 Pf0 // D23 - A5 - PF0
616 
617 #define P24 Pd4 // D24 / D4 - A6 - PD4
618 #define P25 Pd7 // D25 / D6 - A7 - PD7
619 #define P26 Pb4 // D26 / D8 - A8 - PB4
620 #define P27 Pb5 // D27 / D9 - A9 - PB5
621 #define P28 Pb6 // D28 / D10 - A10 - PB6
622 #define P29 Pd6 // D29 / D12 - A11 - PD6
623 
624 // Arduino Leonardo pin numbers
625 
626 #elif defined(CORE_TEENSY) && (defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB1286__))
627 // Teensy++ 1.0 and 2.0 pin numbers
628 // http://www.pjrc.com/teensy/pinout.html
629 #define P0 Pd0
630 #define P1 Pd1
631 #define P2 Pd2
632 #define P3 Pd3
633 #define P4 Pd4
634 #define P5 Pd5
635 #define P6 Pd6
636 #define P7 Pd7
637 #define P8 Pe0
638 #define P9 Pe1
639 #define P10 Pc0
640 #define P11 Pc1
641 #define P12 Pc2
642 #define P13 Pc3
643 #define P14 Pc4
644 #define P15 Pc5
645 #define P16 Pc6
646 #define P17 Pc7
647 #define P18 Pe6
648 #define P19 Pe7
649 #define P20 Pb0
650 #define P21 Pb1
651 #define P22 Pb2
652 #define P23 Pb3
653 #define P24 Pb4
654 #define P25 Pb5
655 #define P26 Pb6
656 #define P27 Pb7
657 #define P28 Pa0
658 #define P29 Pa1
659 #define P30 Pa2
660 #define P31 Pa3
661 #define P32 Pa4
662 #define P33 Pa5
663 #define P34 Pa6
664 #define P35 Pa7
665 #define P36 Pe4
666 #define P37 Pe5
667 #define P38 Pf0
668 #define P39 Pf1
669 #define P40 Pf2
670 #define P41 Pf3
671 #define P42 Pf4
672 #define P43 Pf5
673 #define P44 Pf6
674 #define P45 Pf7
675 // Teensy++ 1.0 and 2.0
676 
677 #elif defined(ARDUINO_AVR_BALANDUINO) && (defined(__AVR_ATmega644__) || defined(__AVR_ATmega1284P__))
678 // Balanduino pin numbers
679 // http://balanduino.net/
680 #define P0 Pd0 /* 0 - PD0 */
681 #define P1 Pd1 /* 1 - PD1 */
682 
683 #if BALANDUINO_REVISION < 13
684  #define P2 Pb2 /* 2 - PB2 */
685  #define P3 Pd6 /* 3 - PD6 */
686  #define P4 Pd7 /* 4 - PD7 */
687  #define P5 Pb3 /* 5 - PB3 */
688 #else
689  #define P2 Pd2 /* 2 - PD2 */
690  #define P3 Pd3 /* 3 - PD3 */
691  #define P4 Pd6 /* 4 - PD6 */
692  #define P5 Pd7 /* 5 - PD7 */
693 #endif
694 
695 #define P6 Pb4 /* 6 - PB4 */
696 #define P7 Pa0 /* 7 - PA0 */
697 #define P8 Pa1 /* 8 - PA1 */
698 #define P9 Pa2 /* 9 - PA2 */
699 #define P10 Pa3 /* 10 - PA3 */
700 #define P11 Pa4 /* 11 - PA4 */
701 #define P12 Pa5 /* 12 - PA5 */
702 #define P13 Pc1 /* 13 - PC1 */
703 #define P14 Pc0 /* 14 - PC0 */
704 
705 #if BALANDUINO_REVISION < 13
706  #define P15 Pd2 /* 15 - PD2 */
707  #define P16 Pd3 /* 16 - PD3 */
708 #else
709  #define P15 Pb2 /* 15 - PB2 */
710  #define P16 Pb3 /* 16 - PB2 */
711 #endif
712 
713 #define P17 Pd4 /* 17 - PD4 */
714 #define P18 Pd5 /* 18 - PD5 */
715 #define P19 Pc2 /* 19 - PC2 */
716 #define P20 Pc3 /* 20 - PC3 */
717 #define P21 Pc4 /* 21 - PC4 */
718 #define P22 Pc5 /* 22 - PC5 */
719 #define P23 Pc6 /* 23 - PC6 */
720 #define P24 Pc7 /* 24 - PC7 */
721 #define P25 Pb0 /* 25 - PB0 */
722 #define P26 Pb1 /* 26 - PB1 */
723 #define P27 Pb5 /* 27 - PB5 */
724 #define P28 Pb6 /* 28 - PB6 */
725 #define P29 Pb7 /* 29 - PB7 */
726 #define P30 Pa6 /* 30 - PA6 */
727 #define P31 Pa7 /* 31 - PA7 */
728 // Balanduino
729 
730 #elif defined(ARDUINO_AVR_UNO_PRO) && defined(__AVR_ATmega1284P__)
731 // UNO*Pro pin numbers
732 // Homepage: http://www.hobbytronics.co.uk/arduino-uno-pro
733 // Pin Reference: http://www.hobbytronics.co.uk/download/uno_pro/pins_arduino.h
734 #define P0 Pd0
735 #define P1 Pd1
736 #define P2 Pb2
737 #define P3 Pb3
738 #define P4 Pb0
739 #define P5 Pb1
740 #define P6 Pd2
741 #define P7 Pd3
742 #define P8 Pd5
743 #define P9 Pd6
744 #define P10 Pb4
745 #define P11 Pb5
746 #define P12 Pb6
747 #define P13 Pb7
748 #define P14 Pa7
749 #define P15 Pa6
750 #define P16 Pa5
751 #define P17 Pa4
752 #define P18 Pa3
753 #define P19 Pa2
754 #define P20 Pa1
755 #define P21 Pa0
756 #define P22 Pc0
757 #define P23 Pc1
758 #define P24 Pc2
759 #define P25 Pc3
760 #define P26 Pc4
761 #define P27 Pc5
762 #define P28 Pc6
763 #define P29 Pc7
764 #define P30 Pd4
765 #define P31 Pd7
766 // UNO*Pro
767 
768 #elif defined(__AVR_ATmega644__) || defined(__AVR_ATmega644P__) || defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__)
769 // Sanguino pin numbers
770 // Homepage: http://sanguino.cc/hardware
771 // Hardware add-on: https://github.com/Lauszus/Sanguino
772 #define P0 Pb0
773 #define P1 Pb1
774 #define P2 Pb2
775 #define P3 Pb3
776 #define P4 Pb4
777 #define P5 Pb5
778 #define P6 Pb6
779 #define P7 Pb7
780 #define P8 Pd0
781 #define P9 Pd1
782 #define P10 Pd2
783 #define P11 Pd3
784 #define P12 Pd4
785 #define P13 Pd5
786 #define P14 Pd6
787 #define P15 Pd7
788 #define P16 Pc0
789 #define P17 Pc1
790 #define P18 Pc2
791 #define P19 Pc3
792 #define P20 Pc4
793 #define P21 Pc5
794 #define P22 Pc6
795 #define P23 Pc7
796 #define P24 Pa0
797 #define P25 Pa1
798 #define P26 Pa2
799 #define P27 Pa3
800 #define P28 Pa4
801 #define P29 Pa5
802 #define P30 Pa6
803 #define P31 Pa7
804 // Sanguino
805 
806 #else
807 #error "Please define board in avrpins.h"
808 
809 #endif // Arduino pin definitions
810 
811 #elif defined(__arm__)
812 
813 // pointers are 32 bits on ARM
814 #define pgm_read_pointer(p) pgm_read_dword(p)
815 
816 #if defined(CORE_TEENSY) && (defined(__MK20DX128__) || defined(__MK20DX256__) || defined(__MK64FX512__) || defined(__MK66FX1M0__))
817 // Teensy 3.x
818 
819 #include "core_pins.h"
820 #include "avr_emulation.h"
821 
822 #define GPIO_BITBAND_ADDR(reg, bit) (((uint32_t)&(reg) - 0x40000000) * 32 + (bit) * 4 + 0x42000000)
823 #define GPIO_BITBAND_PTR(reg, bit) ((uint8_t *)GPIO_BITBAND_ADDR((reg), (bit)))
824 
825 #define MAKE_PIN(className, baseReg, pinNum, configReg) \
826 class className { \
827 public: \
828  static void Set() { \
829  *GPIO_BITBAND_PTR(baseReg, pinNum) = 1; \
830  } \
831  static void Clear() { \
832  *GPIO_BITBAND_PTR(baseReg, pinNum) = 0; \
833  } \
834  static void SetDirRead() { \
835  configReg = PORT_PCR_SRE | PORT_PCR_DSE | PORT_PCR_MUX(1); \
836  *(GPIO_BITBAND_PTR(baseReg, pinNum) + 640) = 0; \
837  } \
838  static void SetDirWrite() { \
839  configReg = PORT_PCR_SRE | PORT_PCR_DSE | PORT_PCR_MUX(1); \
840  *(GPIO_BITBAND_PTR(baseReg, pinNum) + 640) = 1; \
841  } \
842  static uint8_t IsSet() { \
843  return *(GPIO_BITBAND_PTR(baseReg, pinNum) + 512); \
844  } \
845 };
846 
847 MAKE_PIN(P0, CORE_PIN0_PORTREG, CORE_PIN0_BIT, CORE_PIN0_CONFIG);
848 MAKE_PIN(P1, CORE_PIN1_PORTREG, CORE_PIN1_BIT, CORE_PIN1_CONFIG);
849 MAKE_PIN(P2, CORE_PIN2_PORTREG, CORE_PIN2_BIT, CORE_PIN2_CONFIG);
850 MAKE_PIN(P3, CORE_PIN3_PORTREG, CORE_PIN3_BIT, CORE_PIN3_CONFIG);
851 MAKE_PIN(P4, CORE_PIN4_PORTREG, CORE_PIN4_BIT, CORE_PIN4_CONFIG);
852 MAKE_PIN(P5, CORE_PIN5_PORTREG, CORE_PIN5_BIT, CORE_PIN5_CONFIG);
853 MAKE_PIN(P6, CORE_PIN6_PORTREG, CORE_PIN6_BIT, CORE_PIN6_CONFIG);
854 MAKE_PIN(P7, CORE_PIN7_PORTREG, CORE_PIN7_BIT, CORE_PIN7_CONFIG);
855 MAKE_PIN(P8, CORE_PIN8_PORTREG, CORE_PIN8_BIT, CORE_PIN8_CONFIG);
856 MAKE_PIN(P9, CORE_PIN9_PORTREG, CORE_PIN9_BIT, CORE_PIN9_CONFIG);
857 MAKE_PIN(P10, CORE_PIN10_PORTREG, CORE_PIN10_BIT, CORE_PIN10_CONFIG);
858 MAKE_PIN(P11, CORE_PIN11_PORTREG, CORE_PIN11_BIT, CORE_PIN11_CONFIG);
859 MAKE_PIN(P12, CORE_PIN12_PORTREG, CORE_PIN12_BIT, CORE_PIN12_CONFIG);
860 MAKE_PIN(P13, CORE_PIN13_PORTREG, CORE_PIN13_BIT, CORE_PIN13_CONFIG);
861 MAKE_PIN(P14, CORE_PIN14_PORTREG, CORE_PIN14_BIT, CORE_PIN14_CONFIG);
862 MAKE_PIN(P15, CORE_PIN15_PORTREG, CORE_PIN15_BIT, CORE_PIN15_CONFIG);
863 MAKE_PIN(P16, CORE_PIN16_PORTREG, CORE_PIN16_BIT, CORE_PIN16_CONFIG);
864 MAKE_PIN(P17, CORE_PIN17_PORTREG, CORE_PIN17_BIT, CORE_PIN17_CONFIG);
865 MAKE_PIN(P18, CORE_PIN18_PORTREG, CORE_PIN18_BIT, CORE_PIN18_CONFIG);
866 MAKE_PIN(P19, CORE_PIN19_PORTREG, CORE_PIN19_BIT, CORE_PIN19_CONFIG);
867 MAKE_PIN(P20, CORE_PIN20_PORTREG, CORE_PIN20_BIT, CORE_PIN20_CONFIG);
868 MAKE_PIN(P21, CORE_PIN21_PORTREG, CORE_PIN21_BIT, CORE_PIN21_CONFIG);
869 MAKE_PIN(P22, CORE_PIN22_PORTREG, CORE_PIN22_BIT, CORE_PIN22_CONFIG);
870 MAKE_PIN(P23, CORE_PIN23_PORTREG, CORE_PIN23_BIT, CORE_PIN23_CONFIG);
871 MAKE_PIN(P24, CORE_PIN24_PORTREG, CORE_PIN24_BIT, CORE_PIN24_CONFIG);
872 MAKE_PIN(P25, CORE_PIN25_PORTREG, CORE_PIN25_BIT, CORE_PIN25_CONFIG);
873 MAKE_PIN(P26, CORE_PIN26_PORTREG, CORE_PIN26_BIT, CORE_PIN26_CONFIG);
874 MAKE_PIN(P27, CORE_PIN27_PORTREG, CORE_PIN27_BIT, CORE_PIN27_CONFIG);
875 MAKE_PIN(P28, CORE_PIN28_PORTREG, CORE_PIN28_BIT, CORE_PIN28_CONFIG);
876 MAKE_PIN(P29, CORE_PIN29_PORTREG, CORE_PIN29_BIT, CORE_PIN29_CONFIG);
877 MAKE_PIN(P30, CORE_PIN30_PORTREG, CORE_PIN30_BIT, CORE_PIN30_CONFIG);
878 MAKE_PIN(P31, CORE_PIN31_PORTREG, CORE_PIN31_BIT, CORE_PIN31_CONFIG);
879 MAKE_PIN(P32, CORE_PIN32_PORTREG, CORE_PIN32_BIT, CORE_PIN32_CONFIG);
880 MAKE_PIN(P33, CORE_PIN33_PORTREG, CORE_PIN33_BIT, CORE_PIN33_CONFIG);
881 #if defined(__MK64FX512__) || defined(__MK66FX1M0__)
882 MAKE_PIN(P34, CORE_PIN34_PORTREG, CORE_PIN34_BIT, CORE_PIN34_CONFIG);
883 MAKE_PIN(P35, CORE_PIN35_PORTREG, CORE_PIN35_BIT, CORE_PIN35_CONFIG);
884 MAKE_PIN(P36, CORE_PIN36_PORTREG, CORE_PIN36_BIT, CORE_PIN36_CONFIG);
885 MAKE_PIN(P37, CORE_PIN37_PORTREG, CORE_PIN37_BIT, CORE_PIN37_CONFIG);
886 MAKE_PIN(P38, CORE_PIN38_PORTREG, CORE_PIN38_BIT, CORE_PIN38_CONFIG);
887 MAKE_PIN(P39, CORE_PIN39_PORTREG, CORE_PIN39_BIT, CORE_PIN39_CONFIG);
888 MAKE_PIN(P40, CORE_PIN40_PORTREG, CORE_PIN40_BIT, CORE_PIN40_CONFIG);
889 MAKE_PIN(P41, CORE_PIN41_PORTREG, CORE_PIN41_BIT, CORE_PIN41_CONFIG);
890 MAKE_PIN(P42, CORE_PIN42_PORTREG, CORE_PIN42_BIT, CORE_PIN42_CONFIG);
891 MAKE_PIN(P43, CORE_PIN43_PORTREG, CORE_PIN43_BIT, CORE_PIN43_CONFIG);
892 MAKE_PIN(P44, CORE_PIN44_PORTREG, CORE_PIN44_BIT, CORE_PIN44_CONFIG);
893 MAKE_PIN(P45, CORE_PIN45_PORTREG, CORE_PIN45_BIT, CORE_PIN45_CONFIG);
894 MAKE_PIN(P46, CORE_PIN46_PORTREG, CORE_PIN46_BIT, CORE_PIN46_CONFIG);
895 MAKE_PIN(P47, CORE_PIN47_PORTREG, CORE_PIN47_BIT, CORE_PIN47_CONFIG);
896 MAKE_PIN(P48, CORE_PIN48_PORTREG, CORE_PIN48_BIT, CORE_PIN48_CONFIG);
897 MAKE_PIN(P49, CORE_PIN49_PORTREG, CORE_PIN49_BIT, CORE_PIN49_CONFIG);
898 MAKE_PIN(P50, CORE_PIN50_PORTREG, CORE_PIN50_BIT, CORE_PIN50_CONFIG);
899 MAKE_PIN(P51, CORE_PIN51_PORTREG, CORE_PIN51_BIT, CORE_PIN51_CONFIG);
900 MAKE_PIN(P52, CORE_PIN52_PORTREG, CORE_PIN52_BIT, CORE_PIN52_CONFIG);
901 MAKE_PIN(P53, CORE_PIN53_PORTREG, CORE_PIN53_BIT, CORE_PIN53_CONFIG);
902 MAKE_PIN(P54, CORE_PIN54_PORTREG, CORE_PIN54_BIT, CORE_PIN54_CONFIG);
903 MAKE_PIN(P55, CORE_PIN55_PORTREG, CORE_PIN55_BIT, CORE_PIN55_CONFIG);
904 MAKE_PIN(P56, CORE_PIN56_PORTREG, CORE_PIN56_BIT, CORE_PIN56_CONFIG);
905 MAKE_PIN(P57, CORE_PIN57_PORTREG, CORE_PIN57_BIT, CORE_PIN57_CONFIG);
906 MAKE_PIN(P58, CORE_PIN58_PORTREG, CORE_PIN58_BIT, CORE_PIN58_CONFIG);
907 MAKE_PIN(P59, CORE_PIN59_PORTREG, CORE_PIN59_BIT, CORE_PIN59_CONFIG);
908 MAKE_PIN(P60, CORE_PIN60_PORTREG, CORE_PIN60_BIT, CORE_PIN60_CONFIG);
909 MAKE_PIN(P61, CORE_PIN61_PORTREG, CORE_PIN61_BIT, CORE_PIN61_CONFIG);
910 MAKE_PIN(P62, CORE_PIN62_PORTREG, CORE_PIN62_BIT, CORE_PIN62_CONFIG);
911 MAKE_PIN(P63, CORE_PIN63_PORTREG, CORE_PIN63_BIT, CORE_PIN63_CONFIG);
912 #endif
913 
914 #undef MAKE_PIN
915 
916 #elif defined(CORE_TEENSY) && (defined(__MKL26Z64__))
917 // Teensy-LC
918 
919 // we could get lower level by making these macros work properly.
920 // for now just use the semi optimised version, it costs a lookup in the pin pgm table per op
921 // but for now it will do.
922 //#define GPIO_BITBAND_ADDR(reg, bit) (((volatile uint8_t *)&(reg) + ((bit) >> 3)))
923 //#define GPIO_BITBAND_MASK(reg, bit) (1<<((bit) & 7))
924 //#define GPIO_BITBAND_PTR(reg, bit) ((volatile uint8_t *)GPIO_BITBAND_ADDR((reg), (bit)))
925 
926 #include "core_pins.h"
927 #include "avr_emulation.h"
928 
929 #define MAKE_PIN(className, baseReg, pinNum, configReg) \
930 class className { \
931 public: \
932  static void Set() { \
933  *portSetRegister(pinNum) = digitalPinToBitMask(pinNum); \
934  } \
935  static void Clear() { \
936  *portClearRegister(pinNum) = digitalPinToBitMask(pinNum); \
937  } \
938  static void SetDirRead() { \
939  configReg = PORT_PCR_SRE | PORT_PCR_DSE | PORT_PCR_MUX(1); \
940  *portModeRegister(pinNum) &= ~digitalPinToBitMask(pinNum); \
941  } \
942  static void SetDirWrite() { \
943  configReg = PORT_PCR_SRE | PORT_PCR_DSE | PORT_PCR_MUX(1); \
944  *portModeRegister(pinNum) |= digitalPinToBitMask(pinNum); \
945  } \
946  static uint8_t IsSet() { \
947  return (*portInputRegister(pinNum) & digitalPinToBitMask(pinNum)) ? 1 : 0; \
948  } \
949 };
950 
951 MAKE_PIN(P0, CORE_PIN0_PORTREG, 0, CORE_PIN0_CONFIG);
952 MAKE_PIN(P1, CORE_PIN1_PORTREG, 1, CORE_PIN1_CONFIG);
953 MAKE_PIN(P2, CORE_PIN2_PORTREG, 2, CORE_PIN2_CONFIG);
954 MAKE_PIN(P3, CORE_PIN3_PORTREG, 3, CORE_PIN3_CONFIG);
955 MAKE_PIN(P4, CORE_PIN4_PORTREG, 4, CORE_PIN4_CONFIG);
956 MAKE_PIN(P5, CORE_PIN5_PORTREG, 5, CORE_PIN5_CONFIG);
957 MAKE_PIN(P6, CORE_PIN6_PORTREG, 6, CORE_PIN6_CONFIG);
958 MAKE_PIN(P7, CORE_PIN7_PORTREG, 7, CORE_PIN7_CONFIG);
959 MAKE_PIN(P8, CORE_PIN8_PORTREG, 8, CORE_PIN8_CONFIG);
960 MAKE_PIN(P9, CORE_PIN9_PORTREG, 9, CORE_PIN9_CONFIG);
961 MAKE_PIN(P10, CORE_PIN10_PORTREG, 10, CORE_PIN10_CONFIG);
962 MAKE_PIN(P11, CORE_PIN11_PORTREG, 11, CORE_PIN11_CONFIG);
963 MAKE_PIN(P12, CORE_PIN12_PORTREG, 12, CORE_PIN12_CONFIG);
964 MAKE_PIN(P13, CORE_PIN13_PORTREG, 13, CORE_PIN13_CONFIG);
965 MAKE_PIN(P14, CORE_PIN14_PORTREG, 14, CORE_PIN14_CONFIG);
966 MAKE_PIN(P15, CORE_PIN15_PORTREG, 15, CORE_PIN15_CONFIG);
967 MAKE_PIN(P16, CORE_PIN16_PORTREG, 16, CORE_PIN16_CONFIG);
968 MAKE_PIN(P17, CORE_PIN17_PORTREG, 17, CORE_PIN17_CONFIG);
969 MAKE_PIN(P18, CORE_PIN18_PORTREG, 18, CORE_PIN18_CONFIG);
970 MAKE_PIN(P19, CORE_PIN19_PORTREG, 19, CORE_PIN19_CONFIG);
971 MAKE_PIN(P20, CORE_PIN20_PORTREG, 20, CORE_PIN20_CONFIG);
972 MAKE_PIN(P21, CORE_PIN21_PORTREG, 21, CORE_PIN21_CONFIG);
973 MAKE_PIN(P22, CORE_PIN22_PORTREG, 22, CORE_PIN22_CONFIG);
974 MAKE_PIN(P23, CORE_PIN23_PORTREG, 23, CORE_PIN23_CONFIG);
975 MAKE_PIN(P24, CORE_PIN24_PORTREG, 24, CORE_PIN24_CONFIG);
976 MAKE_PIN(P25, CORE_PIN25_PORTREG, 25, CORE_PIN25_CONFIG);
977 MAKE_PIN(P26, CORE_PIN26_PORTREG, 26, CORE_PIN26_CONFIG);
978 
979 #undef MAKE_PIN
980 
981 #elif defined(__IMXRT1062__) && (defined(ARDUINO_TEENSY40) || defined(ARDUINO_TEENSY41))
982 // Teensy 4.x
983 
984 #include "core_pins.h"
985 
986 #define MAKE_PIN(className, pin) \
987 class className { \
988 public: \
989  static void Set() { \
990  digitalWriteFast(pin, HIGH);\
991  } \
992  static void Clear() { \
993  digitalWriteFast(pin, LOW); \
994  } \
995  static void SetDirRead() { \
996  pinMode(pin, INPUT); \
997  } \
998  static void SetDirWrite() { \
999  pinMode(pin, OUTPUT); \
1000  } \
1001  static uint8_t IsSet() { \
1002  return digitalReadFast(pin); \
1003  } \
1004 };
1005 
1006 MAKE_PIN(P0, 0);
1007 MAKE_PIN(P1, 1);
1008 MAKE_PIN(P2, 2);
1009 MAKE_PIN(P3, 3);
1010 MAKE_PIN(P4, 4);
1011 MAKE_PIN(P5, 5);
1012 MAKE_PIN(P6, 6);
1013 MAKE_PIN(P7, 7);
1014 MAKE_PIN(P8, 8);
1015 MAKE_PIN(P9, 9);
1016 MAKE_PIN(P10, 10);
1017 MAKE_PIN(P11, 11);
1018 MAKE_PIN(P12, 12);
1019 MAKE_PIN(P13, 13);
1020 MAKE_PIN(P14, 14);
1021 MAKE_PIN(P15, 15);
1022 MAKE_PIN(P16, 16);
1023 MAKE_PIN(P17, 17);
1024 MAKE_PIN(P18, 18);
1025 MAKE_PIN(P19, 19);
1026 MAKE_PIN(P20, 20);
1027 MAKE_PIN(P21, 21);
1028 MAKE_PIN(P22, 22);
1029 MAKE_PIN(P23, 23);
1030 MAKE_PIN(P24, 24);
1031 MAKE_PIN(P25, 25);
1032 MAKE_PIN(P26, 26);
1033 MAKE_PIN(P27, 27);
1034 MAKE_PIN(P28, 28);
1035 MAKE_PIN(P29, 29);
1036 MAKE_PIN(P30, 30);
1037 MAKE_PIN(P31, 31);
1038 MAKE_PIN(P32, 35);
1039 MAKE_PIN(P33, 33);
1040 MAKE_PIN(P34, 34);
1041 MAKE_PIN(P35, 35);
1042 MAKE_PIN(P36, 36);
1043 MAKE_PIN(P37, 37);
1044 MAKE_PIN(P38, 38);
1045 MAKE_PIN(P39, 39);
1046 #ifdef ARDUINO_TEENSY41
1047 MAKE_PIN(P40, 40);
1048 MAKE_PIN(P41, 41);
1049 MAKE_PIN(P42, 42);
1050 MAKE_PIN(P43, 43);
1051 MAKE_PIN(P44, 44);
1052 MAKE_PIN(P45, 45);
1053 MAKE_PIN(P46, 46);
1054 MAKE_PIN(P47, 47);
1055 MAKE_PIN(P48, 48);
1056 MAKE_PIN(P49, 49);
1057 MAKE_PIN(P50, 50);
1058 MAKE_PIN(P51, 51);
1059 MAKE_PIN(P52, 52);
1060 MAKE_PIN(P53, 53);
1061 MAKE_PIN(P54, 54);
1062 #endif
1063 
1064 #undef MAKE_PIN
1065 
1066 #elif defined(ARDUINO_SAM_DUE) && defined(__SAM3X8E__)
1067 
1068 // SetDirRead:
1069 // Disable interrupts
1070 // Disable the pull up resistor
1071 // Set to INPUT
1072 // Enable PIO
1073 
1074 // SetDirWrite:
1075 // Disable interrupts
1076 // Disable the pull up resistor
1077 // Set to OUTPUT
1078 // Enable PIO
1079 
1080 #define MAKE_PIN(className, pio, pinMask) \
1081 class className { \
1082 public: \
1083  static void Set() { \
1084  pio->PIO_SODR = pinMask; \
1085  } \
1086  static void Clear() { \
1087  pio->PIO_CODR = pinMask; \
1088  } \
1089  static void SetDirRead() { \
1090  pio->PIO_IDR = pinMask ; \
1091  pio->PIO_PUDR = pinMask; \
1092  pio->PIO_ODR = pinMask; \
1093  pio->PIO_PER = pinMask; \
1094  } \
1095  static void SetDirWrite() { \
1096  pio->PIO_IDR = pinMask ; \
1097  pio->PIO_PUDR = pinMask; \
1098  pio->PIO_OER = pinMask; \
1099  pio->PIO_PER = pinMask; \
1100  } \
1101  static uint8_t IsSet() { \
1102  return pio->PIO_PDSR & pinMask; \
1103  } \
1104 };
1105 
1106 // See: http://arduino.cc/en/Hacking/PinMappingSAM3X and variant.cpp
1107 
1108 MAKE_PIN(P0, PIOA, PIO_PA8);
1109 MAKE_PIN(P1, PIOA, PIO_PA9);
1110 MAKE_PIN(P2, PIOB, PIO_PB25);
1111 MAKE_PIN(P3, PIOC, PIO_PC28);
1112 MAKE_PIN(P4, PIOC, PIO_PC26);
1113 MAKE_PIN(P5, PIOC, PIO_PC25);
1114 MAKE_PIN(P6, PIOC, PIO_PC24);
1115 MAKE_PIN(P7, PIOC, PIO_PC23);
1116 MAKE_PIN(P8, PIOC, PIO_PC22);
1117 MAKE_PIN(P9, PIOC, PIO_PC21);
1118 MAKE_PIN(P10, PIOC, PIO_PC29);
1119 MAKE_PIN(P11, PIOD, PIO_PD7);
1120 MAKE_PIN(P12, PIOD, PIO_PD8);
1121 MAKE_PIN(P13, PIOB, PIO_PB27);
1122 MAKE_PIN(P14, PIOD, PIO_PD4);
1123 MAKE_PIN(P15, PIOD, PIO_PD5);
1124 MAKE_PIN(P16, PIOA, PIO_PA13);
1125 MAKE_PIN(P17, PIOA, PIO_PA12);
1126 MAKE_PIN(P18, PIOA, PIO_PA11);
1127 MAKE_PIN(P19, PIOA, PIO_PA10);
1128 MAKE_PIN(P20, PIOB, PIO_PB12);
1129 MAKE_PIN(P21, PIOB, PIO_PB13);
1130 MAKE_PIN(P22, PIOB, PIO_PB26);
1131 MAKE_PIN(P23, PIOA, PIO_PA14);
1132 MAKE_PIN(P24, PIOA, PIO_PA15);
1133 MAKE_PIN(P25, PIOD, PIO_PD0);
1134 MAKE_PIN(P26, PIOD, PIO_PD1);
1135 MAKE_PIN(P27, PIOD, PIO_PD2);
1136 MAKE_PIN(P28, PIOD, PIO_PD3);
1137 MAKE_PIN(P29, PIOD, PIO_PD6);
1138 MAKE_PIN(P30, PIOD, PIO_PD9);
1139 MAKE_PIN(P31, PIOA, PIO_PA7);
1140 MAKE_PIN(P32, PIOD, PIO_PD10);
1141 MAKE_PIN(P33, PIOC, PIO_PC1);
1142 MAKE_PIN(P34, PIOC, PIO_PC2);
1143 MAKE_PIN(P35, PIOC, PIO_PC3);
1144 MAKE_PIN(P36, PIOC, PIO_PC4);
1145 MAKE_PIN(P37, PIOC, PIO_PC5);
1146 MAKE_PIN(P38, PIOC, PIO_PC6);
1147 MAKE_PIN(P39, PIOC, PIO_PC7);
1148 MAKE_PIN(P40, PIOC, PIO_PC8);
1149 MAKE_PIN(P41, PIOC, PIO_PC9);
1150 MAKE_PIN(P42, PIOA, PIO_PA19);
1151 MAKE_PIN(P43, PIOA, PIO_PA20);
1152 MAKE_PIN(P44, PIOC, PIO_PC19);
1153 MAKE_PIN(P45, PIOC, PIO_PC18);
1154 MAKE_PIN(P46, PIOC, PIO_PC17);
1155 MAKE_PIN(P47, PIOC, PIO_PC16);
1156 MAKE_PIN(P48, PIOC, PIO_PC15);
1157 MAKE_PIN(P49, PIOC, PIO_PC14);
1158 MAKE_PIN(P50, PIOC, PIO_PC13);
1159 MAKE_PIN(P51, PIOC, PIO_PC12);
1160 MAKE_PIN(P52, PIOB, PIO_PB21);
1161 MAKE_PIN(P53, PIOB, PIO_PB14);
1162 MAKE_PIN(P54, PIOA, PIO_PA16);
1163 MAKE_PIN(P55, PIOA, PIO_PA24);
1164 MAKE_PIN(P56, PIOA, PIO_PA23);
1165 MAKE_PIN(P57, PIOA, PIO_PA22);
1166 MAKE_PIN(P58, PIOA, PIO_PA6);
1167 MAKE_PIN(P59, PIOA, PIO_PA4);
1168 MAKE_PIN(P60, PIOA, PIO_PA3);
1169 MAKE_PIN(P61, PIOA, PIO_PA2);
1170 MAKE_PIN(P62, PIOB, PIO_PB17);
1171 MAKE_PIN(P63, PIOB, PIO_PB18);
1172 MAKE_PIN(P64, PIOB, PIO_PB19);
1173 MAKE_PIN(P65, PIOB, PIO_PB20);
1174 MAKE_PIN(P66, PIOB, PIO_PB15);
1175 MAKE_PIN(P67, PIOB, PIO_PB16);
1176 MAKE_PIN(P68, PIOA, PIO_PA1);
1177 MAKE_PIN(P69, PIOA, PIO_PA0);
1178 MAKE_PIN(P70, PIOA, PIO_PA17);
1179 MAKE_PIN(P71, PIOA, PIO_PA18);
1180 MAKE_PIN(P72, PIOC, PIO_PC30);
1181 MAKE_PIN(P73, PIOA, PIO_PA21);
1182 MAKE_PIN(P74, PIOA, PIO_PA25); // MISO
1183 MAKE_PIN(P75, PIOA, PIO_PA26); // MOSI
1184 MAKE_PIN(P76, PIOA, PIO_PA27); // CLK
1185 MAKE_PIN(P77, PIOA, PIO_PA28);
1186 MAKE_PIN(P78, PIOB, PIO_PB23); // Unconnected
1187 
1188 #undef MAKE_PIN
1189 
1190 #elif defined(RBL_NRF51822)
1191 
1192 #define MAKE_PIN(className, pin) \
1193 class className { \
1194 public: \
1195  static void Set() { \
1196  nrf_gpio_pin_set(pin); \
1197  } \
1198  static void Clear() { \
1199  nrf_gpio_pin_clear(pin); \
1200  } \
1201  static void SetDirRead() { \
1202  nrf_gpio_cfg_input(pin, NRF_GPIO_PIN_NOPULL); \
1203  } \
1204  static void SetDirWrite() { \
1205  nrf_gpio_cfg_output(pin); \
1206  } \
1207  static uint8_t IsSet() { \
1208  return (uint8_t)nrf_gpio_pin_read(pin); \
1209  } \
1210 };
1211 
1212 // See: pin_transform.c in RBL nRF51822 SDK
1213 MAKE_PIN(P0, Pin_nRF51822_to_Arduino(D0));
1214 MAKE_PIN(P1, Pin_nRF51822_to_Arduino(D1));
1215 MAKE_PIN(P2, Pin_nRF51822_to_Arduino(D2));
1216 MAKE_PIN(P3, Pin_nRF51822_to_Arduino(D3));
1217 MAKE_PIN(P4, Pin_nRF51822_to_Arduino(D4));
1218 MAKE_PIN(P5, Pin_nRF51822_to_Arduino(D5));
1219 MAKE_PIN(P6, Pin_nRF51822_to_Arduino(D6));
1220 MAKE_PIN(P7, Pin_nRF51822_to_Arduino(D7));
1221 MAKE_PIN(P8, Pin_nRF51822_to_Arduino(D8));
1222 MAKE_PIN(P9, Pin_nRF51822_to_Arduino(D9)); // INT
1223 MAKE_PIN(P10, Pin_nRF51822_to_Arduino(D10)); // SS
1224 MAKE_PIN(P11, Pin_nRF51822_to_Arduino(D11));
1225 MAKE_PIN(P12, Pin_nRF51822_to_Arduino(D12));
1226 MAKE_PIN(P13, Pin_nRF51822_to_Arduino(D13));
1227 MAKE_PIN(P14, Pin_nRF51822_to_Arduino(D14));
1228 MAKE_PIN(P15, Pin_nRF51822_to_Arduino(D15));
1229 MAKE_PIN(P17, Pin_nRF51822_to_Arduino(D17)); // MISO
1230 MAKE_PIN(P18, Pin_nRF51822_to_Arduino(D18)); // MOSI
1231 MAKE_PIN(P16, Pin_nRF51822_to_Arduino(D16)); // CLK
1232 MAKE_PIN(P19, Pin_nRF51822_to_Arduino(D19));
1233 MAKE_PIN(P20, Pin_nRF51822_to_Arduino(D20));
1234 MAKE_PIN(P21, Pin_nRF51822_to_Arduino(D21));
1235 MAKE_PIN(P22, Pin_nRF51822_to_Arduino(D22));
1236 MAKE_PIN(P23, Pin_nRF51822_to_Arduino(D23));
1237 MAKE_PIN(P24, Pin_nRF51822_to_Arduino(D24));
1238 
1239 #undef MAKE_PIN
1240 
1241 #elif defined(STM32F446xx)
1242 // NUCLEO-F446RE
1243 
1244 #define MAKE_PIN(className, port, pin) \
1245 class className { \
1246 public: \
1247  static void Set() { \
1248  HAL_GPIO_WritePin(port, pin, GPIO_PIN_SET); \
1249  } \
1250  static void Clear() { \
1251  HAL_GPIO_WritePin(port, pin, GPIO_PIN_RESET); \
1252  } \
1253  static void SetDirRead() { \
1254  static GPIO_InitTypeDef GPIO_InitStruct; \
1255  GPIO_InitStruct.Pin = pin; \
1256  GPIO_InitStruct.Mode = GPIO_MODE_INPUT; \
1257  GPIO_InitStruct.Pull = GPIO_NOPULL; \
1258  HAL_GPIO_Init(port, &GPIO_InitStruct); \
1259  } \
1260  static void SetDirWrite() { \
1261  static GPIO_InitTypeDef GPIO_InitStruct; \
1262  GPIO_InitStruct.Pin = pin; \
1263  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; \
1264  GPIO_InitStruct.Pull = GPIO_NOPULL; \
1265  GPIO_InitStruct.Speed = GPIO_SPEED_HIGH; \
1266  HAL_GPIO_Init(port, &GPIO_InitStruct); \
1267  } \
1268  static GPIO_PinState IsSet() { \
1269  return HAL_GPIO_ReadPin(port, pin); \
1270  } \
1271 };
1272 
1273 MAKE_PIN(P0, GPIOA, GPIO_PIN_3); // D0
1274 MAKE_PIN(P1, GPIOA, GPIO_PIN_2); // D1
1275 MAKE_PIN(P2, GPIOA, GPIO_PIN_10); // D2
1276 MAKE_PIN(P3, GPIOB, GPIO_PIN_3); // D3
1277 MAKE_PIN(P4, GPIOB, GPIO_PIN_5); // D4
1278 MAKE_PIN(P5, GPIOB, GPIO_PIN_4); // D5
1279 MAKE_PIN(P6, GPIOB, GPIO_PIN_10); // D6
1280 MAKE_PIN(P7, GPIOA, GPIO_PIN_8); // D7
1281 MAKE_PIN(P8, GPIOA, GPIO_PIN_9); // D8
1282 MAKE_PIN(P9, GPIOC, GPIO_PIN_7); // D9
1283 MAKE_PIN(P10, GPIOB, GPIO_PIN_6); // D10
1284 MAKE_PIN(P11, GPIOA, GPIO_PIN_7); // D11
1285 MAKE_PIN(P12, GPIOA, GPIO_PIN_6); // D12
1286 MAKE_PIN(P13, GPIOA, GPIO_PIN_5); // D13
1287 
1288 MAKE_PIN(P14, GPIOA, GPIO_PIN_0); // A0
1289 MAKE_PIN(P15, GPIOA, GPIO_PIN_1); // A1
1290 MAKE_PIN(P16, GPIOA, GPIO_PIN_4); // A2
1291 MAKE_PIN(P17, GPIOB, GPIO_PIN_0); // A3
1292 MAKE_PIN(P18, GPIOC, GPIO_PIN_1); // A4
1293 MAKE_PIN(P19, GPIOC, GPIO_PIN_0); // A5
1294 
1295 #undef MAKE_PIN
1296 
1297 #else
1298 #error "Please define board in avrpins.h"
1299 
1300 #endif
1301 
1302 #elif defined(__ARDUINO_ARC__)
1303 
1304 #include <avr/pgmspace.h>
1305 // Pointers are 32 bits on arc
1306 #define pgm_read_pointer(p) pgm_read_dword(p)
1307 
1308 #define MAKE_PIN(className, pin) \
1309 class className { \
1310 public: \
1311  static void Set() { \
1312  digitalWrite(pin, HIGH);\
1313  } \
1314  static void Clear() { \
1315  digitalWrite(pin, LOW); \
1316  } \
1317  static void SetDirRead() { \
1318  pinMode(pin, INPUT); \
1319  } \
1320  static void SetDirWrite() { \
1321  pinMode(pin, OUTPUT); \
1322  } \
1323  static uint8_t IsSet() { \
1324  return digitalRead(pin); \
1325  } \
1326 };
1327 
1328 MAKE_PIN(P0, 0);
1329 MAKE_PIN(P1, 1);
1330 MAKE_PIN(P2, 2);
1331 MAKE_PIN(P3, 3); //PWM
1332 MAKE_PIN(P4, 4);
1333 MAKE_PIN(P5, 5); //PWM
1334 MAKE_PIN(P6, 6); //PWM
1335 MAKE_PIN(P7, 7);
1336 MAKE_PIN(P8, 8);
1337 MAKE_PIN(P9, 9); //PWM
1338 
1339 MAKE_PIN(P10, 10); //SPI SS
1340 MAKE_PIN(P11, 11); //SPI MOSI
1341 MAKE_PIN(P12, 12); //SPI MISO
1342 MAKE_PIN(P13, 13); //SPI SCK / BUILTIN LED
1343 
1344 MAKE_PIN(P14, 14); // A0
1345 MAKE_PIN(P15, 15); // A1
1346 MAKE_PIN(P16, 16); // A2
1347 MAKE_PIN(P17, 17); // A3
1348 MAKE_PIN(P18, 18); // A4 SDA
1349 MAKE_PIN(P19, 19); // A5 SCL
1350 MAKE_PIN(P20, 20); // ATN
1351 
1352 #undef MAKE_PIN
1353 
1354 #elif defined(__ARDUINO_X86__) // Intel Galileo, Intel Galileo 2 and Intel Edison
1355 
1356 #include <avr/pgmspace.h>
1357 
1358 // Pointers are 32 bits on x86
1359 #define pgm_read_pointer(p) pgm_read_dword(p)
1360 
1361 #if PLATFORM_ID == 0xE1 // Edison platform id
1362 #define pinToFastPin(pin) 1 // As far as I can tell all pins can be used as fast pins
1363 #endif
1364 
1365 // Pin 2 and 3 on the Intel Galileo supports a higher rate,
1366 // so it is recommended to use one of these as the SS pin.
1367 
1368 #define MAKE_PIN(className, pin) \
1369 class className { \
1370 public: \
1371  static void Set() { \
1372  fastDigitalWrite(pin, HIGH); \
1373  } \
1374  static void Clear() { \
1375  fastDigitalWrite(pin, LOW); \
1376  } \
1377  static void SetDirRead() { \
1378  if (pinToFastPin(pin)) \
1379  pinMode(pin, INPUT_FAST); \
1380  else \
1381  pinMode(pin, INPUT); \
1382  } \
1383  static void SetDirWrite() { \
1384  if (pinToFastPin(pin)) \
1385  pinMode(pin, OUTPUT_FAST); \
1386  else \
1387  pinMode(pin, OUTPUT); \
1388  } \
1389  static uint8_t IsSet() { \
1390  return fastDigitalRead(pin); \
1391  } \
1392 };
1393 
1394 MAKE_PIN(P0, 0);
1395 MAKE_PIN(P1, 1);
1396 MAKE_PIN(P2, 2);
1397 MAKE_PIN(P3, 3);
1398 MAKE_PIN(P4, 4);
1399 MAKE_PIN(P5, 5);
1400 MAKE_PIN(P6, 6);
1401 MAKE_PIN(P7, 7);
1402 MAKE_PIN(P8, 8);
1403 MAKE_PIN(P9, 9);
1404 MAKE_PIN(P10, 10);
1405 MAKE_PIN(P11, 11);
1406 MAKE_PIN(P12, 12);
1407 MAKE_PIN(P13, 13);
1408 MAKE_PIN(P14, 14); // A0
1409 MAKE_PIN(P15, 15); // A1
1410 MAKE_PIN(P16, 16); // A2
1411 MAKE_PIN(P17, 17); // A3
1412 MAKE_PIN(P18, 18); // A4
1413 MAKE_PIN(P19, 19); // A5
1414 
1415 #undef MAKE_PIN
1416 
1417 #elif defined(__MIPSEL__)
1418 // MIPSEL (MIPS architecture using a little endian byte order)
1419 
1420 // MIPS size_t = 4
1421 #define pgm_read_pointer(p) pgm_read_dword(p)
1422 
1423 #define MAKE_PIN(className, pin) \
1424 class className { \
1425 public: \
1426  static void Set() { \
1427  digitalWrite(pin, HIGH);\
1428  } \
1429  static void Clear() { \
1430  digitalWrite(pin, LOW); \
1431  } \
1432  static void SetDirRead() { \
1433  pinMode(pin, INPUT); \
1434  } \
1435  static void SetDirWrite() { \
1436  pinMode(pin, OUTPUT); \
1437  } \
1438  static uint8_t IsSet() { \
1439  return digitalRead(pin); \
1440  } \
1441 };
1442 
1443 // 0 .. 13 - Digital pins
1444 MAKE_PIN(P0, 0); // RX
1445 MAKE_PIN(P1, 1); // TX
1446 MAKE_PIN(P2, 2); //
1447 MAKE_PIN(P3, 3); //
1448 MAKE_PIN(P4, 4); //
1449 MAKE_PIN(P5, 5); //
1450 MAKE_PIN(P6, 6); //
1451 MAKE_PIN(P7, 7); //
1452 MAKE_PIN(P8, 8); //
1453 MAKE_PIN(P9, 9); //
1454 MAKE_PIN(P10, 10); //
1455 MAKE_PIN(P11, 11); //
1456 MAKE_PIN(P12, 12); //
1457 MAKE_PIN(P13, 13); //
1458 
1459 #undef MAKE_PIN
1460 
1461 #elif defined(ESP8266) || defined(ESP32)
1462 
1463 #define MAKE_PIN(className, pin) \
1464 class className { \
1465 public: \
1466  static void Set() { \
1467  digitalWrite(pin, HIGH);\
1468  } \
1469  static void Clear() { \
1470  digitalWrite(pin, LOW); \
1471  } \
1472  static void SetDirRead() { \
1473  pinMode(pin, INPUT); \
1474  } \
1475  static void SetDirWrite() { \
1476  pinMode(pin, OUTPUT); \
1477  } \
1478  static uint8_t IsSet() { \
1479  return digitalRead(pin); \
1480  } \
1481 };
1482 
1483 #if defined(ESP8266)
1484 
1485 // Workaround the following issue: https://github.com/esp8266/Arduino/pull/5735
1486 #undef pgm_read_ptr_aligned
1487 #ifdef __cplusplus
1488 #define pgm_read_ptr_aligned(addr) (*reinterpret_cast<const void* const*>(addr))
1489 #else
1490 #define pgm_read_ptr_aligned(addr) (*(const void* const*)(addr))
1491 #endif
1492 
1493 #undef pgm_read_ptr
1494 #if PGM_READ_UNALIGNED
1495 #define pgm_read_ptr(p) pgm_read_ptr_unaligned(p)
1496 #else
1497 #define pgm_read_ptr(p) pgm_read_ptr_aligned(p)
1498 #endif
1499 
1500 #ifdef pgm_read_pointer
1501 #undef pgm_read_pointer
1502 #endif
1503 #define pgm_read_pointer(p) pgm_read_ptr(p)
1504 
1505 // Pinout for ESP-12 module
1506 // 0 .. 16 - Digital pins
1507 // GPIO 6 to 11 and 16 are not usable in this library.
1508 
1509 MAKE_PIN(P0, 0);
1510 MAKE_PIN(P1, 1); // TX0
1511 MAKE_PIN(P2, 2); // TX1
1512 MAKE_PIN(P3, 3); // RX0
1513 MAKE_PIN(P4, 4); // SDA
1514 MAKE_PIN(P5, 5); // SCL
1515 MAKE_PIN(P12, 12); // MISO
1516 MAKE_PIN(P13, 13); // MOSI
1517 MAKE_PIN(P14, 14); // SCK
1518 MAKE_PIN(P15, 15); // SS
1519 
1520 #elif defined(ESP32)
1521 
1522 // Workaround strict-aliasing warnings
1523 #ifdef pgm_read_word
1524 #undef pgm_read_word
1525 #endif
1526 #ifdef pgm_read_dword
1527 #undef pgm_read_dword
1528 #endif
1529 #ifdef pgm_read_float
1530 #undef pgm_read_float
1531 #endif
1532 #ifdef pgm_read_ptr
1533 #undef pgm_read_ptr
1534 #endif
1535 
1536 #define pgm_read_word(addr) ({ \
1537  typeof(addr) _addr = (addr); \
1538  *(const unsigned short *)(_addr); \
1539 })
1540 #define pgm_read_dword(addr) ({ \
1541  typeof(addr) _addr = (addr); \
1542  *(const unsigned long *)(_addr); \
1543 })
1544 #define pgm_read_float(addr) ({ \
1545  typeof(addr) _addr = (addr); \
1546  *(const float *)(_addr); \
1547 })
1548 #define pgm_read_ptr(addr) ({ \
1549  typeof(addr) _addr = (addr); \
1550  *(void * const *)(_addr); \
1551 })
1552 
1553 // Pinout for ESP32 dev module
1554 
1555 MAKE_PIN(P0, 0);
1556 MAKE_PIN(P1, 1); // TX0
1557 MAKE_PIN(P10, 10); // TX1
1558 MAKE_PIN(P3, 3); // RX0
1559 MAKE_PIN(P21, 21); // SDA
1560 MAKE_PIN(P22, 22); // SCL
1561 MAKE_PIN(P19, 19); // MISO
1562 MAKE_PIN(P23, 23); // MOSI
1563 MAKE_PIN(P18, 18); // SCK
1564 MAKE_PIN(P5, 5); // SS
1565 MAKE_PIN(P17, 17); // INT
1566 
1567 #endif
1568 
1569 #undef MAKE_PIN
1570 
1571 // pgm_read_ptr is not defined in the ESP32, so we have to undef the diffinition from version_helper.h
1572 #ifdef pgm_read_pointer
1573 #undef pgm_read_pointer
1574 #endif
1575 #define pgm_read_pointer(p) pgm_read_ptr(p)
1576 
1577 #else
1578 #error "Please define board in avrpins.h"
1579 
1580 #endif
1581 
1582 #endif //_avrpins_h_
diff --git a/cdc___x_r21_b1411_8cpp.html b/cdc___x_r21_b1411_8cpp.html index 6a714c66..b09f7080 100644 --- a/cdc___x_r21_b1411_8cpp.html +++ b/cdc___x_r21_b1411_8cpp.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: cdc_XR21B1411.cpp File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + +
- - - + + +
@@ -104,7 +81,7 @@ Include dependency graph for cdc_XR21B1411.cpp: diff --git a/cdc___x_r21_b1411_8cpp__incl.map b/cdc___x_r21_b1411_8cpp__incl.map index b598ec85..bdf1f4c9 100644 --- a/cdc___x_r21_b1411_8cpp__incl.map +++ b/cdc___x_r21_b1411_8cpp__incl.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/cdc___x_r21_b1411_8cpp__incl.md5 b/cdc___x_r21_b1411_8cpp__incl.md5 index 488365a4..96940093 100644 --- a/cdc___x_r21_b1411_8cpp__incl.md5 +++ b/cdc___x_r21_b1411_8cpp__incl.md5 @@ -1 +1 @@ -94c1f3e832d30d1e0699ba30de20f4fa \ No newline at end of file +91e9029051e41cc4e0144ef4cbbca25d \ No newline at end of file diff --git a/cdc___x_r21_b1411_8cpp__incl.png b/cdc___x_r21_b1411_8cpp__incl.png index c73f1f3f7b3ee619da873ab8ea47995ea006b61b..95ebcd5394caf77e9c4c26f7fcc191fc9cccdd37 100644 GIT binary patch literal 5910 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�^!Uli8%bReB;S)y$+a6iT$xAs!UYHA zBgxgOmmIvRI`4X2Wkym`Oq069s0-GfpbZTT_4K-*UpZ`|zYj?U_;fzU)%`uCD`E85 zbu6h7tIW>Me*fN~Io;c9`JwkJ&!&?u0>Qz-Va0`q8xd?ywMk%fGC_D1nw*-FFY7W} z;2uF>V&w&j`qN5lrr5T(!0ZleY@119hh6D;ny^KVpz|~>XN6@yn8P$<46!ig(=U7& zh-Q{ zNxb_U1l;l`Z47er;K&{y3oLu^R=cn=PjPLnxp*>ZBbY0!|Ek?P-kZ?RRP+Y!G2C5S zM<*YZ*Vl)HT-@Ddg_d?s=*?AB6NgNJ$mh6nD!TtM1Sy|TC zueU|;qOaG^j{PV!zs7&(-aR<<=+Ps|w7oW|a14{SN>m9BcLIWN{RuH3Qmf3N{ngTv ztLwOuW5@Zj$@TS#fdPjqP?nO(a+B&dpmNar3OTO^1_w9&>P`o0V8F7rx_Z@n38kys zN%*tO_Ltef@bHcBU$wq*@UhPU#{BUxIi(-oufW1B4;4=U?|nLp+L&qr6kTXq?)0n1 zJ5VKSjDwxs6one->+2gC>2NB?5>$_-=)qv7riP#&Oy~#ZltfJ^K_n3o&E0y*b}^k` z^DW~N9WCw3D6VH>A}eEhZKN_kH#cI$3@E|ssymp(Ffah`smDO(ZdSgrDYBz z`5u@_)12e>S$sB96KzQ^|Spe5<69sH~J! pZ=XnvZNb`vxTFOAzs-BMf)@_38y{IxQDD#w-MFTwRit4P`afU&M#KOB literal 5247 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 RU`G*B|KpxY(VZu+{sq|1SttMi diff --git a/cdc___x_r21_b1411_8cpp_source.html b/cdc___x_r21_b1411_8cpp_source.html index 58d197cc..8ec355bb 100644 --- a/cdc___x_r21_b1411_8cpp_source.html +++ b/cdc___x_r21_b1411_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: cdc_XR21B1411.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - + +
@@ -104,7 +81,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -231,7 +208,9 @@ Macros  

Macro Definition Documentation

- + +

◆ XR_REG_CUSTOM_DRIVER

+
@@ -241,11 +220,13 @@ Macros
-

Definition at line 24 of file cdc_XR21B1411.h.

+

Definition at line 24 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_CUSTOM_DRIVER_ACTIVE

+
@@ -255,11 +236,13 @@ Macros
-

Definition at line 25 of file cdc_XR21B1411.h.

+

Definition at line 25 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_ACM_FLOW_CTL

+
@@ -269,11 +252,13 @@ Macros
-

Definition at line 27 of file cdc_XR21B1411.h.

+

Definition at line 27 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_FLOW_CTL

+
@@ -283,11 +268,13 @@ Macros
-

Definition at line 28 of file cdc_XR21B1411.h.

+

Definition at line 28 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_FLOW_CTL_HALF_DPLX

+
@@ -297,11 +284,13 @@ Macros
-

Definition at line 29 of file cdc_XR21B1411.h.

+

Definition at line 29 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_FLOW_CTL_MODE_MASK

+
@@ -311,11 +300,13 @@ Macros
-

Definition at line 30 of file cdc_XR21B1411.h.

+

Definition at line 30 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_FLOW_CTL_NONE

+
@@ -325,11 +316,13 @@ Macros
-

Definition at line 31 of file cdc_XR21B1411.h.

+

Definition at line 31 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_FLOW_CTL_HW

+
@@ -339,11 +332,13 @@ Macros
-

Definition at line 32 of file cdc_XR21B1411.h.

+

Definition at line 32 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_FLOW_CTL_SW

+
@@ -353,11 +348,13 @@ Macros
-

Definition at line 33 of file cdc_XR21B1411.h.

+

Definition at line 33 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_FLOW_CTL_MMMRX

+
@@ -367,11 +364,13 @@ Macros
-

Definition at line 34 of file cdc_XR21B1411.h.

+

Definition at line 34 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_FLOW_CTL_MMMRXTX

+
@@ -381,11 +380,13 @@ Macros
-

Definition at line 35 of file cdc_XR21B1411.h.

+

Definition at line 35 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_ACM_GPIO_MODE

+
@@ -395,11 +396,13 @@ Macros
-

Definition at line 37 of file cdc_XR21B1411.h.

+

Definition at line 37 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_GPIO_MODE

+
@@ -409,11 +412,13 @@ Macros
-

Definition at line 38 of file cdc_XR21B1411.h.

+

Definition at line 38 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_GPIO_MODE_GPIO

+
@@ -423,11 +428,13 @@ Macros
-

Definition at line 39 of file cdc_XR21B1411.h.

+

Definition at line 39 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_GPIO_MODE_FC_RTSCTS

+
@@ -437,11 +444,13 @@ Macros
-

Definition at line 40 of file cdc_XR21B1411.h.

+

Definition at line 40 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_GPIO_MODE_FC_DTRDSR

+
@@ -451,11 +460,13 @@ Macros
-

Definition at line 41 of file cdc_XR21B1411.h.

+

Definition at line 41 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_GPIO_MODE_ATE

+
@@ -465,11 +476,13 @@ Macros
-

Definition at line 42 of file cdc_XR21B1411.h.

+

Definition at line 42 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_GPIO_MODE_ATE_ADDRESS

+
@@ -479,11 +492,13 @@ Macros
-

Definition at line 43 of file cdc_XR21B1411.h.

+

Definition at line 43 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_ACM_GPIO_DIR

+
@@ -493,11 +508,13 @@ Macros
-

Definition at line 45 of file cdc_XR21B1411.h.

+

Definition at line 45 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_GPIO_DIR

+
@@ -507,11 +524,13 @@ Macros
-

Definition at line 46 of file cdc_XR21B1411.h.

+

Definition at line 46 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_ACM_GPIO_INT

+
@@ -521,11 +540,13 @@ Macros
-

Definition at line 48 of file cdc_XR21B1411.h.

+

Definition at line 48 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_GPIO_INT

+
@@ -535,11 +556,13 @@ Macros
-

Definition at line 49 of file cdc_XR21B1411.h.

+

Definition at line 49 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_GPIO_MASK

+
@@ -549,11 +572,13 @@ Macros
-

Definition at line 50 of file cdc_XR21B1411.h.

+

Definition at line 50 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_UART_ENABLE

+
@@ -563,11 +588,13 @@ Macros
-

Definition at line 52 of file cdc_XR21B1411.h.

+

Definition at line 52 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_UART_ENABLE_RX

+
@@ -577,11 +604,13 @@ Macros
-

Definition at line 53 of file cdc_XR21B1411.h.

+

Definition at line 53 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_UART_ENABLE_TX

+
@@ -591,11 +620,13 @@ Macros
-

Definition at line 54 of file cdc_XR21B1411.h.

+

Definition at line 54 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_ERROR_STATUS

+
@@ -605,11 +636,13 @@ Macros
-

Definition at line 56 of file cdc_XR21B1411.h.

+

Definition at line 56 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_ERROR_STATUS_MASK

+
@@ -619,11 +652,13 @@ Macros
-

Definition at line 57 of file cdc_XR21B1411.h.

+

Definition at line 57 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_ERROR_STATUS_ERROR

+
@@ -633,11 +668,13 @@ Macros
-

Definition at line 58 of file cdc_XR21B1411.h.

+

Definition at line 58 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_ERROR_STATUS_BREAK

+
@@ -647,11 +684,13 @@ Macros
-

Definition at line 59 of file cdc_XR21B1411.h.

+

Definition at line 59 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_ERROR_STATUS_OVERRUN

+
@@ -661,11 +700,13 @@ Macros
-

Definition at line 60 of file cdc_XR21B1411.h.

+

Definition at line 60 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_ERROR_STATUS_PARITY

+
@@ -675,11 +716,13 @@ Macros
-

Definition at line 61 of file cdc_XR21B1411.h.

+

Definition at line 61 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_ERROR_STATUS_FRAME

+
@@ -689,11 +732,13 @@ Macros
-

Definition at line 62 of file cdc_XR21B1411.h.

+

Definition at line 62 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_ERROR_STATUS_BREAKING

+
@@ -703,11 +748,13 @@ Macros
-

Definition at line 63 of file cdc_XR21B1411.h.

+

Definition at line 63 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_TX_BREAK

+
@@ -717,11 +764,13 @@ Macros
-

Definition at line 65 of file cdc_XR21B1411.h.

+

Definition at line 65 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_XCVR_EN_DELAY

+
@@ -731,11 +780,13 @@ Macros
-

Definition at line 67 of file cdc_XR21B1411.h.

+

Definition at line 67 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_GPIO_SET

+
@@ -745,11 +796,13 @@ Macros
-

Definition at line 69 of file cdc_XR21B1411.h.

+

Definition at line 69 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_GPIO_CLR

+
@@ -759,11 +812,13 @@ Macros
-

Definition at line 71 of file cdc_XR21B1411.h.

+

Definition at line 71 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_GPIO_STATUS

+
@@ -773,11 +828,13 @@ Macros
-

Definition at line 73 of file cdc_XR21B1411.h.

+

Definition at line 73 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_CUSTOMISED_INT

+
@@ -787,11 +844,13 @@ Macros
-

Definition at line 75 of file cdc_XR21B1411.h.

+

Definition at line 75 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_PIN_PULLUP_ENABLE

+
@@ -801,11 +860,13 @@ Macros
-

Definition at line 77 of file cdc_XR21B1411.h.

+

Definition at line 77 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_PIN_PULLDOWN_ENABLE

+
@@ -815,11 +876,13 @@ Macros
-

Definition at line 79 of file cdc_XR21B1411.h.

+

Definition at line 79 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_LOOPBACK

+
@@ -829,11 +892,13 @@ Macros
-

Definition at line 81 of file cdc_XR21B1411.h.

+

Definition at line 81 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_RX_FIFO_LATENCY

+
@@ -843,11 +908,13 @@ Macros
-

Definition at line 83 of file cdc_XR21B1411.h.

+

Definition at line 83 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_RX_FIFO_LATENCY_ENABLE

+
@@ -857,11 +924,13 @@ Macros
-

Definition at line 84 of file cdc_XR21B1411.h.

+

Definition at line 84 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_WIDE_MODE

+
@@ -871,11 +940,13 @@ Macros
-

Definition at line 86 of file cdc_XR21B1411.h.

+

Definition at line 86 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_WIDE_MODE_ENABLE

+
@@ -885,11 +956,13 @@ Macros
-

Definition at line 87 of file cdc_XR21B1411.h.

+

Definition at line 87 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_XON_CHAR

+
@@ -899,11 +972,13 @@ Macros
-

Definition at line 89 of file cdc_XR21B1411.h.

+

Definition at line 89 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_XOFF_CHAR

+
@@ -913,11 +988,13 @@ Macros
-

Definition at line 90 of file cdc_XR21B1411.h.

+

Definition at line 90 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_TX_FIFO_RESET

+
@@ -927,11 +1004,13 @@ Macros
-

Definition at line 92 of file cdc_XR21B1411.h.

+

Definition at line 92 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_TX_FIFO_COUNT

+
@@ -941,11 +1020,13 @@ Macros
-

Definition at line 93 of file cdc_XR21B1411.h.

+

Definition at line 93 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_RX_FIFO_RESET

+
@@ -955,11 +1036,13 @@ Macros
-

Definition at line 94 of file cdc_XR21B1411.h.

+

Definition at line 94 of file cdc_XR21B1411.h.

- + +

◆ XR_REG_RX_FIFO_COUNT

+
@@ -969,11 +1052,13 @@ Macros
-

Definition at line 95 of file cdc_XR21B1411.h.

+

Definition at line 95 of file cdc_XR21B1411.h.

- + +

◆ XR_WRITE_REQUEST_TYPE

+
@@ -983,11 +1068,13 @@ Macros
-

Definition at line 97 of file cdc_XR21B1411.h.

+

Definition at line 97 of file cdc_XR21B1411.h.

- + +

◆ XR_READ_REQUEST_TYPE

+
@@ -997,11 +1084,13 @@ Macros
-

Definition at line 99 of file cdc_XR21B1411.h.

+

Definition at line 99 of file cdc_XR21B1411.h.

- + +

◆ XR_MAX_ENDPOINTS

+
@@ -1011,7 +1100,7 @@ Macros
-

Definition at line 101 of file cdc_XR21B1411.h.

+

Definition at line 101 of file cdc_XR21B1411.h.

@@ -1020,7 +1109,7 @@ Macros diff --git a/cdc___x_r21_b1411_8h__dep__incl.map b/cdc___x_r21_b1411_8h__dep__incl.map index 392b1227..5a1d6fde 100644 --- a/cdc___x_r21_b1411_8h__dep__incl.map +++ b/cdc___x_r21_b1411_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/cdc___x_r21_b1411_8h__dep__incl.md5 b/cdc___x_r21_b1411_8h__dep__incl.md5 index d1f48836..ccb81d4b 100644 --- a/cdc___x_r21_b1411_8h__dep__incl.md5 +++ b/cdc___x_r21_b1411_8h__dep__incl.md5 @@ -1 +1 @@ -250b78e5b50dfc5c4569c99531678ec3 \ No newline at end of file +e53d5ac5df7beb8def48e46bf452afe4 \ No newline at end of file diff --git a/cdc___x_r21_b1411_8h__dep__incl.png b/cdc___x_r21_b1411_8h__dep__incl.png index 9fed7616c5d65635b8e09ae99ad09902d6687cfd..60a0dc966fe0be262ec89f9d23f8d5a1694417bd 100644 GIT binary patch literal 3559 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 S|7~#R258;WQ?F37iToGlNZ#21 literal 3046 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 diff --git a/cdc___x_r21_b1411_8h__incl.map b/cdc___x_r21_b1411_8h__incl.map index d6f9b68d..2fe685fb 100644 --- a/cdc___x_r21_b1411_8h__incl.map +++ b/cdc___x_r21_b1411_8h__incl.map @@ -1,4 +1,4 @@ - - + + diff --git a/cdc___x_r21_b1411_8h__incl.md5 b/cdc___x_r21_b1411_8h__incl.md5 index 8ab25f05..833d38dd 100644 --- a/cdc___x_r21_b1411_8h__incl.md5 +++ b/cdc___x_r21_b1411_8h__incl.md5 @@ -1 +1 @@ -ab5d3dff2680fe378e5afcfe3049b74b \ No newline at end of file +81ae8245618e642787cd8f06ec2914c8 \ No newline at end of file diff --git a/cdc___x_r21_b1411_8h__incl.png b/cdc___x_r21_b1411_8h__incl.png index a99ae5d381e976202bff7fb842d909f68d17cbbe..e2c2a58d459b03e37d4628324fef3ea5b8cf3b48 100644 GIT binary patch literal 4413 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 literal 3975 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 F{|82?gk1mt diff --git a/cdc___x_r21_b1411_8h_source.html b/cdc___x_r21_b1411_8h_source.html index e8acb852..8155ce15 100644 --- a/cdc___x_r21_b1411_8h_source.html +++ b/cdc___x_r21_b1411_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: cdc_XR21B1411.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - + +
@@ -103,7 +80,7 @@ Include dependency graph for cdcacm.cpp: diff --git a/cdcacm_8cpp__incl.map b/cdcacm_8cpp__incl.map index fe3ebf6c..b534d4e4 100644 --- a/cdcacm_8cpp__incl.map +++ b/cdcacm_8cpp__incl.map @@ -1,4 +1,4 @@ - - + + diff --git a/cdcacm_8cpp__incl.md5 b/cdcacm_8cpp__incl.md5 index 9fd4609d..de6f288e 100644 --- a/cdcacm_8cpp__incl.md5 +++ b/cdcacm_8cpp__incl.md5 @@ -1 +1 @@ -8836c5951dac28c739547b666b24d9f8 \ No newline at end of file +dc13b74ea4b2ee21c679139ece235c5e \ No newline at end of file diff --git a/cdcacm_8cpp__incl.png b/cdcacm_8cpp__incl.png index b16418d488a4acdbef8d75ea89b934b7de11d447..e7c2cceab6df53b407cbcdb6ba3d659063b3db49 100644 GIT binary patch literal 3649 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 Na8t)byHe9G>_2&0NOb@J diff --git a/cdcacm_8cpp_source.html b/cdcacm_8cpp_source.html index 90689eb2..7cfaa2f7 100644 --- a/cdcacm_8cpp_source.html +++ b/cdcacm_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: cdcacm.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- +
@@ -104,11 +81,11 @@ This graph shows which files directly or indirectly include this file:
- - - - - + + + + +
@@ -250,7 +227,9 @@ Typedefs  

Macro Definition Documentation

- + +

◆ bmREQ_CDCOUT

+
@@ -260,11 +239,13 @@ Typedefs
-

Definition at line 22 of file cdcacm.h.

+

Definition at line 22 of file cdcacm.h.

- + +

◆ bmREQ_CDCIN

+
@@ -274,11 +255,13 @@ Typedefs
-

Definition at line 23 of file cdcacm.h.

+

Definition at line 23 of file cdcacm.h.

- + +

◆ CDC_SUBCLASS_DLCM

+
@@ -288,11 +271,13 @@ Typedefs
-

Definition at line 26 of file cdcacm.h.

+

Definition at line 26 of file cdcacm.h.

- + +

◆ CDC_SUBCLASS_ACM

+
@@ -302,11 +287,13 @@ Typedefs
-

Definition at line 27 of file cdcacm.h.

+

Definition at line 27 of file cdcacm.h.

- + +

◆ CDC_SUBCLASS_TCM

+
@@ -316,11 +303,13 @@ Typedefs
-

Definition at line 28 of file cdcacm.h.

+

Definition at line 28 of file cdcacm.h.

- + +

◆ CDC_SUBCLASS_MCCM

+
@@ -330,11 +319,13 @@ Typedefs
-

Definition at line 29 of file cdcacm.h.

+

Definition at line 29 of file cdcacm.h.

- + +

◆ CDC_SUBCLASS_CAPI

+
@@ -344,11 +335,13 @@ Typedefs
-

Definition at line 30 of file cdcacm.h.

+

Definition at line 30 of file cdcacm.h.

- + +

◆ CDC_SUBCLASS_ETHERNET

+
@@ -358,11 +351,13 @@ Typedefs
-

Definition at line 31 of file cdcacm.h.

+

Definition at line 31 of file cdcacm.h.

- + +

◆ CDC_SUBCLASS_ATM

+
@@ -372,11 +367,13 @@ Typedefs
-

Definition at line 32 of file cdcacm.h.

+

Definition at line 32 of file cdcacm.h.

- + +

◆ CDC_SUBCLASS_WIRELESS_HANDSET

+
@@ -386,11 +383,13 @@ Typedefs
-

Definition at line 33 of file cdcacm.h.

+

Definition at line 33 of file cdcacm.h.

- + +

◆ CDC_SUBCLASS_DEVICE_MANAGEMENT

+
@@ -400,11 +399,13 @@ Typedefs
-

Definition at line 34 of file cdcacm.h.

+

Definition at line 34 of file cdcacm.h.

- + +

◆ CDC_SUBCLASS_MOBILE_DIRECT_LINE

+
@@ -414,11 +415,13 @@ Typedefs
-

Definition at line 35 of file cdcacm.h.

+

Definition at line 35 of file cdcacm.h.

- + +

◆ CDC_SUBCLASS_OBEX

+
@@ -428,11 +431,13 @@ Typedefs
-

Definition at line 36 of file cdcacm.h.

+

Definition at line 36 of file cdcacm.h.

- + +

◆ CDC_SUBCLASS_ETHERNET_EMU

+
@@ -442,11 +447,13 @@ Typedefs
-

Definition at line 37 of file cdcacm.h.

+

Definition at line 37 of file cdcacm.h.

- + +

◆ CDC_PROTOCOL_ITU_T_V_250

+
@@ -456,11 +463,13 @@ Typedefs
-

Definition at line 40 of file cdcacm.h.

+

Definition at line 40 of file cdcacm.h.

- + +

◆ CDC_PROTOCOL_PCCA_101

+
@@ -470,11 +479,13 @@ Typedefs
-

Definition at line 41 of file cdcacm.h.

+

Definition at line 41 of file cdcacm.h.

- + +

◆ CDC_PROTOCOL_PCCA_101_O

+
@@ -484,11 +495,13 @@ Typedefs
-

Definition at line 42 of file cdcacm.h.

+

Definition at line 42 of file cdcacm.h.

- + +

◆ CDC_PROTOCOL_GSM_7_07

+
@@ -498,11 +511,13 @@ Typedefs
-

Definition at line 43 of file cdcacm.h.

+

Definition at line 43 of file cdcacm.h.

- + +

◆ CDC_PROTOCOL_3GPP_27_07

+
@@ -512,11 +527,13 @@ Typedefs
-

Definition at line 44 of file cdcacm.h.

+

Definition at line 44 of file cdcacm.h.

- + +

◆ CDC_PROTOCOL_C_S0017_0

+
@@ -526,11 +543,13 @@ Typedefs
-

Definition at line 45 of file cdcacm.h.

+

Definition at line 45 of file cdcacm.h.

- + +

◆ CDC_PROTOCOL_USB_EEM

+
@@ -540,11 +559,13 @@ Typedefs
-

Definition at line 46 of file cdcacm.h.

+

Definition at line 46 of file cdcacm.h.

- + +

◆ CDC_SEND_ENCAPSULATED_COMMAND

+
@@ -554,11 +575,13 @@ Typedefs
-

Definition at line 49 of file cdcacm.h.

+

Definition at line 49 of file cdcacm.h.

- + +

◆ CDC_GET_ENCAPSULATED_RESPONSE

+
@@ -568,11 +591,13 @@ Typedefs
-

Definition at line 50 of file cdcacm.h.

+

Definition at line 50 of file cdcacm.h.

- + +

◆ CDC_SET_COMM_FEATURE

+
@@ -582,11 +607,13 @@ Typedefs
-

Definition at line 53 of file cdcacm.h.

+

Definition at line 53 of file cdcacm.h.

- + +

◆ CDC_GET_COMM_FEATURE

+
@@ -596,11 +623,13 @@ Typedefs
-

Definition at line 54 of file cdcacm.h.

+

Definition at line 54 of file cdcacm.h.

- + +

◆ CDC_CLEAR_COMM_FEATURE

+
@@ -610,11 +639,13 @@ Typedefs
-

Definition at line 55 of file cdcacm.h.

+

Definition at line 55 of file cdcacm.h.

- + +

◆ CDC_SET_AUX_LINE_STATE

+
@@ -624,11 +655,13 @@ Typedefs
-

Definition at line 56 of file cdcacm.h.

+

Definition at line 56 of file cdcacm.h.

- + +

◆ CDC_SET_HOOK_STATE

+
@@ -638,11 +671,13 @@ Typedefs
-

Definition at line 57 of file cdcacm.h.

+

Definition at line 57 of file cdcacm.h.

- + +

◆ CDC_PULSE_SETUP

+
@@ -652,11 +687,13 @@ Typedefs
-

Definition at line 58 of file cdcacm.h.

+

Definition at line 58 of file cdcacm.h.

- + +

◆ CDC_SEND_PULSE

+
@@ -666,11 +703,13 @@ Typedefs
-

Definition at line 59 of file cdcacm.h.

+

Definition at line 59 of file cdcacm.h.

- + +

◆ CDC_SET_PULSE_TIME

+
@@ -680,11 +719,13 @@ Typedefs
-

Definition at line 60 of file cdcacm.h.

+

Definition at line 60 of file cdcacm.h.

- + +

◆ CDC_RING_AUX_JACK

+
@@ -694,11 +735,13 @@ Typedefs
-

Definition at line 61 of file cdcacm.h.

+

Definition at line 61 of file cdcacm.h.

- + +

◆ CDC_SET_LINE_CODING

+
@@ -708,11 +751,13 @@ Typedefs
-

Definition at line 62 of file cdcacm.h.

+

Definition at line 62 of file cdcacm.h.

- + +

◆ CDC_GET_LINE_CODING

+
@@ -722,11 +767,13 @@ Typedefs
-

Definition at line 63 of file cdcacm.h.

+

Definition at line 63 of file cdcacm.h.

- + +

◆ CDC_SET_CONTROL_LINE_STATE

+
@@ -736,11 +783,13 @@ Typedefs
-

Definition at line 64 of file cdcacm.h.

+

Definition at line 64 of file cdcacm.h.

- + +

◆ CDC_SEND_BREAK

+
@@ -750,11 +799,13 @@ Typedefs
-

Definition at line 65 of file cdcacm.h.

+

Definition at line 65 of file cdcacm.h.

- + +

◆ CDC_SET_RINGER_PARMS

+
@@ -764,11 +815,13 @@ Typedefs
-

Definition at line 66 of file cdcacm.h.

+

Definition at line 66 of file cdcacm.h.

- + +

◆ CDC_GET_RINGER_PARMS

+
@@ -778,11 +831,13 @@ Typedefs
-

Definition at line 67 of file cdcacm.h.

+

Definition at line 67 of file cdcacm.h.

- + +

◆ CDC_SET_OPERATION_PARMS

+
@@ -792,11 +847,13 @@ Typedefs
-

Definition at line 68 of file cdcacm.h.

+

Definition at line 68 of file cdcacm.h.

- + +

◆ CDC_GET_OPERATION_PARMS

+
@@ -806,11 +863,13 @@ Typedefs
-

Definition at line 69 of file cdcacm.h.

+

Definition at line 69 of file cdcacm.h.

- + +

◆ CDC_SET_LINE_PARMS

+
@@ -820,11 +879,13 @@ Typedefs
-

Definition at line 70 of file cdcacm.h.

+

Definition at line 70 of file cdcacm.h.

- + +

◆ CDC_GET_LINE_PARMS

+
@@ -834,11 +895,13 @@ Typedefs
-

Definition at line 71 of file cdcacm.h.

+

Definition at line 71 of file cdcacm.h.

- + +

◆ CDC_DIAL_DIGITS

+
@@ -848,11 +911,13 @@ Typedefs
-

Definition at line 72 of file cdcacm.h.

+

Definition at line 72 of file cdcacm.h.

- + +

◆ NETWORK_CONNECTION

+
@@ -862,11 +927,13 @@ Typedefs
-

Definition at line 75 of file cdcacm.h.

+

Definition at line 75 of file cdcacm.h.

- + +

◆ RESPONSE_AVAILABLE

+
@@ -876,11 +943,13 @@ Typedefs
-

Definition at line 76 of file cdcacm.h.

+

Definition at line 76 of file cdcacm.h.

- + +

◆ AUX_JACK_HOOK_STATE

+
@@ -890,11 +959,13 @@ Typedefs
-

Definition at line 77 of file cdcacm.h.

+

Definition at line 77 of file cdcacm.h.

- + +

◆ RING_DETECT

+
@@ -904,11 +975,13 @@ Typedefs
-

Definition at line 78 of file cdcacm.h.

+

Definition at line 78 of file cdcacm.h.

- + +

◆ SERIAL_STATE

+
@@ -918,11 +991,13 @@ Typedefs
-

Definition at line 79 of file cdcacm.h.

+

Definition at line 79 of file cdcacm.h.

- + +

◆ CALL_STATE_CHANGE

+
@@ -932,11 +1007,13 @@ Typedefs
-

Definition at line 80 of file cdcacm.h.

+

Definition at line 80 of file cdcacm.h.

- + +

◆ LINE_STATE_CHANGE

+
@@ -946,11 +1023,13 @@ Typedefs
-

Definition at line 81 of file cdcacm.h.

+

Definition at line 81 of file cdcacm.h.

- + +

◆ CONNECTION_SPEED_CHANGE

+
@@ -960,11 +1039,13 @@ Typedefs
-

Definition at line 82 of file cdcacm.h.

+

Definition at line 82 of file cdcacm.h.

- + +

◆ ACM_MAX_ENDPOINTS

+
@@ -974,12 +1055,14 @@ Typedefs
-

Definition at line 161 of file cdcacm.h.

+

Definition at line 161 of file cdcacm.h.

Typedef Documentation

- + +

◆ DLM_FUNC_DESCR

+
@@ -991,7 +1074,9 @@ Typedefs - + +

◆ TEL_OPER_MODES_FUNC_DESCR

+
@@ -1003,7 +1088,9 @@ Typedefs - + +

◆ TEL_CALL_STATE_REP_CPBL_FUNC_DESCR

+
@@ -1021,7 +1108,7 @@ Typedefs diff --git a/cdcacm_8h__dep__incl.map b/cdcacm_8h__dep__incl.map index c9aff920..ad768a98 100644 --- a/cdcacm_8h__dep__incl.map +++ b/cdcacm_8h__dep__incl.map @@ -1,7 +1,7 @@ - - - - - + + + + + diff --git a/cdcacm_8h__dep__incl.md5 b/cdcacm_8h__dep__incl.md5 index 9355f061..b8fe34c4 100644 --- a/cdcacm_8h__dep__incl.md5 +++ b/cdcacm_8h__dep__incl.md5 @@ -1 +1 @@ -d9684fa8dbbab21f6c77cde6aba312ed \ No newline at end of file +a290fd140b9c53cb509a0c1f221809bd \ No newline at end of file diff --git a/cdcacm_8h__dep__incl.png b/cdcacm_8h__dep__incl.png index 68f7165a4de2941b0c2d652ac874f205c32dee96..47d6abebf067f004cf8172cf684cdefc056c5f82 100644 GIT binary patch literal 9795 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 OL{&*su~6RP&Hn>lAug`~ literal 9677 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 diff --git a/cdcacm_8h__incl.map b/cdcacm_8h__incl.map index 5f0a1aaf..3630a2d5 100644 --- a/cdcacm_8h__incl.map +++ b/cdcacm_8h__incl.map @@ -1,3 +1,3 @@ - + diff --git a/cdcacm_8h__incl.md5 b/cdcacm_8h__incl.md5 index ac958164..4ba15cd9 100644 --- a/cdcacm_8h__incl.md5 +++ b/cdcacm_8h__incl.md5 @@ -1 +1 @@ -107fd47c127eab19013c78d1f9837064 \ No newline at end of file +e1dbfabc42dd79acb3eb7148c02f8f1f \ No newline at end of file diff --git a/cdcacm_8h__incl.png b/cdcacm_8h__incl.png index 257282e1541176b24eb6ddc94a163a46be2ea4c1..70fff0dfe070b0968a2d8601c558d7315f85b816 100644 GIT binary patch literal 2027 zcmbVNc`(~)82%M4qA1ZtW-BS`XuF{_tovA0!q&N|2BoML5m)M}D+oo^qK*z}sfrbi z)Df+#rKDA7QAemyDw?_}8t0~+*`57+zi+9PzNaUBrA|`x~ELI`4uaLi{t0g5G9~FjRBrqk$iH1c1 zmV8LjlMhG>X5iv}0dq=`hhG;GdlRL`}c@3HSPj8`N*uT2C_#hLltX zfEEv3f~Y_!p#^?y^sqdZo65xEuvo9tIq$Mbq-gHiwZ1PPX)qXUU|=99_Onm~`sm8q zY}X&BuCh!vHa3boh(1jPDQ`snMNok&DJ#zgN2vQ=;jecw)Y0K;BBo-#!y8tr4ZmIt z4a4L0qqp%_uU?&e5j`|Cl$n{Sh}_)RxNl9)fEuMTrsL!JVlx5t^XK2QSo`~XJ5=Xq zl%X%v(;l&z!SyaB{rXYgR@UeGP^B7LT4>rxUvF>jy?gia@@~y-PBTQ(Ei^SXOYF;0 zR#qIX^w5`|IUHFCq~Yc~+S7BUy*;tj9f)JGSiQZysi~lZR$B~aYP^eV@z(CuwL6S}gxu#~&yC!1JTdQFCLw(5N z82#4PQuNN|FQ4JtJ3C!nUFPzcPG?`l>_uWQ5Fp>0JXmHk_vzEZXqCd5GZod<18!bC z*ef(zWhHx^8x#}-xYsbFEbLXJK=8bRygWhRbWUp5tej48;#ilSHXU<9LLxIen;!^m zB;f{cKo!sxh?6G?n2SFa8FWfAMOo?8DTbSulT-eXuRjhKs!Nj3ypgV}`lzJjP+X5U z4YMiyuul+(hke#cjSqb}wa#^LaCl$M@Hhua2aZ9ZMuvtm0wbK(e+q>9S2rxG{r&6hQc6J)~u~AVjWrN%_ zye>&ZLw4zu0QLAVsW@iGT9r4gY&vV zp@4w3_4Ntd)UCWY9< zq@<+gTU$pu4_EDmtyEUR>6pC*W=))9b89(`CM_f|F){H#GKxz4A#T1#V|Qtx1wMi+ zEXu`CR7@;MU-ZbgubgaSn3J6ue1->p=kalgsHpv4;`JGRQ@{DC?(Wnu*T`FLyBi~VeZJRb3HkZ9M)cZg=C?oXoOhl# zN8fH+U47_;2@aTi!R<3T=ud+nRwXktgNGAZ{8Gm3JZ^KEg(VBsFtaS$A76r2ldk_f3{t%7}|+h zqgUN*%NMziy^cb4Q_yPghW&4zYQM>zi;OOI^sbC-UCVQuws)Ax?@UHYGZ?b)yzv^y zPp{FZHD$YbnUs|A*gXV+u{{|y9bCV@E~{r8x9S&2l+T8!3ddX8*jz-7wYqB@ZB$XQ z6oeg$W5`Q^l*Es@e=x`69nrZ0aR4m#AX>cUt@?q%ALYBs0Czl~JSs-2t^8eNn`yDF zfc~NQQ7P%LyInblo4kvdx?_{ft>wvB&Om94_Xnm9*>V4j{HtXzvH2FPmNo*>KSr!e zYi~EpL79iq=x=-If-^wzd^~rR56FkA0`3XVM`1r?At5C#VB&N(mu{8oS>?39shvjm z6B2sv2IDcz58vM24qayT%mzEy+vnO;ZBDiFr*Fvmz9n55+b!9qUTK~)Lh`wX$*{u%cs?FWt#`PYqKJGU8PzG z1Olm;)!p4)pdGMXcx~#-PzCQZB@&6i%EtUi+}uxRr5`^W4|1-<%F4;f$;wKAh{@tm zxf3Tg3Qa;6$IO4REFBPs8ip@7hRj|3#(6t53{!z8ntohUiwWPA+F%E|)VakyR% zJ`|64q7GMAS2r~^F`1W7W3kvfnDD)AdSCfSd^C;suCueV_o30`Q;-obKE<=N)0uB5h)D_8_1-J>deko>!kkB?GziXxH%z8Mx~r6@@-4*d9v z$mK=^&&n(WFro7@dI{4W3M;XJa?Fl@-2RV6YnO%fWA|Ok9gisFw5%;nG`=~gNc}$60i^jwvr1F<_`d;g?&Ej> literal 2097 zcmcJRdpOhkAHcswE~RLZ$h8h~Imju8Y{kqqM`)Q#Sy;^Im{RW4Cb=7ud&ea$w=TNO zeI;XazaMLrFj3oRa~;E3PtQ4j{Qmzv@7MeCe4gj?dETGf`}0Y1a@cm8oNnrM;B&O1#DMpMTfUAp72$p5H5b!@}Ojj~`>*JJ$al)RsxCsBn(vl)2A? z-Mh8oX+LP^#BBNG<>$XmJN)~=*jNIW8^WBKv8W#12|OYay$ufy(CLy57yDFKHE&|E zGRw=$;adVzKR-W0Ru*n($fX8J-l~2c5D;JzG9{X7eUyFE%*WT)*~MjN^=NWOhqaWn zv}LX9^wQVi#EguvsH?TLwP*~cjY^dm!JO>s>UtJ3ZLR)Na+nwVsX6Jv0~I&|QC?Xo zd9$h5AP|jy^ZB#d6C^pkvGEi*Rxr*Q=kczgu3RZ?Xi(71mb9+`3G?xy>@-Ip@0YmYk-VwHg56Cpi*s*$?l#DJ=Gk! zjM1(tl6lB@&fp{_C55USbbbo#XB{I5SRk84;h1BL-X?T-f*WokDHn%H8+D>*>7%(7#@8os3~NM>6a6a=Wik zdq2+4*4$4(GezRUAlJ3(3%i$=^y=!eHj4&_WO4*GdTGO=VMv0##(15^K`z%@zig+x zGc6;1OFS!kTe5Pbft6{mF@T9v>*@-FX{Z8qFG%`xtN#9`gCD&5tU`Hl8@=vza2*Rw zmEzUVw48g`xm(^0#e=+RGY>57-WAA?7i|`#r|(0bP!tsxx2$lP z{5D$cIFpl;Gycq5q^+&Z2@a3%|LaT?cp^s^QQ}f5qokBNG6G*(S<&}jSCI_oM?^%J z#BG63N3Q`X6x@?1`b6H!%1v<8iWCF_nOj)sq@>709xQxni4qoDtcen}rw8WkJ$dcX zf`Yn=3zNyjnwpxXBy*QWuXj&PP1P3^D9(Ru3e#t`gmZBd3mnc22m}H@`1{8VRy`BT z#NqMs#iT*>MR@9A2h^`|y#*)ra~lhbib5kTCs#O(IW`-1?V1tjz=4p}`Afw0LgTAb zqyr#OYopIa6zUhUG6;lAN|Hnxc+&_pMD^(0{Ja;oxv7Z}kOWV&#(R?feETP1{#AncPTuqVh9m0&`!C(Y{~Bznyd3WYkkx^@^`Z;V*^;tor@>vT4qMcmR8f27z zzsRZNXr}Gu6N>URXpTq_cc=Y-uj7A#=wTEja>+I^YU08jH6CJk<5WXK!}#l~g=({) n-oHu^YC-X5CI787)NR1nUVH6`C*MZ+2LSA>9AQtOmvR39-YO`- diff --git a/cdcacm_8h_source.html b/cdcacm_8h_source.html index 8bfd2068..856eabd5 100644 --- a/cdcacm_8h_source.html +++ b/cdcacm_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: cdcacm.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
cdcacm.h
-Go to the documentation of this file.
1 /* Copyright (C) 2011 Circuits At Home, LTD. All rights reserved.
2 
3 This software may be distributed and modified under the terms of the GNU
4 General Public License version 2 (GPL2) as published by the Free Software
5 Foundation and appearing in the file GPL2.TXT included in the packaging of
6 this file. Please note that GPL2 Section 2[b] requires that all works based
7 on this software must also be made publicly available under the terms of
8 the GPL2 ("Copyleft").
9 
10 Contact information
11 -------------------
12 
13 Circuits At Home, LTD
14 Web : http://www.circuitsathome.com
15 e-mail : support@circuitsathome.com
16  */
17 #if !defined(__CDCACM_H__)
18 #define __CDCACM_H__
19 
20 #include "Usb.h"
21 
22 #define bmREQ_CDCOUT USB_SETUP_HOST_TO_DEVICE|USB_SETUP_TYPE_CLASS|USB_SETUP_RECIPIENT_INTERFACE
23 #define bmREQ_CDCIN USB_SETUP_DEVICE_TO_HOST|USB_SETUP_TYPE_CLASS|USB_SETUP_RECIPIENT_INTERFACE
24 
25 // CDC Subclass Constants
26 #define CDC_SUBCLASS_DLCM 0x01 // Direct Line Control Model
27 #define CDC_SUBCLASS_ACM 0x02 // Abstract Control Model
28 #define CDC_SUBCLASS_TCM 0x03 // Telephone Control Model
29 #define CDC_SUBCLASS_MCCM 0x04 // Multi Channel Control Model
30 #define CDC_SUBCLASS_CAPI 0x05 // CAPI Control Model
31 #define CDC_SUBCLASS_ETHERNET 0x06 // Ethernet Network Control Model
32 #define CDC_SUBCLASS_ATM 0x07 // ATM Network Control Model
33 #define CDC_SUBCLASS_WIRELESS_HANDSET 0x08 // Wireless Handset Control Model
34 #define CDC_SUBCLASS_DEVICE_MANAGEMENT 0x09 // Device Management
35 #define CDC_SUBCLASS_MOBILE_DIRECT_LINE 0x0A // Mobile Direct Line Model
36 #define CDC_SUBCLASS_OBEX 0x0B // OBEX
37 #define CDC_SUBCLASS_ETHERNET_EMU 0x0C // Ethernet Emulation Model
38 
39 // Communication Interface Class Control Protocol Codes
40 #define CDC_PROTOCOL_ITU_T_V_250 0x01 // AT Commands defined by ITU-T V.250
41 #define CDC_PROTOCOL_PCCA_101 0x02 // AT Commands defined by PCCA-101
42 #define CDC_PROTOCOL_PCCA_101_O 0x03 // AT Commands defined by PCCA-101 & Annex O
43 #define CDC_PROTOCOL_GSM_7_07 0x04 // AT Commands defined by GSM 7.07
44 #define CDC_PROTOCOL_3GPP_27_07 0x05 // AT Commands defined by 3GPP 27.007
45 #define CDC_PROTOCOL_C_S0017_0 0x06 // AT Commands defined by TIA for CDMA
46 #define CDC_PROTOCOL_USB_EEM 0x07 // Ethernet Emulation Model
47 
48 // CDC Commands defined by CDC 1.2
49 #define CDC_SEND_ENCAPSULATED_COMMAND 0x00
50 #define CDC_GET_ENCAPSULATED_RESPONSE 0x01
51 
52 // CDC Commands defined by PSTN 1.2
53 #define CDC_SET_COMM_FEATURE 0x02
54 #define CDC_GET_COMM_FEATURE 0x03
55 #define CDC_CLEAR_COMM_FEATURE 0x04
56 #define CDC_SET_AUX_LINE_STATE 0x10
57 #define CDC_SET_HOOK_STATE 0x11
58 #define CDC_PULSE_SETUP 0x12
59 #define CDC_SEND_PULSE 0x13
60 #define CDC_SET_PULSE_TIME 0x14
61 #define CDC_RING_AUX_JACK 0x15
62 #define CDC_SET_LINE_CODING 0x20
63 #define CDC_GET_LINE_CODING 0x21
64 #define CDC_SET_CONTROL_LINE_STATE 0x22
65 #define CDC_SEND_BREAK 0x23
66 #define CDC_SET_RINGER_PARMS 0x30
67 #define CDC_GET_RINGER_PARMS 0x31
68 #define CDC_SET_OPERATION_PARMS 0x32
69 #define CDC_GET_OPERATION_PARMS 0x33
70 #define CDC_SET_LINE_PARMS 0x34
71 #define CDC_GET_LINE_PARMS 0x35
72 #define CDC_DIAL_DIGITS 0x36
73 
74 //Class-Specific Notification Codes
75 #define NETWORK_CONNECTION 0x00
76 #define RESPONSE_AVAILABLE 0x01
77 #define AUX_JACK_HOOK_STATE 0x08
78 #define RING_DETECT 0x09
79 #define SERIAL_STATE 0x20
80 #define CALL_STATE_CHANGE 0x28
81 #define LINE_STATE_CHANGE 0x29
82 #define CONNECTION_SPEED_CHANGE 0x2a
83 
84 // CDC Functional Descriptor Structures
85 
86 typedef struct {
87  uint8_t bFunctionLength;
88  uint8_t bDescriptorType;
90  uint8_t bmCapabilities;
91  uint8_t bDataInterface;
93 
94 typedef struct {
95  uint8_t bFunctionLength;
96  uint8_t bDescriptorType;
98  uint8_t bmCapabilities;
101 
102 typedef struct {
109 
110 typedef struct {
111  uint32_t dwDTERate; // Data Terminal Rate in bits per second
112  uint8_t bCharFormat; // 0 - 1 stop bit, 1 - 1.5 stop bits, 2 - 2 stop bits
113  uint8_t bParityType; // 0 - None, 1 - Odd, 2 - Even, 3 - Mark, 4 - Space
114  uint8_t bDataBits; // Data bits (5, 6, 7, 8 or 16)
115 } LINE_CODING;
116 
117 typedef struct {
118  uint8_t bmRequestType; // 0xa1 for class-specific notifications
119  uint8_t bNotification;
120  uint16_t wValue;
121  uint16_t wIndex;
122  uint16_t wLength;
123  uint16_t bmState; //UART state bitmap for SERIAL_STATE, other notifications variable length
125 
126 class ACM;
127 
129 public:
130 
131  virtual uint8_t OnInit(ACM *pacm __attribute__((unused))) {
132  return 0;
133  };
134  //virtual void OnDataRcvd(ACM *pacm, uint8_t nbytes, uint8_t *dataptr) = 0;
135  //virtual void OnDisconnected(ACM *pacm) = 0;
136 };
137 
143 typedef struct {
144 
145  union {
146  uint8_t tty;
147 
148  struct {
149  bool enhanced : 1; // Do we have the ability to set/clear any features?
150  // Status and 8th bit in data stream.
151  // Presence only indicates feature is available, but this isn't used for CDC-ACM.
152  bool wide : 1;
153  bool autoflow_RTS : 1; // Has autoflow on RTS/CTS
154  bool autoflow_DSR : 1; // Has autoflow on DTR/DSR
155  bool autoflow_XON : 1; // Has autoflow XON/XOFF
156  bool half_duplex : 1; // Has half-duplex capability.
157  } __attribute__((packed));
158  };
159 } tty_features;
160 
161 #define ACM_MAX_ENDPOINTS 4
162 
163 class ACM : public USBDeviceConfig, public UsbConfigXtracter {
164 protected:
167  uint8_t bAddress;
168  uint8_t bConfNum; // configuration number
169  uint8_t bControlIface; // Control interface value
170  uint8_t bDataIface; // Data interface value
171  uint8_t bNumEP; // total number of EP in the configuration
172  uint32_t qNextPollTime; // next poll time
173  volatile bool bPollEnable; // poll enable flag
174  volatile bool ready; //device ready indicator
175  tty_features _enhanced_status; // current status
176 
177  void PrintEndpointDescriptor(const USB_ENDPOINT_DESCRIPTOR* ep_ptr);
178 
179 public:
180  static const uint8_t epDataInIndex; // DataIn endpoint index
181  static const uint8_t epDataOutIndex; // DataOUT endpoint index
182  static const uint8_t epInterruptInIndex; // InterruptIN endpoint index
184 
185  ACM(USB *pusb, CDCAsyncOper *pasync);
186 
187  uint8_t SetCommFeature(uint16_t fid, uint8_t nbytes, uint8_t *dataptr);
188  uint8_t GetCommFeature(uint16_t fid, uint8_t nbytes, uint8_t *dataptr);
189  uint8_t ClearCommFeature(uint16_t fid);
190  uint8_t SetLineCoding(const LINE_CODING *dataptr);
191  uint8_t GetLineCoding(LINE_CODING *dataptr);
192  uint8_t SetControlLineState(uint8_t state);
193  uint8_t SendBreak(uint16_t duration);
194  uint8_t GetNotif(uint16_t *bytes_rcvd, uint8_t *dataptr);
195 
196  // Methods for receiving and sending data
197  uint8_t RcvData(uint16_t *nbytesptr, uint8_t *dataptr);
198  uint8_t SndData(uint16_t nbytes, uint8_t *dataptr);
199 
200  // USBDeviceConfig implementation
201  uint8_t Init(uint8_t parent, uint8_t port, bool lowspeed);
202  uint8_t Release();
203  uint8_t Poll();
204 
205  bool available(void) {
206  return false;
207  };
208 
209  virtual uint8_t GetAddress() {
210  return bAddress;
211  };
212 
213  virtual bool isReady() {
214  return ready;
215  };
216 
218  return _enhanced_status;
219  };
220 
222  tty_features rv;
223  rv.enhanced = false;
224  rv.autoflow_RTS = false;
225  rv.autoflow_DSR = false;
226  rv.autoflow_XON = false;
227  rv.half_duplex = false;
228  rv.wide = false;
229  return rv;
230  };
231 
232  virtual void autoflowRTS(bool s __attribute__((unused))) {
233  };
234 
235  virtual void autoflowDSR(bool s __attribute__((unused))) {
236  };
237 
238  virtual void autoflowXON(bool s __attribute__((unused))) {
239  };
240 
241  virtual void half_duplex(bool s __attribute__((unused))) {
242  };
243 
244  virtual void wide(bool s __attribute__((unused))) {
245  };
246 
247  // UsbConfigXtracter implementation
248  void EndpointXtract(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t proto, const USB_ENDPOINT_DESCRIPTOR *ep);
249 };
250 
251 #endif // __CDCACM_H__
uint16_t wIndex
Definition: cdcacm.h:121
+Go to the documentation of this file.
1 /* Copyright (C) 2011 Circuits At Home, LTD. All rights reserved.
2 
3 This software may be distributed and modified under the terms of the GNU
4 General Public License version 2 (GPL2) as published by the Free Software
5 Foundation and appearing in the file GPL2.TXT included in the packaging of
6 this file. Please note that GPL2 Section 2[b] requires that all works based
7 on this software must also be made publicly available under the terms of
8 the GPL2 ("Copyleft").
9 
10 Contact information
11 -------------------
12 
13 Circuits At Home, LTD
14 Web : http://www.circuitsathome.com
15 e-mail : support@circuitsathome.com
16  */
17 #if !defined(__CDCACM_H__)
18 #define __CDCACM_H__
19 
20 #include "Usb.h"
21 
22 #define bmREQ_CDCOUT USB_SETUP_HOST_TO_DEVICE|USB_SETUP_TYPE_CLASS|USB_SETUP_RECIPIENT_INTERFACE
23 #define bmREQ_CDCIN USB_SETUP_DEVICE_TO_HOST|USB_SETUP_TYPE_CLASS|USB_SETUP_RECIPIENT_INTERFACE
24 
25 // CDC Subclass Constants
26 #define CDC_SUBCLASS_DLCM 0x01 // Direct Line Control Model
27 #define CDC_SUBCLASS_ACM 0x02 // Abstract Control Model
28 #define CDC_SUBCLASS_TCM 0x03 // Telephone Control Model
29 #define CDC_SUBCLASS_MCCM 0x04 // Multi Channel Control Model
30 #define CDC_SUBCLASS_CAPI 0x05 // CAPI Control Model
31 #define CDC_SUBCLASS_ETHERNET 0x06 // Ethernet Network Control Model
32 #define CDC_SUBCLASS_ATM 0x07 // ATM Network Control Model
33 #define CDC_SUBCLASS_WIRELESS_HANDSET 0x08 // Wireless Handset Control Model
34 #define CDC_SUBCLASS_DEVICE_MANAGEMENT 0x09 // Device Management
35 #define CDC_SUBCLASS_MOBILE_DIRECT_LINE 0x0A // Mobile Direct Line Model
36 #define CDC_SUBCLASS_OBEX 0x0B // OBEX
37 #define CDC_SUBCLASS_ETHERNET_EMU 0x0C // Ethernet Emulation Model
38 
39 // Communication Interface Class Control Protocol Codes
40 #define CDC_PROTOCOL_ITU_T_V_250 0x01 // AT Commands defined by ITU-T V.250
41 #define CDC_PROTOCOL_PCCA_101 0x02 // AT Commands defined by PCCA-101
42 #define CDC_PROTOCOL_PCCA_101_O 0x03 // AT Commands defined by PCCA-101 & Annex O
43 #define CDC_PROTOCOL_GSM_7_07 0x04 // AT Commands defined by GSM 7.07
44 #define CDC_PROTOCOL_3GPP_27_07 0x05 // AT Commands defined by 3GPP 27.007
45 #define CDC_PROTOCOL_C_S0017_0 0x06 // AT Commands defined by TIA for CDMA
46 #define CDC_PROTOCOL_USB_EEM 0x07 // Ethernet Emulation Model
47 
48 // CDC Commands defined by CDC 1.2
49 #define CDC_SEND_ENCAPSULATED_COMMAND 0x00
50 #define CDC_GET_ENCAPSULATED_RESPONSE 0x01
51 
52 // CDC Commands defined by PSTN 1.2
53 #define CDC_SET_COMM_FEATURE 0x02
54 #define CDC_GET_COMM_FEATURE 0x03
55 #define CDC_CLEAR_COMM_FEATURE 0x04
56 #define CDC_SET_AUX_LINE_STATE 0x10
57 #define CDC_SET_HOOK_STATE 0x11
58 #define CDC_PULSE_SETUP 0x12
59 #define CDC_SEND_PULSE 0x13
60 #define CDC_SET_PULSE_TIME 0x14
61 #define CDC_RING_AUX_JACK 0x15
62 #define CDC_SET_LINE_CODING 0x20
63 #define CDC_GET_LINE_CODING 0x21
64 #define CDC_SET_CONTROL_LINE_STATE 0x22
65 #define CDC_SEND_BREAK 0x23
66 #define CDC_SET_RINGER_PARMS 0x30
67 #define CDC_GET_RINGER_PARMS 0x31
68 #define CDC_SET_OPERATION_PARMS 0x32
69 #define CDC_GET_OPERATION_PARMS 0x33
70 #define CDC_SET_LINE_PARMS 0x34
71 #define CDC_GET_LINE_PARMS 0x35
72 #define CDC_DIAL_DIGITS 0x36
73 
74 //Class-Specific Notification Codes
75 #define NETWORK_CONNECTION 0x00
76 #define RESPONSE_AVAILABLE 0x01
77 #define AUX_JACK_HOOK_STATE 0x08
78 #define RING_DETECT 0x09
79 #define SERIAL_STATE 0x20
80 #define CALL_STATE_CHANGE 0x28
81 #define LINE_STATE_CHANGE 0x29
82 #define CONNECTION_SPEED_CHANGE 0x2a
83 
84 // CDC Functional Descriptor Structures
85 
86 typedef struct {
87  uint8_t bFunctionLength;
88  uint8_t bDescriptorType;
90  uint8_t bmCapabilities;
91  uint8_t bDataInterface;
93 
94 typedef struct {
95  uint8_t bFunctionLength;
96  uint8_t bDescriptorType;
98  uint8_t bmCapabilities;
101 
102 typedef struct {
109 
110 typedef struct {
111  uint32_t dwDTERate; // Data Terminal Rate in bits per second
112  uint8_t bCharFormat; // 0 - 1 stop bit, 1 - 1.5 stop bits, 2 - 2 stop bits
113  uint8_t bParityType; // 0 - None, 1 - Odd, 2 - Even, 3 - Mark, 4 - Space
114  uint8_t bDataBits; // Data bits (5, 6, 7, 8 or 16)
115 } LINE_CODING;
116 
117 typedef struct {
118  uint8_t bmRequestType; // 0xa1 for class-specific notifications
119  uint8_t bNotification;
120  uint16_t wValue;
121  uint16_t wIndex;
122  uint16_t wLength;
123  uint16_t bmState; //UART state bitmap for SERIAL_STATE, other notifications variable length
125 
126 class ACM;
127 
129 public:
130 
131  virtual uint8_t OnInit(ACM *pacm __attribute__((unused))) {
132  return 0;
133  };
134  //virtual void OnDataRcvd(ACM *pacm, uint8_t nbytes, uint8_t *dataptr) = 0;
135  //virtual void OnDisconnected(ACM *pacm) = 0;
136 };
137 
143 typedef struct {
144 
145  union {
146  uint8_t tty;
147 
148  struct {
149  bool enhanced : 1; // Do we have the ability to set/clear any features?
150  // Status and 8th bit in data stream.
151  // Presence only indicates feature is available, but this isn't used for CDC-ACM.
152  bool wide : 1;
153  bool autoflow_RTS : 1; // Has autoflow on RTS/CTS
154  bool autoflow_DSR : 1; // Has autoflow on DTR/DSR
155  bool autoflow_XON : 1; // Has autoflow XON/XOFF
156  bool half_duplex : 1; // Has half-duplex capability.
157  } __attribute__((packed));
158  };
159 } tty_features;
160 
161 #define ACM_MAX_ENDPOINTS 4
162 
163 class ACM : public USBDeviceConfig, public UsbConfigXtracter {
164 protected:
167  uint8_t bAddress;
168  uint8_t bConfNum; // configuration number
169  uint8_t bControlIface; // Control interface value
170  uint8_t bDataIface; // Data interface value
171  uint8_t bNumEP; // total number of EP in the configuration
172  uint32_t qNextPollTime; // next poll time
173  volatile bool bPollEnable; // poll enable flag
174  volatile bool ready; //device ready indicator
175  tty_features _enhanced_status; // current status
176 
177  void PrintEndpointDescriptor(const USB_ENDPOINT_DESCRIPTOR* ep_ptr);
178 
179 public:
180  static const uint8_t epDataInIndex; // DataIn endpoint index
181  static const uint8_t epDataOutIndex; // DataOUT endpoint index
182  static const uint8_t epInterruptInIndex; // InterruptIN endpoint index
184 
185  ACM(USB *pusb, CDCAsyncOper *pasync);
186 
187  uint8_t SetCommFeature(uint16_t fid, uint8_t nbytes, uint8_t *dataptr);
188  uint8_t GetCommFeature(uint16_t fid, uint8_t nbytes, uint8_t *dataptr);
189  uint8_t ClearCommFeature(uint16_t fid);
190  uint8_t SetLineCoding(const LINE_CODING *dataptr);
191  uint8_t GetLineCoding(LINE_CODING *dataptr);
192  uint8_t SetControlLineState(uint8_t state);
193  uint8_t SendBreak(uint16_t duration);
194  uint8_t GetNotif(uint16_t *bytes_rcvd, uint8_t *dataptr);
195 
196  // Methods for receiving and sending data
197  uint8_t RcvData(uint16_t *nbytesptr, uint8_t *dataptr);
198  uint8_t SndData(uint16_t nbytes, uint8_t *dataptr);
199 
200  // USBDeviceConfig implementation
201  uint8_t Init(uint8_t parent, uint8_t port, bool lowspeed);
202  uint8_t Release();
203  uint8_t Poll();
204 
205  bool available(void) {
206  return false;
207  };
208 
209  virtual uint8_t GetAddress() {
210  return bAddress;
211  };
212 
213  virtual bool isReady() {
214  return ready;
215  };
216 
218  return _enhanced_status;
219  };
220 
222  tty_features rv;
223  rv.enhanced = false;
224  rv.autoflow_RTS = false;
225  rv.autoflow_DSR = false;
226  rv.autoflow_XON = false;
227  rv.half_duplex = false;
228  rv.wide = false;
229  return rv;
230  };
231 
232  virtual void autoflowRTS(bool s __attribute__((unused))) {
233  };
234 
235  virtual void autoflowDSR(bool s __attribute__((unused))) {
236  };
237 
238  virtual void autoflowXON(bool s __attribute__((unused))) {
239  };
240 
241  virtual void half_duplex(bool s __attribute__((unused))) {
242  };
243 
244  virtual void wide(bool s __attribute__((unused))) {
245  };
246 
247  // UsbConfigXtracter implementation
248  void EndpointXtract(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t proto, const USB_ENDPOINT_DESCRIPTOR *ep);
249 };
250 
251 #endif // __CDCACM_H__
uint16_t wIndex
Definition: cdcacm.h:121
virtual tty_features enhanced_features(void)
Definition: cdcacm.h:221
bool available(void)
Definition: cdcacm.h:205
virtual uint8_t OnInit(ACM *pacm)
Definition: cdcacm.h:131
@@ -165,7 +142,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/cdcftdi_8cpp.html b/cdcftdi_8cpp.html index c35f07cf..2f64ee47 100644 --- a/cdcftdi_8cpp.html +++ b/cdcftdi_8cpp.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: cdcftdi.cpp File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- - + +
@@ -103,7 +80,7 @@ Include dependency graph for cdcftdi.cpp:
diff --git a/cdcftdi_8cpp__incl.map b/cdcftdi_8cpp__incl.map index 3ee0a9ea..c2bb4794 100644 --- a/cdcftdi_8cpp__incl.map +++ b/cdcftdi_8cpp__incl.map @@ -1,4 +1,4 @@ - - + + diff --git a/cdcftdi_8cpp__incl.md5 b/cdcftdi_8cpp__incl.md5 index f6dd1fa8..c172e2fa 100644 --- a/cdcftdi_8cpp__incl.md5 +++ b/cdcftdi_8cpp__incl.md5 @@ -1 +1 @@ -e865f32d985af2b4d5e2da82e7c52bae \ No newline at end of file +5aa4a4ebba11b439405ccd1452ff839b \ No newline at end of file diff --git a/cdcftdi_8cpp__incl.png b/cdcftdi_8cpp__incl.png index fe259a2242a87dacd30968d3db67802441af0631..ff63efd9fe641524e940832d1fb0f45385d72e00 100644 GIT binary patch literal 3352 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 literal 3043 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 diff --git a/cdcftdi_8cpp_source.html b/cdcftdi_8cpp_source.html index b5088307..bda0cbf6 100644 --- a/cdcftdi_8cpp_source.html +++ b/cdcftdi_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: cdcftdi.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + + - + - - + + + +
- +
@@ -103,7 +80,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -210,7 +187,9 @@ Macros  

Macro Definition Documentation

- + +

◆ bmREQ_FTDI_OUT

+
@@ -220,11 +199,13 @@ Macros
-

Definition at line 22 of file cdcftdi.h.

+

Definition at line 22 of file cdcftdi.h.

- + +

◆ bmREQ_FTDI_IN

+
@@ -234,11 +215,13 @@ Macros
-

Definition at line 23 of file cdcftdi.h.

+

Definition at line 23 of file cdcftdi.h.

- + +

◆ FTDI_VID

+
@@ -248,11 +231,13 @@ Macros
-

Definition at line 28 of file cdcftdi.h.

+

Definition at line 28 of file cdcftdi.h.

- + +

◆ FTDI_PID

+
@@ -262,11 +247,13 @@ Macros
-

Definition at line 29 of file cdcftdi.h.

+

Definition at line 29 of file cdcftdi.h.

- + +

◆ FT232AM

+
@@ -276,11 +263,13 @@ Macros
-

Definition at line 31 of file cdcftdi.h.

+

Definition at line 31 of file cdcftdi.h.

- + +

◆ FT232BM

+
@@ -290,11 +279,13 @@ Macros
-

Definition at line 32 of file cdcftdi.h.

+

Definition at line 32 of file cdcftdi.h.

- + +

◆ FT2232

+
@@ -304,11 +295,13 @@ Macros
-

Definition at line 33 of file cdcftdi.h.

+

Definition at line 33 of file cdcftdi.h.

- + +

◆ FT232R

+
@@ -318,11 +311,13 @@ Macros
-

Definition at line 34 of file cdcftdi.h.

+

Definition at line 34 of file cdcftdi.h.

- + +

◆ FTDI_SIO_RESET

+
@@ -332,11 +327,13 @@ Macros
-

Definition at line 37 of file cdcftdi.h.

+

Definition at line 37 of file cdcftdi.h.

- + +

◆ FTDI_SIO_MODEM_CTRL

+
@@ -346,11 +343,13 @@ Macros
-

Definition at line 38 of file cdcftdi.h.

+

Definition at line 38 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_FLOW_CTRL

+
@@ -360,11 +359,13 @@ Macros
-

Definition at line 39 of file cdcftdi.h.

+

Definition at line 39 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_BAUD_RATE

+
@@ -374,11 +375,13 @@ Macros
-

Definition at line 40 of file cdcftdi.h.

+

Definition at line 40 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_DATA

+
@@ -388,11 +391,13 @@ Macros
-

Definition at line 41 of file cdcftdi.h.

+

Definition at line 41 of file cdcftdi.h.

- + +

◆ FTDI_SIO_GET_MODEM_STATUS

+
@@ -402,11 +407,13 @@ Macros
-

Definition at line 42 of file cdcftdi.h.

+

Definition at line 42 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_EVENT_CHAR

+
@@ -416,11 +423,13 @@ Macros
-

Definition at line 43 of file cdcftdi.h.

+

Definition at line 43 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_ERROR_CHAR

+
@@ -430,11 +439,13 @@ Macros
-

Definition at line 44 of file cdcftdi.h.

+

Definition at line 44 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_LATENCY_TIMER

+
@@ -444,11 +455,13 @@ Macros
-

Definition at line 45 of file cdcftdi.h.

+

Definition at line 45 of file cdcftdi.h.

- + +

◆ FTDI_SIO_GET_LATENCY_TIMER

+
@@ -458,11 +471,13 @@ Macros
-

Definition at line 46 of file cdcftdi.h.

+

Definition at line 46 of file cdcftdi.h.

- + +

◆ FTDI_SIO_RESET_SIO

+
@@ -472,11 +487,13 @@ Macros
-

Definition at line 48 of file cdcftdi.h.

+

Definition at line 48 of file cdcftdi.h.

- + +

◆ FTDI_SIO_RESET_PURGE_RX

+
@@ -486,11 +503,13 @@ Macros
-

Definition at line 49 of file cdcftdi.h.

+

Definition at line 49 of file cdcftdi.h.

- + +

◆ FTDI_SIO_RESET_PURGE_TX

+
@@ -500,11 +519,13 @@ Macros
-

Definition at line 50 of file cdcftdi.h.

+

Definition at line 50 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_DATA_PARITY_NONE

+
@@ -514,11 +535,13 @@ Macros
-

Definition at line 52 of file cdcftdi.h.

+

Definition at line 52 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_DATA_PARITY_ODD

+
@@ -528,11 +551,13 @@ Macros
-

Definition at line 53 of file cdcftdi.h.

+

Definition at line 53 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_DATA_PARITY_EVEN

+
@@ -542,11 +567,13 @@ Macros
-

Definition at line 54 of file cdcftdi.h.

+

Definition at line 54 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_DATA_PARITY_MARK

+
@@ -556,11 +583,13 @@ Macros
-

Definition at line 55 of file cdcftdi.h.

+

Definition at line 55 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_DATA_PARITY_SPACE

+
@@ -570,11 +599,13 @@ Macros
-

Definition at line 56 of file cdcftdi.h.

+

Definition at line 56 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_DATA_STOP_BITS_1

+
@@ -584,11 +615,13 @@ Macros
-

Definition at line 57 of file cdcftdi.h.

+

Definition at line 57 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_DATA_STOP_BITS_15

+
@@ -598,11 +631,13 @@ Macros
-

Definition at line 58 of file cdcftdi.h.

+

Definition at line 58 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_DATA_STOP_BITS_2

+
@@ -612,11 +647,13 @@ Macros
-

Definition at line 59 of file cdcftdi.h.

+

Definition at line 59 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_BREAK

+
@@ -626,11 +663,13 @@ Macros
-

Definition at line 60 of file cdcftdi.h.

+

Definition at line 60 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_DTR_MASK

+
@@ -640,11 +679,13 @@ Macros
-

Definition at line 62 of file cdcftdi.h.

+

Definition at line 62 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_DTR_HIGH

+
@@ -654,11 +695,13 @@ Macros
-

Definition at line 63 of file cdcftdi.h.

+

Definition at line 63 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_DTR_LOW

+
@@ -668,11 +711,13 @@ Macros
-

Definition at line 64 of file cdcftdi.h.

+

Definition at line 64 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_RTS_MASK

+
@@ -682,11 +727,13 @@ Macros
-

Definition at line 65 of file cdcftdi.h.

+

Definition at line 65 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_RTS_HIGH

+
@@ -696,11 +743,13 @@ Macros
-

Definition at line 66 of file cdcftdi.h.

+

Definition at line 66 of file cdcftdi.h.

- + +

◆ FTDI_SIO_SET_RTS_LOW

+
@@ -710,11 +759,13 @@ Macros
-

Definition at line 67 of file cdcftdi.h.

+

Definition at line 67 of file cdcftdi.h.

- + +

◆ FTDI_SIO_DISABLE_FLOW_CTRL

+
@@ -724,11 +775,13 @@ Macros
-

Definition at line 69 of file cdcftdi.h.

+

Definition at line 69 of file cdcftdi.h.

- + +

◆ FTDI_SIO_RTS_CTS_HS

+
@@ -738,11 +791,13 @@ Macros
-

Definition at line 70 of file cdcftdi.h.

+

Definition at line 70 of file cdcftdi.h.

- + +

◆ FTDI_SIO_DTR_DSR_HS

+
@@ -752,11 +807,13 @@ Macros
-

Definition at line 71 of file cdcftdi.h.

+

Definition at line 71 of file cdcftdi.h.

- + +

◆ FTDI_SIO_XON_XOFF_HS

+
@@ -766,11 +823,13 @@ Macros
-

Definition at line 72 of file cdcftdi.h.

+

Definition at line 72 of file cdcftdi.h.

- + +

◆ FTDI_SIO_CTS_MASK

+
@@ -780,11 +839,13 @@ Macros
-

Definition at line 74 of file cdcftdi.h.

+

Definition at line 74 of file cdcftdi.h.

- + +

◆ FTDI_SIO_DSR_MASK

+
@@ -794,11 +855,13 @@ Macros
-

Definition at line 75 of file cdcftdi.h.

+

Definition at line 75 of file cdcftdi.h.

- + +

◆ FTDI_SIO_RI_MASK

+
@@ -808,11 +871,13 @@ Macros
-

Definition at line 76 of file cdcftdi.h.

+

Definition at line 76 of file cdcftdi.h.

- + +

◆ FTDI_SIO_RLSD_MASK

+
@@ -822,11 +887,13 @@ Macros
-

Definition at line 77 of file cdcftdi.h.

+

Definition at line 77 of file cdcftdi.h.

- + +

◆ FTDI_MAX_ENDPOINTS

+
@@ -836,7 +903,7 @@ Macros
-

Definition at line 96 of file cdcftdi.h.

+

Definition at line 96 of file cdcftdi.h.

@@ -845,7 +912,7 @@ Macros diff --git a/cdcftdi_8h__dep__incl.map b/cdcftdi_8h__dep__incl.map index c9f26512..53fee69d 100644 --- a/cdcftdi_8h__dep__incl.map +++ b/cdcftdi_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/cdcftdi_8h__dep__incl.md5 b/cdcftdi_8h__dep__incl.md5 index d2a73e5f..d21df7d0 100644 --- a/cdcftdi_8h__dep__incl.md5 +++ b/cdcftdi_8h__dep__incl.md5 @@ -1 +1 @@ -bb94e7e9d10e1bde33f1040736fc690f \ No newline at end of file +2580f835598c65f780bc9a84dd4f7552 \ No newline at end of file diff --git a/cdcftdi_8h__dep__incl.png b/cdcftdi_8h__dep__incl.png index 412bb62299f08165d0368b85d0a4bc081ecfd4a9..03a86e6b11a071f84f10cb39ee232722f2247ea8 100644 GIT binary patch literal 2042 zcmb_di$BxrAOEW35*9_07GsK}l*^K9jn3S%Tq06YTVcb=GAd!jM$V*3ZEnq8F1a3O z$7PFL(rhe>mRv@m=91gdNEyHNJD0!UJkRTSKF{m9yq?eVdEW2$C-t;D0;H&=2mk=c z*~!sUYJ;Th7llpIo-mi%DK&DJToI1I#*g~Ase}Rm^3~3cC%j{FXY($)srl_}LAIVc zZFC~1PJIF?pk-HeJ`WA)mH%?0fTX3k?_S^~{q0F9j~;8P%~CkQ=AqEgvY%UtDVNS2 z^^RuxT_zdcZB2%A;al|L){ZRff7R|Y#kX_wbYYoAxAamo=GXJXRfrT^{IK<`@~k(! z&s^2gS(Q!LkRd^B+P7(sDfAfGIlp-EqDx3ToojQWH`qK<V)(SWc=9#lYES;{@5^DL?mPqcTqk$;;*i0Q zku2dHvcT?%U|PCVgVwgjD+6h1X*3#5uY;=yg+kG2w8@3Wv+sUJAUddKSN9nhxVpG> zc6D7gwIB(sA}zrO4<3AY=sf$TczR*s7YB#UfMs6yw{PE|2(r1kdDg>+Ls(cH|6F~z z%yBO-uQ!^0grxrJi=!-@=*v`}inh(8{CqO+4aA2`%gIsEvCE}U7(V3~3`Ts@7HAO8 zb#}T?cz?u6ZYH(1U{z83c5@ZMV4Il3`}gxurZNem^BF%5-wKP3wShvDc3qXai$))5 zeVKEVh=YXlnG?c1Q&TGVfamo9iP+vt5d;^14M!N075z zesZkjTa z9x>FTF-85@|BAEJ4Cw zI_a19_LBGR4eCCBnIsJFKo(>$8Wz7ySwARa7mg8L{mOUn#%KjpMFR`p=WXNSPfuR> zq?*Z~Qd@N5zW^;O^YqcUB}HL3STAy7@p>{`{YNB=i|gU_W<(O$0`?4j=)Q-#pttwv zk!{SomG-2w;8Sj2hX!N$R#GB6<8USSKqny@i129nmf;6JwBkKvyv+AhM`JRWjHhii z(R*yjW{f{yScsR!?oT%agFvV7Q4(U|Cs{Q$wK$15f?!1>8iH8?ds0(h=kdE!w057Y z5juY0eu&wvsOyg2SiM?N9bvpKanx;OjErOw2uLoatsu@N_M7+D*?o=Bhco9V%>4C7 zn~9&7o5zNG;Fp#*YITC}Fz>SswrdML_P65Kk2%ntwjekiB@a5)-&Avy=*TjL$CEPQ zTr@oTh{}f*+Sk7*`VaH}jsJf!y$JaebPoUY{3QOkkpwL$6Spk~!g8RskP(&ra$cJv zX9sIb7238fukSvP!{KmB6^?2Dtr${wy2gS70~5yI1`7m&nYWeWUWBLa!=x1}T5fLR zjioETzB>Wsty?2Uhiok@YU}D?7b(|Q4N-TACbrpE*`J|A;Rpd6M z7$xF_4WNz*G*fADmp2+>6sZBfXe%%;3qRhVpR0cfRK)i*N~)PCc}fQ zAz7`Z)9DKmk6QmqpK{p*sn$$<{FscZ3mf8O^W=Wtv>~Tyt_3oCHFaIbK5jzcP})hI zjNZP!(dPJ`bZcvClYj;Q2(4u^adX+SLZJ{##X=4&L?qCgn+tY*5sQmTN^n2zL`)Qp zG5d`*x|U~$nl3~jkr_NxS!wCx5O!6S`x9@raIU7NM$}Uvef~D!9#v^&kk3~>m&`@w zyo6a;ym$*xShrTf3wruTMxLR&vT>qr-6Yp{n7ep&WjRb}sHv%`rJM<`2B32s7mHAQMazP|(?d#$= z;W)4>od~^_Xv2mkoz<|?6JcU}NQ|tkEUDJoweI~54(5IQlg+mJYkcs)KYAm7?O9!7 zvm{d`Vx%$X(BK_vJ=xUE?Bx|)?78iGq-gLME#%EutE~6vcKn?lr6dtuRCY`9^DFUP QlO}V(`J}sJ6+AHUe|kLQuK)l5 literal 1846 zcmbtVc{JP09#=&PN?Y4QxR#5CR%$85Ra{$IRB4r5ODw%eHF?z1YRYR$TMwaPC)5_T z#~QKZK3kPouD!N;nkbQ4Qc^+a{oTIhy#L>sGxI(3Ip6QhoX>ndGYQU4cH$s;5Fa0( zILzMK1&DWn{#RjsV0+xIQNUx-vZZy z+L`C>+kn_)Ggh-K$!{h1nuXLaX|z3s_)l{2Yfe~O1Gp^8Q?jH;I-xhnAD@{n z=fEAC!CI4s^^4s6&sn5>y-6gH<(4{pvvWo&${vgzUU)~C=wUMZ3Cod0F?CvlfUV(= za3fOpKd1sflUVo2SF3^ zX}cUwL_`GG9OHh)af+uZ+>Ih{&6BqR^Q^L|RCB{%E?4m6A@=E$F0D%4ykX+@+WYtJ zuCDknT&@Wc!VtIGVI3bGYThUi6X0L}?XJg^JvOz@UcDi3R0&n>B4CfQw0L(%FUPYP znKA9fu-G`z*35ArHa1SMI2!l?B2fdi+z(Bnt$aB=lClxW!d}NyM1IV7Tgc9{42uZ4 zoX3!2ZEQT*T^rlo4ZnSRYPKV~NR4+JuJ+j@@#ANeB=P$q-q@ytwr@$nlvbeZA z$l$V((F4oE(baI1;a_(SI4puwc~}E~SOnvBa9c;m0s?BRh#MFf=4 zPgSoVIDzE_Xk4>MK-O3a=dg!}ue#eP~{8!M5PmhK1G2>sYw>(!o)k2f$dXliQO1~Jy9 zl$%$7tM%?YxK}t@KO2G^iB)Ox_B!(~jl7o?`z$K-_0Rh)`pWA)+}p}(PLV!Y#sB+b zx|Ky{=Co^iMfMHY&0A2pp$e;vI#qy`(!TL%cCj7HR^5Wlotn_^e&Xf+E@&}Pj)A$L z6A=A)>8!vd)59CF-{Ph>URsXa`2lKfWOPGPz$RmNSM1&*4#VQGv6--u|Q%7YU2Q{PajK zefaOX8Uc;7Mrc(Z>JV~#+{KyA;jlh$Z!c9(_Q?`(m}6euN3yyIgj!$@e%0>W2lYq^ zB(-k5b0Ll9@zg~{|B|>O5u=~uz~ZDk?a})w(T0#G#Sde!cRdozIJ1ppc$CTs$RYjO ziSKs#uM_`=Wxz%MCv44KrXZm9H|;TB#t>ZBa((2YprxdM;^$s^=yTr%6xnUK z$kxv8#oF81vyB5NvTT*|B>SORv9Ni}zqik%WvxArRuvKwYC$j6=9d6k9Q!qfa5a|N z*-41!X)9az2Gg~rKwy*bmkL!Fr4+Lw?ionul>U@?+zRv~%kio&Q@`=Gv z$$c&ojo#YY+B-ZN3rhDn_HK{7@8_o~1riq*@5Jo8sN~Eya--yU?iAdClQ4FBAETzG zR^+_a^FpHgP?OeoLU>6Lc)HF&j{RyXDiGieBDsmu9z1SI1l%U(m9n^vVZo9!9uEBLJIwc;H_ zMIGjAf3kv643B$Ls=B&5$+l#{_-ulfrsx@PHe>zGR@@K5R4W5{=?_WQFV+@dFksWj zA!fL3$rzIvoJ*u2e*XES<3zo?j!a^6OAAC(^itk1olfTwJ;5p+ew2?G!Caz(g2IEh zQ}~p+2dg7fQ&Ss@?K8+`)Lc`7s5ce!Xujn>02&$^o{~_y9`U0+95O+_=u%ko1xI&I1g^Ba-IiaPSzJsm1AW}X?XPx_yz6df~_mrLj# zKzlqal@Zy7RSb-=^r3;iTOSZ*YHLB}POKi!Tue-Ca(Wu1miTFAbFn=|@ruhrW-76z p#Vy=Wrh{=b+|{ou_a8meeWZ1Bq~tj3aNr~4gV{J)*IFU4e*oxes5Afo diff --git a/cdcftdi_8h__incl.map b/cdcftdi_8h__incl.map index 3ce4a3cc..b104f383 100644 --- a/cdcftdi_8h__incl.map +++ b/cdcftdi_8h__incl.map @@ -1,3 +1,3 @@ - + diff --git a/cdcftdi_8h__incl.md5 b/cdcftdi_8h__incl.md5 index 8f85634d..51c8bad8 100644 --- a/cdcftdi_8h__incl.md5 +++ b/cdcftdi_8h__incl.md5 @@ -1 +1 @@ -5a325c73b89e2318a59e437a1ca1f735 \ No newline at end of file +891212ff8fe5d0168dc1f0aa39801762 \ No newline at end of file diff --git a/cdcftdi_8h__incl.png b/cdcftdi_8h__incl.png index 6e886a960b6dbed72183810e6ba67b0926018c5e..0294d4df6cff13344009457aa0d0508e0d37eb39 100644 GIT binary patch literal 2118 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 VbH8ceVu7C(WTb~eR_ZuD{Tp&9!<_&C diff --git a/cdcftdi_8h_source.html b/cdcftdi_8h_source.html index d50be30e..c00597e1 100644 --- a/cdcftdi_8h_source.html +++ b/cdcftdi_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: cdcftdi.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - + + +
@@ -104,7 +81,7 @@ Include dependency graph for cdcprolific.cpp: diff --git a/cdcprolific_8cpp__incl.map b/cdcprolific_8cpp__incl.map index 8db88071..73f154e8 100644 --- a/cdcprolific_8cpp__incl.map +++ b/cdcprolific_8cpp__incl.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/cdcprolific_8cpp__incl.md5 b/cdcprolific_8cpp__incl.md5 index 1e1ab220..23a54331 100644 --- a/cdcprolific_8cpp__incl.md5 +++ b/cdcprolific_8cpp__incl.md5 @@ -1 +1 @@ -a91e5714ebd81502b745c96a64138390 \ No newline at end of file +80a2f4a7375bdcd59e0374c878b54419 \ No newline at end of file diff --git a/cdcprolific_8cpp__incl.png b/cdcprolific_8cpp__incl.png index 012df5afa914a7981ae8a512ea095b62774a411b..a846d27a02e87e0c4eb9af873ebae60f90b7ae38 100644 GIT binary patch literal 4499 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 PvH&Iqme6{Aw}<})EAJhP literal 4730 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 diff --git a/cdcprolific_8cpp_source.html b/cdcprolific_8cpp_source.html index 3e3b65c5..36984a0c 100644 --- a/cdcprolific_8cpp_source.html +++ b/cdcprolific_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: cdcprolific.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - + +
@@ -105,7 +82,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -262,7 +239,9 @@ Enumerations  

Macro Definition Documentation

- + +

◆ PL_VID

+
@@ -272,11 +251,13 @@ Enumerations
-

Definition at line 24 of file cdcprolific.h.

+

Definition at line 24 of file cdcprolific.h.

- + +

◆ CHECK_PID

+
@@ -290,11 +271,13 @@ Enumerations
-

Definition at line 25 of file cdcprolific.h.

+

Definition at line 25 of file cdcprolific.h.

- + +

◆ PROLIFIC_REV_H

+
@@ -304,11 +287,13 @@ Enumerations
-

Definition at line 29 of file cdcprolific.h.

+

Definition at line 29 of file cdcprolific.h.

- + +

◆ PROLIFIC_REV_X

+
@@ -318,11 +303,13 @@ Enumerations
-

Definition at line 30 of file cdcprolific.h.

+

Definition at line 30 of file cdcprolific.h.

- + +

◆ PROLIFIC_REV_HX_CHIP_D

+
@@ -332,11 +319,13 @@ Enumerations
-

Definition at line 31 of file cdcprolific.h.

+

Definition at line 31 of file cdcprolific.h.

- + +

◆ PROLIFIC_REV_1

+
@@ -346,11 +335,13 @@ Enumerations
-

Definition at line 32 of file cdcprolific.h.

+

Definition at line 32 of file cdcprolific.h.

- + +

◆ kXOnChar

+
@@ -360,11 +351,13 @@ Enumerations
-

Definition at line 34 of file cdcprolific.h.

+

Definition at line 34 of file cdcprolific.h.

- + +

◆ kXOffChar

+
@@ -374,11 +367,13 @@ Enumerations
-

Definition at line 35 of file cdcprolific.h.

+

Definition at line 35 of file cdcprolific.h.

- + +

◆ SPECIAL_SHIFT

+
@@ -388,11 +383,13 @@ Enumerations
-

Definition at line 37 of file cdcprolific.h.

+

Definition at line 37 of file cdcprolific.h.

- + +

◆ SPECIAL_MASK

+
@@ -402,11 +399,13 @@ Enumerations
-

Definition at line 38 of file cdcprolific.h.

+

Definition at line 38 of file cdcprolific.h.

- + +

◆ STATE_ALL

+
@@ -416,11 +415,13 @@ Enumerations
-

Definition at line 39 of file cdcprolific.h.

+

Definition at line 39 of file cdcprolific.h.

- + +

◆ FLOW_RX_AUTO

+
@@ -430,11 +431,13 @@ Enumerations
-

Definition at line 40 of file cdcprolific.h.

+

Definition at line 40 of file cdcprolific.h.

- + +

◆ FLOW_TX_AUTO

+
@@ -444,11 +447,13 @@ Enumerations
-

Definition at line 41 of file cdcprolific.h.

+

Definition at line 41 of file cdcprolific.h.

- + +

◆ CAN_BE_AUTO

+
@@ -458,11 +463,13 @@ Enumerations
-

Definition at line 42 of file cdcprolific.h.

+

Definition at line 42 of file cdcprolific.h.

- + +

◆ CAN_NOTIFY

+
@@ -472,11 +479,13 @@ Enumerations
-

Definition at line 43 of file cdcprolific.h.

+

Definition at line 43 of file cdcprolific.h.

- + +

◆ EXTERNAL_MASK

+
@@ -486,11 +495,13 @@ Enumerations
-

Definition at line 44 of file cdcprolific.h.

+

Definition at line 44 of file cdcprolific.h.

- + +

◆ INTERNAL_DELAY

+
@@ -500,11 +511,13 @@ Enumerations
-

Definition at line 45 of file cdcprolific.h.

+

Definition at line 45 of file cdcprolific.h.

- + +

◆ DEFAULT_AUTO

+
@@ -514,11 +527,13 @@ Enumerations
-

Definition at line 46 of file cdcprolific.h.

+

Definition at line 46 of file cdcprolific.h.

- + +

◆ DEFAULT_NOTIFY

+
@@ -528,11 +543,13 @@ Enumerations
-

Definition at line 47 of file cdcprolific.h.

+

Definition at line 47 of file cdcprolific.h.

- + +

◆ DEFAULT_STATE

+
@@ -542,11 +559,13 @@ Enumerations
-

Definition at line 48 of file cdcprolific.h.

+

Definition at line 48 of file cdcprolific.h.

- + +

◆ CONTINUE_SEND

+
@@ -556,11 +575,13 @@ Enumerations
-

Definition at line 50 of file cdcprolific.h.

+

Definition at line 50 of file cdcprolific.h.

- + +

◆ PAUSE_SEND

+
@@ -570,11 +591,13 @@ Enumerations
-

Definition at line 51 of file cdcprolific.h.

+

Definition at line 51 of file cdcprolific.h.

- + +

◆ kRxAutoFlow

+
@@ -584,11 +607,13 @@ Enumerations
-

Definition at line 53 of file cdcprolific.h.

+

Definition at line 53 of file cdcprolific.h.

- + +

◆ kTxAutoFlow

+
@@ -598,11 +623,13 @@ Enumerations
-

Definition at line 54 of file cdcprolific.h.

+

Definition at line 54 of file cdcprolific.h.

- + +

◆ kControl_StateMask

+
@@ -612,11 +639,13 @@ Enumerations
-

Definition at line 55 of file cdcprolific.h.

+

Definition at line 55 of file cdcprolific.h.

- + +

◆ kRxQueueState

+
@@ -626,11 +655,13 @@ Enumerations
-

Definition at line 56 of file cdcprolific.h.

+

Definition at line 56 of file cdcprolific.h.

- + +

◆ kTxQueueState

+
@@ -640,11 +671,13 @@ Enumerations
-

Definition at line 57 of file cdcprolific.h.

+

Definition at line 57 of file cdcprolific.h.

- + +

◆ kCONTROL_DTR

+
@@ -654,11 +687,13 @@ Enumerations
-

Definition at line 59 of file cdcprolific.h.

+

Definition at line 59 of file cdcprolific.h.

- + +

◆ kCONTROL_RTS

+
@@ -668,11 +703,13 @@ Enumerations
-

Definition at line 60 of file cdcprolific.h.

+

Definition at line 60 of file cdcprolific.h.

- + +

◆ kStateTransientMask

+
@@ -682,11 +719,13 @@ Enumerations
-

Definition at line 62 of file cdcprolific.h.

+

Definition at line 62 of file cdcprolific.h.

- + +

◆ kBreakError

+
@@ -696,11 +735,13 @@ Enumerations
-

Definition at line 63 of file cdcprolific.h.

+

Definition at line 63 of file cdcprolific.h.

- + +

◆ kFrameError

+
@@ -710,11 +751,13 @@ Enumerations
-

Definition at line 64 of file cdcprolific.h.

+

Definition at line 64 of file cdcprolific.h.

- + +

◆ kParityError

+
@@ -724,11 +767,13 @@ Enumerations
-

Definition at line 65 of file cdcprolific.h.

+

Definition at line 65 of file cdcprolific.h.

- + +

◆ kOverrunError

+
@@ -738,11 +783,13 @@ Enumerations
-

Definition at line 66 of file cdcprolific.h.

+

Definition at line 66 of file cdcprolific.h.

- + +

◆ kCTS

+
@@ -752,11 +799,13 @@ Enumerations
-

Definition at line 68 of file cdcprolific.h.

+

Definition at line 68 of file cdcprolific.h.

- + +

◆ kDSR

+
@@ -766,11 +815,13 @@ Enumerations
-

Definition at line 69 of file cdcprolific.h.

+

Definition at line 69 of file cdcprolific.h.

- + +

◆ kRI

+
@@ -780,11 +831,13 @@ Enumerations
-

Definition at line 70 of file cdcprolific.h.

+

Definition at line 70 of file cdcprolific.h.

- + +

◆ kDCD

+
@@ -794,11 +847,13 @@ Enumerations
-

Definition at line 71 of file cdcprolific.h.

+

Definition at line 71 of file cdcprolific.h.

- + +

◆ kHandshakeInMask

+
@@ -808,11 +863,13 @@ Enumerations
-

Definition at line 72 of file cdcprolific.h.

+

Definition at line 72 of file cdcprolific.h.

- + +

◆ VENDOR_WRITE_REQUEST_TYPE

+
@@ -822,11 +879,13 @@ Enumerations
-

Definition at line 74 of file cdcprolific.h.

+

Definition at line 74 of file cdcprolific.h.

- + +

◆ VENDOR_WRITE_REQUEST

+
@@ -836,11 +895,13 @@ Enumerations
-

Definition at line 75 of file cdcprolific.h.

+

Definition at line 75 of file cdcprolific.h.

- + +

◆ VENDOR_READ_REQUEST_TYPE

+
@@ -850,11 +911,13 @@ Enumerations
-

Definition at line 77 of file cdcprolific.h.

+

Definition at line 77 of file cdcprolific.h.

- + +

◆ VENDOR_READ_REQUEST

+
@@ -864,11 +927,13 @@ Enumerations
-

Definition at line 78 of file cdcprolific.h.

+

Definition at line 78 of file cdcprolific.h.

- + +

◆ SET_DCR0

+
@@ -878,11 +943,13 @@ Enumerations
-

Definition at line 81 of file cdcprolific.h.

+

Definition at line 81 of file cdcprolific.h.

- + +

◆ GET_DCR0

+
@@ -892,11 +959,13 @@ Enumerations
-

Definition at line 82 of file cdcprolific.h.

+

Definition at line 82 of file cdcprolific.h.

- + +

◆ DCR0_INIT

+
@@ -906,11 +975,13 @@ Enumerations
-

Definition at line 83 of file cdcprolific.h.

+

Definition at line 83 of file cdcprolific.h.

- + +

◆ DCR0_INIT_H

+
@@ -920,11 +991,13 @@ Enumerations
-

Definition at line 84 of file cdcprolific.h.

+

Definition at line 84 of file cdcprolific.h.

- + +

◆ DCR0_INIT_X

+
@@ -934,11 +1007,13 @@ Enumerations
-

Definition at line 85 of file cdcprolific.h.

+

Definition at line 85 of file cdcprolific.h.

- + +

◆ SET_DCR1

+
@@ -948,11 +1023,13 @@ Enumerations
-

Definition at line 87 of file cdcprolific.h.

+

Definition at line 87 of file cdcprolific.h.

- + +

◆ GET_DCR1

+
@@ -962,11 +1039,13 @@ Enumerations
-

Definition at line 88 of file cdcprolific.h.

+

Definition at line 88 of file cdcprolific.h.

- + +

◆ DCR1_INIT_H

+
@@ -976,11 +1055,13 @@ Enumerations
-

Definition at line 89 of file cdcprolific.h.

+

Definition at line 89 of file cdcprolific.h.

- + +

◆ DCR1_INIT_X

+
@@ -990,11 +1071,13 @@ Enumerations
-

Definition at line 90 of file cdcprolific.h.

+

Definition at line 90 of file cdcprolific.h.

- + +

◆ SET_DCR2

+
@@ -1004,11 +1087,13 @@ Enumerations
-

Definition at line 92 of file cdcprolific.h.

+

Definition at line 92 of file cdcprolific.h.

- + +

◆ GET_DCR2

+
@@ -1018,11 +1103,13 @@ Enumerations
-

Definition at line 93 of file cdcprolific.h.

+

Definition at line 93 of file cdcprolific.h.

- + +

◆ DCR2_INIT_H

+
@@ -1032,11 +1119,13 @@ Enumerations
-

Definition at line 94 of file cdcprolific.h.

+

Definition at line 94 of file cdcprolific.h.

- + +

◆ DCR2_INIT_X

+
@@ -1046,11 +1135,13 @@ Enumerations
-

Definition at line 95 of file cdcprolific.h.

+

Definition at line 95 of file cdcprolific.h.

- + +

◆ RESET_DOWNSTREAM_DATA_PIPE

+
@@ -1060,11 +1151,13 @@ Enumerations
-

Definition at line 98 of file cdcprolific.h.

+

Definition at line 98 of file cdcprolific.h.

- + +

◆ RESET_UPSTREAM_DATA_PIPE

+
@@ -1074,11 +1167,13 @@ Enumerations
-

Definition at line 99 of file cdcprolific.h.

+

Definition at line 99 of file cdcprolific.h.

- + +

◆ PL_MAX_ENDPOINTS

+
@@ -1088,12 +1183,14 @@ Enumerations
-

Definition at line 102 of file cdcprolific.h.

+

Definition at line 102 of file cdcprolific.h.

Enumeration Type Documentation

- + +

◆ tXO_State

+
@@ -1103,23 +1200,20 @@ Enumerations
- - - - - + + + + +
Enumerator
kXOnSent  -
kXOffSent  -
kXO_Idle  -
kXOffNeeded  -
kXOnNeeded  -
Enumerator
kXOnSent 
kXOffSent 
kXO_Idle 
kXOffNeeded 
kXOnNeeded 
-

Definition at line 104 of file cdcprolific.h.

+

Definition at line 104 of file cdcprolific.h.

- + +

◆ pl2303_type

+
@@ -1129,21 +1223,15 @@ Enumerations
- - - - - - + + + + + +
Enumerator
unknown  -
type_0  -
type_1  -
rev_X  -
rev_HX  -
rev_H  -
Enumerator
unknown 
type_0 
type_1 
rev_X 
rev_HX 
rev_H 
-

Definition at line 112 of file cdcprolific.h.

+

Definition at line 112 of file cdcprolific.h.

@@ -1152,7 +1240,7 @@ Enumerations diff --git a/cdcprolific_8h__dep__incl.map b/cdcprolific_8h__dep__incl.map index 83eaf52c..28581b5d 100644 --- a/cdcprolific_8h__dep__incl.map +++ b/cdcprolific_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/cdcprolific_8h__dep__incl.md5 b/cdcprolific_8h__dep__incl.md5 index 3f648651..c78552e9 100644 --- a/cdcprolific_8h__dep__incl.md5 +++ b/cdcprolific_8h__dep__incl.md5 @@ -1 +1 @@ -5601c68c5c5e913b421194d3f765f64d \ No newline at end of file +2a214c1fef9fd137dcc008a5d205d6e0 \ No newline at end of file diff --git a/cdcprolific_8h__dep__incl.png b/cdcprolific_8h__dep__incl.png index 7680aa9debece169b12e373b3d906d89bfd14a24..a28049a02c8d01cc9d2384d3048a7e7533a692d9 100644 GIT binary patch literal 2526 zcmb`J_gmA+7Kgv05(Tp&A_^`-mbS}E5d{PRAp{|Uigb`A7=;7~(px}+ps*A{i3vpz zg7hL?1QsJC0hOZE&>{4yK#Vaakd3>~z0dsv?#wfDewb(G%zS3fJ14>Fsu@^BS_A+9 zFx(twEwI6Y=666y&{vh0I0}p~(!vY|@PE|2)?z#W9K^$6#d zY=r{Gt&GduME>0NJM?JN2;PULn$IJDW#o&OLI2wKgbLd-KG=t@hFP_p3@ddJ88@1^ zA%8}g3T}I-3JEYXI0n1+;EyLo^?|26P!;aczXkOXE2alF7j6xc$=wwpMb&YpV*A`4 z)pYmoA)X&mcdka%yOGfh4bQ}+B$FJ9q;3>1%+YaV-QcuRuB_u}dn2Rh^78V`7}fo* ze}zE^m*?i@P`6di*(bCIudUC|-_JD_{hB1Xeq1$a$)VI%GxC~7 zaC}^Znueysn!dIhOY|>VC6&B z&uwhlNG9=s+lOZcai(KOiU+2qo~5PL1}^osgnrJV9ZU%4+1uH*MsjNN@@D!AEo2QN zOG-)rAk)&`)irA7&Ar6L#QFL8{{H?QKD%V>Xpe`8}~Z|}8O(BY!aS6G$`VC&%UA=5{%%C)sQWMk|dUfFlDSvw^~sYb z=X7++ZOev-hihwV1zIbJCs>z8vOi5eJgIXZN@DDeVqO}_Ju+7iXd`$*?(Xi_uU{8^ zCk%kW;At{Wr>iS>KePMrFOSgy0o&Asqj)?X0)YsG0>orwD(P!g2(qE3=Iq>D;Oby$ zcemx()il9HudlDmUW|fWx}>D2DAfa)rTqNZTme~=L17$t0DWx!g~MD5N9~OkJ+8J7 z1R5V7e@c5}snN=hSnQSxVk;9a7n&=0VKA_IoWy~BLP~60dOPcZ)~#bv8yg#;8)NP( z66Vz+xtAQ1(}2h)m&{tY1QMTh5oPI@t(8m+IF*VkcLv5=k~Jc$(2g;_3< zJK?sH%x_2fM{zeEHwtB^Sm*~Fs?Q@+t)a{AUra&fZt(4f?E^$(CAn)Z@ zFu>!Wik&NKf+UMZlBaRInUP;Bjso@0ld`zCsxtAvY0ov17?oFxL4ahE-5--4E9Wh1 zq{sw<&%CN%t1Exoot>`k!4(1h_L9NwI?h_7x6W^g0zk$0?>|`xBa?l;RhD~$zHxTI z#$tAMm6F|*pT{?E*bQA48*CHB8uU%=?o#6UP8#ASm^Yt4exx`0^2_Ob>)Und22s4m z2jZF0;BS?cKB&5ffmg4rsQm8ZmRP-qY-i`AC)4AT6Z$!>r6s=PU*lRv zfXR`%T=sP3-Nfn;azlgfp^LgF@`qLn`pJ^IsiltGX}(~g{O3A07Y%V!4gT`wfTkFYz8XfwrzIm%nH4;PQ4^-YnGOmC-(pfN$)a&LIVN< z4#d0)SV(MXX|Yt|ep#_GG1<#05F5L?op56OrO(>RO8CzAhTL3)tLrJJiPv{qY*p;a zhv0BHlvGV7Bh=DC`}gM3H!dQYftn`e79F18Zg`du0r$Z~Pe; zmwQ&+E_?Ej@e+NW-AE!qR!emv4Rb#%?R~>#e~yjCy^yN*94HcCiO1u;1>(K`S1*VJ{F5j`#c7G?CbLvFdCTI3X_q!csx>G z*7VXiynkT8O>LYDOMAPRY&N0>Nh7M>$jZtBerS4^xp?JN>eA|J z7J;CptLr)MP-v~FtlaYIRTviQfkJtola7n>6nGH=un`d`uMEYs>;7kWYGU$)VZf(= zvylCX-tj^mlS2EtHZvn9nRGn-<0$Fj?HAeP3R%{2-}C$T_q7+Sb`<~h4 zMgPb>{*BR(6F50#&u)FRrzgZW+nN`^!-j{`Iy%(u6eyaa(P&4O5VQaQ literal 2401 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 diff --git a/cdcprolific_8h__incl.map b/cdcprolific_8h__incl.map index 3c82d573..70460c8b 100644 --- a/cdcprolific_8h__incl.map +++ b/cdcprolific_8h__incl.map @@ -1,4 +1,4 @@ - - + + diff --git a/cdcprolific_8h__incl.md5 b/cdcprolific_8h__incl.md5 index e7519a47..f207c73e 100644 --- a/cdcprolific_8h__incl.md5 +++ b/cdcprolific_8h__incl.md5 @@ -1 +1 @@ -9d9a09dd605ff7c3be8e192a907ecbfe \ No newline at end of file +22650dc525aafafba98e38845a99fed8 \ No newline at end of file diff --git a/cdcprolific_8h__incl.png b/cdcprolific_8h__incl.png index 552068b9add9d1b9b23fc951faa2b445feeaaa31..643ccb0676f5779ea23d44e33766a74c4eefccf4 100644 GIT binary patch literal 3735 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 B8qNR! literal 3355 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 xIia{3(PQ`Aa(3 - + + USB Host Shield 2.0: cdcprolific.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + + - + - - + + + +
Inheritance graph
- - - - + + + +
[legend]
@@ -113,13 +88,13 @@ Collaboration diagram for ACM:
Collaboration graph
- - - - - - - + + + + + + +
[legend]
@@ -233,9 +208,11 @@ Protected Attributes

Detailed Description

-

Definition at line 163 of file cdcacm.h.

+

Definition at line 163 of file cdcacm.h.

Constructor & Destructor Documentation

- + +

◆ ACM()

+
@@ -259,12 +236,14 @@ Protected Attributes
-

Definition at line 23 of file cdcacm.cpp.

+

Definition at line 23 of file cdcacm.cpp.

Member Function Documentation

- + +

◆ PrintEndpointDescriptor()

+
@@ -286,11 +265,13 @@ Protected Attributes
-

Definition at line 352 of file cdcacm.cpp.

+

Definition at line 352 of file cdcacm.cpp.

- + +

◆ SetCommFeature()

+
@@ -320,11 +301,13 @@ Protected Attributes
-

Definition at line 296 of file cdcacm.cpp.

+

Definition at line 296 of file cdcacm.cpp.

- + +

◆ GetCommFeature()

+
@@ -354,11 +337,13 @@ Protected Attributes
-

Definition at line 304 of file cdcacm.cpp.

+

Definition at line 304 of file cdcacm.cpp.

- + +

◆ ClearCommFeature()

+
@@ -372,11 +357,13 @@ Protected Attributes
-

Definition at line 312 of file cdcacm.cpp.

+

Definition at line 312 of file cdcacm.cpp.

- + +

◆ SetLineCoding()

+
@@ -390,11 +377,13 @@ Protected Attributes
-

Definition at line 320 of file cdcacm.cpp.

+

Definition at line 320 of file cdcacm.cpp.

- + +

◆ GetLineCoding()

+
@@ -408,11 +397,13 @@ Protected Attributes
-

Definition at line 328 of file cdcacm.cpp.

+

Definition at line 328 of file cdcacm.cpp.

- + +

◆ SetControlLineState()

+
@@ -426,11 +417,13 @@ Protected Attributes
-

Definition at line 336 of file cdcacm.cpp.

+

Definition at line 336 of file cdcacm.cpp.

- + +

◆ SendBreak()

+
@@ -444,11 +437,13 @@ Protected Attributes
-

Definition at line 344 of file cdcacm.cpp.

+

Definition at line 344 of file cdcacm.cpp.

- + +

◆ GetNotif()

+
@@ -474,7 +469,9 @@ Protected Attributes - + +

◆ RcvData()

+
@@ -498,11 +495,13 @@ Protected Attributes
-

Definition at line 280 of file cdcacm.cpp.

+

Definition at line 280 of file cdcacm.cpp.

- + +

◆ SndData()

+
@@ -526,11 +525,13 @@ Protected Attributes
-

Definition at line 288 of file cdcacm.cpp.

+

Definition at line 288 of file cdcacm.cpp.

- + +

◆ Init()

+
@@ -572,11 +573,13 @@ Protected Attributes

Reimplemented in PL2303.

-

Definition at line 46 of file cdcacm.cpp.

+

Definition at line 46 of file cdcacm.cpp.

- + +

◆ Release()

+
@@ -599,11 +602,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 258 of file cdcacm.cpp.

+

Definition at line 258 of file cdcacm.cpp.

- + +

◆ Poll()

+
@@ -626,11 +631,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 272 of file cdcacm.cpp.

+

Definition at line 272 of file cdcacm.cpp.

- + +

◆ available()

+
@@ -652,11 +659,13 @@ Protected Attributes
-

Definition at line 205 of file cdcacm.h.

+

Definition at line 205 of file cdcacm.h.

- + +

◆ GetAddress()

+
@@ -679,11 +688,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 209 of file cdcacm.h.

+

Definition at line 209 of file cdcacm.h.

- + +

◆ isReady()

+
@@ -704,11 +715,13 @@ Protected Attributes
-

Definition at line 213 of file cdcacm.h.

+

Definition at line 213 of file cdcacm.h.

- + +

◆ enhanced_status()

+
@@ -730,11 +743,13 @@ Protected Attributes
-

Definition at line 217 of file cdcacm.h.

+

Definition at line 217 of file cdcacm.h.

- + +

◆ enhanced_features()

+
@@ -758,11 +773,13 @@ Protected Attributes

Reimplemented in XR21B1411.

-

Definition at line 221 of file cdcacm.h.

+

Definition at line 221 of file cdcacm.h.

- + +

◆ autoflowRTS()

+
@@ -786,11 +803,13 @@ Protected Attributes

Reimplemented in XR21B1411.

-

Definition at line 232 of file cdcacm.h.

+

Definition at line 232 of file cdcacm.h.

- + +

◆ autoflowDSR()

+
@@ -814,11 +833,13 @@ Protected Attributes

Reimplemented in XR21B1411.

-

Definition at line 235 of file cdcacm.h.

+

Definition at line 235 of file cdcacm.h.

- + +

◆ autoflowXON()

+
@@ -842,11 +863,13 @@ Protected Attributes

Reimplemented in XR21B1411.

-

Definition at line 238 of file cdcacm.h.

+

Definition at line 238 of file cdcacm.h.

- + +

◆ half_duplex()

+
@@ -870,11 +893,13 @@ Protected Attributes

Reimplemented in XR21B1411.

-

Definition at line 241 of file cdcacm.h.

+

Definition at line 241 of file cdcacm.h.

- + +

◆ wide()

+
@@ -896,11 +921,13 @@ Protected Attributes
-

Definition at line 244 of file cdcacm.h.

+

Definition at line 244 of file cdcacm.h.

- + +

◆ EndpointXtract()

+
@@ -952,12 +979,14 @@ Protected Attributes

Reimplemented from UsbConfigXtracter.

-

Definition at line 231 of file cdcacm.cpp.

+

Definition at line 231 of file cdcacm.cpp.

Member Data Documentation

- + +

◆ pUsb

+
@@ -975,11 +1004,13 @@ Protected Attributes
-

Definition at line 165 of file cdcacm.h.

+

Definition at line 165 of file cdcacm.h.

- + +

◆ pAsync

+
@@ -997,11 +1028,13 @@ Protected Attributes
-

Definition at line 166 of file cdcacm.h.

+

Definition at line 166 of file cdcacm.h.

- + +

◆ bAddress

+
@@ -1019,11 +1052,13 @@ Protected Attributes
-

Definition at line 167 of file cdcacm.h.

+

Definition at line 167 of file cdcacm.h.

- + +

◆ bConfNum

+
@@ -1041,11 +1076,13 @@ Protected Attributes
-

Definition at line 168 of file cdcacm.h.

+

Definition at line 168 of file cdcacm.h.

- + +

◆ bControlIface

+
@@ -1063,11 +1100,13 @@ Protected Attributes
-

Definition at line 169 of file cdcacm.h.

+

Definition at line 169 of file cdcacm.h.

- + +

◆ bDataIface

+
@@ -1085,11 +1124,13 @@ Protected Attributes
-

Definition at line 170 of file cdcacm.h.

+

Definition at line 170 of file cdcacm.h.

- + +

◆ bNumEP

+
@@ -1107,11 +1148,13 @@ Protected Attributes
-

Definition at line 171 of file cdcacm.h.

+

Definition at line 171 of file cdcacm.h.

- + +

◆ qNextPollTime

+
@@ -1129,11 +1172,13 @@ Protected Attributes
-

Definition at line 172 of file cdcacm.h.

+

Definition at line 172 of file cdcacm.h.

- + +

◆ bPollEnable

+
@@ -1151,11 +1196,13 @@ Protected Attributes
-

Definition at line 173 of file cdcacm.h.

+

Definition at line 173 of file cdcacm.h.

- + +

◆ ready

+
@@ -1173,11 +1220,13 @@ Protected Attributes
-

Definition at line 174 of file cdcacm.h.

+

Definition at line 174 of file cdcacm.h.

- + +

◆ _enhanced_status

+
@@ -1195,11 +1244,13 @@ Protected Attributes
-

Definition at line 175 of file cdcacm.h.

+

Definition at line 175 of file cdcacm.h.

- + +

◆ epDataInIndex

+
@@ -1217,11 +1268,13 @@ Protected Attributes
-

Definition at line 180 of file cdcacm.h.

+

Definition at line 180 of file cdcacm.h.

- + +

◆ epDataOutIndex

+
@@ -1239,11 +1292,13 @@ Protected Attributes
-

Definition at line 181 of file cdcacm.h.

+

Definition at line 181 of file cdcacm.h.

- + +

◆ epInterruptInIndex

+
@@ -1261,11 +1316,13 @@ Protected Attributes
-

Definition at line 182 of file cdcacm.h.

+

Definition at line 182 of file cdcacm.h.

- + +

◆ epInfo

+
@@ -1275,7 +1332,7 @@ Protected Attributes
-

Definition at line 183 of file cdcacm.h.

+

Definition at line 183 of file cdcacm.h.

@@ -1288,7 +1345,7 @@ Protected Attributes diff --git a/class_a_c_m__coll__graph.map b/class_a_c_m__coll__graph.map index 6520e6af..c1445a58 100644 --- a/class_a_c_m__coll__graph.map +++ b/class_a_c_m__coll__graph.map @@ -1,9 +1,9 @@ - - - - - - - + + + + + + + diff --git a/class_a_c_m__coll__graph.md5 b/class_a_c_m__coll__graph.md5 index f43712cc..be335838 100644 --- a/class_a_c_m__coll__graph.md5 +++ b/class_a_c_m__coll__graph.md5 @@ -1 +1 @@ -587ce662854a9a2b4677918117ea2d18 \ No newline at end of file +38f287d7d437d8845cd9849dda3c4ebc \ No newline at end of file diff --git a/class_a_c_m__coll__graph.png b/class_a_c_m__coll__graph.png index c81a95658f90c16a3ee7789342c13b1edeb51ed2..c2f26e7f6bcdcecd9b61cefb37be3178bd27b253 100644 GIT binary patch literal 19485 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 I>zopr03x<}HUIzs diff --git a/class_a_c_m__inherit__graph.map b/class_a_c_m__inherit__graph.map index 12559e81..24853262 100644 --- a/class_a_c_m__inherit__graph.map +++ b/class_a_c_m__inherit__graph.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/class_a_c_m__inherit__graph.md5 b/class_a_c_m__inherit__graph.md5 index 69d55cdc..f0237ac2 100644 --- a/class_a_c_m__inherit__graph.md5 +++ b/class_a_c_m__inherit__graph.md5 @@ -1 +1 @@ -1778af41b23c3b83c73bd88577cd17cc \ No newline at end of file +34233ca0a4afb6e0d20ee9a1d854c8cf \ No newline at end of file diff --git a/class_a_c_m__inherit__graph.png b/class_a_c_m__inherit__graph.png index 2e0b1c04a555fc9e2f4b50d287ee278fcde9c05d..4091db06dc5160fbd5d54759462e63adf9c1fb0a 100644 GIT binary patch literal 10591 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 - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - + +
[legend]
@@ -110,11 +85,11 @@ Collaboration diagram for ADK:
Collaboration graph
- - - - - + + + + +
[legend]
@@ -179,9 +154,11 @@ Static Protected Attributes

Detailed Description

-

Definition at line 53 of file adk.h.

+

Definition at line 53 of file adk.h.

Constructor & Destructor Documentation

- + +

◆ ADK()

+
@@ -235,12 +212,14 @@ Static Protected Attributes
-

Definition at line 25 of file adk.cpp.

+

Definition at line 25 of file adk.cpp.

Member Function Documentation

- + +

◆ PrintEndpointDescriptor()

+
@@ -262,11 +241,13 @@ Static Protected Attributes
-

Definition at line 357 of file adk.cpp.

+

Definition at line 357 of file adk.cpp.

- + +

◆ RcvData()

+
@@ -290,11 +271,13 @@ Static Protected Attributes
-

Definition at line 347 of file adk.cpp.

+

Definition at line 347 of file adk.cpp.

- + +

◆ SndData()

+
@@ -318,11 +301,13 @@ Static Protected Attributes
-

Definition at line 353 of file adk.cpp.

+

Definition at line 353 of file adk.cpp.

- + +

◆ ConfigureDevice()

+
@@ -362,11 +347,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 59 of file adk.cpp.

+

Definition at line 59 of file adk.cpp.

- + +

◆ Init()

+
@@ -406,11 +393,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 64 of file adk.cpp.

+

Definition at line 64 of file adk.cpp.

- + +

◆ Release()

+
@@ -433,11 +422,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 337 of file adk.cpp.

+

Definition at line 337 of file adk.cpp.

- + +

◆ Poll()

+
@@ -460,11 +451,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 103 of file adk.h.

+

Definition at line 103 of file adk.h.

- + +

◆ GetAddress()

+
@@ -487,11 +480,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 107 of file adk.h.

+

Definition at line 107 of file adk.h.

- + +

◆ isReady()

+
@@ -512,11 +507,13 @@ Static Protected Attributes
-

Definition at line 111 of file adk.h.

+

Definition at line 111 of file adk.h.

- + +

◆ VIDPIDOK()

+
@@ -550,11 +547,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 115 of file adk.h.

+

Definition at line 115 of file adk.h.

- + +

◆ EndpointXtract()

+
@@ -606,12 +605,14 @@ Static Protected Attributes

Reimplemented from UsbConfigXtracter.

-

Definition at line 312 of file adk.cpp.

+

Definition at line 312 of file adk.cpp.

Member Data Documentation

- + +

◆ epDataInIndex

+
@@ -629,11 +630,13 @@ Static Protected Attributes
-

Definition at line 69 of file adk.h.

+

Definition at line 69 of file adk.h.

- + +

◆ epDataOutIndex

+
@@ -651,11 +654,13 @@ Static Protected Attributes
-

Definition at line 70 of file adk.h.

+

Definition at line 70 of file adk.h.

- + +

◆ pUsb

+
@@ -673,11 +678,13 @@ Static Protected Attributes
-

Definition at line 73 of file adk.h.

+

Definition at line 73 of file adk.h.

- + +

◆ bAddress

+
@@ -695,11 +702,13 @@ Static Protected Attributes
-

Definition at line 74 of file adk.h.

+

Definition at line 74 of file adk.h.

- + +

◆ bConfNum

+
@@ -717,11 +726,13 @@ Static Protected Attributes
-

Definition at line 75 of file adk.h.

+

Definition at line 75 of file adk.h.

- + +

◆ bNumEP

+
@@ -739,11 +750,13 @@ Static Protected Attributes
-

Definition at line 77 of file adk.h.

+

Definition at line 77 of file adk.h.

- + +

◆ ready

+
@@ -761,11 +774,13 @@ Static Protected Attributes
-

Definition at line 78 of file adk.h.

+

Definition at line 78 of file adk.h.

- + +

◆ epInfo

+
@@ -783,7 +798,7 @@ Static Protected Attributes
-

Definition at line 81 of file adk.h.

+

Definition at line 81 of file adk.h.

@@ -796,7 +811,7 @@ Static Protected Attributes diff --git a/class_a_d_k__coll__graph.map b/class_a_d_k__coll__graph.map index 72616cf5..4115de73 100644 --- a/class_a_d_k__coll__graph.map +++ b/class_a_d_k__coll__graph.map @@ -1,7 +1,7 @@ - - - - - + + + + + diff --git a/class_a_d_k__coll__graph.md5 b/class_a_d_k__coll__graph.md5 index 6e64816d..25bc8093 100644 --- a/class_a_d_k__coll__graph.md5 +++ b/class_a_d_k__coll__graph.md5 @@ -1 +1 @@ -677a6776b852e96bee247fd946d74be2 \ No newline at end of file +348104757e62d2b90a8ea7ecf8b2514d \ No newline at end of file diff --git a/class_a_d_k__coll__graph.png b/class_a_d_k__coll__graph.png index 4176edac5e4fc327c9ee25b6aa0f583de2656a87..fd5eb1a7b8c3db57c638bbbe3be3725dcf14acde 100644 GIT binary patch literal 13439 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 z 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 diff --git a/class_a_d_k__inherit__graph.map b/class_a_d_k__inherit__graph.map index a1e35774..fb33f602 100644 --- a/class_a_d_k__inherit__graph.map +++ b/class_a_d_k__inherit__graph.map @@ -1,4 +1,4 @@ - - + + diff --git a/class_a_d_k__inherit__graph.md5 b/class_a_d_k__inherit__graph.md5 index 55e30802..473c9f33 100644 --- a/class_a_d_k__inherit__graph.md5 +++ b/class_a_d_k__inherit__graph.md5 @@ -1 +1 @@ -bca330dbfb30c1761bf024a703ee6a77 \ No newline at end of file +5f518fcc911734c80c7fef9e0bbfcf11 \ No newline at end of file diff --git a/class_a_d_k__inherit__graph.png b/class_a_d_k__inherit__graph.png index f9cb31fef864cffccfccb60d772f325eb14be4e6..512053a381098c9b5b8edb6002a456203b9c43f2 100644 GIT binary patch literal 5617 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 A%K!iX literal 5307 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 YB@B*{PQq(|X(Y*m`v%YwO}o(l0vWPgMF0Q* diff --git a/class_address_pool-members.html b/class_address_pool-members.html index 63250730..5df1ec19 100644 --- a/class_address_pool-members.html +++ b/class_address_pool-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - + +
[legend]
@@ -114,9 +89,11 @@ Public Member Functions

Detailed Description

-

Definition at line 90 of file address.h.

+

Definition at line 90 of file address.h.

Member Function Documentation

- + +

◆ GetUsbDevicePtr()

+
@@ -142,7 +119,9 @@ Public Member Functions - + +

◆ AllocAddress()

+
@@ -184,7 +163,9 @@ Public Member Functions - + +

◆ FreeAddress()

+
@@ -218,7 +199,7 @@ Public Member Functions diff --git a/class_address_pool__inherit__graph.map b/class_address_pool__inherit__graph.map index bb73e640..f1edddff 100644 --- a/class_address_pool__inherit__graph.map +++ b/class_address_pool__inherit__graph.map @@ -1,4 +1,4 @@ - - + + diff --git a/class_address_pool__inherit__graph.md5 b/class_address_pool__inherit__graph.md5 index 67a01c56..01fc9bff 100644 --- a/class_address_pool__inherit__graph.md5 +++ b/class_address_pool__inherit__graph.md5 @@ -1 +1 @@ -1e8b44e83a78a2dc42bcafc432f2a436 \ No newline at end of file +555ffc408a79052867a3f670eda97a3c \ No newline at end of file diff --git a/class_address_pool__inherit__graph.png b/class_address_pool__inherit__graph.png index 7d887516de3c5850f8895a563cd555f20709cd63..6662ba44907778bb853c9bda15ec600e1d0f50d5 100644 GIT binary patch literal 8977 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 Y<-!JcqjXXQc*g}IBdI7+E@tTeUyoIe-2eap literal 8020 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 - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -106,7 +81,7 @@ Collaboration diagram for AddressPoolImpl< MAX_DEVICES_ALLOWED >:
Collaboration graph
- +
[legend]
@@ -128,9 +103,11 @@ Public Member Functions class AddressPoolImpl< MAX_DEVICES_ALLOWED > -

Definition at line 103 of file address.h.

+

Definition at line 103 of file address.h.

Constructor & Destructor Documentation

- + +

◆ AddressPoolImpl()

+
@@ -153,12 +130,14 @@ template<const uint8_t MAX_DEVICES_ALLOWED>
-

Definition at line 171 of file address.h.

+

Definition at line 171 of file address.h.

Member Function Documentation

- + +

◆ GetUsbDevicePtr()

+
@@ -184,11 +163,13 @@ template<const uint8_t MAX_DEVICES_ALLOWED>

Implements AddressPool.

-

Definition at line 188 of file address.h.

+

Definition at line 188 of file address.h.

- + +

◆ ForEachUsbDevice()

+
@@ -212,11 +193,13 @@ template<const uint8_t MAX_DEVICES_ALLOWED>
-

Definition at line 199 of file address.h.

+

Definition at line 199 of file address.h.

- + +

◆ AllocAddress()

+
@@ -258,11 +241,13 @@ template<const uint8_t MAX_DEVICES_ALLOWED>

Implements AddressPool.

-

Definition at line 210 of file address.h.

+

Definition at line 210 of file address.h.

- + +

◆ FreeAddress()

+
@@ -288,7 +273,7 @@ template<const uint8_t MAX_DEVICES_ALLOWED>

Implements AddressPool.

-

Definition at line 262 of file address.h.

+

Definition at line 262 of file address.h.

@@ -300,7 +285,7 @@ template<const uint8_t MAX_DEVICES_ALLOWED>
diff --git a/class_address_pool_impl__coll__graph.map b/class_address_pool_impl__coll__graph.map index 528ab859..5bddb0ec 100644 --- a/class_address_pool_impl__coll__graph.map +++ b/class_address_pool_impl__coll__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_address_pool_impl__coll__graph.md5 b/class_address_pool_impl__coll__graph.md5 index 77f1e07a..b9076984 100644 --- a/class_address_pool_impl__coll__graph.md5 +++ b/class_address_pool_impl__coll__graph.md5 @@ -1 +1 @@ -77bc5e9fa2748d39429df403e8aba060 \ No newline at end of file +0ccbc0934c894d97b943ba1fd85404e1 \ No newline at end of file diff --git a/class_address_pool_impl__coll__graph.png b/class_address_pool_impl__coll__graph.png index 7f744d8b77bc60c33448e0c0fe52f1acab1ad704..ba726a1c25c2ed157d624b798e8528f3eb74f44f 100644 GIT binary patch literal 6084 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 literal 5355 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 diff --git a/class_address_pool_impl__inherit__graph.map b/class_address_pool_impl__inherit__graph.map index 528ab859..5bddb0ec 100644 --- a/class_address_pool_impl__inherit__graph.map +++ b/class_address_pool_impl__inherit__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_address_pool_impl__inherit__graph.md5 b/class_address_pool_impl__inherit__graph.md5 index 77f1e07a..f9ed713c 100644 --- a/class_address_pool_impl__inherit__graph.md5 +++ b/class_address_pool_impl__inherit__graph.md5 @@ -1 +1 @@ -77bc5e9fa2748d39429df403e8aba060 \ No newline at end of file +bf21db1ad5951b3ac32e2bce64875193 \ No newline at end of file diff --git a/class_address_pool_impl__inherit__graph.png b/class_address_pool_impl__inherit__graph.png index 7f744d8b77bc60c33448e0c0fe52f1acab1ad704..ba726a1c25c2ed157d624b798e8528f3eb74f44f 100644 GIT binary patch literal 6084 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 literal 5355 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 diff --git a/class_b_t_d-members.html b/class_b_t_d-members.html index f39e81d9..698b5418 100644 --- a/class_b_t_d-members.html +++ b/class_b_t_d-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@ - + - - + + + + - + - - + + + +
Inheritance graph
- - + +
[legend]
@@ -111,11 +86,11 @@ Collaboration diagram for BTD:
Collaboration graph
- - - - - + + + + +
[legend]
@@ -302,9 +277,11 @@ Static Protected Attributes

Detailed Description

The Bluetooth Dongle class will take care of all the USB communication and then pass the data to the BluetoothService classes.

-

Definition at line 221 of file BTD.h.

+

Definition at line 221 of file BTD.h.

Constructor & Destructor Documentation

- + +

◆ BTD()

+
@@ -324,12 +301,14 @@ Static Protected Attributes -

Definition at line 27 of file BTD.cpp.

+

Definition at line 27 of file BTD.cpp.

Member Function Documentation

- + +

◆ ConfigureDevice()

+
@@ -378,11 +357,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 50 of file BTD.cpp.

+

Definition at line 50 of file BTD.cpp.

- + +

◆ Init()

+
@@ -431,11 +412,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 136 of file BTD.cpp.

+

Definition at line 136 of file BTD.cpp.

- + +

◆ Release()

+
@@ -459,11 +442,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 379 of file BTD.cpp.

+

Definition at line 379 of file BTD.cpp.

- + +

◆ Poll()

+
@@ -487,11 +472,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 385 of file BTD.cpp.

+

Definition at line 385 of file BTD.cpp.

- + +

◆ GetAddress()

+
@@ -515,11 +502,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 261 of file BTD.h.

+

Definition at line 261 of file BTD.h.

- + +

◆ isReady()

+
@@ -541,11 +530,13 @@ Static Protected Attributes

Used to check if the dongle has been initialized.

Returns
True if it's ready.
-

Definition at line 269 of file BTD.h.

+

Definition at line 269 of file BTD.h.

- + +

◆ DEVCLASSOK()

+
@@ -576,11 +567,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 278 of file BTD.h.

+

Definition at line 278 of file BTD.h.

- + +

◆ VIDPIDOK()

+
@@ -622,11 +615,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 289 of file BTD.h.

+

Definition at line 289 of file BTD.h.

- + +

◆ EndpointXtract()

+
@@ -688,11 +683,13 @@ Static Protected Attributes

Reimplemented from UsbConfigXtracter.

-

Definition at line 330 of file BTD.cpp.

+

Definition at line 330 of file BTD.cpp.

- + +

◆ disconnect()

+
@@ -706,11 +703,13 @@ Static Protected Attributes

Disconnects both the L2CAP Channel and the HCI Connection for all Bluetooth services.

-

Definition at line 397 of file BTD.cpp.

+

Definition at line 397 of file BTD.cpp.

- + +

◆ registerBluetoothService()

+
@@ -739,11 +738,13 @@ Static Protected Attributes
Returns
The service ID on success or -1 on fail.
-

Definition at line 320 of file BTD.h.

+

Definition at line 320 of file BTD.h.

- + +

◆ HCI_Command()

+
@@ -774,11 +775,13 @@ Static Protected Attributes -

Definition at line 1108 of file BTD.cpp.

+

Definition at line 1108 of file BTD.cpp.

- + +

◆ hci_reset()

+
@@ -792,11 +795,13 @@ Static Protected Attributes

Reset the Bluetooth dongle.

-

Definition at line 1113 of file BTD.cpp.

+

Definition at line 1113 of file BTD.cpp.

- + +

◆ hci_read_bdaddr()

+
@@ -810,11 +815,13 @@ Static Protected Attributes

Read the Bluetooth address of the dongle.

-

Definition at line 1144 of file BTD.cpp.

+

Definition at line 1144 of file BTD.cpp.

- + +

◆ hci_read_local_version_information()

+
@@ -828,11 +835,13 @@ Static Protected Attributes

Read the HCI Version of the Bluetooth dongle.

-

Definition at line 1153 of file BTD.cpp.

+

Definition at line 1153 of file BTD.cpp.

- + +

◆ hci_read_local_extended_features()

+
@@ -847,11 +856,13 @@ Static Protected Attributes

Used to check if the dongle supports simple paring

-

Definition at line 1162 of file BTD.cpp.

+

Definition at line 1162 of file BTD.cpp.

- + +

◆ hci_write_local_name()

+
@@ -871,11 +882,13 @@ Static Protected Attributes -

Definition at line 1207 of file BTD.cpp.

+

Definition at line 1207 of file BTD.cpp.

- + +

◆ hci_write_simple_pairing_mode()

+
@@ -890,11 +903,13 @@ Static Protected Attributes

Used to enable simply paring if the dongle supports it

-

Definition at line 1237 of file BTD.cpp.

+

Definition at line 1237 of file BTD.cpp.

- + +

◆ hci_set_event_mask()

+
@@ -908,11 +923,13 @@ Static Protected Attributes

Used to enable events related to simple paring

-

Definition at line 1219 of file BTD.cpp.

+

Definition at line 1219 of file BTD.cpp.

- + +

◆ hci_write_scan_enable()

+
@@ -926,11 +943,13 @@ Static Protected Attributes

Enable visibility to other Bluetooth devices.

-

Definition at line 1122 of file BTD.cpp.

+

Definition at line 1122 of file BTD.cpp.

- + +

◆ hci_write_scan_disable()

+
@@ -944,11 +963,13 @@ Static Protected Attributes

Disable visibility to other Bluetooth devices.

-

Definition at line 1135 of file BTD.cpp.

+

Definition at line 1135 of file BTD.cpp.

- + +

◆ hci_remote_name()

+
@@ -962,11 +983,13 @@ Static Protected Attributes

Read the remote devices name.

-

Definition at line 1188 of file BTD.cpp.

+

Definition at line 1188 of file BTD.cpp.

- + +

◆ hci_accept_connection()

+
@@ -980,11 +1003,13 @@ Static Protected Attributes

Accept the connection with the Bluetooth device.

-

Definition at line 1172 of file BTD.cpp.

+

Definition at line 1172 of file BTD.cpp.

- + +

◆ hci_disconnect()

+
@@ -1004,11 +1029,13 @@ Static Protected Attributes -

Definition at line 1399 of file BTD.cpp.

+

Definition at line 1399 of file BTD.cpp.

- + +

◆ hci_pin_code_request_reply()

+
@@ -1022,11 +1049,13 @@ Static Protected Attributes

Respond with the pin for the connection. The pin is automatically set for the Wii library, but can be customized for the SPP library.

-

Definition at line 1294 of file BTD.cpp.

+

Definition at line 1294 of file BTD.cpp.

- + +

◆ hci_pin_code_negative_request_reply()

+
@@ -1040,11 +1069,13 @@ Static Protected Attributes

Respons when no pin was set.

-

Definition at line 1330 of file BTD.cpp.

+

Definition at line 1330 of file BTD.cpp.

- + +

◆ hci_link_key_request_negative_reply()

+
@@ -1058,11 +1089,13 @@ Static Protected Attributes

Command is used to reply to a Link Key Request event from the BR/EDR Controller if the Host does not have a stored Link Key for the connection.

-

Definition at line 1344 of file BTD.cpp.

+

Definition at line 1344 of file BTD.cpp.

- + +

◆ hci_user_confirmation_request_reply()

+
@@ -1076,11 +1109,13 @@ Static Protected Attributes

Used to during simple paring to confirm that the we want to connect

-

Definition at line 1375 of file BTD.cpp.

+

Definition at line 1375 of file BTD.cpp.

- + +

◆ hci_authentication_request()

+
@@ -1094,11 +1129,13 @@ Static Protected Attributes

Used to try to authenticate with the remote device.

-

Definition at line 1389 of file BTD.cpp.

+

Definition at line 1389 of file BTD.cpp.

- + +

◆ hci_inquiry()

+
@@ -1112,11 +1149,13 @@ Static Protected Attributes

Start a HCI inquiry.

-

Definition at line 1246 of file BTD.cpp.

+

Definition at line 1246 of file BTD.cpp.

- + +

◆ hci_inquiry_cancel()

+
@@ -1130,11 +1169,13 @@ Static Protected Attributes

Cancel a HCI inquiry.

-

Definition at line 1260 of file BTD.cpp.

+

Definition at line 1260 of file BTD.cpp.

- + +

◆ hci_connect() [1/2]

+
@@ -1148,11 +1189,13 @@ Static Protected Attributes

Connect to last device communicated with.

-

Definition at line 1268 of file BTD.cpp.

+

Definition at line 1268 of file BTD.cpp.

- + +

◆ hci_io_capability_request_reply()

+
@@ -1166,11 +1209,13 @@ Static Protected Attributes

Used during simple paring to reply to a IO capability request

-

Definition at line 1358 of file BTD.cpp.

+

Definition at line 1358 of file BTD.cpp.

- + +

◆ hci_connect() [2/2]

+
@@ -1190,11 +1235,13 @@ Static Protected Attributes -

Definition at line 1272 of file BTD.cpp.

+

Definition at line 1272 of file BTD.cpp.

- + +

◆ hci_write_class_of_device()

+
@@ -1208,11 +1255,13 @@ Static Protected Attributes

Used to a set the class of the device.

-

Definition at line 1411 of file BTD.cpp.

+

Definition at line 1411 of file BTD.cpp.

- + +

◆ L2CAP_Command()

+
@@ -1263,11 +1312,13 @@ Static Protected Attributes -

Definition at line 1447 of file BTD.cpp.

+

Definition at line 1447 of file BTD.cpp.

- + +

◆ l2cap_connection_request()

+
@@ -1312,11 +1363,13 @@ Static Protected Attributes -

Definition at line 1475 of file BTD.cpp.

+

Definition at line 1475 of file BTD.cpp.

- + +

◆ l2cap_connection_response()

+
@@ -1368,11 +1421,13 @@ Static Protected Attributes -

Definition at line 1488 of file BTD.cpp.

+

Definition at line 1488 of file BTD.cpp.

- + +

◆ l2cap_config_request()

+
@@ -1410,11 +1465,13 @@ Static Protected Attributes -

Definition at line 1505 of file BTD.cpp.

+

Definition at line 1505 of file BTD.cpp.

- + +

◆ l2cap_config_response()

+
@@ -1452,11 +1509,13 @@ Static Protected Attributes -

Definition at line 1522 of file BTD.cpp.

+

Definition at line 1522 of file BTD.cpp.

- + +

◆ l2cap_disconnection_request()

+
@@ -1501,11 +1560,13 @@ Static Protected Attributes -

Definition at line 1541 of file BTD.cpp.

+

Definition at line 1541 of file BTD.cpp.

- + +

◆ l2cap_disconnection_response()

+
@@ -1550,11 +1611,13 @@ Static Protected Attributes -

Definition at line 1554 of file BTD.cpp.

+

Definition at line 1554 of file BTD.cpp.

- + +

◆ l2cap_information_response()

+
@@ -1598,11 +1661,13 @@ Static Protected Attributes -

Definition at line 1567 of file BTD.cpp.

+

Definition at line 1567 of file BTD.cpp.

- + +

◆ pairWithWiimote()

+
@@ -1624,11 +1689,13 @@ Static Protected Attributes

Call this function to pair with a Wiimote

-

Definition at line 497 of file BTD.h.

+

Definition at line 497 of file BTD.h.

- + +

◆ pairWithHID()

+
@@ -1650,11 +1717,13 @@ Static Protected Attributes

Call this function to pair with a HID device

-

Definition at line 513 of file BTD.h.

+

Definition at line 513 of file BTD.h.

- + +

◆ readPollInterval()

+
@@ -1676,11 +1745,13 @@ Static Protected Attributes

Read the poll interval taken from the endpoint descriptors.

Returns
The poll interval in ms.
-

Definition at line 529 of file BTD.h.

+

Definition at line 529 of file BTD.h.

- + +

◆ PrintEndpointDescriptor()

+
@@ -1708,12 +1779,14 @@ Static Protected Attributes -

Definition at line 360 of file BTD.cpp.

+

Definition at line 360 of file BTD.cpp.

Member Data Documentation

- + +

◆ waitingForConnection

+
@@ -1724,11 +1797,13 @@ Static Protected Attributes

Use this to see if it is waiting for a incoming connection.

-

Definition at line 468 of file BTD.h.

+

Definition at line 468 of file BTD.h.

- + +

◆ l2capConnectionClaimed

+
@@ -1739,11 +1814,13 @@ Static Protected Attributes

This is used by the service to know when to store the device information.

-

Definition at line 470 of file BTD.h.

+

Definition at line 470 of file BTD.h.

- + +

◆ sdpConnectionClaimed

+
@@ -1754,11 +1831,13 @@ Static Protected Attributes

This is used by the SPP library to claim the current SDP incoming request.

-

Definition at line 472 of file BTD.h.

+

Definition at line 472 of file BTD.h.

- + +

◆ rfcommConnectionClaimed

+
@@ -1769,11 +1848,13 @@ Static Protected Attributes

This is used by the SPP library to claim the current RFCOMM incoming request.

-

Definition at line 474 of file BTD.h.

+

Definition at line 474 of file BTD.h.

- + +

◆ btdName

+
@@ -1784,11 +1865,13 @@ Static Protected Attributes

The name you wish to make the dongle show up as. It is set automatically by the SPP library.

-

Definition at line 477 of file BTD.h.

+

Definition at line 477 of file BTD.h.

- + +

◆ btdPin

+
@@ -1799,11 +1882,13 @@ Static Protected Attributes

The pin you wish to make the dongle use for authentication. It is set automatically by the SPP and BTHID library.

-

Definition at line 479 of file BTD.h.

+

Definition at line 479 of file BTD.h.

- + +

◆ my_bdaddr

+
@@ -1814,11 +1899,13 @@ Static Protected Attributes

The bluetooth dongles Bluetooth address.

-

Definition at line 482 of file BTD.h.

+

Definition at line 482 of file BTD.h.

- + +

◆ hci_handle

+
@@ -1829,11 +1916,13 @@ Static Protected Attributes

HCI handle for the last connection.

-

Definition at line 484 of file BTD.h.

+

Definition at line 484 of file BTD.h.

- + +

◆ disc_bdaddr

+
@@ -1844,11 +1933,13 @@ Static Protected Attributes

Last incoming devices Bluetooth address.

-

Definition at line 486 of file BTD.h.

+

Definition at line 486 of file BTD.h.

- + +

◆ remote_name

+
@@ -1859,11 +1950,13 @@ Static Protected Attributes

First 30 chars of last remote name.

-

Definition at line 488 of file BTD.h.

+

Definition at line 488 of file BTD.h.

- + +

◆ hci_version

+
@@ -1874,11 +1967,13 @@ Static Protected Attributes

The supported HCI Version read from the Bluetooth dongle. Used by the PS3BT library to check the HCI Version of the Bluetooth dongle, it should be at least 3 to work properly with the library.

-

Definition at line 494 of file BTD.h.

+

Definition at line 494 of file BTD.h.

- + +

◆ connectToWii

+
@@ -1889,11 +1984,13 @@ Static Protected Attributes

Used to only send the ACL data to the Wiimote.

-

Definition at line 500 of file BTD.h.

+

Definition at line 500 of file BTD.h.

- + +

◆ incomingWii

+
@@ -1904,11 +2001,13 @@ Static Protected Attributes

True if a Wiimote is connecting.

-

Definition at line 504 of file BTD.h.

+

Definition at line 504 of file BTD.h.

- + +

◆ pairWithWii

+
@@ -1919,11 +2018,13 @@ Static Protected Attributes

True when it should pair with a Wiimote.

-

Definition at line 506 of file BTD.h.

+

Definition at line 506 of file BTD.h.

- + +

◆ motionPlusInside

+
@@ -1934,11 +2035,13 @@ Static Protected Attributes

True if it's the new Wiimote with the Motion Plus Inside or a Wii U Pro Controller.

-

Definition at line 508 of file BTD.h.

+

Definition at line 508 of file BTD.h.

- + +

◆ wiiUProController

+
@@ -1949,11 +2052,13 @@ Static Protected Attributes

True if it's a Wii U Pro Controller.

-

Definition at line 510 of file BTD.h.

+

Definition at line 510 of file BTD.h.

- + +

◆ connectToHIDDevice

+
@@ -1964,11 +2069,13 @@ Static Protected Attributes

Used to only send the ACL data to the HID device.

-

Definition at line 517 of file BTD.h.

+

Definition at line 517 of file BTD.h.

- + +

◆ incomingHIDDevice

+
@@ -1979,11 +2086,13 @@ Static Protected Attributes

True if a HID device is connecting.

-

Definition at line 521 of file BTD.h.

+

Definition at line 521 of file BTD.h.

- + +

◆ pairWithHIDDevice

+
@@ -1994,11 +2103,13 @@ Static Protected Attributes

True when it should pair with a device like a mouse or keyboard.

-

Definition at line 523 of file BTD.h.

+

Definition at line 523 of file BTD.h.

- + +

◆ useSimplePairing

+
@@ -2009,11 +2120,13 @@ Static Protected Attributes

Used by the drivers to enable simple pairing

-

Definition at line 531 of file BTD.h.

+

Definition at line 531 of file BTD.h.

- + +

◆ pUsb

+
@@ -2032,11 +2145,13 @@ Static Protected Attributes

Pointer to USB class instance.

-

Definition at line 538 of file BTD.h.

+

Definition at line 538 of file BTD.h.

- + +

◆ bAddress

+
@@ -2055,11 +2170,13 @@ Static Protected Attributes

Device address.

-

Definition at line 540 of file BTD.h.

+

Definition at line 540 of file BTD.h.

- + +

◆ epInfo

+
@@ -2078,11 +2195,13 @@ Static Protected Attributes

Endpoint info structure.

-

Definition at line 542 of file BTD.h.

+

Definition at line 542 of file BTD.h.

- + +

◆ bConfNum

+
@@ -2101,11 +2220,13 @@ Static Protected Attributes

Configuration number.

-

Definition at line 545 of file BTD.h.

+

Definition at line 545 of file BTD.h.

- + +

◆ bNumEP

+
@@ -2124,11 +2245,13 @@ Static Protected Attributes

Total number of endpoints in the configuration.

-

Definition at line 547 of file BTD.h.

+

Definition at line 547 of file BTD.h.

- + +

◆ qNextPollTime

+
@@ -2147,11 +2270,13 @@ Static Protected Attributes

Next poll time based on poll interval taken from the USB descriptor.

-

Definition at line 549 of file BTD.h.

+

Definition at line 549 of file BTD.h.

- + +

◆ BTD_CONTROL_PIPE

+
@@ -2170,11 +2295,13 @@ Static Protected Attributes

Bluetooth dongle control endpoint.

-

Definition at line 552 of file BTD.h.

+

Definition at line 552 of file BTD.h.

- + +

◆ BTD_EVENT_PIPE

+
@@ -2193,11 +2320,13 @@ Static Protected Attributes

HCI event endpoint index.

-

Definition at line 554 of file BTD.h.

+

Definition at line 554 of file BTD.h.

- + +

◆ BTD_DATAIN_PIPE

+
@@ -2216,11 +2345,13 @@ Static Protected Attributes

ACL In endpoint index.

-

Definition at line 556 of file BTD.h.

+

Definition at line 556 of file BTD.h.

- + +

◆ BTD_DATAOUT_PIPE

+
@@ -2239,7 +2370,7 @@ Static Protected Attributes

ACL Out endpoint index.

-

Definition at line 558 of file BTD.h.

+

Definition at line 558 of file BTD.h.

@@ -2252,7 +2383,7 @@ Static Protected Attributes diff --git a/class_b_t_d__coll__graph.map b/class_b_t_d__coll__graph.map index faf78d2f..b127acd8 100644 --- a/class_b_t_d__coll__graph.map +++ b/class_b_t_d__coll__graph.map @@ -1,7 +1,7 @@ - - - - - + + + + + diff --git a/class_b_t_d__coll__graph.md5 b/class_b_t_d__coll__graph.md5 index 7288133e..6b850d5b 100644 --- a/class_b_t_d__coll__graph.md5 +++ b/class_b_t_d__coll__graph.md5 @@ -1 +1 @@ -e72568841cb2f05e3bfabb29e1ce8457 \ No newline at end of file +d30fe5eedeff8ac785a92b5f99c8d16d \ No newline at end of file diff --git a/class_b_t_d__coll__graph.png b/class_b_t_d__coll__graph.png index b553c6ff43b374f7628ef6a85528e3783c3bdbe3..5bac874a031487417c7d70fb35cff0f78a0bc557 100644 GIT binary patch literal 13277 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 literal 11611 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 diff --git a/class_b_t_d__inherit__graph.map b/class_b_t_d__inherit__graph.map index ed1c9ace..586850de 100644 --- a/class_b_t_d__inherit__graph.map +++ b/class_b_t_d__inherit__graph.map @@ -1,4 +1,4 @@ - - + + diff --git a/class_b_t_d__inherit__graph.md5 b/class_b_t_d__inherit__graph.md5 index 95bb3a3b..bf83e9fe 100644 --- a/class_b_t_d__inherit__graph.md5 +++ b/class_b_t_d__inherit__graph.md5 @@ -1 +1 @@ -36ee382408a95d482da81524513435df \ No newline at end of file +cc3b5af420b1b442f97eb1e44ba768a6 \ No newline at end of file diff --git a/class_b_t_d__inherit__graph.png b/class_b_t_d__inherit__graph.png index 0ac39bf349fc16356cdedf36873c5b564c08df61..cb998fc7a21599ec2ba0663ae0e39b990e6760fc 100644 GIT binary patch literal 5487 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 - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - - + + +
[legend]
@@ -110,13 +85,13 @@ Collaboration diagram for BTHID:
Collaboration graph
- - - - - - - + + + + + + +
[legend]
@@ -201,9 +176,11 @@ BluetoothService implementation

Detailed Description

This BluetoothService class implements support for Bluetooth HID devices.

-

Definition at line 29 of file BTHID.h.

+

Definition at line 29 of file BTHID.h.

Constructor & Destructor Documentation

- + +

◆ BTHID()

+
@@ -241,12 +218,14 @@ BluetoothService implementation -

Definition at line 23 of file BTHID.cpp.

+

Definition at line 23 of file BTHID.cpp.

Member Function Documentation

- + +

◆ disconnect()

+
@@ -270,11 +249,13 @@ BluetoothService implementation

Implements BluetoothService.

-

Definition at line 53 of file BTHID.cpp.

+

Definition at line 53 of file BTHID.cpp.

- + +

◆ GetReportParser()

+
@@ -303,11 +284,13 @@ BluetoothService implementation
Returns
Returns the corresponding HIDReportParser. Returns NULL if id is not valid.
-

Definition at line 49 of file BTHID.h.

+

Definition at line 49 of file BTHID.h.

- + +

◆ SetReportParser()

+
@@ -347,11 +330,13 @@ BluetoothService implementation
Returns
Returns true if the HIDReportParser is set. False otherwise.
-

Definition at line 61 of file BTHID.h.

+

Definition at line 61 of file BTHID.h.

- + +

◆ setProtocolMode()

+
@@ -379,11 +364,13 @@ BluetoothService implementation -

Definition at line 72 of file BTHID.h.

+

Definition at line 72 of file BTHID.h.

- + +

◆ setLeds() [1/2]

+
@@ -411,11 +398,13 @@ BluetoothService implementation -

Definition at line 81 of file BTHID.h.

+

Definition at line 81 of file BTHID.h.

- + +

◆ setLeds() [2/2]

+
@@ -435,11 +424,13 @@ BluetoothService implementation -

Definition at line 618 of file BTHID.cpp.

+

Definition at line 618 of file BTHID.cpp.

- + +

◆ pair()

+
@@ -462,11 +453,13 @@ BluetoothService implementation

Call this to start the pairing sequence with a device

-

Definition at line 91 of file BTHID.h.

+

Definition at line 91 of file BTHID.h.

- + +

◆ ACLData()

+
@@ -496,11 +489,13 @@ BluetoothService implementation

Implements BluetoothService.

-

Definition at line 63 of file BTHID.cpp.

+

Definition at line 63 of file BTHID.cpp.

- + +

◆ Run()

+
@@ -524,11 +519,13 @@ BluetoothService implementation

Implements BluetoothService.

-

Definition at line 548 of file BTHID.cpp.

+

Definition at line 548 of file BTHID.cpp.

- + +

◆ Reset()

+
@@ -552,11 +549,13 @@ BluetoothService implementation

Implements BluetoothService.

-

Definition at line 43 of file BTHID.cpp.

+

Definition at line 43 of file BTHID.cpp.

- + +

◆ onInit()

+
@@ -580,11 +579,13 @@ BluetoothService implementation

Implements BluetoothService.

-

Definition at line 112 of file BTHID.h.

+

Definition at line 112 of file BTHID.h.

- + +

◆ ParseBTHIDData()

+
@@ -625,11 +626,13 @@ BluetoothService implementation

Reimplemented in PS4BT, and XBOXONESBT.

-

Definition at line 125 of file BTHID.h.

+

Definition at line 125 of file BTHID.h.

- + +

◆ ParseBTHIDControlData()

+
@@ -662,11 +665,13 @@ BluetoothService implementation

Same as ParseBTHIDData for reports that are sent through the interrupt pipe (in response to a GET_REPORT).

-

Definition at line 132 of file BTHID.h.

+

Definition at line 132 of file BTHID.h.

- + +

◆ OnInitBTHID()

+
@@ -690,11 +695,13 @@ BluetoothService implementation

Reimplemented in PS4BT, and XBOXONESBT.

-

Definition at line 136 of file BTHID.h.

+

Definition at line 136 of file BTHID.h.

- + +

◆ ResetBTHID()

+
@@ -718,12 +725,14 @@ BluetoothService implementation

Reimplemented in PS4BT, and XBOXONESBT.

-

Definition at line 140 of file BTHID.h.

+

Definition at line 140 of file BTHID.h.

Member Data Documentation

- + +

◆ connected

+
@@ -734,11 +743,13 @@ BluetoothService implementation

True if a device is connected

-

Definition at line 88 of file BTHID.h.

+

Definition at line 88 of file BTHID.h.

- + +

◆ control_scid

+
@@ -757,11 +768,13 @@ BluetoothService implementation

L2CAP source CID for HID_Control

-

Definition at line 146 of file BTHID.h.

+

Definition at line 146 of file BTHID.h.

- + +

◆ interrupt_scid

+
@@ -780,11 +793,13 @@ BluetoothService implementation

L2CAP source CID for HID_Interrupt

-

Definition at line 149 of file BTHID.h.

+

Definition at line 149 of file BTHID.h.

- + +

◆ l2cap_sdp_state

+
@@ -802,11 +817,13 @@ BluetoothService implementation
-

Definition at line 151 of file BTHID.h.

+

Definition at line 151 of file BTHID.h.

- + +

◆ sdp_scid

+
@@ -824,7 +841,7 @@ BluetoothService implementation
-

Definition at line 152 of file BTHID.h.

+

Definition at line 152 of file BTHID.h.

@@ -837,7 +854,7 @@ BluetoothService implementation diff --git a/class_b_t_h_i_d__coll__graph.map b/class_b_t_h_i_d__coll__graph.map index 3de13548..3ccb5bd2 100644 --- a/class_b_t_h_i_d__coll__graph.map +++ b/class_b_t_h_i_d__coll__graph.map @@ -1,9 +1,9 @@ - - - - - - - + + + + + + + diff --git a/class_b_t_h_i_d__coll__graph.md5 b/class_b_t_h_i_d__coll__graph.md5 index b8a6fc7c..2121b658 100644 --- a/class_b_t_h_i_d__coll__graph.md5 +++ b/class_b_t_h_i_d__coll__graph.md5 @@ -1 +1 @@ -328440863f58d32544996d4a0a7788ae \ No newline at end of file +3b8278cef06a7b1a6670fd63f49235a9 \ No newline at end of file diff --git a/class_b_t_h_i_d__coll__graph.png b/class_b_t_h_i_d__coll__graph.png index 8cbed0cabd0d51c204caaf183a79cc529b0d51e2..fa5d3c3ed8c3d57d4752383ef297d31315060898 100644 GIT binary patch literal 17651 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 diff --git a/class_b_t_h_i_d__inherit__graph.map b/class_b_t_h_i_d__inherit__graph.map index 26edea61..31e785f3 100644 --- a/class_b_t_h_i_d__inherit__graph.map +++ b/class_b_t_h_i_d__inherit__graph.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/class_b_t_h_i_d__inherit__graph.md5 b/class_b_t_h_i_d__inherit__graph.md5 index aa802986..01278e42 100644 --- a/class_b_t_h_i_d__inherit__graph.md5 +++ b/class_b_t_h_i_d__inherit__graph.md5 @@ -1 +1 @@ -92986d8b2e993ef1ed7d358c02d021f2 \ No newline at end of file +eee85effef418f7404da53bc61be5232 \ No newline at end of file diff --git a/class_b_t_h_i_d__inherit__graph.png b/class_b_t_h_i_d__inherit__graph.png index cd3cc589f9a45fa106c11550ab95d6e95d4fd79b..9f3c31d59a1a3194c419b581e49381f9baf991b2 100644 GIT binary patch literal 6556 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 - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@ - + - - + + + + - + - - + + + +
Inheritance graph
- - - - - - + + + + + +
[legend]
@@ -113,12 +88,12 @@ Collaboration diagram for BluetoothService:
Collaboration graph
- - - - - - + + + + + +
[legend]
@@ -160,9 +135,11 @@ Protected Attributes

Detailed Description

All Bluetooth services should inherit this class.

-

Definition at line 603 of file BTD.h.

+

Definition at line 603 of file BTD.h.

Constructor & Destructor Documentation

- + +

◆ BluetoothService()

+
@@ -184,12 +161,14 @@ Protected Attributes
-

Definition at line 605 of file BTD.h.

+

Definition at line 605 of file BTD.h.

Member Function Documentation

- + +

◆ ACLData()

+
@@ -221,7 +200,9 @@ Protected Attributes - + +

◆ Run()

+
@@ -247,7 +228,9 @@ Protected Attributes - + +

◆ Reset()

+
@@ -273,7 +256,9 @@ Protected Attributes - + +

◆ disconnect()

+
@@ -299,7 +284,9 @@ Protected Attributes - + +

◆ attachOnInit()

+
@@ -327,11 +314,13 @@ Protected Attributes -

Definition at line 625 of file BTD.h.

+

Definition at line 625 of file BTD.h.

- + +

◆ onInit()

+
@@ -357,7 +346,9 @@ Protected Attributes - + +

◆ checkHciHandle()

+
@@ -390,12 +381,14 @@ Protected Attributes

Used to check if the incoming L2CAP data matches the HCI Handle

-

Definition at line 638 of file BTD.h.

+

Definition at line 638 of file BTD.h.

Member Data Documentation

- + +

◆ pFuncOnInit

+
@@ -414,11 +407,13 @@ Protected Attributes

Pointer to function called in onInit().

-

Definition at line 643 of file BTD.h.

+

Definition at line 643 of file BTD.h.

- + +

◆ pBtd

+
@@ -437,11 +432,13 @@ Protected Attributes

Pointer to BTD instance.

-

Definition at line 646 of file BTD.h.

+

Definition at line 646 of file BTD.h.

- + +

◆ hci_handle

+
@@ -460,11 +457,13 @@ Protected Attributes

The HCI Handle for the connection.

-

Definition at line 649 of file BTD.h.

+

Definition at line 649 of file BTD.h.

- + +

◆ l2cap_event_flag

+
@@ -483,11 +482,13 @@ Protected Attributes

L2CAP flags of received Bluetooth events.

-

Definition at line 652 of file BTD.h.

+

Definition at line 652 of file BTD.h.

- + +

◆ identifier

+
@@ -506,7 +507,7 @@ Protected Attributes

Identifier for L2CAP commands.

-

Definition at line 655 of file BTD.h.

+

Definition at line 655 of file BTD.h.

@@ -518,7 +519,7 @@ Protected Attributes diff --git a/class_bluetooth_service__coll__graph.map b/class_bluetooth_service__coll__graph.map index 6e6676cd..78616394 100644 --- a/class_bluetooth_service__coll__graph.map +++ b/class_bluetooth_service__coll__graph.map @@ -1,8 +1,8 @@ - - - - - - + + + + + + diff --git a/class_bluetooth_service__coll__graph.md5 b/class_bluetooth_service__coll__graph.md5 index c59d7e12..b708cfc1 100644 --- a/class_bluetooth_service__coll__graph.md5 +++ b/class_bluetooth_service__coll__graph.md5 @@ -1 +1 @@ -63004da77f15c2792f7eb5740b2b02f1 \ No newline at end of file +070e1cbbcad92a5495383b260ea40bb9 \ No newline at end of file diff --git a/class_bluetooth_service__coll__graph.png b/class_bluetooth_service__coll__graph.png index b1863f95e6fa58f831d4b3dad7ca1d1ee26a1b52..daf59302d402d04d52efef3d7b37453240747bcd 100644 GIT binary patch literal 16319 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 OaZf>AzEJjQ!2beg)MD}g literal 14338 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 diff --git a/class_bluetooth_service__inherit__graph.map b/class_bluetooth_service__inherit__graph.map index 7310d7d5..af5dc499 100644 --- a/class_bluetooth_service__inherit__graph.map +++ b/class_bluetooth_service__inherit__graph.map @@ -1,8 +1,8 @@ - - - - - - + + + + + + diff --git a/class_bluetooth_service__inherit__graph.md5 b/class_bluetooth_service__inherit__graph.md5 index d9f5352e..75c38a7a 100644 --- a/class_bluetooth_service__inherit__graph.md5 +++ b/class_bluetooth_service__inherit__graph.md5 @@ -1 +1 @@ -3d5267962243b5573494854871794b16 \ No newline at end of file +da327df8fa48213df2fe2fc9ea014911 \ No newline at end of file diff --git a/class_bluetooth_service__inherit__graph.png b/class_bluetooth_service__inherit__graph.png index d05fab6c9324f5141e3de0c29c3da8a33abc9fc2..f7e60f6f95d604b27025fb4455c108133871a48a 100644 GIT binary patch literal 11182 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 literal 11719 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 R117T}N^pXvYr diff --git a/class_bulk_only-members.html b/class_bulk_only-members.html index 8fd4e61d..95541176 100644 --- a/class_bulk_only-members.html +++ b/class_bulk_only-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - + +
[legend]
@@ -110,11 +85,11 @@ Collaboration diagram for BulkOnly:
Collaboration graph
- - - - - + + + + +
[legend]
@@ -225,9 +200,11 @@ Static Protected Attributes

Detailed Description

-

Definition at line 469 of file masstorage.h.

+

Definition at line 469 of file masstorage.h.

Constructor & Destructor Documentation

- + +

◆ BulkOnly()

+
@@ -241,12 +218,14 @@ Static Protected Attributes
-

Definition at line 229 of file masstorage.cpp.

+

Definition at line 229 of file masstorage.cpp.

Member Function Documentation

- + +

◆ PrintEndpointDescriptor()

+
@@ -274,11 +253,13 @@ Static Protected Attributes -

Definition at line 1220 of file masstorage.cpp.

+

Definition at line 1220 of file masstorage.cpp.

- + +

◆ OnInit()

+
@@ -299,11 +280,13 @@ Static Protected Attributes
-

Definition at line 499 of file masstorage.h.

+

Definition at line 499 of file masstorage.h.

- + +

◆ GetLastUsbError()

+
@@ -324,11 +307,13 @@ Static Protected Attributes
-

Definition at line 505 of file masstorage.h.

+

Definition at line 505 of file masstorage.h.

- + +

◆ GetbMaxLUN()

+
@@ -349,11 +334,13 @@ Static Protected Attributes
-

Definition at line 509 of file masstorage.h.

+

Definition at line 509 of file masstorage.h.

- + +

◆ GetbTheLUN()

+
@@ -374,11 +361,13 @@ Static Protected Attributes
-

Definition at line 513 of file masstorage.h.

+

Definition at line 513 of file masstorage.h.

- + +

◆ WriteProtected()

+
@@ -400,11 +389,13 @@ Static Protected Attributes
Returns
cached status of write protect switch
-

Definition at line 77 of file masstorage.cpp.

+

Definition at line 77 of file masstorage.cpp.

- + +

◆ MediaCTL()

+
@@ -437,11 +428,13 @@ Static Protected Attributes
Returns
0 on success
-

Definition at line 137 of file masstorage.cpp.

+

Definition at line 137 of file masstorage.cpp.

- + +

◆ Read() [1/2]

+
@@ -495,11 +488,13 @@ Static Protected Attributes
Returns
0 on success
-

Definition at line 161 of file masstorage.cpp.

+

Definition at line 161 of file masstorage.cpp.

- + +

◆ Read() [2/2]

+
@@ -541,11 +536,13 @@ Static Protected Attributes
-

Definition at line 1247 of file masstorage.cpp.

+

Definition at line 1247 of file masstorage.cpp.

- + +

◆ Write()

+
@@ -599,11 +596,13 @@ Static Protected Attributes
Returns
0 on success
-

Definition at line 195 of file masstorage.cpp.

+

Definition at line 195 of file masstorage.cpp.

- + +

◆ LockMedia()

+
@@ -636,11 +635,13 @@ Static Protected Attributes
Returns
-

Definition at line 121 of file masstorage.cpp.

+

Definition at line 121 of file masstorage.cpp.

- + +

◆ LUNIsGood()

+
@@ -662,11 +663,13 @@ Static Protected Attributes
Returns
true if LUN is ready for use
-

Definition at line 67 of file masstorage.cpp.

+

Definition at line 67 of file masstorage.cpp.

- + +

◆ GetCapacity()

+
@@ -688,11 +691,13 @@ Static Protected Attributes
Returns
media capacity
-

Definition at line 43 of file masstorage.cpp.

+

Definition at line 43 of file masstorage.cpp.

- + +

◆ GetSectorSize()

+
@@ -714,11 +719,13 @@ Static Protected Attributes
Returns
media sector size
-

Definition at line 55 of file masstorage.cpp.

+

Definition at line 55 of file masstorage.cpp.

- + +

◆ Init()

+
@@ -767,11 +774,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 333 of file masstorage.cpp.

+

Definition at line 333 of file masstorage.cpp.

- + +

◆ ConfigureDevice()

+
@@ -822,11 +831,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 258 of file masstorage.cpp.

+

Definition at line 258 of file masstorage.cpp.

- + +

◆ Release()

+
@@ -851,11 +862,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 598 of file masstorage.cpp.

+

Definition at line 598 of file masstorage.cpp.

- + +

◆ Poll()

+
@@ -880,11 +893,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 676 of file masstorage.cpp.

+

Definition at line 676 of file masstorage.cpp.

- + +

◆ GetAddress()

+
@@ -907,11 +922,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 535 of file masstorage.h.

+

Definition at line 535 of file masstorage.h.

- + +

◆ EndpointXtract()

+
@@ -974,11 +991,13 @@ Static Protected Attributes

Reimplemented from UsbConfigXtracter.

-

Definition at line 550 of file masstorage.cpp.

+

Definition at line 550 of file masstorage.cpp.

- + +

◆ DEVCLASSOK()

+
@@ -1002,11 +1021,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 542 of file masstorage.h.

+

Definition at line 542 of file masstorage.h.

- + +

◆ SCSITransaction6()

+
@@ -1053,11 +1074,13 @@ Static Protected Attributes
Returns
-

Definition at line 90 of file masstorage.cpp.

+

Definition at line 90 of file masstorage.cpp.

- + +

◆ SCSITransaction10()

+
@@ -1104,12 +1127,14 @@ Static Protected Attributes
Returns
-

Definition at line 106 of file masstorage.cpp.

+

Definition at line 106 of file masstorage.cpp.

Member Data Documentation

- + +

◆ epDataInIndex

+
@@ -1127,11 +1152,13 @@ Static Protected Attributes
-

Definition at line 471 of file masstorage.h.

+

Definition at line 471 of file masstorage.h.

- + +

◆ epDataOutIndex

+
@@ -1149,11 +1176,13 @@ Static Protected Attributes
-

Definition at line 472 of file masstorage.h.

+

Definition at line 472 of file masstorage.h.

- + +

◆ epInterruptInIndex

+
@@ -1171,11 +1200,13 @@ Static Protected Attributes
-

Definition at line 473 of file masstorage.h.

+

Definition at line 473 of file masstorage.h.

- + +

◆ pUsb

+
@@ -1193,11 +1224,13 @@ Static Protected Attributes
-

Definition at line 475 of file masstorage.h.

+

Definition at line 475 of file masstorage.h.

- + +

◆ bAddress

+
@@ -1215,11 +1248,13 @@ Static Protected Attributes
-

Definition at line 476 of file masstorage.h.

+

Definition at line 476 of file masstorage.h.

- + +

◆ bConfNum

+
@@ -1237,11 +1272,13 @@ Static Protected Attributes
-

Definition at line 477 of file masstorage.h.

+

Definition at line 477 of file masstorage.h.

- + +

◆ bIface

+
@@ -1259,11 +1296,13 @@ Static Protected Attributes
-

Definition at line 478 of file masstorage.h.

+

Definition at line 478 of file masstorage.h.

- + +

◆ bNumEP

+
@@ -1281,11 +1320,13 @@ Static Protected Attributes
-

Definition at line 479 of file masstorage.h.

+

Definition at line 479 of file masstorage.h.

- + +

◆ qNextPollTime

+
@@ -1303,11 +1344,13 @@ Static Protected Attributes
-

Definition at line 480 of file masstorage.h.

+

Definition at line 480 of file masstorage.h.

- + +

◆ bPollEnable

+
@@ -1325,11 +1368,13 @@ Static Protected Attributes
-

Definition at line 481 of file masstorage.h.

+

Definition at line 481 of file masstorage.h.

- + +

◆ epInfo

+
@@ -1347,11 +1392,13 @@ Static Protected Attributes
-

Definition at line 483 of file masstorage.h.

+

Definition at line 483 of file masstorage.h.

- + +

◆ dCBWTag

+
@@ -1369,11 +1416,13 @@ Static Protected Attributes
-

Definition at line 485 of file masstorage.h.

+

Definition at line 485 of file masstorage.h.

- + +

◆ bLastUsbError

+
@@ -1391,11 +1440,13 @@ Static Protected Attributes
-

Definition at line 487 of file masstorage.h.

+

Definition at line 487 of file masstorage.h.

- + +

◆ bMaxLUN

+
@@ -1413,11 +1464,13 @@ Static Protected Attributes
-

Definition at line 488 of file masstorage.h.

+

Definition at line 488 of file masstorage.h.

- + +

◆ bTheLUN

+
@@ -1435,11 +1488,13 @@ Static Protected Attributes
-

Definition at line 489 of file masstorage.h.

+

Definition at line 489 of file masstorage.h.

- + +

◆ CurrentCapacity

+
@@ -1457,11 +1512,13 @@ Static Protected Attributes
-

Definition at line 490 of file masstorage.h.

+

Definition at line 490 of file masstorage.h.

- + +

◆ CurrentSectorSize

+
@@ -1479,11 +1536,13 @@ Static Protected Attributes
-

Definition at line 491 of file masstorage.h.

+

Definition at line 491 of file masstorage.h.

- + +

◆ LUNOk

+
@@ -1501,11 +1560,13 @@ Static Protected Attributes
-

Definition at line 492 of file masstorage.h.

+

Definition at line 492 of file masstorage.h.

- + +

◆ WriteOk

+
@@ -1523,7 +1584,7 @@ Static Protected Attributes
-

Definition at line 493 of file masstorage.h.

+

Definition at line 493 of file masstorage.h.

@@ -1536,7 +1597,7 @@ Static Protected Attributes diff --git a/class_bulk_only__coll__graph.map b/class_bulk_only__coll__graph.map index d56caf34..3ea782fd 100644 --- a/class_bulk_only__coll__graph.map +++ b/class_bulk_only__coll__graph.map @@ -1,7 +1,7 @@ - - - - - + + + + + diff --git a/class_bulk_only__coll__graph.md5 b/class_bulk_only__coll__graph.md5 index 65616e8f..38e17c78 100644 --- a/class_bulk_only__coll__graph.md5 +++ b/class_bulk_only__coll__graph.md5 @@ -1 +1 @@ -f9839364bbfdcee0034202ae5496cf49 \ No newline at end of file +922595c1eab8d375f2394c87eb7b7d3b \ No newline at end of file diff --git a/class_bulk_only__coll__graph.png b/class_bulk_only__coll__graph.png index 693683e3a037e46155e5b50db9ff021d32f577b2..5937121631216e72b1ffe252469dc1e5c4e034c5 100644 GIT binary patch literal 13690 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 aig#qI&%Uy?%z=lgAnzqVNR*2ie)&INO)t{` literal 12058 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 - - + + diff --git a/class_bulk_only__inherit__graph.md5 b/class_bulk_only__inherit__graph.md5 index ab44521f..f268bf55 100644 --- a/class_bulk_only__inherit__graph.md5 +++ b/class_bulk_only__inherit__graph.md5 @@ -1 +1 @@ -2b66e1860fb7442508174e207255d1ed \ No newline at end of file +f8d5729746afdcd2f3b036bed5864279 \ No newline at end of file diff --git a/class_bulk_only__inherit__graph.png b/class_bulk_only__inherit__graph.png index 839beb4a64b93aee30a4753e4e8efe1ec7c1b31b..7f4346f7b5acec868d06a3c2cbf2c9a4487d9283 100644 GIT binary patch literal 5955 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 L4SBTei_rf7>7JCm literal 5622 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 mi13n diff --git a/class_byte_skipper-members.html b/class_byte_skipper-members.html index a53e8f7c..b7bfaf33 100644 --- a/class_byte_skipper-members.html +++ b/class_byte_skipper-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +

Detailed Description

-

Definition at line 62 of file parsetools.h.

+

Definition at line 62 of file parsetools.h.

Constructor & Destructor Documentation

- + +

◆ ByteSkipper()

+
@@ -128,12 +105,14 @@ Public Member Functions
-

Definition at line 69 of file parsetools.h.

+

Definition at line 69 of file parsetools.h.

Member Function Documentation

- + +

◆ Initialize()

+
@@ -155,11 +134,13 @@ Public Member Functions
-

Definition at line 72 of file parsetools.h.

+

Definition at line 72 of file parsetools.h.

- + +

◆ Skip()

+
@@ -197,7 +178,7 @@ Public Member Functions
-

Definition at line 77 of file parsetools.h.

+

Definition at line 77 of file parsetools.h.

@@ -209,7 +190,7 @@ Public Member Functions diff --git a/class_c_d_c_async_oper-members.html b/class_c_d_c_async_oper-members.html index f1af7c38..0c0296ca 100644 --- a/class_c_d_c_async_oper-members.html +++ b/class_c_d_c_async_oper-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +

Detailed Description

-

Definition at line 128 of file cdcacm.h.

+

Definition at line 128 of file cdcacm.h.

Member Function Documentation

- + +

◆ OnInit()

+
@@ -125,7 +102,7 @@ Public Member Functions
-

Definition at line 131 of file cdcacm.h.

+

Definition at line 131 of file cdcacm.h.

@@ -137,7 +114,7 @@ Public Member Functions diff --git a/class_config_desc_parser-members.html b/class_config_desc_parser-members.html index 46d3e697..b2ab42a3 100644 --- a/class_config_desc_parser-members.html +++ b/class_config_desc_parser-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -106,7 +81,7 @@ Collaboration diagram for ConfigDescParser< CLASS_ID, SUBCLASS_ID, PROTOCOL_I
Collaboration graph
- +
[legend]
@@ -124,9 +99,11 @@ Public Member Functions class ConfigDescParser< CLASS_ID, SUBCLASS_ID, PROTOCOL_ID, MASK > -

Definition at line 47 of file confdescparser.h.

+

Definition at line 47 of file confdescparser.h.

Constructor & Destructor Documentation

- + +

◆ ConfigDescParser()

+
@@ -142,12 +119,14 @@ template<const uint8_t CLASS_ID, const uint8_t SUBCLASS_ID, const uint8_t PRO
-

Definition at line 79 of file confdescparser.h.

+

Definition at line 79 of file confdescparser.h.

Member Function Documentation

- + +

◆ SetOR()

+
@@ -171,11 +150,13 @@ template<const uint8_t CLASS_ID, const uint8_t SUBCLASS_ID, const uint8_t PRO
-

Definition at line 71 of file confdescparser.h.

+

Definition at line 71 of file confdescparser.h.

- + +

◆ Parse()

+
@@ -217,7 +198,7 @@ template<const uint8_t CLASS_ID, const uint8_t SUBCLASS_ID, const uint8_t PRO

Implements USBReadParser.

-

Definition at line 91 of file confdescparser.h.

+

Definition at line 91 of file confdescparser.h.

@@ -229,7 +210,7 @@ template<const uint8_t CLASS_ID, const uint8_t SUBCLASS_ID, const uint8_t PRO diff --git a/class_config_desc_parser__coll__graph.map b/class_config_desc_parser__coll__graph.map index 6c292de0..a7791619 100644 --- a/class_config_desc_parser__coll__graph.map +++ b/class_config_desc_parser__coll__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_config_desc_parser__coll__graph.md5 b/class_config_desc_parser__coll__graph.md5 index 6d67d32a..9543b832 100644 --- a/class_config_desc_parser__coll__graph.md5 +++ b/class_config_desc_parser__coll__graph.md5 @@ -1 +1 @@ -43e2ececa16e23c2ef0bb98404d9dd99 \ No newline at end of file +8d46f1e236686517ba32dc78e05067b2 \ No newline at end of file diff --git a/class_config_desc_parser__coll__graph.png b/class_config_desc_parser__coll__graph.png index b1e39aab2622029bcfa4dd0351a87eacb02b3a39..6acf7ff6fed406f57acfd573f68d0a238aa7f159 100644 GIT binary patch literal 6418 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 PLXe`YnoOCLdC-3W=}9c? diff --git a/class_config_desc_parser__inherit__graph.map b/class_config_desc_parser__inherit__graph.map index 6c292de0..a7791619 100644 --- a/class_config_desc_parser__inherit__graph.map +++ b/class_config_desc_parser__inherit__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_config_desc_parser__inherit__graph.md5 b/class_config_desc_parser__inherit__graph.md5 index 6d67d32a..007fa887 100644 --- a/class_config_desc_parser__inherit__graph.md5 +++ b/class_config_desc_parser__inherit__graph.md5 @@ -1 +1 @@ -43e2ececa16e23c2ef0bb98404d9dd99 \ No newline at end of file +09e7aef4816627c161587a65c67bc25c \ No newline at end of file diff --git a/class_config_desc_parser__inherit__graph.png b/class_config_desc_parser__inherit__graph.png index b1e39aab2622029bcfa4dd0351a87eacb02b3a39..6acf7ff6fed406f57acfd573f68d0a238aa7f159 100644 GIT binary patch literal 6418 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 PLXe`YnoOCLdC-3W=}9c? diff --git a/class_f_t_d_i-members.html b/class_f_t_d_i-members.html index 60d0e34a..33e3f011 100644 --- a/class_f_t_d_i-members.html +++ b/class_f_t_d_i-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - + +
[legend]
@@ -107,8 +82,8 @@ Collaboration diagram for FTDI:
Collaboration graph
- - + +
[legend]
@@ -158,9 +133,11 @@ Public Member Functions

Detailed Description

-

Definition at line 98 of file cdcftdi.h.

+

Definition at line 98 of file cdcftdi.h.

Constructor & Destructor Documentation

- + +

◆ FTDI()

+
@@ -190,12 +167,14 @@ Public Member Functions
-

Definition at line 23 of file cdcftdi.cpp.

+

Definition at line 23 of file cdcftdi.cpp.

Member Function Documentation

- + +

◆ SetBaudRate()

+
@@ -209,11 +188,13 @@ Public Member Functions
-

Definition at line 293 of file cdcftdi.cpp.

+

Definition at line 293 of file cdcftdi.cpp.

- + +

◆ SetModemControl()

+
@@ -227,11 +208,13 @@ Public Member Functions
-

Definition at line 353 of file cdcftdi.cpp.

+

Definition at line 353 of file cdcftdi.cpp.

- + +

◆ SetFlowControl()

+
@@ -261,11 +244,13 @@ Public Member Functions
-

Definition at line 361 of file cdcftdi.cpp.

+

Definition at line 361 of file cdcftdi.cpp.

- + +

◆ SetData()

+
@@ -279,11 +264,13 @@ Public Member Functions
-

Definition at line 369 of file cdcftdi.cpp.

+

Definition at line 369 of file cdcftdi.cpp.

- + +

◆ SetLatency()

+
@@ -297,11 +284,13 @@ Public Member Functions
-

Definition at line 335 of file cdcftdi.cpp.

+

Definition at line 335 of file cdcftdi.cpp.

- + +

◆ GetLatency()

+
@@ -315,11 +304,13 @@ Public Member Functions
-

Definition at line 345 of file cdcftdi.cpp.

+

Definition at line 345 of file cdcftdi.cpp.

- + +

◆ RcvData()

+
@@ -343,11 +334,13 @@ Public Member Functions
-

Definition at line 377 of file cdcftdi.cpp.

+

Definition at line 377 of file cdcftdi.cpp.

- + +

◆ SndData()

+
@@ -371,11 +364,13 @@ Public Member Functions
-

Definition at line 385 of file cdcftdi.cpp.

+

Definition at line 385 of file cdcftdi.cpp.

- + +

◆ Init()

+
@@ -415,11 +410,13 @@ Public Member Functions

Reimplemented from USBDeviceConfig.

-

Definition at line 41 of file cdcftdi.cpp.

+

Definition at line 41 of file cdcftdi.cpp.

- + +

◆ Release()

+
@@ -442,11 +439,13 @@ Public Member Functions

Reimplemented from USBDeviceConfig.

-

Definition at line 267 of file cdcftdi.cpp.

+

Definition at line 267 of file cdcftdi.cpp.

- + +

◆ Poll()

+
@@ -469,11 +468,13 @@ Public Member Functions

Reimplemented from USBDeviceConfig.

-

Definition at line 278 of file cdcftdi.cpp.

+

Definition at line 278 of file cdcftdi.cpp.

- + +

◆ GetAddress()

+
@@ -496,11 +497,13 @@ Public Member Functions

Reimplemented from USBDeviceConfig.

-

Definition at line 138 of file cdcftdi.h.

+

Definition at line 138 of file cdcftdi.h.

- + +

◆ EndpointXtract()

+
@@ -552,11 +555,13 @@ Public Member Functions

Reimplemented from UsbConfigXtracter.

-

Definition at line 237 of file cdcftdi.cpp.

+

Definition at line 237 of file cdcftdi.cpp.

- + +

◆ VIDPIDOK()

+
@@ -590,11 +595,13 @@ Public Member Functions

Reimplemented from USBDeviceConfig.

-

Definition at line 145 of file cdcftdi.h.

+

Definition at line 145 of file cdcftdi.h.

- + +

◆ isReady()

+
@@ -615,7 +622,7 @@ Public Member Functions
-

Definition at line 148 of file cdcftdi.h.

+

Definition at line 148 of file cdcftdi.h.

@@ -628,7 +635,7 @@ Public Member Functions diff --git a/class_f_t_d_i__coll__graph.map b/class_f_t_d_i__coll__graph.map index 4dc81904..916a96c4 100644 --- a/class_f_t_d_i__coll__graph.map +++ b/class_f_t_d_i__coll__graph.map @@ -1,4 +1,4 @@ - - + + diff --git a/class_f_t_d_i__coll__graph.md5 b/class_f_t_d_i__coll__graph.md5 index 8736ae0b..03701d05 100644 --- a/class_f_t_d_i__coll__graph.md5 +++ b/class_f_t_d_i__coll__graph.md5 @@ -1 +1 @@ -7639ae03a2a3c77cae9f7ef89dc8dcfd \ No newline at end of file +ce47df1c759cd4a94063a5e7d0082de2 \ No newline at end of file diff --git a/class_f_t_d_i__coll__graph.png b/class_f_t_d_i__coll__graph.png index 68dacf2363f994619aee7c77f54550f252c21a46..074955e916ffac770dcc83635f2fbebf2a616a01 100644 GIT binary patch literal 5370 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 literal 4985 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 - - + + diff --git a/class_f_t_d_i__inherit__graph.md5 b/class_f_t_d_i__inherit__graph.md5 index 8736ae0b..64b84c33 100644 --- a/class_f_t_d_i__inherit__graph.md5 +++ b/class_f_t_d_i__inherit__graph.md5 @@ -1 +1 @@ -7639ae03a2a3c77cae9f7ef89dc8dcfd \ No newline at end of file +5c89ec39cab7057f56e7027e29a41346 \ No newline at end of file diff --git a/class_f_t_d_i__inherit__graph.png b/class_f_t_d_i__inherit__graph.png index 68dacf2363f994619aee7c77f54550f252c21a46..074955e916ffac770dcc83635f2fbebf2a616a01 100644 GIT binary patch literal 5370 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 literal 4985 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 - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +

Detailed Description

-

Definition at line 81 of file cdcftdi.h.

+

Definition at line 81 of file cdcftdi.h.

Member Function Documentation

- + +

◆ OnInit()

+
@@ -127,11 +104,13 @@ Public Member Functions
-

Definition at line 84 of file cdcftdi.h.

+

Definition at line 84 of file cdcftdi.h.

- + +

◆ OnRelease()

+
@@ -153,7 +132,7 @@ Public Member Functions
-

Definition at line 88 of file cdcftdi.h.

+

Definition at line 88 of file cdcftdi.h.

@@ -165,7 +144,7 @@ Public Member Functions diff --git a/class_h_i_d_boot-members.html b/class_h_i_d_boot-members.html index f1e06336..50710df8 100644 --- a/class_h_i_d_boot-members.html +++ b/class_h_i_d_boot-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - - + + +
[legend]
@@ -108,11 +83,11 @@ Collaboration diagram for HIDBoot< BOOT_PROTOCOL >:
Collaboration graph
- - - - - + + + + +
[legend]
@@ -196,9 +171,11 @@ Additional Inherited Members class HIDBoot< BOOT_PROTOCOL > -

Definition at line 201 of file hidboot.h.

+

Definition at line 201 of file hidboot.h.

Constructor & Destructor Documentation

- + +

◆ HIDBoot()

+
@@ -224,12 +201,14 @@ template<const uint8_t BOOT_PROTOCOL>
-

Definition at line 256 of file hidboot.h.

+

Definition at line 256 of file hidboot.h.

Member Function Documentation

- + +

◆ SetReportParser()

+
@@ -265,11 +244,13 @@ template<const uint8_t BOOT_PROTOCOL>

Reimplemented from USBHID.

-

Definition at line 224 of file hidboot.h.

+

Definition at line 224 of file hidboot.h.

- + +

◆ Init()

+
@@ -311,11 +292,13 @@ template<const uint8_t BOOT_PROTOCOL>

Reimplemented from USBDeviceConfig.

-

Definition at line 285 of file hidboot.h.

+

Definition at line 285 of file hidboot.h.

- + +

◆ Release()

+
@@ -340,11 +323,13 @@ template<const uint8_t BOOT_PROTOCOL>

Reimplemented from USBDeviceConfig.

-

Definition at line 564 of file hidboot.h.

+

Definition at line 564 of file hidboot.h.

- + +

◆ Poll()

+
@@ -369,11 +354,13 @@ template<const uint8_t BOOT_PROTOCOL>

Reimplemented from USBDeviceConfig.

-

Definition at line 578 of file hidboot.h.

+

Definition at line 578 of file hidboot.h.

- + +

◆ GetAddress()

+
@@ -398,11 +385,13 @@ template<const uint8_t BOOT_PROTOCOL>

Reimplemented from USBDeviceConfig.

-

Definition at line 234 of file hidboot.h.

+

Definition at line 234 of file hidboot.h.

- + +

◆ isReady()

+
@@ -425,11 +414,13 @@ template<const uint8_t BOOT_PROTOCOL>
-

Definition at line 238 of file hidboot.h.

+

Definition at line 238 of file hidboot.h.

- + +

◆ EndpointXtract()

+
@@ -483,11 +474,13 @@ template<const uint8_t BOOT_PROTOCOL>

Reimplemented from UsbConfigXtracter.

-

Definition at line 539 of file hidboot.h.

+

Definition at line 539 of file hidboot.h.

- + +

◆ DEVCLASSOK()

+
@@ -513,11 +506,13 @@ template<const uint8_t BOOT_PROTOCOL>

Reimplemented from USBDeviceConfig.

-

Definition at line 246 of file hidboot.h.

+

Definition at line 246 of file hidboot.h.

- + +

◆ DEVSUBCLASSOK()

+
@@ -543,7 +538,7 @@ template<const uint8_t BOOT_PROTOCOL>

Reimplemented from USBDeviceConfig.

-

Definition at line 250 of file hidboot.h.

+

Definition at line 250 of file hidboot.h.

@@ -555,7 +550,7 @@ template<const uint8_t BOOT_PROTOCOL> diff --git a/class_h_i_d_boot__coll__graph.map b/class_h_i_d_boot__coll__graph.map index ba4eca0e..662fc791 100644 --- a/class_h_i_d_boot__coll__graph.map +++ b/class_h_i_d_boot__coll__graph.map @@ -1,7 +1,7 @@ - - - - - + + + + + diff --git a/class_h_i_d_boot__coll__graph.md5 b/class_h_i_d_boot__coll__graph.md5 index de81f923..3625c217 100644 --- a/class_h_i_d_boot__coll__graph.md5 +++ b/class_h_i_d_boot__coll__graph.md5 @@ -1 +1 @@ -a19c6c2c9e133ec0ee972f6c6da3910c \ No newline at end of file +f259975bab1bae919945e1d52865d138 \ No newline at end of file diff --git a/class_h_i_d_boot__coll__graph.png b/class_h_i_d_boot__coll__graph.png index 85d7fd8e6187a4b06db0b1c4c3ab188d309effa1..bdb80574e67a10ed37618de1ce55596b4a58c63e 100644 GIT binary patch literal 13439 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 - - - + + + diff --git a/class_h_i_d_boot__inherit__graph.md5 b/class_h_i_d_boot__inherit__graph.md5 index bb37f2b2..22fee73b 100644 --- a/class_h_i_d_boot__inherit__graph.md5 +++ b/class_h_i_d_boot__inherit__graph.md5 @@ -1 +1 @@ -0163fec2b92b9cadecd0eed3ad26c28f \ No newline at end of file +33a2d817f07a1965ceb3d476c83e4fdb \ No newline at end of file diff --git a/class_h_i_d_boot__inherit__graph.png b/class_h_i_d_boot__inherit__graph.png index 357fd5a2e7c48562aa0a3117830d3e6847b86529..a959492d70e2ce206155c6f013a0f11703b86fbb 100644 GIT binary patch literal 9283 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 A4FCWD literal 7894 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πN(P6K>^e6Vq56f`1sP_)d7!-?S_2> zq4Dg7>ds#0j)1Kp_E zr8Cu`J>nrbHyYac5h|=<-s@pS`+0Hx9O$(H_z4Dx%+T8#^ZJ~nom=8Hw!P2O77RKY>phDT;eJwlciP)(zC*g%n zp{YX=zx^)Cs1#$3pUHN$`O7&SS~2$b7f&0kS9hqB(1w zxgs}9Leh<0-;jEsQH#1h0~7QKfTxMmAkBipFNqsDF2EphW%*F9+ZKZj0_DHGLEiIK zG?xj}+bo^wU*;QRCKv?X1fDMDY--6iBDMhTMJwhs!^Z@DetRzlCZB`B2fxMzHtb&M zOrV75eD*V=e4CD*ShC#)6Ot<8T#tq(Xq#-hq?C-i*aGG4 z4gNP2{7+Q)|Jm|O65iJrpedcKvBamMqT-~*hP+T#et;&O{X$om2+AHI7x;jfRhl(X zPn0A#B0QXvHkh&fY>oQf{rd)@IKB5AE{?a8MO};Yx_Fbm!Hy9i1>8ZqIN5D*WQls9 zBP|`URs*#=P5T!#{!c5Cr9T`Mc6ye9MFN(B2dPGeJ{c3i9vzB?wg5R~IMW@6-Fd89l}E z4GB%udt$*)c^mUE z9+JHQ;B2zhvu4PRDISZPo7>}PTxTCu(E-b!7$0YR{P+RL2R%Rlw-FJ*!Jsvv9f5oI z?rqEl6_%8Abq3uh1oHvFJy(`{B0+M<=tSl7tnsv;-UY!|K}iV<=?cXKLPh5`Y7PdUfLB;BuyWa%6=7jzU0(fc(hEo%uh*fKg@wf%P-IYu zx)gSza(UK>+0@@`O;&MDgHA}@<_gztg6{fs1>Y7V-Zt+Oq$)(-C-gWzH8pZQ!+VIu zm(qM=I9s>gmXZV;Lm`?fgjURrL0Fg~A|gT%n`zLpWAft>Jt?B4D~;u-yW5 ztRMDl!T&~Ld1XalJr{7406?Rd`T0k)&YBV6jX_EQC>j@JP}@VVT2f~)b1^hBGT>Za zUJfiS=E$9a2fi%oF39xz0HzQ&Y7WgnhulgkD*V>qaGFL&xL~-Fc<3qxXlxX@vBw>r z*1fxb|NgD?I)ZIY*A1)QI(_GB8-8|J zSXjOq7@#<=^x_U4)UTlu($b;;DeCU+%>hZDLdc#b!}nM($e&_X8vz`t@!bmMEk;aw z#qmiW@ZoU{7Yh4!5= zmAq%_>Uh;PHJZA*;Q;|?QPe^^@6T%$e3GrRz>o)rT2OV@hmDObI4o=hxOR#)cx84j zu5s}Wx9t>UgR{YbJdKR7se5tJ;+;-36qf>i}P5r^vOM*Dd!G!3Eu4lu*p*Hl(k{?XqLJKC#g zZl(g|9|$NTs@^+I>y>_2ULQYy29q%w)I`OEXu~Md2NaPc`d&>{*I2~0JG zQ&RQ+4`kg;MKi-Z6?op~&gPE%s8=9Uz=X><% zp0@MDtba@nDP8FnWl#t}!}EtYIXP7w(kUHxXA>(bcye-c1;U8x>gs@(1!*rhuOVbW z^@o#E@q&F1_}4PPbF3marb-Aj$Ia14WnSz6I)ZV8;*(9vvGRAeuk6Hp4`S)1Vm^K( z0TpZV?P=M$xqAU}b^QBV`PZ*sS-{AW1?^I_)8UN1n_^cZ#_Jt-@7|5e$cPyp9(JSr z8B7wW4vpel(RJou=~4v+71lM36_rf)yFfi^^IKn(-aR%>D9k6hkAnE#?M4|;rTouj zNmI(>PxBAQwcI=3L~SBZ^=bsQ4;}^patti&J}xe95?%;jCm7f!^O^>Bx|?oFm#(j? zM)4uBuSJN>RVn@{gMC3GNx}={>!llxzd;X)cvkbKBL@o%s?n6?)#b{cy$SpejTd&E diff --git a/class_h_i_d_composite-members.html b/class_h_i_d_composite-members.html index e1e1749d..07edf329 100644 --- a/class_h_i_d_composite-members.html +++ b/class_h_i_d_composite-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@ - + - - + + + + - + - - + + + +
Inheritance graph
- - - + + +
[legend]
@@ -111,12 +86,12 @@ Collaboration diagram for HIDComposite:
Collaboration graph
- - - - - - + + + + + +
[legend]
@@ -223,9 +198,11 @@ Additional Inherited Members

Detailed Description

-

Definition at line 24 of file hidcomposite.h.

+

Definition at line 24 of file hidcomposite.h.

Constructor & Destructor Documentation

- + +

◆ HIDComposite()

+
@@ -239,12 +216,14 @@ Additional Inherited Members
-

Definition at line 20 of file hidcomposite.cpp.

+

Definition at line 20 of file hidcomposite.cpp.

Member Function Documentation

- + +

◆ GetReportParser()

+
@@ -268,11 +247,13 @@ Additional Inherited Members

Reimplemented from USBHID.

-

Definition at line 83 of file hidcomposite.cpp.

+

Definition at line 83 of file hidcomposite.cpp.

- + +

◆ OnInitSuccessful()

+
@@ -293,11 +274,13 @@ Additional Inherited Members
-

Definition at line 71 of file hidcomposite.h.

+

Definition at line 71 of file hidcomposite.h.

- + +

◆ ParseHIDData()

+
@@ -347,11 +330,13 @@ Additional Inherited Members
-

Definition at line 75 of file hidcomposite.h.

+

Definition at line 75 of file hidcomposite.h.

- + +

◆ SetReportParser()

+
@@ -385,11 +370,13 @@ Additional Inherited Members

Reimplemented from USBHID.

-

Definition at line 72 of file hidcomposite.cpp.

+

Definition at line 72 of file hidcomposite.cpp.

- + +

◆ Init()

+
@@ -429,11 +416,13 @@ Additional Inherited Members

Reimplemented from USBDeviceConfig.

-

Definition at line 94 of file hidcomposite.cpp.

+

Definition at line 94 of file hidcomposite.cpp.

- + +

◆ Release()

+
@@ -456,11 +445,13 @@ Additional Inherited Members

Reimplemented from USBDeviceConfig.

-

Definition at line 340 of file hidcomposite.cpp.

+

Definition at line 340 of file hidcomposite.cpp.

- + +

◆ Poll()

+
@@ -483,11 +474,13 @@ Additional Inherited Members

Reimplemented from USBDeviceConfig.

-

Definition at line 355 of file hidcomposite.cpp.

+

Definition at line 355 of file hidcomposite.cpp.

- + +

◆ GetAddress()

+
@@ -510,11 +503,13 @@ Additional Inherited Members

Reimplemented from USBDeviceConfig.

-

Definition at line 90 of file hidcomposite.h.

+

Definition at line 90 of file hidcomposite.h.

- + +

◆ isReady()

+
@@ -535,11 +530,13 @@ Additional Inherited Members
-

Definition at line 94 of file hidcomposite.h.

+

Definition at line 94 of file hidcomposite.h.

- + +

◆ EndpointXtract()

+
@@ -591,11 +588,13 @@ Additional Inherited Members

Reimplemented from UsbConfigXtracter.

-

Definition at line 297 of file hidcomposite.cpp.

+

Definition at line 297 of file hidcomposite.cpp.

- + +

◆ SndRpt()

+
@@ -619,11 +618,13 @@ Additional Inherited Members
-

Definition at line 413 of file hidcomposite.cpp.

+

Definition at line 413 of file hidcomposite.cpp.

- + +

◆ SelectInterface()

+
@@ -658,7 +659,9 @@ Additional Inherited Members

Member Data Documentation

- + +

◆ epInfo

+
@@ -676,11 +679,13 @@ Additional Inherited Members
-

Definition at line 61 of file hidcomposite.h.

+

Definition at line 61 of file hidcomposite.h.

- + +

◆ hidInterfaces

+
@@ -698,11 +703,13 @@ Additional Inherited Members
-

Definition at line 62 of file hidcomposite.h.

+

Definition at line 62 of file hidcomposite.h.

- + +

◆ bHasReportId

+
@@ -720,11 +727,13 @@ Additional Inherited Members
-

Definition at line 64 of file hidcomposite.h.

+

Definition at line 64 of file hidcomposite.h.

- + +

◆ PID

+
@@ -742,11 +751,13 @@ Additional Inherited Members
-

Definition at line 66 of file hidcomposite.h.

+

Definition at line 66 of file hidcomposite.h.

- + +

◆ VID

+
@@ -764,7 +775,7 @@ Additional Inherited Members
-

Definition at line 66 of file hidcomposite.h.

+

Definition at line 66 of file hidcomposite.h.

@@ -777,7 +788,7 @@ Additional Inherited Members diff --git a/class_h_i_d_composite__coll__graph.map b/class_h_i_d_composite__coll__graph.map index 7bad2110..d7ae0f68 100644 --- a/class_h_i_d_composite__coll__graph.map +++ b/class_h_i_d_composite__coll__graph.map @@ -1,8 +1,8 @@ - - - - - - + + + + + + diff --git a/class_h_i_d_composite__coll__graph.md5 b/class_h_i_d_composite__coll__graph.md5 index cb51ec95..8c822c0b 100644 --- a/class_h_i_d_composite__coll__graph.md5 +++ b/class_h_i_d_composite__coll__graph.md5 @@ -1 +1 @@ -cb1afeb4ef0790903388054fd3bdbf40 \ No newline at end of file +53a6c18af1475d71fd895b0881f48e79 \ No newline at end of file diff --git a/class_h_i_d_composite__coll__graph.png b/class_h_i_d_composite__coll__graph.png index f1ac41c279080edf80d08f35d407f7aa7e1b19b2..76bf03c9567ad5020e2939c5c14ba536202d7896 100644 GIT binary patch literal 19814 zcmdpegFrBS3rQb9IIihv-3gwiG54GJoalprA~rF7o0 z-|yUe&U4Rq?jLaV@lo7+tu@zNbB-~7F;=9mwi*F04K4zKAka`()<+=Fr4R@-HtehL zKVNS#Rl{Fb?QW?lBQ8=8&La*s5T4t1?tTAuKe zx_}Uzf`z5Ii!B1V_f(lB^u>!?^&?in=icgUq+MNI`7ze@p6qO-IC7`IMXGm$FV7|L z2?+XULa))#MBV$EHs6=Tvrii!ror|S7mJ1ag$5zXT1;J?Bn&)1rvKBYwgQ8^zPG{K zv(4qTwY{^=PsVzDH^vF@D0o9!Tjhm?g%OB5ckaBF_U2CJw~XSqY(OBc;bOvx!+kcV zvK;!8{m%EllhD!@8INyH*V?+fmnPddI5^mLgyED|SF3D{m&`9NJ{ui1to{`h6=mb* zX34Q!UM|SS!I4aj%;$v(&6POW-!NIO`8znMySF}8^ra~wA)zklT)M_}^69MT<1(ulx9J*N_&Ne;v z+p1p~?c?L;?-|Nbs|Yyuym7uavN}=0YFum@Iu~?GfQU~|kKWmNV0!1ySiKxFP5Phd z^50txO;4vYN;EPyra;|NmQqA=sxLf3Dj6SM#Lur1bG(U5h>(Z~tmQAM&oJ>QY(Bqa zU!AG1oZ5?zC+4-NBi4LR3g7RJrI*?1<0(Vla*;@R$wD%gb|~ zSsTfNp%EcMa&lP3-KN6Gd5m8*#?;r>{~}a2q{#HsQugm`YeRUn9CM&wxiY`C6{{3M zIR8Gy>goIU@23J*1~SzY713t{{@zBkAxT)vJ%4FhH2YU;u{=6I@&0sIc&6@QPRD+! zc`f0iYs*%VH_PF&#w;U2nq}9zcJxX>KGa#Y0C+7*k2#R#>Q57@Zdpp z&Crh@%`>}-NM}Bs(N{Z~u&k5xa#RaWei@D%zSrd%EHvVQ9pdNbhfqi@l7h$91CQdt z+0nz_)3rodSy{hIA07Oj^xOG~rW(gUz{toLO)o>i7_fu(`}c1{lRKV|9_bkx=9=A` zYYBv@6M^-Ce6;c{Nu!jTl%Ae|SvfTn*~g4TdTA*rgygTS;e;S#V=36#*|XvCFYK+2 zWUIWOV3Crl|FQ=gCDMCiJQAMSnBbEG*ZGBoZ0_xg^V5#uVf}#1^Fu{!W>`0TQ&mo^ z`UVC@e~(U1qL4`Ju@zXWcp@Sq%!!{dLWDchr5=S5D+V0@O360J(_Z-VtDoFm$IHtr zRobtKz}x7}3A=L``eO(pdr^km-7wvPkN@1gae4OFL3$@cE|5k;LxW1foi0tnqm-tp zx%uJ7IN#a%;T$65b0TNw*RKSL9JkSTR-I#FVhGO8&y5_&VF$q~#U>)^oeRE<8IU{0 z7ic{bzJ{xkTEsgvG<0I+Zeb}+qL2Mf})~bU*AX=DS6)rI3k9NIb4N!6X=Ol z-;QRGrJ6xTOM<+RrA>z`*dp(^FAF0l{zG5^dibI}i6%h_(6ouCVKD z6SY9g5esVRL{kZ&zY%xqSo)kO=(04&M!#74iZ7C_hMYV+R@+tLVkv(8QSo9AO4<-Kd-|af`D)|?3PsDMF81K0V(XjZVvP8Bte2Y%= z*Ww38976i2e6JuDXGv7raK3*1IvJ%vPr*qoR}%Woo0L^_|p91}gfI=46b>B1# z_mF2;lXq2e-TpZ!zwlc(t_sf6r~Eqw9m;0^jO@9h;>FV}+h1iDjluF)Quu#3y+b1N zZ~XIpg@S964}J<aA9cA7w2`4RtQmL43sus-pZJ`wfw8}S!jQTCF#G% zWoK_M6nL`dxl-@D%>Wh6^WtJ&$XHAwB9+=gX>Z=xUz{C#b6-I~88+Db#8=d193P@* zHxxnho13Vdb@r!Uz?)k}OpKgX+_mjjf69i~@&|3o!#lO^Kgw;|(T`3~Sy@@HAmWpf z!lBT!gD|~1{2mXkYwO@(ly}sZQ{cI;5tuQ8RKKEp9SsdFJAEh#ohdsfr-;tO)|UC= z?5|GsW9_%n?7ufRdH6OUuXS{EWcTeuCcedM*-)ig;nEjPEzlQu^Gz*esipT_3wJ7+rZg@-(s9mICk#=T9x|Z4oGi&ee9_!J1ZoJQU9kKU&lI-Eb zhe`bRZEO&?ZuN8bX9_#u5;DpapIBH}L_<<)|MrbAIXQXf?_VW7J(A}{jImOWmh+c+ zxVfP^VGla~MOl3>?Bz>RUh^9KgM)+enwsZjWo1)I*-?F146>IFJ<-$-b`}j@*K6E= z6rQA~rbgDz`r{cJ8<$sBcFxp4(la&1{yF5Zbp?yCt+VsW^7682g&k&y+Q1ni1Rf?j z*YsY+^>egA@AZ4Q+Hx%>3#q(z4N~;P&NiFXQ~u z5{8S5i`H9d^5f%UgqLsT=U<+#(=`MT$hx62u5g0!ybSEbj|H5k2$NelZ`SKc6ODs!`4gkZ{NOEPvynzYHDk1$3p#aZ7$$% zjJlTAHJC7R&w7ic<>kWl0*|>C7Qhhc^1)Vhb#+Lnhee|TYhZVvDFmGD_Bt=}aGzFx zw<3e(kJ^}u{3$Oq5;-Dar$zo~^uH-zqT3=d-<043=;HDAAm3*}+gSdod*;?rl(0Ao}-%jjg>C`dcp^)WekHd*ar zvbz{3Us!T~AVc;x$LG&qzFbpPRkedv0+o{q_Ab}19(Piqe^hj|As;Oj6_>Qn?+LDh z$#UDyFf9(U#ojm*T5G+@xY|nCx=^nx88O0{jJk~`g{-Vz8Vm_pTm3LLvDfwt%g=md zc6$Lpv7y`kcMJBgd@p}1D+Y9Qbf&O>un3?wh|9J^*(wgwYbt7LO4w-37=Ql!5%ie7 zu?Nebj|$=rY>51mbU@4iH}bcfSLa&g7Zw+7U0tIA<=8>p_^H3YQ%C+h4EAD?*5lpX zT__>-1AV-`yJ5tIymK8L=um-oSG#=gdqvH_5WA8Y%m781x~8V$!-o}SUtp;K6f9k@ zEGgkb{zD$jBf<^b5jjYkgDAtxoqh zu)-DfY$tnqdUg&E)hsONUM42;#MqB~xDA*!9(4~TQ=i#cS(Wy)TPo~(3xjww9xqc@ zlbt8_%TLxYkdTDx$Q|dJ{UV|k#&G#w%4e`#YT5Wsm&?Y^4xN^k7KOlC0?ox_IXJFv zPE{KOCTqIXypZ-<4Jk4yD~xFjI`@z18#Ee|`i6^(8=sjO2U(Ko`gI&KPVKG`v@4@0 z`YI|a1s5&e8x)Wq&{ntPo&cWuppzLZ<}&^cmWe4uPY#`o=&GtJ&HljjyRusm;*XZK z!otIC7kgp~9~VmZ+$#G0I@t4V%-hoR5oCU>ruB5eZIO=Q_qW0m6B8x9R^yQ|G32f1 z2XA(Ec8CF@=)W2G{@tXmp&`mT=vYNrMJ4k5^za3xmEX-T8M5YLLAqekK*N>%s<*@Ahzi-3Wzv zg}m1dnY(gs9YOg(%FoZg5WyIv%lCJQ{RAiv9A95wR0u4!YUZ{II(FFIYTPz1Is=je zC<;CZY+aL;_q!n*cdIc5vayjy9+UX}OiX+4^l{rA`3OJ9)VhClH2rJS9eb#`#Le?R5AIX3g~ z@Nk$i3yE4R9SLj=I{(v#c6qt37?EbRCBzeK)MQam z7|-9(k==i_v%5?3`SWMz4IVBoVv+mbuDMNB!KV}*@JvgTmH^^~7Zel}mOUk2mnRMn z54YQzsn3Q4*)cO?;rHZ8k+)V!;TdEgp?hDbhFSuj*g89NXFS=Gs=gpn#7@Y_;OEeK z&16>V&gbgp)(tz@a9{5YqZTv6xuehesK)EGw5Xu-lSp7ehCVv<_xadTH@sdlJd~Vn zeo_mp0x{HcWN&4BDS%A6rg&zcbMxlSj?bSpfPaak7P*&C9}E>>(9t}W?cKX)Z6uCy7*k8WMs4Ky5~5`$zJLV&GI27Me2(Y8cbSiTO%Sv}4D(~iZ+Bp^TpDWS77f@mm9 z2@BRLVdcHA!~f@tHZODT?@RY*w#}u|slV*X2%X;tRc!`A2y=Yb~t+Xv!1k@rbz@CY< z#P-FCIV9tE*P1De3lZt}v&8f$Dih>&h!mxym?-rOVW`{K3Sq0NY7=K;;Huz8y&%id zy%DCkOWfUEK%8wleN(*dLqNL5d)4xqAj&))EGB_%=P|t13aDY6tIkkdj@0;07judNwEclXV~kMARsb2x5K*8k;Q{)+cBFOTeCJM+WlgS4gr)NOAlFkFHrfuNtMCVvJ5G1 z78ni)-O?N-%UoLGrIYa?_wh;Ada$Riug}46fqX_B5*msjf4(O%`*?-iE#kcdZl&gf z6+;fY*bnnt^}jFKMbWcIFUj?<;1tiKb^apYkW@ZF`kFX}zPLsEd*+y*jZ`CvKAxTQ zoeCc7myC1gP7F1Ig|^UE8=IZg4HNxrWndln)N&bLmMtx$IO$DHZVLxpaxwT0I4Hfs z#&(#*z(TO;zdKYrKwJhhp?LACu8|QEmvO(W!pb6LmiCVDXSTLOO}6McS4pmU-Si&Q z#%2=!!*6HL=qy#(GcYrYO}!gVta(GzRg>F2CPh8;e%@q9abV@u=y)Uz@F;wL{`fNl z1qJfBJ{J~@hccE#a~Lg zJY^D#Z)?gSY49_bFm+WP-Fdy_IC*wlX8$REEBru8#22__VZ~@KtqK z6GRaf?(f94v$$?5v_0li$+hNv8@=17{{*S|k&Zb;u3tvMxy^^0C9sE0tsfrncnR$b ze#@z%^BouimEb!OaW|T{L{5*N-IOMFn^UY@+|K?3!$T6Gp_K1*U%jGcq)d6b@qOEc zndN*@vW;}y{VTH&m&|Qvrkl03u7m4Nav7oOb3&ho(7vX9E`PMrSY9FYOzU8^m=~km zbyBctS5@Nd;xs@jb(j|T9<@xl%=x^`iQ*ws6=gOiX6BL^C(nAcr_U~(ejb( z-cmn%weeWc#RFrF>@Z#vKV;c$Y4t*zb`w)wnc%rbY^>v0A?CsFRCHEItE_Ks)JsTv zIT9cQ#l^dRPhJ7kgSY!dt+EvH<^ZqJ*$cN#$M@PFAu)#)_g;km{>{7!0`RS z&9#Kp%n{;~gWFZ*3HB5GCKGiM5gIO1C#60i#Bp06*7rV;PkDJ{ZR$qmhweo7N^{A| z*7lkAFrM2yxBu0b36H^Myx3%S++3h2qgkalM1s8gn#^T}t z*NGk4mdgv@iRs!7HAVuZ?b*^P!WVr)9#+IYTlmkiY`f(@0tYQ9BBH9?73H~Im-CVI z@>~1Rq5V!@#KG!dZ_`;SMm&Q#;zg_~0WBSg6Imi%Ak;ld0eeF?Q9J+q)VJr)uTEQ! z0kyG>mzIqk@u{hK;_e&cBda653#nLulAvw zN9A`v6Jub$RU61CDt9q4O{EMa1uj;GL&{&BU!qNByXk3pc{kOK33@z=-<|JnZonfd z+8hMhjs`!GPWGPd5FL*(es2P6rH!jAGD}Iq=Fbx2gKevZ8YR}kgnT8ZqbE- zRiA5UlMU8ClA)9Q8L>Id391@evwum?RJEF}=_eEAcy|MCj0@AGki`B4-Pd;xjHr~A zlWbp(gzat5QFH2i>pa~iYO9^gP>y3@WaV0YTGPqGZQ}kCJ>p`UB0ET1Wp0en&sJ5& zEkap220t;Kqvw-)tkcK|NCB9BYwVm~((AEuRNaJFg0=VOr zw*_5$N6H^8T{%PM`#|=1_@hBKd~k5hwAP&$2;|5NSraI+=icd-UtSTr!5s2r<>T&e zLvwu7#ZOpgBzkWJKQn_o5>2yD_btOR+IMy>Qp_dx=iKE5e(Slp}W*WN9eGAZp>Y20sJJ=%n z9KU}<-}oMb$r5lQ~SQ90g+;FA?M8AE@L4t^@>1 zurf2F?$Um@Yjd7&ibm00e|K%=;iKXC&WNGejWn&*m65Ij&iY=@<#=MoeBtk>mX6EO|M6I!2 zMn*+<_pd<#`A&LENk40kDmoK>E?6 zNAtgaVam(PcXfB$?k;ruoo?19q@?7f-3L`w(sKzL$gXIVOvqzgoIiH(ugg~tSLWee zoX*vo);$pP`F(Un_DQKCBv|bBZxp%wA}t84K#zrsZr7%RB!d`tBJ0X~1nKGNJ0Rsi z=t`OZma+P~xxPMnfgx_VBAS7LLDT-YIWRU66%`fE8KD1=0)R#dmnba{0|R5!>n~D0 zLg;grSz(7vNY03-dFMe3lBz7jP`BsL*40<5sUziUJTk-NFPmagtjr>-UE<#5=bOSUCr`+^ z;0{P_GAE5~rHYE&`=S8Ly`!_U;=#Nks=P)BK3q@+f_8Cdz7zT4Md$8fFG?!MA>(KR zy0|(3=;I2P@BD1+?98B7>lYZho&27x9P4A04+{7p{u=2Or8SKff3Y^#Dq701KF<4dYYUVCi< zQdEs)!r+zYYWp+%Vl!{5(?e?rj^9jM0;nu3r=4YZ-`cvI%C#K#P%1qaL<`V|+lMnw zB)mngqlCCzJ-6vJ`}32BfR3p@_45Fu;Ih+>6{>!#e+*!U&b7yy*m4+ekY2=zbj}d< z53mW|hE}`u{`_uT_VZVYd^;*SSbVYW?crsuK`@iKGub^kZ|NHQ@&(`EgI2+J;mG_o z+m}iN%ey=*5aYr$68-HUJMU}<2S<@{xcDDtO4r8A0$6|?{Am;J(Ymi<^Ye+ix_T#1S#ifp_V!QT_)+*P^y!`*-R_H? zBu2)CB=&>V`qk^|zp5K$(~;^Uub1M-o6kPt#WK8o7AGG>*4|FJ+sA{-k5sQTXYb_P z`nXMQd-;0fQ;=?$txQJGh?2RJ3>!HvI;?}_rvA1g(M`}qsTiSo*iM8SGmU8c8dRJB6ax#_4lca zTjBn}0~Qv`Hns?_mz9+SL1zzzQA@u+g$!H-MHN1qB-beZkdr7Y8^YYF=j}t{%+uy; zdy4sNXS0@bD5tj<8@Hj2bDoq$FA1*s?LQ*MPe_qRhpjU6=ZA+jqxoeIH>U#KB0l)O zVn-;~^k>@a}(BO;1eg%`7fBCT6_T& zFO~>rdhXb_Nvny9EN;##=gPx;Sd~|c^`7i65?>P~C@7Gk60{*m=EYGprjQvjURpgB zs(U0&Ru=dxY~_6VW=AC&$r^RWxO&;%>U>y^+KSCr8UeZ+N0c{YP3-Ode3rFgQ$*t}HoSL05CX^@TrM%7yUqp z?)vrt35n5jn7-?A)+8hpHB`^8*4vL4H&cnO-m++-%G(@VH+mRK$|)b+8NBkN=NvD9 zMU+JBHtbN1kL8ZB^c0-4UUFj(;a^ZN!&VO3HjXYwV7(A~T_OQ{>T{$k6uR zSjWSs1vN@wuEOPz8qM`y8zyXTznEwVB!&7x+{)jHeY{lmX-9{hTZA!>@3*@wcRL8w zb4jC*hREst-?+dIV<~}%f&m51H((Ku{VvbZj+Wmfu8yo2ob8RwO%WEIU=UZx;;7BV zwHwHq+kG;od|l)6VKX0ztcubg9J-{U{w(BXW}PnAj2MucMl<;EyKQyIdhui*Yl^T$ zQ!irV!R|Dc-{X0M)#j!vcU8}v$w)N9tChX2em;DFz=%J;(GQ&;JF#jd3x6j z`ApsA^@xcZuv7#e8E#*!ZlpceTHfPH!$^T8feEFY?1Jy; zwS)%)2o%^Lb%B;+19~RpYF+c?&siW(0l5hN3ICYyCbKJ?SnvysG@uo||K|OUN7G|5 zQOP?+pv=8r1Q=*jQ`1rQ8PzQ2*xG+909%XD8V=am*@=$ZT8wyGCoVSg({%cVYY^(u zA4AFpt`!(Rc_1gB@tM~!f${`=lF=IhP}M=yL79qT8Dyg-CQP+5<(jSR{45TdpB$Eh ze0SHup}n(HsVw8|A3xe#MElqOi*#FU5oqvskq`7*kQLN`eJcm)2vjQu;BMj8+M)Q$ z?p`hGotdG70tpKNJaR{0pJqRatbXR)euJxt{c-6Ig=e-jE)GsRuv{p~7@+{FPX+M! z(Tws8P-g0Wz3Ov5?N`n}gjap10x7G4PKOu3XfvF}E4OG;7!p&cF>i36pl z(dAOot5-Ilvx5CHqPkivATV&O^oEgfiZ=%`Ed;1uy^&6Ol(($ZGXRW6C@PU*n>R*pPsahPMB^A<8($N)jn;1-+8&u!+6!mTb6D1A; zrZ#7os<6-+u`pU-Q24n2^lT}J$K%qZCKfJ=QX<4%CzxP%!ig1^mX@&J>)&yBxwx>v z0wS0ZO0wga`SFA2$84|YxnEMUkv}13zK^Rm6H7==Nc6@Mdf1PeyVQl)>`nuVcr)NDKD92RNUR*b1 zWh(&kj8y?KXY_Y`QTRClt?{P!IA$VUHZHg+Sf!=S+-ClT4UOJzzS3kzStoz>kyjtX z+W$B5?1sD_0_9eGck`L3eoZNup8o|l$0D0==sS(&$^RGKmH%J5Ymxao|NOmO@w=ah zi!B>#z63P-Y(7=Y3W&Q@RgNsZ;Om(yp7&&`+LXwzFXfcV84l+1s0^{Y%_uOlnr{c!>;1MjEgrsF|8l!M;Fwri-mxt;Tk% zTQ+K&&aKC!QCJtkD>JMqFhRy^zAxPNb&`^jDr{|TZr()+UE<;t-%BllN_uEr_Jrr;Kc;DZh|QzR1=@`7{>aHo-Pj*B=;-ZLW8>uf?)Ze! z=;*?dl9Ip&K#7ToS@^4H z$i4GxYuC-H9J9=P!Ap1v%I~&^^elr8;PvPb63gMs=;LM z_xSNx!H>oQDlzA4A!@YkA9@6OcsPNCT<5b%i>`g)STXmNOEU?n^hbljQ?D%l|O%?rB zC!9lhqp<(c`Fs2M$FN!|GBI{Ij3%MTWPASN9N#Ts$kB2t{gZNpZhD!ro=;>==ew)A z$8Q>tds^OBO?myf`edf&r`hkAD5Rt)buH2h6ZWI&r1V*T$$f^E4LgX&dca;k5>3wc zlzef8uy_BrJgsXp!5Zk^Q-n8Hu){Gh4|BP+1Qq5juPn_8g%}c6WhP&75^+;gOY7le zFi3m=4J7HZPmHH+M_)X{T70n3bp=6M*HEK;d9nF()zP?Y1I%g9^78ICCm-j+q{bv! zCM-;UO`sj6cy3u~bC!0`D#|Q1#mXNC3^(7^CxPG`^DoG4;ki!wsi8zc)sRFu`3MzG%9j`6lS<0 z4kBKYofsX3mX|&^1J{AW%37bCGfK~{qWOFE5p_4FrUJ{&%K`eqthoA`&TKP%3OtP1 zy63;2gp+fKI;e-p@yN6}y>ochr7j)1UCQDdeRg)z-u5%Ie^c{)2r>HM_I)VGi2eL{ zyFna42_W5E-fCytsa*Vid#qrn9+J;OllI7&1Y7XGvQE2Vd^`Ba$q4rw$NQQ86h9XQj?lh$pC^?Q1~Z!QxQ&?B!=9Wio> z*4kp7eTYVl%vf)Z4iWzu-^RryHt_UAdq=j@tnizZLWKqEdg5PRtqJNFcEK)Ffk`wu zM+T|bG~NW?59GT<65WLCd^wvW8)X@O*ze1eh6b1Ugc#i?+r-qA4n>{UWOj_Meg;uu z{w5m;z1Od)oUaRSHU^5)lY5(!YT{%Qz87;=rK1iDpG@~&Nz!;e=dx)Fr?QBe=w#RWw+XjOT5guZ@#7Ze<^;*ziB_Xn0Z z#$1!UYl+c1OVN|k=W~T|G6DxEw#bfi@;6|&+1$HtIG-eis3Uoao^rE9{+)I1c;%u174-6VxtKbWNbM8svJ(|RL) z?}%OH+vL%CfN1kJb>WcAeQx53-0SL$nEce&7m;J1nld^++w6rJ9B7^xSGB`qZlAXd z8c@D9C5;$0KXzWk9e!auVS!sPFW;IB&Vj2Jy(ApQO?VON13N#Aly7&RpHfqat-Gkd zC&j?Lt@1{kubN)}+37`U>!5G-73qW8K_9L?jI3*QK}?uF0@Yy!ZX=sqI{UHE-*G#< zq(n+l@r*fz)@F5ZzwS}QSJB)+4H7BrgZjwwfo+yu{n(mLW?7K4@^LCY3IjcBSmkIN zCNVdItgE{Q0^V&yt3vcV`Icvyv-RQkK3t{Rwda&1TEG)62m*rD*$(_gp;xdzv`DU@XJ5u$jF`ITVIrxk)m2xn25#Wv^?o>3b{|GHy4}_VC2FE_MHVVs z($42@Z85Y&RrI7{B)yb93uh;%tHM1rInQJ|9}AYv#xH|F=bR1X8!@pUIX}NRmF$U& zMQf1tG_xMr;Q6LF74<02K-2eRfp2UvizKR}VX3dF?0RE;hYAw;RHG-5w^FtoW!Q!v zm1KyA-Z{Mo4Tfphs4=8hR51H&1yByiZ--RaOUy5HOM-VqXp79vW;QfX9+`$K#~Fb{ zAfP*gL+1i5Py0s~k$lq&2HAAfP!;dsgzGNx4E1$`!a=+%C8fNFgw_re$(+w>h(cN}D2# z^s+cB&G`_WKAB{y?ryQz{uEmqlChV3nT zf;ur7nL)|p``^-W@bJ$4-zwh=V2(XfTU;%ss#=>xx5AQHO#SS}oOFx3_zmoHbvANN z1s&}&jq~wvxh-0MRPIlLwABrpH8d`c6Lq^0L~4#QxvG5s$;wpIYc|(=bCI8_S}O&a z386Ut<`mx$jiN$pPiL^BgBSn13onRc5UwKs(G+8l1J~q6~89~IT z3a9`)i3CusLd}_M9t(CESh_#w=g~l3EHR4}b^r3MxRHAHJ` zYak$MTs|F=8dsIjzw5Q9WdtoY8~7vinK=_LODc{;M%Y7 z-Y^ECQUzLVIegJ@NIpTQRpDk)*#(cQ+Z-iy>NVCV6(nun;E#Hp&BeDa#y|Wqk_8<88P$<5-WDWSQghX7qVivJ*s+L8wzmXWfq@<})DZg$qb^?is z?#3@P^oqaO;s2W<$l%S(_D)Mpod>XWG!T68 zEKcqOd*H@jdFf}l1B{Y=aPY1$r%oA^2?dCn9 z4!PDBnH)dDn(EQ4rhgi4U|{7-)<6CNolPVp>%Lo-^`7sC9SRLv6~<1hve^pq^RaPj(%6_nbvNZK)VDp z+{1k!q>p|+BO<1yeE|kl+rf7?Q9Ho-1Qce7$x`c3jr&$-f+D-o0p{SBPTVQQYp)UpR_;UW(dmF)uC5eb`QFCP(3yzzykt7kLvm` z{diZSq`&|3XT5XFF}V_TcX$3jRr?8Q@CJb^sP_W={R@o{D3kj8TPf&>kCl}|L1%ub zxM)&p(GH@-&y|(DX9Lf%NHZwZitB8{31JV@*-giNv zM@jRx_V%o}czE3~bt=Fjg@I(Ub8tWbEP+v}0XDM_H2MIMpbX-IGNgv?_GdARG9#Zb z|5QUiHzyX6)zj8Xev~L^RHSM=sho9tPW~??_}&zHFUFoUxcy7Pe>af#IeUgQ{ah4{ zVY?m)~eBYN?g-V#I1-p{`h3_f{` zmjngHzg;EriAYGG+iqzjc>FjVHd4<`j*({m;D1Vy_WY^8Z&Fij`(9nAiAEwtBcZS} z^w3VP3)M)hv1<$AKU(Kue5>V^#-d_{v&3-~>YMzmUA`so(w^)+?B4p3xI69fUC?`- zkn0-z6k&k|55Mlh!UwFQ-D;jsE#LjDsBaotL(i*T^PfGhuB{)J5p%(klGV{e6_UHt=zu1(Q!7tmdiy`BY||@ zTD~nw_H+3IQPsG|o3@Lyiqp3L*z#D0i_L3Eh5YxvuMW23%J{b68H}vY{ZJm`e1+bs z^+GkGWqDOJTa2wKCKIqYiIbI=m#}Kg360y-Yuka0>w*#zC{a51($5#hoROF)25#i% zOG~bPkKIruz3~EaA|oui4!xxK4U&cdx`~~M>1E8A*}53-+&QKaTHpcujD#Qlio}eP znPJegvfA051{u8=C`+@i+TXt)379M^Kc9+KEhs!USIaG8)G^m$KxuVa;-P%ge4Ieti=;MX14PF`0;Ok4LTgdktfte)HJ#cD5NH`n}7|AAwqAP7GK(0`K+B zL&FUvD=hAKN{Kz7{j$u@vMg?=@Qfpj(y7WuxeoV;^g%82NrXU51V+89qrany&CL`_ z70DRNW^59>2|7LgJc|dNmJ3;S?QV!W$_kG4@}G=ouAvPT?4N3+ebKtVd|VwYI`>Uv zK!lA;N9Q^>&q$Ubf4HVMuKdLWpO?l{yvxOviGVaq1Lf@~<_ILl%33|u*w~tBy(jg; z!bNnWFJp6xkK)TpAM97{S=sQ`Eq;pBQl*nQ&C$vw%@K|;f+V( z!{a~ldWKbGv=SGpt1p-D26RO|`K9x)tQd=-pB=mZAi^#tZ_t4xklVRS(L_OckE67d zCE#=ueDy4jq7H&IzAW79cv<~v)ir;0hOExX#_t}pa@k(DP)`3Ex2m*|M91Rk2XeAx zz>xr#z$F?c<}?Z8rFqt^w4@43V^h@<)8Ah&6P3|_qP`datw54NHz?o|cO8t{?NUQD z_Zy`$SF9!tFp4jKKl_?gsm{^CLfz|2j1vwMC5Hh&^tUGYlF+q}TVb0n^nOk3B=?NU1$*O=vF|pLIGa40{zFpG$`J_O#mHn zXb7OOP^iJUsG6RVm^h@RMQ(I-R5IYx?%rOQY7Uy9lnWjis1Co=Suikdq0AWa}RIC#2QM!>2` z!NWt~mFBOia|!_~e85Q44OV3llde7RW)|>*MnFf{yTZc0gP=!`L}2a{l9QhU8Wa^1 z%gW8g0Gufqd~xF{7M9!T_}Cb#l7)J}(alZ8!Qof58@T-x@%|}yS1P9}w6xoaJr+}vHz`%&=y@swPC|?~K)6fy1xrf86NqS;v(Gc88xcUX7 z#v7yYi3tg4;fkRksxkxaCLkaXsj;m#V4!eqpF;qXK_#3wkXimjMfDYQ?6UdF4|Buj!Iq9kz9DGST9sl{R zAQe7LiOS>0QmEJS0Hg{F3v1f{oA&h{6tWDHy$dBiadunAqh3-O-ILkH(79m zPzqRuY3Ef=m$kGoEG{m>YA1ft{lMEh{PSJZyH7$sKe4@Fyt`ajRD=heWHk=Z2kPOm zEm5=k=hv<1*w_WI4!~;-6ri%JGTSUx)q|$+rInTGj*-DZ;**n;Wg`ia=8i3H7Shqm z`vZe>b8)k?R#ny2{}?CM)h*99neb8C`0`xp!#Ffe$plv_V&MzBfSp^#?! zUz>a~=eDhlO+ZKp%i@b1bN$*EE>r{#cgWb+$pAYPTi;FxE;MaE*zn~`NypJ7V5y~G zXjm9m3Oww^Y4z2liV6u}#}POWdZ{NDC=EQsX)!Rd19!{^Xo!GLRRC_dyjwY4H@XcN z-$#xge+-;=VrT$%B1C}a*#I{XOGryQ1E&vx2SPjth1??}!>@eyO23`}XUY!bm^}t& z1gGgr9FtGB0HfH%%#17c)EZM$Q^)0(8||OFlx5wBbp<-euM=3hXK(>iC$KD8cv@i* z>j7X9Wzsr*x;SWDphVJT3j@xA7NmVLqtHbY;9k!EDbG*-l<=*!69+~j(1@~S=M;S8 z*@0y@3o9#UEZfAx4}n!Pu-xvkcx(uq+_F>$rY|L>A}?V6Ln_Vx0*}JF?X0W(DhGIQ O8iS{+pUXO@geCwy-3PP) literal 15878 zcmdtJbzD|mv^Dx5h=9^1B?w3gNQZQYbP5Op3P^{N(umR}-7THcjRK-{qqKBMcYl-j zJ@=gNo_lWmeYd~g1~(6zwb!0&&N0UrD?nLM8WV#Q1A#zb$~=`+MIdg-A`nQlXgA=B zzGi?kd_gskla@qWUH?mK%!x!Gs1P!eV(RabHm01l@R!GL{fVa)MclkmRuXt)?TfX8 zO_*1eka+>M_nc~MALanY=#;t6uX)s%x?%H5?INmT2eTso+{zj%?N18NZxWyw;UkYN zof*2Q-nn1)QJ&*`v#ZM@E?&@iNr6LYx}*Cst&|E1jH3QcoFaS?y-=P;AiRA3_wze> zdIaL?XGh2LTH7pjrq=?vEOX1(#}9j=G}nGtmHdA#D=f`hP`%*nG`B_=5k2a@J#4Kl;g!uSs zN=qLJ2{o$aC`QsLb;Tb9_xO8+T_V@QscM9_JgM)(?JhMN4uBofT@M-b2EhsGHVrS1w{TwJl z7I3fZGYK||=oUQb$?0j+yPdf{kt

Y95}diVFM5nzs&`zspVfyl>t{^Ntho6rK{v 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 diff --git a/class_h_i_d_composite__inherit__graph.map b/class_h_i_d_composite__inherit__graph.map index 0b42aee7..408d5f41 100644 --- a/class_h_i_d_composite__inherit__graph.map +++ b/class_h_i_d_composite__inherit__graph.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/class_h_i_d_composite__inherit__graph.md5 b/class_h_i_d_composite__inherit__graph.md5 index 9ac7faab..8e8d4518 100644 --- a/class_h_i_d_composite__inherit__graph.md5 +++ b/class_h_i_d_composite__inherit__graph.md5 @@ -1 +1 @@ -7bba052169c3e9cd86fb29246bed4535 \ No newline at end of file +5365f14a032a8fd6dcc87df5954edbd5 \ No newline at end of file diff --git a/class_h_i_d_composite__inherit__graph.png b/class_h_i_d_composite__inherit__graph.png index dbd01da4f2a8b480b74b3853ce21111eff1ce0de..f596e486718d8a126bbcc84ad40c2dd28daf665f 100644 GIT binary patch literal 8756 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 - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@

- + - - + + + + - + - - + + + +
Inheritance graph
- - - + + +
[legend]
@@ -111,9 +86,11 @@ Public Member Functions

Detailed Description

-

Definition at line 138 of file usbhid.h.

+

Definition at line 138 of file usbhid.h.

Member Function Documentation

- + +

◆ Parse()

+
@@ -169,7 +146,7 @@ Public Member Functions diff --git a/class_h_i_d_report_parser__inherit__graph.map b/class_h_i_d_report_parser__inherit__graph.map index 23a666ea..f021f386 100644 --- a/class_h_i_d_report_parser__inherit__graph.map +++ b/class_h_i_d_report_parser__inherit__graph.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/class_h_i_d_report_parser__inherit__graph.md5 b/class_h_i_d_report_parser__inherit__graph.md5 index 25b71fe2..593cf846 100644 --- a/class_h_i_d_report_parser__inherit__graph.md5 +++ b/class_h_i_d_report_parser__inherit__graph.md5 @@ -1 +1 @@ -8be112e5d3300b51cf0649c53a258712 \ No newline at end of file +7f123ea9da7dc06b494537ace718925b \ No newline at end of file diff --git a/class_h_i_d_report_parser__inherit__graph.png b/class_h_i_d_report_parser__inherit__graph.png index a9296e700eee4e7a8c3cb795f55c5f3a9f58cee1..b1da206e632a31c18231999c58e3d490b4e51051 100644 GIT binary patch literal 7316 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 literal 7443 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 - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - - - - + + + + +
[legend]
@@ -113,12 +88,12 @@ Collaboration diagram for HIDUniversal:
Collaboration graph
- - - - - - + + + + + +
[legend]
@@ -223,9 +198,11 @@ Additional Inherited Members

Detailed Description

-

Definition at line 24 of file hiduniversal.h.

+

Definition at line 24 of file hiduniversal.h.

Constructor & Destructor Documentation

- + +

◆ HIDUniversal()

+
@@ -239,12 +216,14 @@ Additional Inherited Members
-

Definition at line 20 of file hiduniversal.cpp.

+

Definition at line 20 of file hiduniversal.cpp.

Member Function Documentation

- + +

◆ GetReportParser()

+
@@ -268,11 +247,13 @@ Additional Inherited Members

Reimplemented from USBHID.

-

Definition at line 85 of file hiduniversal.cpp.

+

Definition at line 85 of file hiduniversal.cpp.

- + +

◆ OnInitSuccessful()

+
@@ -295,11 +276,13 @@ Additional Inherited Members

Reimplemented in PSBuzz, and PS4USB.

-

Definition at line 74 of file hiduniversal.h.

+

Definition at line 74 of file hiduniversal.h.

- + +

◆ ParseHIDData()

+
@@ -345,11 +328,13 @@ Additional Inherited Members

Reimplemented in PSBuzz, and PS4USB.

-

Definition at line 78 of file hiduniversal.h.

+

Definition at line 78 of file hiduniversal.h.

- + +

◆ SetReportParser()

+
@@ -383,11 +368,13 @@ Additional Inherited Members

Reimplemented from USBHID.

-

Definition at line 74 of file hiduniversal.cpp.

+

Definition at line 74 of file hiduniversal.cpp.

- + +

◆ Init()

+
@@ -427,11 +414,13 @@ Additional Inherited Members

Reimplemented from USBDeviceConfig.

-

Definition at line 96 of file hiduniversal.cpp.

+

Definition at line 96 of file hiduniversal.cpp.

- + +

◆ Release()

+
@@ -454,11 +443,13 @@ Additional Inherited Members

Reimplemented from USBDeviceConfig.

-

Definition at line 340 of file hiduniversal.cpp.

+

Definition at line 340 of file hiduniversal.cpp.

- + +

◆ Poll()

+
@@ -481,11 +472,13 @@ Additional Inherited Members

Reimplemented from USBDeviceConfig.

-

Definition at line 367 of file hiduniversal.cpp.

+

Definition at line 367 of file hiduniversal.cpp.

- + +

◆ GetAddress()

+
@@ -508,11 +501,13 @@ Additional Inherited Members

Reimplemented from USBDeviceConfig.

-

Definition at line 93 of file hiduniversal.h.

+

Definition at line 93 of file hiduniversal.h.

- + +

◆ isReady()

+
@@ -533,11 +528,13 @@ Additional Inherited Members
-

Definition at line 97 of file hiduniversal.h.

+

Definition at line 97 of file hiduniversal.h.

- + +

◆ EndpointXtract()

+
@@ -589,11 +586,13 @@ Additional Inherited Members

Reimplemented from UsbConfigXtracter.

-

Definition at line 295 of file hiduniversal.cpp.

+

Definition at line 295 of file hiduniversal.cpp.

- + +

◆ SndRpt()

+
@@ -617,12 +616,14 @@ Additional Inherited Members
-

Definition at line 423 of file hiduniversal.cpp.

+

Definition at line 423 of file hiduniversal.cpp.

Member Data Documentation

- + +

◆ epInfo

+
@@ -640,11 +641,13 @@ Additional Inherited Members
-

Definition at line 64 of file hiduniversal.h.

+

Definition at line 64 of file hiduniversal.h.

- + +

◆ hidInterfaces

+
@@ -662,11 +665,13 @@ Additional Inherited Members
-

Definition at line 65 of file hiduniversal.h.

+

Definition at line 65 of file hiduniversal.h.

- + +

◆ bHasReportId

+
@@ -684,11 +689,13 @@ Additional Inherited Members
-

Definition at line 67 of file hiduniversal.h.

+

Definition at line 67 of file hiduniversal.h.

- + +

◆ PID

+
@@ -706,11 +713,13 @@ Additional Inherited Members
-

Definition at line 69 of file hiduniversal.h.

+

Definition at line 69 of file hiduniversal.h.

- + +

◆ VID

+
@@ -728,7 +737,7 @@ Additional Inherited Members
-

Definition at line 69 of file hiduniversal.h.

+

Definition at line 69 of file hiduniversal.h.

@@ -741,7 +750,7 @@ Additional Inherited Members diff --git a/class_h_i_d_universal__coll__graph.map b/class_h_i_d_universal__coll__graph.map index 659c6197..46cd8306 100644 --- a/class_h_i_d_universal__coll__graph.map +++ b/class_h_i_d_universal__coll__graph.map @@ -1,8 +1,8 @@ - - - - - - + + + + + + diff --git a/class_h_i_d_universal__coll__graph.md5 b/class_h_i_d_universal__coll__graph.md5 index 5c56aa71..13f76bd9 100644 --- a/class_h_i_d_universal__coll__graph.md5 +++ b/class_h_i_d_universal__coll__graph.md5 @@ -1 +1 @@ -9798e993ef1d49a2c1f0b1530f49b8e4 \ No newline at end of file +358769c50e28d51b35035f35270dea75 \ No newline at end of file diff --git a/class_h_i_d_universal__coll__graph.png b/class_h_i_d_universal__coll__graph.png index 90af5ab069f3c7f6524d0f4f0ffb4b5a5dfc7742..437b9f95092fe224bf86c2fa22fe56e94cdde0ed 100644 GIT binary patch literal 19361 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 literal 15669 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 - - - - - + + + + + diff --git a/class_h_i_d_universal__inherit__graph.md5 b/class_h_i_d_universal__inherit__graph.md5 index 2e820cab..3c09b3e6 100644 --- a/class_h_i_d_universal__inherit__graph.md5 +++ b/class_h_i_d_universal__inherit__graph.md5 @@ -1 +1 @@ -1ce1a5f9211e70eba63ba823d3663601 \ No newline at end of file +382694dd81f1384547b0acd28e432505 \ No newline at end of file diff --git a/class_h_i_d_universal__inherit__graph.png b/class_h_i_d_universal__inherit__graph.png index c1f7f48e7d6b681d0594d9fbb1129c3e0bd6f915..57a6d4b9041d6289a8afcbd28963328bbe00588c 100644 GIT binary patch literal 10521 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 I_3Fd_0=4~OuK)l5 diff --git a/class_hex_dumper-members.html b/class_hex_dumper-members.html index 8d952b32..4be4190d 100644 --- a/class_hex_dumper-members.html +++ b/class_hex_dumper-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
class HexDumper< BASE_CLASS, LEN_TYPE, OFFSET_TYPE > -

Definition at line 33 of file hexdump.h.

+

Definition at line 33 of file hexdump.h.

Constructor & Destructor Documentation

- + +

◆ HexDumper()

+
@@ -147,12 +124,14 @@ template<class BASE_CLASS, class LEN_TYPE, class OFFSET_TYPE>
-

Definition at line 39 of file hexdump.h.

+

Definition at line 39 of file hexdump.h.

Member Function Documentation

- + +

◆ Initialize()

+
@@ -175,11 +154,13 @@ template<class BASE_CLASS, class LEN_TYPE, class OFFSET_TYPE>
-

Definition at line 42 of file hexdump.h.

+

Definition at line 42 of file hexdump.h.

- + +

◆ Parse()

+
@@ -211,7 +192,7 @@ template<class BASE_CLASS , class LEN_TYPE , class OFFSET_TYPE >
-

Definition at line 51 of file hexdump.h.

+

Definition at line 51 of file hexdump.h.

@@ -223,7 +204,7 @@ template<class BASE_CLASS , class LEN_TYPE , class OFFSET_TYPE >
diff --git a/class_hex_dumper__coll__graph.md5 b/class_hex_dumper__coll__graph.md5 index c9f3f213..5f2c81dd 100644 --- a/class_hex_dumper__coll__graph.md5 +++ b/class_hex_dumper__coll__graph.md5 @@ -1 +1 @@ -5be5e99ec5970ed3fe98ca3cc812cd40 \ No newline at end of file +d0d43b636db83e71ec57c3a665a482d9 \ No newline at end of file diff --git a/class_hex_dumper__coll__graph.png b/class_hex_dumper__coll__graph.png index f6ec58a4ef206f723e76e0987bd86c3c79c4f56e..151370f5ebe9c2abd3b0e56f59112b60143fc98e 100644 GIT binary patch literal 5408 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 literal 4817 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 J8O$>1e*hr6QI!Ay diff --git a/class_hex_dumper__inherit__graph.md5 b/class_hex_dumper__inherit__graph.md5 index c9f3f213..f9793cee 100644 --- a/class_hex_dumper__inherit__graph.md5 +++ b/class_hex_dumper__inherit__graph.md5 @@ -1 +1 @@ -5be5e99ec5970ed3fe98ca3cc812cd40 \ No newline at end of file +cc82cd63686d13b6e0e1784a3a9e8b6b \ No newline at end of file diff --git a/class_hex_dumper__inherit__graph.png b/class_hex_dumper__inherit__graph.png index f6ec58a4ef206f723e76e0987bd86c3c79c4f56e..151370f5ebe9c2abd3b0e56f59112b60143fc98e 100644 GIT binary patch literal 5408 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 literal 4817 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 J8O$>1e*hr6QI!Ay diff --git a/class_keyboard_report_parser-members.html b/class_keyboard_report_parser-members.html index 6fdc420b..a5e30fb6 100644 --- a/class_keyboard_report_parser-members.html +++ b/class_keyboard_report_parser-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -108,9 +83,9 @@ Collaboration diagram for KeyboardReportParser:
Collaboration graph
- - - + + +
[legend]
@@ -161,9 +136,11 @@ Protected Attributes

Detailed Description

-

Definition at line 121 of file hidboot.h.

+

Definition at line 121 of file hidboot.h.

Constructor & Destructor Documentation

- + +

◆ KeyboardReportParser()

+
@@ -184,12 +161,14 @@ Protected Attributes
-

Definition at line 143 of file hidboot.h.

+

Definition at line 143 of file hidboot.h.

Member Function Documentation

- + +

◆ OemToAscii()

+
@@ -221,11 +200,13 @@ Protected Attributes
-

Definition at line 165 of file hidboot.cpp.

+

Definition at line 165 of file hidboot.cpp.

- + +

◆ Parse()

+
@@ -271,11 +252,13 @@ Protected Attributes

Implements HIDReportParser.

-

Definition at line 127 of file hidboot.cpp.

+

Definition at line 127 of file hidboot.cpp.

- + +

◆ HandleLockingKeys()

+
@@ -307,11 +290,13 @@ Protected Attributes
-

Definition at line 151 of file hidboot.h.

+

Definition at line 151 of file hidboot.h.

- + +

◆ OnControlKeysChanged()

+
@@ -343,11 +328,13 @@ Protected Attributes
-

Definition at line 174 of file hidboot.h.

+

Definition at line 174 of file hidboot.h.

- + +

◆ OnKeyDown()

+
@@ -379,11 +366,13 @@ Protected Attributes
-

Definition at line 177 of file hidboot.h.

+

Definition at line 177 of file hidboot.h.

- + +

◆ OnKeyUp()

+
@@ -415,11 +404,13 @@ Protected Attributes
-

Definition at line 180 of file hidboot.h.

+

Definition at line 180 of file hidboot.h.

- + +

◆ getNumKeys()

+
@@ -440,11 +431,13 @@ Protected Attributes
-

Definition at line 183 of file hidboot.h.

+

Definition at line 183 of file hidboot.h.

- + +

◆ getSymKeysUp()

+
@@ -465,11 +458,13 @@ Protected Attributes
-

Definition at line 187 of file hidboot.h.

+

Definition at line 187 of file hidboot.h.

- + +

◆ getSymKeysLo()

+
@@ -490,11 +485,13 @@ Protected Attributes
-

Definition at line 191 of file hidboot.h.

+

Definition at line 191 of file hidboot.h.

- + +

◆ getPadKeys()

+
@@ -515,12 +512,14 @@ Protected Attributes
-

Definition at line 195 of file hidboot.h.

+

Definition at line 195 of file hidboot.h.

Member Data Documentation

- + +

◆ kbdInfo

+
@@ -530,11 +529,13 @@ Protected Attributes
-

Definition at line 130 of file hidboot.h.

+

Definition at line 130 of file hidboot.h.

- + +

◆ bInfo

+
@@ -544,11 +545,13 @@ Protected Attributes
-

Definition at line 131 of file hidboot.h.

+

Definition at line 131 of file hidboot.h.

- + +

◆ prevState

+
@@ -560,7 +563,9 @@ Protected Attributes - + +

◆ kbdLeds

+
@@ -570,11 +575,13 @@ Protected Attributes
-

Definition at line 135 of file hidboot.h.

+

Definition at line 135 of file hidboot.h.

- + +

◆ bLeds

+
@@ -584,11 +591,13 @@ Protected Attributes
-

Definition at line 136 of file hidboot.h.

+

Definition at line 136 of file hidboot.h.

- + +

◆ kbdLockingKeys

+
@@ -609,7 +618,7 @@ Protected Attributes diff --git a/class_keyboard_report_parser__coll__graph.map b/class_keyboard_report_parser__coll__graph.map index 27581ba7..da2a437c 100644 --- a/class_keyboard_report_parser__coll__graph.map +++ b/class_keyboard_report_parser__coll__graph.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/class_keyboard_report_parser__coll__graph.md5 b/class_keyboard_report_parser__coll__graph.md5 index b3538af0..f53186dd 100644 --- a/class_keyboard_report_parser__coll__graph.md5 +++ b/class_keyboard_report_parser__coll__graph.md5 @@ -1 +1 @@ -bb7b1a74ec2625233c79c3d3448ef47a \ No newline at end of file +f2c6d00835acadc8658c82e0cf0d6156 \ No newline at end of file diff --git a/class_keyboard_report_parser__coll__graph.png b/class_keyboard_report_parser__coll__graph.png index 580a325ffb0a532dd987b15ac615f78b2acdc6b3..72c342fa193a353f0431192562e84d80cccdb6b1 100644 GIT binary patch literal 9729 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 NBcUi>E@~9;{{Z6f^-BN% literal 8743 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 - + diff --git a/class_keyboard_report_parser__inherit__graph.md5 b/class_keyboard_report_parser__inherit__graph.md5 index 5b9658e5..c76aa0ce 100644 --- a/class_keyboard_report_parser__inherit__graph.md5 +++ b/class_keyboard_report_parser__inherit__graph.md5 @@ -1 +1 @@ -c874e74f72d0db473ce869577e6f92d6 \ No newline at end of file +adfb83fe955c3333a5c32778e9b1fc68 \ No newline at end of file diff --git a/class_keyboard_report_parser__inherit__graph.png b/class_keyboard_report_parser__inherit__graph.png index cdf473efa0c5a7c5127e316ef50c9c1f4d426969..9238556e6724e88690d19ebccd9b2c0414ea767e 100644 GIT binary patch literal 3890 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 - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -146,9 +121,11 @@ Public Member Functions class MAX3421e< SPI_SS, INTR > -

Definition at line 132 of file usbhost.h.

+

Definition at line 132 of file usbhost.h.

Constructor & Destructor Documentation

- + +

◆ MAX3421e()

+
@@ -163,12 +140,14 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 166 of file usbhost.h.

+

Definition at line 166 of file usbhost.h.

Member Function Documentation

- + +

◆ regWr()

+
@@ -194,11 +173,13 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 177 of file usbhost.h.

+

Definition at line 177 of file usbhost.h.

- + +

◆ bytesWr()

+
@@ -230,11 +211,13 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 220 of file usbhost.h.

+

Definition at line 220 of file usbhost.h.

- + +

◆ gpioWr()

+
@@ -250,11 +233,13 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 269 of file usbhost.h.

+

Definition at line 269 of file usbhost.h.

- + +

◆ regRd()

+
@@ -270,11 +255,13 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 278 of file usbhost.h.

+

Definition at line 278 of file usbhost.h.

- + +

◆ bytesRd()

+
@@ -306,11 +293,13 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 317 of file usbhost.h.

+

Definition at line 317 of file usbhost.h.

- + +

◆ gpioRd()

+
@@ -333,11 +322,13 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 384 of file usbhost.h.

+

Definition at line 384 of file usbhost.h.

- + +

◆ gpioRdOutput()

+
@@ -360,11 +351,13 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 397 of file usbhost.h.

+

Definition at line 397 of file usbhost.h.

- + +

◆ reset()

+
@@ -379,11 +372,13 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 408 of file usbhost.h.

+

Definition at line 408 of file usbhost.h.

- + +

◆ Init() [1/2]

+
@@ -398,11 +393,13 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 422 of file usbhost.h.

+

Definition at line 422 of file usbhost.h.

- + +

◆ Init() [2/2]

+
@@ -418,11 +415,13 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 459 of file usbhost.h.

+

Definition at line 459 of file usbhost.h.

- + +

◆ vbusPower()

+
@@ -446,11 +445,13 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 148 of file usbhost.h.

+

Definition at line 148 of file usbhost.h.

- + +

◆ getVbusState()

+
@@ -474,11 +475,13 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 152 of file usbhost.h.

+

Definition at line 152 of file usbhost.h.

- + +

◆ busprobe()

+
@@ -493,11 +496,13 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 503 of file usbhost.h.

+

Definition at line 503 of file usbhost.h.

- + +

◆ GpxHandler()

+
@@ -514,7 +519,9 @@ template<typename SPI_SS , typename INTR >
- + +

◆ IntHandler()

+
@@ -529,11 +536,13 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 557 of file usbhost.h.

+

Definition at line 557 of file usbhost.h.

- + +

◆ Task()

+
@@ -549,7 +558,7 @@ template<typename SPI_SS , typename INTR >
-

Definition at line 538 of file usbhost.h.

+

Definition at line 538 of file usbhost.h.

@@ -561,7 +570,7 @@ template<typename SPI_SS , typename INTR >
diff --git a/class_m_a_x3421e__inherit__graph.map b/class_m_a_x3421e__inherit__graph.map index ef6587aa..9138e809 100644 --- a/class_m_a_x3421e__inherit__graph.map +++ b/class_m_a_x3421e__inherit__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_m_a_x3421e__inherit__graph.md5 b/class_m_a_x3421e__inherit__graph.md5 index e9dc0389..c1c302a9 100644 --- a/class_m_a_x3421e__inherit__graph.md5 +++ b/class_m_a_x3421e__inherit__graph.md5 @@ -1 +1 @@ -6b7dcdcf5b00fbf00c69a08de5fc301c \ No newline at end of file +0fb6ebaa0a7caab1752808a63748c691 \ No newline at end of file diff --git a/class_m_a_x3421e__inherit__graph.png b/class_m_a_x3421e__inherit__graph.png index 9d8cb8d8bb572b5be3e6c03820847da8683496c0..e59ba5e59dc204df0e657bf5876d33ce26195cd7 100644 GIT binary patch literal 4565 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 literal 4088 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 SuV^sJQ)%4OhE=LPe(^6w)h+M< diff --git a/class_max___l_c_d-members.html b/class_max___l_c_d-members.html index c2da4d08..62ad6d41 100644 --- a/class_max___l_c_d-members.html +++ b/class_max___l_c_d-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@ - + - - + + + + - + - - + + + +

Detailed Description

-

Definition at line 65 of file max_LCD.h.

+

Definition at line 65 of file max_LCD.h.

Constructor & Destructor Documentation

- + +

◆ Max_LCD()

+
@@ -171,12 +148,14 @@ Public Member Functions
-

Definition at line 42 of file max_LCD.cpp.

+

Definition at line 42 of file max_LCD.cpp.

Member Function Documentation

- + +

◆ init()

+
@@ -189,11 +168,13 @@ Public Member Functions
-

Definition at line 46 of file max_LCD.cpp.

+

Definition at line 46 of file max_LCD.cpp.

- + +

◆ begin()

+
@@ -223,11 +204,13 @@ Public Member Functions
-

Definition at line 54 of file max_LCD.cpp.

+

Definition at line 54 of file max_LCD.cpp.

- + +

◆ clear()

+
@@ -240,11 +223,13 @@ Public Member Functions
-

Definition at line 114 of file max_LCD.cpp.

+

Definition at line 114 of file max_LCD.cpp.

- + +

◆ home()

+
@@ -257,11 +242,13 @@ Public Member Functions
-

Definition at line 119 of file max_LCD.cpp.

+

Definition at line 119 of file max_LCD.cpp.

- + +

◆ noDisplay()

+
@@ -274,11 +261,13 @@ Public Member Functions
-

Definition at line 135 of file max_LCD.cpp.

+

Definition at line 135 of file max_LCD.cpp.

- + +

◆ display()

+
@@ -291,11 +280,13 @@ Public Member Functions
-

Definition at line 140 of file max_LCD.cpp.

+

Definition at line 140 of file max_LCD.cpp.

- + +

◆ noBlink()

+
@@ -308,11 +299,13 @@ Public Member Functions
-

Definition at line 160 of file max_LCD.cpp.

+

Definition at line 160 of file max_LCD.cpp.

- + +

◆ blink()

+
@@ -325,11 +318,13 @@ Public Member Functions
-

Definition at line 165 of file max_LCD.cpp.

+

Definition at line 165 of file max_LCD.cpp.

- + +

◆ noCursor()

+
@@ -342,11 +337,13 @@ Public Member Functions
-

Definition at line 147 of file max_LCD.cpp.

+

Definition at line 147 of file max_LCD.cpp.

- + +

◆ cursor()

+
@@ -359,11 +356,13 @@ Public Member Functions
-

Definition at line 152 of file max_LCD.cpp.

+

Definition at line 152 of file max_LCD.cpp.

- + +

◆ scrollDisplayLeft()

+
@@ -377,11 +376,13 @@ Public Member Functions
-

Definition at line 172 of file max_LCD.cpp.

+

Definition at line 172 of file max_LCD.cpp.

- + +

◆ scrollDisplayRight()

+
@@ -395,11 +396,13 @@ Public Member Functions
-

Definition at line 176 of file max_LCD.cpp.

+

Definition at line 176 of file max_LCD.cpp.

- + +

◆ leftToRight()

+
@@ -413,11 +416,13 @@ Public Member Functions
-

Definition at line 182 of file max_LCD.cpp.

+

Definition at line 182 of file max_LCD.cpp.

- + +

◆ rightToLeft()

+
@@ -431,11 +436,13 @@ Public Member Functions
-

Definition at line 189 of file max_LCD.cpp.

+

Definition at line 189 of file max_LCD.cpp.

- + +

◆ autoscroll()

+
@@ -449,11 +456,13 @@ Public Member Functions
-

Definition at line 196 of file max_LCD.cpp.

+

Definition at line 196 of file max_LCD.cpp.

- + +

◆ noAutoscroll()

+
@@ -467,11 +476,13 @@ Public Member Functions
-

Definition at line 203 of file max_LCD.cpp.

+

Definition at line 203 of file max_LCD.cpp.

- + +

◆ createChar()

+
@@ -495,11 +506,13 @@ Public Member Functions
-

Definition at line 211 of file max_LCD.cpp.

+

Definition at line 211 of file max_LCD.cpp.

- + +

◆ setCursor()

+
@@ -523,11 +536,13 @@ Public Member Functions
-

Definition at line 124 of file max_LCD.cpp.

+

Definition at line 124 of file max_LCD.cpp.

- + +

◆ command()

+
@@ -549,11 +564,13 @@ Public Member Functions
-

Definition at line 221 of file max_LCD.cpp.

+

Definition at line 221 of file max_LCD.cpp.

- + +

◆ write()

+
@@ -575,7 +592,7 @@ Public Member Functions
-

Definition at line 228 of file max_LCD.cpp.

+

Definition at line 228 of file max_LCD.cpp.

@@ -588,7 +605,7 @@ Public Member Functions diff --git a/class_max___l_c_d__coll__graph.md5 b/class_max___l_c_d__coll__graph.md5 index 8d049f39..3f3bddcb 100644 --- a/class_max___l_c_d__coll__graph.md5 +++ b/class_max___l_c_d__coll__graph.md5 @@ -1 +1 @@ -14cf14911886c71d7e91596c82a5010c \ No newline at end of file +e2f8a913599c12410a410520826dbb8e \ No newline at end of file diff --git a/class_max___l_c_d__coll__graph.png b/class_max___l_c_d__coll__graph.png index 400d52043a743927403b8a294a99de3f8545f83c..c56a67b3a3a1ac177e0f03b9905ca4c0d333b8a9 100644 GIT binary patch literal 2065 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 UNZ)O(cESP&_F~cX0kOIN0z#RLaR2}S diff --git a/class_max___l_c_d__inherit__graph.md5 b/class_max___l_c_d__inherit__graph.md5 index 8d049f39..f53444bf 100644 --- a/class_max___l_c_d__inherit__graph.md5 +++ b/class_max___l_c_d__inherit__graph.md5 @@ -1 +1 @@ -14cf14911886c71d7e91596c82a5010c \ No newline at end of file +74eb966daa02727e2eb676099a813686 \ No newline at end of file diff --git a/class_max___l_c_d__inherit__graph.png b/class_max___l_c_d__inherit__graph.png index 400d52043a743927403b8a294a99de3f8545f83c..c56a67b3a3a1ac177e0f03b9905ca4c0d333b8a9 100644 GIT binary patch literal 2065 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 UNZ)O(cESP&_F~cX0kOIN0z#RLaR2}S diff --git a/class_mouse_report_parser-members.html b/class_mouse_report_parser-members.html index 56bbe033..67e9faa6 100644 --- a/class_mouse_report_parser-members.html +++ b/class_mouse_report_parser-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -107,8 +82,8 @@ Collaboration diagram for MouseReportParser:
Collaboration graph
- - + +
[legend]
@@ -136,9 +111,11 @@ Protected Member Functions

Detailed Description

-

Definition at line 51 of file hidboot.h.

+

Definition at line 51 of file hidboot.h.

Member Function Documentation

- + +

◆ Parse()

+
@@ -184,11 +161,13 @@ Protected Member Functions

Implements HIDReportParser.

-

Definition at line 19 of file hidboot.cpp.

+

Definition at line 19 of file hidboot.cpp.

- + +

◆ OnMouseMove()

+
@@ -210,11 +189,13 @@ Protected Member Functions
-

Definition at line 63 of file hidboot.h.

+

Definition at line 63 of file hidboot.h.

- + +

◆ OnLeftButtonUp()

+
@@ -236,11 +217,13 @@ Protected Member Functions
-

Definition at line 66 of file hidboot.h.

+

Definition at line 66 of file hidboot.h.

- + +

◆ OnLeftButtonDown()

+
@@ -262,11 +245,13 @@ Protected Member Functions
-

Definition at line 69 of file hidboot.h.

+

Definition at line 69 of file hidboot.h.

- + +

◆ OnRightButtonUp()

+
@@ -288,11 +273,13 @@ Protected Member Functions
-

Definition at line 72 of file hidboot.h.

+

Definition at line 72 of file hidboot.h.

- + +

◆ OnRightButtonDown()

+
@@ -314,11 +301,13 @@ Protected Member Functions
-

Definition at line 75 of file hidboot.h.

+

Definition at line 75 of file hidboot.h.

- + +

◆ OnMiddleButtonUp()

+
@@ -340,11 +329,13 @@ Protected Member Functions
-

Definition at line 78 of file hidboot.h.

+

Definition at line 78 of file hidboot.h.

- + +

◆ OnMiddleButtonDown()

+
@@ -366,12 +357,14 @@ Protected Member Functions
-

Definition at line 81 of file hidboot.h.

+

Definition at line 81 of file hidboot.h.

Member Data Documentation

- + +

◆ mouseInfo

+
@@ -381,11 +374,13 @@ Protected Member Functions
-

Definition at line 54 of file hidboot.h.

+

Definition at line 54 of file hidboot.h.

- + +

◆ bInfo

+
@@ -395,7 +390,7 @@ Protected Member Functions
-

Definition at line 55 of file hidboot.h.

+

Definition at line 55 of file hidboot.h.

@@ -408,7 +403,7 @@ Protected Member Functions diff --git a/class_mouse_report_parser__coll__graph.map b/class_mouse_report_parser__coll__graph.map index fd308ae3..2d2572e1 100644 --- a/class_mouse_report_parser__coll__graph.map +++ b/class_mouse_report_parser__coll__graph.map @@ -1,4 +1,4 @@ - - + + diff --git a/class_mouse_report_parser__coll__graph.md5 b/class_mouse_report_parser__coll__graph.md5 index 0d410a43..d0d55908 100644 --- a/class_mouse_report_parser__coll__graph.md5 +++ b/class_mouse_report_parser__coll__graph.md5 @@ -1 +1 @@ -405a7d8e938e10b74a7c678fcf2f2523 \ No newline at end of file +f9c222dcf7223f947690ce165b721cd3 \ No newline at end of file diff --git a/class_mouse_report_parser__coll__graph.png b/class_mouse_report_parser__coll__graph.png index 82ca8ea2cc5728ea1dd08cb5cfab45cf050613a8..2a16114c98608a962798d6114c8d0f132a5e5c44 100644 GIT binary patch literal 7885 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 literal 7185 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 diff --git a/class_mouse_report_parser__inherit__graph.map b/class_mouse_report_parser__inherit__graph.map index 10699d49..2abdf8bc 100644 --- a/class_mouse_report_parser__inherit__graph.map +++ b/class_mouse_report_parser__inherit__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_mouse_report_parser__inherit__graph.md5 b/class_mouse_report_parser__inherit__graph.md5 index 6dbeddc2..74c8e5f2 100644 --- a/class_mouse_report_parser__inherit__graph.md5 +++ b/class_mouse_report_parser__inherit__graph.md5 @@ -1 +1 @@ -06cbf9c7fbacf4aaec1bcdfdc9d69628 \ No newline at end of file +a2dc8148933377ae624709e45bd68601 \ No newline at end of file diff --git a/class_mouse_report_parser__inherit__graph.png b/class_mouse_report_parser__inherit__graph.png index 7881c6dfe0981015a7258549b993a6995cae44a4..8f7e18cd3258a49cd0acb50bfbe76158c7b31610 100644 GIT binary patch literal 3531 zcmcInhgTEZyB)+UNL57O0s1coz&o>M&YGDsXZD=^ec#@Lvots5=Mm=t0D%A6 zRbwRBXM%e$_Yv@zbB&-3cE{Y!OpSrVU)%F0Vg@)e_L{MwHM(H2@IKfzn`sTBcBTrYD7YweL?PQ?u8W5os?-J4$Q@+xe81VyD;qCT#WV{eY|Yz z$!G6NGA-vkZFyzvP9|WtAF>1|P8>{0e8_sfw6vuDZo6#+$z2J7Ko%yN57XT=Qk$!) zs9{EiDB)$_9vIpL``+sM`uYxZlX0&DVenF{R)AvG-o{-x;;OK!tD+ zkz_JKRSWJ$8PSbgDkv!UkOf;=UA>M#NJ>hEKR5ULZuKL4=S{#ULbZL zh1Nw!M>m#~7!r^H-)ineMMW9Dc2biT6GP9Fh}9Iz88wurXF@B=?s{HMPHi;1x)n7U ztR)cCzmgO1oJ8u(x(c+6HAIpLcDfHC3JO`-+3I|~`pr(KR)ew%d#m_b>Dl04Tc#l3+mCWn-J`lxhjE3{YeCcRqdu zLDk=7iUd4^m9)G80H5xHk=hVEk?4a)YZdo!0VpPW@$JO7(NPZ%58DctGbc}m%=eQB zcS{M9VN?DWMmAS8&!2zZ4){x9VI@z@iH?JE8J$VV$!n{ty&qq_dIjRIs=APVwdT%O z1*tSH(=S=)9GB>IUq?qJPM@~1vU1bNuX73v4P9liDz8G4Qd7z0E%^o z53Zx3p&<)?L0+3D+VC=WVkG>6}*r_UH;AB3sSmzPK z$+XtiR+gCI0(xE-3N21gw?ZPnjEykjo>Me~6}iRJX{?7N-$G8X(> zo_T`<7NWLhL9$j6=E+5DGAo+BJv~!WQtU9!ZJrlxR8BkH-~hC>wFv}*oSd9y&^W@( z4CGS`G0_lNVW%p>lPDdt{l}yCh9@Apx|p6KeLNm-WMsr8C^a2gmz9YhaPWwTxK%bF z%UwF)`{~ms4&c(IOT6w#B+|T4hhV9sps3jCc`+642qVTEL&O~%w65~65{P_6z_}~Y;wT%sXcb77oE?ejoDoIq9c9p_pZ%yEQG>eW*rt577_90T)LW}s)#8ZZcw$F#SxA5{KVS; zG9_mxwKQ2=Q4!?kR#IkDdn}Tb){5#M9ISUp^b6)XJm~yY2iu_0jM;-bm)BlrO*$>0 zv%b>l3wmeFOUVJ3_4WA-gExJ^!e9i0`SVa`ObwzB;&iVMaEH2X<^_p0R0%^0914Jtqy(6RLk5eZ~YeEv+gfbw$y>ro6^ za;a%ML-_5+a$6!a1%3*MHI}8m;c-6KVP8we5-ko7^=msl>qBQYr>Et{*QSKG)`LQk zW1|?+KcS$;y!i7^4qKj3@ui;=BNRKU^`p{5)Q6&3wlgKfeZQCDxZ< z&z%Dk^LB0wGiz@%fXx_USkt?jp@+|Kv@MbQ3Relp?!vIQ%Kc+|enHC}9|Gyn7JTc`;Y4zJPvH_|G1nVtxU>b(5RIJf|~$HrQD?eeYhD1_0H;clGs! zKYt#EQcw6y1+L9O`9U&_wjTv?AF}wT{*S)=%hdnFO-apdbEXg)b0}drSnH4|XU}pT zGC4TZr4w+I$3KLc7MkphHr`uf^ukckY;{+cC$RGWiYSPeQn0KpFE5{%kPyArr8)ee zy1E(+=Js~DNb-zK0I!5en!cW1QOwTIr%#1yX_ad&8uN>bO(BeSeaza!gUJGiCkP;pCkB=8mZLdmwo#3^Tos;u;V>#P3<{AQFY~kbMBPeaqcz<`Zyu7@=UZ=@L zJ)^U?jvEubF+bqk5D_p^Ew89Zq)<*NfHRy@GzUvCfk?EqwUyvIX2!uCC&T^y=g&K2 zZh!EqqNb*%oE*Ns-l1Yhy@cG{d`Nyf{ykU=h&`hlp&C>5(Q{Y?nEX5QESt@Cd>h!+ z-5u!XXSDkp^LI(fnkqlu>mz<2F779%rVjX0gLwvSU*6x}S8rq;$#ZmeCR?lc`T2oZ z=|e+XW04c*96ITACoeBAIJ_OK$A{gz%h8)7K01X0KyQCPB=fqTukWj}vPTaenipt2 zXg6A#XrAcpee(1vjDU2@qRIvY1Qf^Y+_ACAv{c&L91Y6u9qjM7wzE?@!3_XpGTAOY z_|X;)hr^qu!A(tfx3_O!&NF%>U}9`;(I>yIV3Rg6o|8zJVi${of!I9A$(8gbkkz4-cn755#~g_`Z226Z8ULe8$Da z0p2&!c4=^YRh6HmqAHb7F6(f=rz>AmT07KpYiW#Ep$AkAu~hiF+GQ;*JCe0KZ>ekf z`uh6x8XH^}@cr~kH_k`zA0)p-lA;-@n!V_tpdfVYIDJ069*pIrBp!oeK}z{)!$>z? zUf!E3nP#`a-mxY>dE82lyVOz%q=o9RxU<2mvagiFG3Pu}^iaSRg$%NDgNS!4ho-jnaf`XRxw|@JT+-1fjr@lCdbFMk2Gfw8ZF}WP zOS+utq)mQdVPT%b_83-BFb!nXA3vA`7P0NfbD7sUj~vPBg_l_RFE_NJw9qV+i3x43 z2U;=2RClV4^=^$?Sj=-Kd)OZ=M+)KAzbC859I)s5`ue~m8y0}b%dfDb>zoX9bW~1o zgTmR^*a!fk>Ms4aFAonSb};TnM3{q~%fcd~)AOhy0CaYC-o1Ml%w{3ni}G?li8L7T z>;Hfjt1OW?n8ad7=OQAQgXD^LJ1W}R_pAc`5ox2cf$pB3n@Ylk=0m-`08rVe>>M$) z;BM06`t<2jh|uwf)r5ty22B~6=arRDIvBK$jxa4rP@3s8wTw~R9TuEI$jpp98`uADTiVVkQhIgq+ z?ZkxsBhL}GwnIE;?+ZQY^pq6n(BFweT3NNC&Q}I;;O2_A+XMF3*4Go>&Mu{n?#wMO zHwR4^*p>zBfNBXn`d>ZhlI`gMAxbsy9m%h~w>BF`low=+ii_vv=CaZ9Cx;E)-Q8iZ pBO0`>t%^|0e54u0Qj{4aLvTr_%#d__aByY_yhm| literal 3166 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 diff --git a/class_multi_byte_value_parser-members.html b/class_multi_byte_value_parser-members.html index 915006af..6f721697 100644 --- a/class_multi_byte_value_parser-members.html +++ b/class_multi_byte_value_parser-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +

Detailed Description

-

Definition at line 40 of file parsetools.h.

+

Definition at line 40 of file parsetools.h.

Constructor & Destructor Documentation

- + +

◆ MultiByteValueParser()

+
@@ -130,12 +107,14 @@ Public Member Functions
-

Definition at line 47 of file parsetools.h.

+

Definition at line 47 of file parsetools.h.

Member Function Documentation

- + +

◆ GetBuffer()

+
@@ -156,11 +135,13 @@ Public Member Functions
-

Definition at line 50 of file parsetools.h.

+

Definition at line 50 of file parsetools.h.

- + +

◆ Initialize()

+
@@ -182,11 +163,13 @@ Public Member Functions
-

Definition at line 54 of file parsetools.h.

+

Definition at line 54 of file parsetools.h.

- + +

◆ Parse()

+
@@ -210,7 +193,7 @@ Public Member Functions
-

Definition at line 26 of file parsetools.cpp.

+

Definition at line 26 of file parsetools.cpp.

@@ -223,7 +206,7 @@ Public Member Functions diff --git a/class_p_l2303-members.html b/class_p_l2303-members.html index 7086003f..d5e7311d 100644 --- a/class_p_l2303-members.html +++ b/class_p_l2303-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - - + + +
[legend]
@@ -108,14 +83,14 @@ Collaboration diagram for PL2303:
Collaboration graph
- - - - - - - - + + + + + + + +
[legend]
@@ -227,9 +202,11 @@ Additional Inherited Members

Detailed Description

-

Definition at line 122 of file cdcprolific.h.

+

Definition at line 122 of file cdcprolific.h.

Constructor & Destructor Documentation

- + +

◆ PL2303()

+
@@ -253,12 +230,14 @@ Additional Inherited Members
-

Definition at line 19 of file cdcprolific.cpp.

+

Definition at line 19 of file cdcprolific.cpp.

Member Function Documentation

- + +

◆ Init()

+
@@ -298,7 +277,7 @@ Additional Inherited Members

Reimplemented from ACM.

-

Definition at line 24 of file cdcprolific.cpp.

+

Definition at line 24 of file cdcprolific.cpp.

@@ -311,7 +290,7 @@ Additional Inherited Members diff --git a/class_p_l2303__coll__graph.map b/class_p_l2303__coll__graph.map index 37a260cf..79d4c454 100644 --- a/class_p_l2303__coll__graph.map +++ b/class_p_l2303__coll__graph.map @@ -1,10 +1,10 @@ - - - - - - - - + + + + + + + + diff --git a/class_p_l2303__coll__graph.md5 b/class_p_l2303__coll__graph.md5 index 3fccb2c3..747c3494 100644 --- a/class_p_l2303__coll__graph.md5 +++ b/class_p_l2303__coll__graph.md5 @@ -1 +1 @@ -da3590f8b39ab5267484ef72f2899a2c \ No newline at end of file +a109a304a1e8b7c2885b5ed40e050f2d \ No newline at end of file diff --git a/class_p_l2303__coll__graph.png b/class_p_l2303__coll__graph.png index 07644dcb44ac676912dbe9bf2e3aece8007b521e..bf47b59838b7fd04c267a30088c290153ff8ecfd 100644 GIT binary patch literal 21341 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%0A>QO3)92HWlMpKxacdgo(+5LW=}j_ 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 - - - + + + diff --git a/class_p_l2303__inherit__graph.md5 b/class_p_l2303__inherit__graph.md5 index 8fff62d8..71c336d7 100644 --- a/class_p_l2303__inherit__graph.md5 +++ b/class_p_l2303__inherit__graph.md5 @@ -1 +1 @@ -dd455d55317b48c08e2327d045dafb04 \ No newline at end of file +2921424f538e5b4baf7916aede8cb89f \ No newline at end of file diff --git a/class_p_l2303__inherit__graph.png b/class_p_l2303__inherit__graph.png index 455cd550d06bbf510dc35cf843aee5404b9289e0..498fffbbb6534fae5b62f5571f7a61904d2c8592 100644 GIT binary patch literal 8133 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 diff --git a/class_p_s3_b_t-members.html b/class_p_s3_b_t-members.html index dfaa9f75..da25de2d 100644 --- a/class_p_s3_b_t-members.html +++ b/class_p_s3_b_t-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@

- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -107,13 +82,13 @@ Collaboration diagram for PS3BT:
Collaboration graph
- - - - - - - + + + + + + +
[legend]
@@ -217,9 +192,11 @@ Additional Inherited Members

This BluetoothService class implements support for all the official PS3 Controllers: Dualshock 3, Navigation or a Motion controller via Bluetooth.

Information about the protocol can be found at the wiki: https://github.com/felis/USB_Host_Shield_2.0/wiki/PS3-Information.

-

Definition at line 32 of file PS3BT.h.

+

Definition at line 32 of file PS3BT.h.

Constructor & Destructor Documentation

- + +

◆ PS3BT()

+
@@ -280,12 +257,14 @@ Additional Inherited Members -

Definition at line 23 of file PS3BT.cpp.

+

Definition at line 23 of file PS3BT.cpp.

Member Function Documentation

- + +

◆ disconnect()

+
@@ -309,11 +288,13 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 217 of file PS3BT.cpp.

+

Definition at line 217 of file PS3BT.cpp.

- + +

◆ getButtonPress()

+
@@ -336,11 +317,13 @@ Additional Inherited Members
Returns
getButtonPress(ButtonEnum b) will return a true as long as a button is held down, while getButtonClick(ButtonEnum b) will return true once for each button press.
-

Definition at line 49 of file PS3BT.cpp.

+

Definition at line 49 of file PS3BT.cpp.

- + +

◆ getButtonClick()

+
@@ -363,11 +346,13 @@ Additional Inherited Members
Returns
getButtonPress(ButtonEnum b) will return a true as long as a button is held down, while getButtonClick(ButtonEnum b) will return true once for each button press.
-

Definition at line 53 of file PS3BT.cpp.

+

Definition at line 53 of file PS3BT.cpp.

- + +

◆ getAnalogButton()

+
@@ -388,11 +373,13 @@ Additional Inherited Members
Returns
Analog value in the range of 0-255.
-

Definition at line 60 of file PS3BT.cpp.

+

Definition at line 60 of file PS3BT.cpp.

- + +

◆ getAnalogHat()

+
@@ -413,11 +400,13 @@ Additional Inherited Members
Returns
Return the analog value in the range of 0-255.
-

Definition at line 64 of file PS3BT.cpp.

+

Definition at line 64 of file PS3BT.cpp.

- + +

◆ getSensor()

+
@@ -438,11 +427,13 @@ Additional Inherited Members
Returns
Return the raw sensor value.
-

Definition at line 68 of file PS3BT.cpp.

+

Definition at line 68 of file PS3BT.cpp.

- + +

◆ getAngle()

+
@@ -463,11 +454,13 @@ Additional Inherited Members
Returns
Return the angle in the range of 0-360.
-

Definition at line 85 of file PS3BT.cpp.

+

Definition at line 85 of file PS3BT.cpp.

- + +

◆ get9DOFValues()

+
@@ -488,11 +481,13 @@ Additional Inherited Members
Returns
The value in SI units.
-

Definition at line 112 of file PS3BT.cpp.

+

Definition at line 112 of file PS3BT.cpp.

- + +

◆ getStatus()

+
@@ -513,11 +508,13 @@ Additional Inherited Members
Returns
True if correct and false if not.
-

Definition at line 156 of file PS3BT.cpp.

+

Definition at line 156 of file PS3BT.cpp.

- + +

◆ printStatusString()

+
@@ -531,11 +528,13 @@ Additional Inherited Members

Read all the available statuses from the controller and prints it as a nice formated string.

-

Definition at line 160 of file PS3BT.cpp.

+

Definition at line 160 of file PS3BT.cpp.

- + +

◆ getTemperature()

+
@@ -549,11 +548,13 @@ Additional Inherited Members

Read the temperature from the Move controller.

Returns
The temperature in degrees Celsius.
-

Definition at line 141 of file PS3BT.cpp.

+

Definition at line 141 of file PS3BT.cpp.

- + +

◆ setAllOff()

+
@@ -567,11 +568,13 @@ Additional Inherited Members

Used to set all LEDs and rumble off.

-

Definition at line 519 of file PS3BT.cpp.

+

Definition at line 519 of file PS3BT.cpp.

- + +

◆ setRumbleOff()

+
@@ -585,11 +588,13 @@ Additional Inherited Members

Turn off rumble.

-

Definition at line 530 of file PS3BT.cpp.

+

Definition at line 530 of file PS3BT.cpp.

- + +

◆ setRumbleOn() [1/2]

+
@@ -609,11 +614,13 @@ Additional Inherited Members -

Definition at line 540 of file PS3BT.cpp.

+

Definition at line 540 of file PS3BT.cpp.

- + +

◆ setRumbleOn() [2/2]

+
@@ -658,11 +665,13 @@ Additional Inherited Members -

Definition at line 549 of file PS3BT.cpp.

+

Definition at line 549 of file PS3BT.cpp.

- + +

◆ setLedRaw()

+
@@ -682,11 +691,13 @@ Additional Inherited Members -

Definition at line 559 of file PS3BT.cpp.

+

Definition at line 559 of file PS3BT.cpp.

- + +

◆ setLedOff() [1/2]

+
@@ -708,11 +719,13 @@ Additional Inherited Members

Turn all LEDs off.

-

Definition at line 138 of file PS3BT.h.

+

Definition at line 138 of file PS3BT.h.

- + +

◆ setLedOff() [2/2]

+
@@ -732,11 +745,13 @@ Additional Inherited Members -

Definition at line 564 of file PS3BT.cpp.

+

Definition at line 564 of file PS3BT.cpp.

- + +

◆ setLedOn()

+
@@ -756,11 +771,13 @@ Additional Inherited Members -

Definition at line 569 of file PS3BT.cpp.

+

Definition at line 569 of file PS3BT.cpp.

- + +

◆ setLedToggle()

+
@@ -780,11 +797,13 @@ Additional Inherited Members -

Definition at line 578 of file PS3BT.cpp.

+

Definition at line 578 of file PS3BT.cpp.

- + +

◆ moveSetBulb() [1/2]

+
@@ -820,11 +839,13 @@ Additional Inherited Members -

Definition at line 604 of file PS3BT.cpp.

+

Definition at line 604 of file PS3BT.cpp.

- + +

◆ moveSetBulb() [2/2]

+
@@ -844,11 +865,13 @@ Additional Inherited Members -

Definition at line 613 of file PS3BT.cpp.

+

Definition at line 613 of file PS3BT.cpp.

- + +

◆ moveSetRumble()

+
@@ -868,11 +891,13 @@ Additional Inherited Members -

Definition at line 617 of file PS3BT.cpp.

+

Definition at line 617 of file PS3BT.cpp.

- + +

◆ getLastMessageTime()

+
@@ -894,11 +919,13 @@ Additional Inherited Members

Used to get the millis() of the last message

-

Definition at line 174 of file PS3BT.h.

+

Definition at line 174 of file PS3BT.h.

- + +

◆ ACLData()

+
@@ -928,11 +955,13 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 224 of file PS3BT.cpp.

+

Definition at line 224 of file PS3BT.cpp.

- + +

◆ Run()

+
@@ -956,11 +985,13 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 454 of file PS3BT.cpp.

+

Definition at line 454 of file PS3BT.cpp.

- + +

◆ Reset()

+
@@ -984,11 +1015,13 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 204 of file PS3BT.cpp.

+

Definition at line 204 of file PS3BT.cpp.

- + +

◆ onInit()

+
@@ -1012,12 +1045,14 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 628 of file PS3BT.cpp.

+

Definition at line 628 of file PS3BT.cpp.

Member Data Documentation

- + +

◆ PS3Connected

+
@@ -1028,11 +1063,13 @@ Additional Inherited Members

Variable used to indicate if the normal Playstation controller is successfully connected.

-

Definition at line 176 of file PS3BT.h.

+

Definition at line 176 of file PS3BT.h.

- + +

◆ PS3MoveConnected

+
@@ -1043,11 +1080,13 @@ Additional Inherited Members

Variable used to indicate if the Move controller is successfully connected.

-

Definition at line 182 of file PS3BT.h.

+

Definition at line 182 of file PS3BT.h.

- + +

◆ PS3NavigationConnected

+
@@ -1058,7 +1097,7 @@ Additional Inherited Members

Variable used to indicate if the Navigation controller is successfully connected.

-

Definition at line 184 of file PS3BT.h.

+

Definition at line 184 of file PS3BT.h.

@@ -1071,7 +1110,7 @@ Additional Inherited Members diff --git a/class_p_s3_b_t__coll__graph.map b/class_p_s3_b_t__coll__graph.map index 25410a78..99dc7b4d 100644 --- a/class_p_s3_b_t__coll__graph.map +++ b/class_p_s3_b_t__coll__graph.map @@ -1,9 +1,9 @@ - - - - - - - + + + + + + + diff --git a/class_p_s3_b_t__coll__graph.md5 b/class_p_s3_b_t__coll__graph.md5 index 9944a07a..8d1c35cc 100644 --- a/class_p_s3_b_t__coll__graph.md5 +++ b/class_p_s3_b_t__coll__graph.md5 @@ -1 +1 @@ -7cded78e6e9cacc4756734b2d8e3a17f \ No newline at end of file +2afa3c1ee396396537c80a9e82e8ab8c \ No newline at end of file diff --git a/class_p_s3_b_t__coll__graph.png b/class_p_s3_b_t__coll__graph.png index 22ebb4ffe219911d4dcf7c0ffb8801ee266bc35d..9d88e09cfde3e958a066f0e5239d350f2019d1f9 100644 GIT binary patch literal 18074 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 literal 15869 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 diff --git a/class_p_s3_b_t__inherit__graph.map b/class_p_s3_b_t__inherit__graph.map index 94a99870..fa6aecee 100644 --- a/class_p_s3_b_t__inherit__graph.map +++ b/class_p_s3_b_t__inherit__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_p_s3_b_t__inherit__graph.md5 b/class_p_s3_b_t__inherit__graph.md5 index c4a47a9b..485bbf3f 100644 --- a/class_p_s3_b_t__inherit__graph.md5 +++ b/class_p_s3_b_t__inherit__graph.md5 @@ -1 +1 @@ -af123ea0ba1b2bc2c3a6775f7cb65fa0 \ No newline at end of file +3d26891ef8cb1c025100fb5c239bf7cb \ No newline at end of file diff --git a/class_p_s3_b_t__inherit__graph.png b/class_p_s3_b_t__inherit__graph.png index e425f8951b13dd451dbdf5fab668099bca365d03..bba8bdb014ba789e18c7e3d585ca739cec53d615 100644 GIT binary patch literal 2843 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 literal 2547 zcmcImdpOkV7XF3FwMj^G&`|8rMJ`FXi%2e^iP>X@T&A{?T#8)EeIrQ|lUtg>))-@Q zXWW&j!C;adxvOC&xony-OqBC$Kj)l3&U5}f@ArJ)dcNs~eh%}!qjTWetZ=PGQY5CA~3)Xv({HR9wH-;Gdt_Tz5?pMwg%1v!=i+l=Hd2qRGsGc@&oVdE)L_rYNx4TOqBblE@05ue7JQa~GU+{*c-4w7v!J?u#9mn-;G1YbVK4hgA#?dx+?SuDxrkb+dwpI@fm45jVU z`LeJuNs>z#;Bi^XN=gChQ-Y+&_T-kYmWBv*^+ZKW-oM@K=p^aN;OHHdxTI$tYFAD5 z;*_Tpz1WhQVkw=Hl9GE;t<}}l9r|#oI$;^_DJ3QM)6yCOCqehhva-P|GaVcbhs<~Q zlze^E%ZMbApeFGu;AD7sc+iI`OAR@_{Ndvnd3n^KdALQ)^O1$=)<^=8cr4@G2Pgj! z*^^+vn63kL$D`V&7>pEpDk>RMkJge))i`)Cfx({Ra0dGN-cCKZT;0@URE<{o8(NBK zTn@*hYl$Wb1Wq>Zg~K1RBap~UOgVyWZf*{``j~bz7dHCX5h1;67X%Q4K+Zcly10cJ zPkvil&_p0gW6mQky1Toh(Xbq5`Sa(YlQq)aX?y4yzw|q!XknqDu1B&E8X8(P_HJ%& zSS;4Tf!PxNmm}h0WTeqX=tQAF8kl)Uc8HFS_WT=WW@b4$Ubpu&R6>EP{{H^guPdvn zI-ft^&thpNip0-!rOLBNX8KC$X?72uwY9a?))Lh2@%j9*G0c%mSZqF#*w0=q?an&- zE6F^1?A^O})6>rV5N*s4kpS|s7}L>L?A53{cc|y4=j>g5{X_=5Ug?vCNo=uqLDw1({CulU{yi#ox0=i zb@n^geJNP8K5k?*&*gHB^)QnqB_*@7mlM=7Gc%i8TCQE82aNh!ke=2riX?M2fjB2h z%k3phK!Db<_FLS6-d_8}4qaW{M>#pRuboMzky{%f>1S)JstQrG+M1f~2p5+}XN!yO zr&=GZMw=f0iGzx1RGyt*2qw%=LQI5=6n^X!C-j`q)eRObj!w3Ow>Uj`(;mH9LZQ%T zw2=x=CYN^&i{Ed8LZd%SPg@unxx2dZZH~q6#9s5#vw(<+sTc;&ER8qRg=b^Ro$T#j zg_xR}ww9D6-^XexHhIAJ?{AA*`;wcRo3dLqa}`YKttOAM+`+3_T3Q;c1u1Fi8~89N zyY9=&o(TWIK=aVgvUo;k$lalm^AHHcm^cvTD=?WAERCx`DO74t`}d@zB=BqAzIB1) zH3>Z)4T~b1tG|yfhm(q>Ml-J*rFKdEEKS26Mb@W{^#bXmH1(kMCD zqO-G8`BdN*wp(x}$ksNcp+WSPOMFPvwm<;AY?4k!y1LHtqkb1(Vd?}84F$nX1eMI3 zq0xaPJJTC6{sD`K?I(`#u$)%g$m4lhc=-2yfUbeTI)7d@fYPY}pQF~h@wf#%00;_l z!m%CbLq2l&ug{Qed;tdl`hH{LEd;Q1=>Wej7>RxD_U(_9f~bDZixRRhlE<>x9tgCT z`D8>QnO+ztnRvrWkYUxiyK5sJYG#$CbqcpVs}_U_tI ze`O7cmD$uM<&Se;pD{Iy;`jQr7ImC~M#DeNcO+`lvSNH*``7>Yw$L&-co>EBRdinA zf9(8|nUe_BiHnT%vDjM4-@NFn0zQ9VpB&IeKItD$PTp=jMZB^@Kw|@d_i^`j;hO>s zk?4tT8yjaXR5r|%xsg_s%$A~zfSK{2wDwJH?#p;Xy1b8^v*Gf0`O~BsATmL8RucM1 z)A0XyIk&N>F9!2#icR0cXo!du9`o9)^U@97t+n-68H#3*-_KPCt=6B<^ zq|lqHxcJjAQ6mmTZEeJ?n8B_8DwLz^r>-E8$ZiN6-*A1TA|XK}HZ~TB>+mk6(H1^` z-q=`Wm$}jCLDQt{Y&wns1y1|<`FVO0&laz)ujBD}7L%#28t7n<<0h5ABBL<|m38t2`coIk#+I@DDINe>_OB`xF!& zS$cU*PyB>Of?9HNGN`mVms$^H*;6s)<>j@twf5w%U*6MB1x^$u%qCo_{FUl@vuQ%0 z*7VhVkmSKyf+gEnTR$}pJEE^op!bZ7oC4+kZh-zS?VO`>si3;#I))14gJO)MzlCD4 zp|%0>CGajuEr-$Tt1o4c=Kj?qDg)qcZMQIp-}cp*|@qszEgYY$k8ZM zBMnVWN_F)G1Ob#d@tr#n2t;;vc4mGifuQ5jxboxsW?WocS65eNrd*k#fd!c2*IivM zZr(m~Q8#bDW%Gmr&6^r@?&q{?{;LqQcsqN_LjHerg7*^dqKyp%>#38}-foUszKZL( zXk}%ELS?@enY(olA`9%kf6 diff --git a/class_p_s3_u_s_b-members.html b/class_p_s3_u_s_b-members.html index 61040b73..2cf2214b 100644 --- a/class_p_s3_u_s_b-members.html +++ b/class_p_s3_u_s_b-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -108,10 +83,10 @@ Collaboration diagram for PS3USB:
Collaboration graph
- - - - + + + +
[legend]
@@ -218,9 +193,11 @@ Protected Attributes

One can only set the color of the bulb, set the rumble, set and get the bluetooth address and calibrate the magnetometer via USB on the Move controller.

Information about the protocol can be found at the wiki: https://github.com/felis/USB_Host_Shield_2.0/wiki/PS3-Information.

-

Definition at line 49 of file PS3USB.h.

+

Definition at line 49 of file PS3USB.h.

Constructor & Destructor Documentation

- + +

◆ PS3USB()

+
@@ -281,12 +258,14 @@ Protected Attributes -

Definition at line 23 of file PS3USB.cpp.

+

Definition at line 23 of file PS3USB.cpp.

Member Function Documentation

- + +

◆ Init()

+
@@ -335,11 +314,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 47 of file PS3USB.cpp.

+

Definition at line 47 of file PS3USB.cpp.

- + +

◆ Release()

+
@@ -363,11 +344,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 262 of file PS3USB.cpp.

+

Definition at line 262 of file PS3USB.cpp.

- + +

◆ Poll()

+
@@ -391,11 +374,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 272 of file PS3USB.cpp.

+

Definition at line 272 of file PS3USB.cpp.

- + +

◆ GetAddress()

+
@@ -419,11 +404,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 84 of file PS3USB.h.

+

Definition at line 84 of file PS3USB.h.

- + +

◆ isReady()

+
@@ -445,11 +432,13 @@ Protected Attributes

Used to check if the controller has been initialized.

Returns
True if it's ready.
-

Definition at line 92 of file PS3USB.h.

+

Definition at line 92 of file PS3USB.h.

- + +

◆ VIDPIDOK()

+
@@ -491,11 +480,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 102 of file PS3USB.h.

+

Definition at line 102 of file PS3USB.h.

- + +

◆ setBdaddr()

+
@@ -515,11 +506,13 @@ Protected Attributes -

Definition at line 465 of file PS3USB.cpp.

+

Definition at line 465 of file PS3USB.cpp.

- + +

◆ getBdaddr()

+
@@ -539,11 +532,13 @@ Protected Attributes -

Definition at line 478 of file PS3USB.cpp.

+

Definition at line 478 of file PS3USB.cpp.

- + +

◆ setMoveBdaddr()

+
@@ -563,11 +558,13 @@ Protected Attributes -

Definition at line 527 of file PS3USB.cpp.

+

Definition at line 527 of file PS3USB.cpp.

- + +

◆ getMoveBdaddr()

+
@@ -587,11 +584,13 @@ Protected Attributes -

Definition at line 543 of file PS3USB.cpp.

+

Definition at line 543 of file PS3USB.cpp.

- + +

◆ getMoveCalibration()

+
@@ -611,11 +610,13 @@ Protected Attributes -

Definition at line 553 of file PS3USB.cpp.

+

Definition at line 553 of file PS3USB.cpp.

- + +

◆ getButtonPress()

+
@@ -638,11 +639,13 @@ Protected Attributes
Returns
getButtonPress(ButtonEnum b) will return a true as long as a button is held down, while getButtonClick(ButtonEnum b) will return true once for each button press.
-

Definition at line 316 of file PS3USB.cpp.

+

Definition at line 316 of file PS3USB.cpp.

- + +

◆ getButtonClick()

+
@@ -665,11 +668,13 @@ Protected Attributes
Returns
getButtonPress(ButtonEnum b) will return a true as long as a button is held down, while getButtonClick(ButtonEnum b) will return true once for each button press.
-

Definition at line 320 of file PS3USB.cpp.

+

Definition at line 320 of file PS3USB.cpp.

- + +

◆ getAnalogButton()

+
@@ -690,11 +695,13 @@ Protected Attributes
Returns
Analog value in the range of 0-255.
-

Definition at line 327 of file PS3USB.cpp.

+

Definition at line 327 of file PS3USB.cpp.

- + +

◆ getAnalogHat()

+
@@ -715,11 +722,13 @@ Protected Attributes
Returns
Return the analog value in the range of 0-255.
-

Definition at line 331 of file PS3USB.cpp.

+

Definition at line 331 of file PS3USB.cpp.

- + +

◆ getSensor()

+
@@ -740,11 +749,13 @@ Protected Attributes
Returns
Return the raw sensor value.
-

Definition at line 335 of file PS3USB.cpp.

+

Definition at line 335 of file PS3USB.cpp.

- + +

◆ getAngle()

+
@@ -765,11 +776,13 @@ Protected Attributes
Returns
Return the angle in the range of 0-360.
-

Definition at line 339 of file PS3USB.cpp.

+

Definition at line 339 of file PS3USB.cpp.

- + +

◆ getStatus()

+
@@ -790,11 +803,13 @@ Protected Attributes
Returns
True if correct and false if not.
-

Definition at line 360 of file PS3USB.cpp.

+

Definition at line 360 of file PS3USB.cpp.

- + +

◆ printStatusString()

+
@@ -808,11 +823,13 @@ Protected Attributes

Read all the available statuses from the controller and prints it as a nice formated string.

-

Definition at line 364 of file PS3USB.cpp.

+

Definition at line 364 of file PS3USB.cpp.

- + +

◆ setAllOff()

+
@@ -826,11 +843,13 @@ Protected Attributes

Used to set all LEDs and rumble off.

-

Definition at line 403 of file PS3USB.cpp.

+

Definition at line 403 of file PS3USB.cpp.

- + +

◆ setRumbleOff()

+
@@ -844,11 +863,13 @@ Protected Attributes

Turn off rumble.

-

Definition at line 410 of file PS3USB.cpp.

+

Definition at line 410 of file PS3USB.cpp.

- + +

◆ setRumbleOn() [1/2]

+
@@ -868,11 +889,13 @@ Protected Attributes -

Definition at line 420 of file PS3USB.cpp.

+

Definition at line 420 of file PS3USB.cpp.

- + +

◆ setRumbleOn() [2/2]

+
@@ -917,11 +940,13 @@ Protected Attributes -

Definition at line 431 of file PS3USB.cpp.

+

Definition at line 431 of file PS3USB.cpp.

- + +

◆ setLedRaw()

+
@@ -941,11 +966,13 @@ Protected Attributes -

Definition at line 441 of file PS3USB.cpp.

+

Definition at line 441 of file PS3USB.cpp.

- + +

◆ setLedOff() [1/2]

+
@@ -967,11 +994,13 @@ Protected Attributes

Turn all LEDs off.

-

Definition at line 215 of file PS3USB.h.

+

Definition at line 215 of file PS3USB.h.

- + +

◆ setLedOff() [2/2]

+
@@ -991,11 +1020,13 @@ Protected Attributes -

Definition at line 446 of file PS3USB.cpp.

+

Definition at line 446 of file PS3USB.cpp.

- + +

◆ setLedOn()

+
@@ -1015,11 +1046,13 @@ Protected Attributes -

Definition at line 451 of file PS3USB.cpp.

+

Definition at line 451 of file PS3USB.cpp.

- + +

◆ setLedToggle()

+
@@ -1039,11 +1072,13 @@ Protected Attributes -

Definition at line 460 of file PS3USB.cpp.

+

Definition at line 460 of file PS3USB.cpp.

- + +

◆ moveSetBulb() [1/2]

+
@@ -1079,11 +1114,13 @@ Protected Attributes -

Definition at line 504 of file PS3USB.cpp.

+

Definition at line 504 of file PS3USB.cpp.

- + +

◆ moveSetBulb() [2/2]

+
@@ -1103,11 +1140,13 @@ Protected Attributes -

Definition at line 513 of file PS3USB.cpp.

+

Definition at line 513 of file PS3USB.cpp.

- + +

◆ moveSetRumble()

+
@@ -1127,11 +1166,13 @@ Protected Attributes -

Definition at line 517 of file PS3USB.cpp.

+

Definition at line 517 of file PS3USB.cpp.

- + +

◆ attachOnInit()

+
@@ -1159,12 +1200,14 @@ Protected Attributes -

Definition at line 254 of file PS3USB.h.

+

Definition at line 254 of file PS3USB.h.

Member Data Documentation

- + +

◆ PS3Connected

+
@@ -1175,11 +1218,13 @@ Protected Attributes

Variable used to indicate if the normal playstation controller is successfully connected.

-

Definition at line 256 of file PS3USB.h.

+

Definition at line 256 of file PS3USB.h.

- + +

◆ PS3MoveConnected

+
@@ -1190,11 +1235,13 @@ Protected Attributes

Variable used to indicate if the move controller is successfully connected.

-

Definition at line 262 of file PS3USB.h.

+

Definition at line 262 of file PS3USB.h.

- + +

◆ PS3NavigationConnected

+
@@ -1205,11 +1252,13 @@ Protected Attributes

Variable used to indicate if the navigation controller is successfully connected.

-

Definition at line 264 of file PS3USB.h.

+

Definition at line 264 of file PS3USB.h.

- + +

◆ pUsb

+
@@ -1228,11 +1277,13 @@ Protected Attributes

Pointer to USB class instance.

-

Definition at line 268 of file PS3USB.h.

+

Definition at line 268 of file PS3USB.h.

- + +

◆ bAddress

+
@@ -1251,11 +1302,13 @@ Protected Attributes

Device address.

-

Definition at line 270 of file PS3USB.h.

+

Definition at line 270 of file PS3USB.h.

- + +

◆ epInfo

+
@@ -1274,7 +1327,7 @@ Protected Attributes

Endpoint info structure.

-

Definition at line 272 of file PS3USB.h.

+

Definition at line 272 of file PS3USB.h.

@@ -1287,7 +1340,7 @@ Protected Attributes diff --git a/class_p_s3_u_s_b__coll__graph.map b/class_p_s3_u_s_b__coll__graph.map index 3e75fdd3..5264762c 100644 --- a/class_p_s3_u_s_b__coll__graph.map +++ b/class_p_s3_u_s_b__coll__graph.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/class_p_s3_u_s_b__coll__graph.md5 b/class_p_s3_u_s_b__coll__graph.md5 index 1aae81d3..3cb61626 100644 --- a/class_p_s3_u_s_b__coll__graph.md5 +++ b/class_p_s3_u_s_b__coll__graph.md5 @@ -1 +1 @@ -06f5f28fefcd0973f7f3cf5ab5f01033 \ No newline at end of file +419b4e935c78301cc0a62882347018ba \ No newline at end of file diff --git a/class_p_s3_u_s_b__coll__graph.png b/class_p_s3_u_s_b__coll__graph.png index 3def64559bee092572a2fa11125e156ef14a2a23..06c5c9ff0b81c813d9739a123a8c6569cf0f2dee 100644 GIT binary patch literal 10211 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 diff --git a/class_p_s3_u_s_b__inherit__graph.map b/class_p_s3_u_s_b__inherit__graph.map index 33940989..1e21ae06 100644 --- a/class_p_s3_u_s_b__inherit__graph.map +++ b/class_p_s3_u_s_b__inherit__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_p_s3_u_s_b__inherit__graph.md5 b/class_p_s3_u_s_b__inherit__graph.md5 index b241da78..25fa853d 100644 --- a/class_p_s3_u_s_b__inherit__graph.md5 +++ b/class_p_s3_u_s_b__inherit__graph.md5 @@ -1 +1 @@ -77f7ca570be060c1a40a0845510a4a59 \ No newline at end of file +b322f707cca63b07e436aa0d678c09f6 \ No newline at end of file diff --git a/class_p_s3_u_s_b__inherit__graph.png b/class_p_s3_u_s_b__inherit__graph.png index b1442de3e78350ca6c7974ca3eff327bd1dab63a..3c9a178a87764f9321e5da4dcdb3ce7ca0439175 100644 GIT binary patch literal 3308 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 NeeH)@A2b{y{sSbM;PL - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - - + + +
[legend]
@@ -108,15 +83,15 @@ Collaboration diagram for PS4BT:
Collaboration graph
- - - - - - - - - + + + + + + + + +
[legend]
@@ -257,9 +232,11 @@ Additional Inherited Members

Detailed Description

This class implements support for the PS4 controller via Bluetooth. It uses the BTHID class for all the Bluetooth communication.

-

Definition at line 28 of file PS4BT.h.

+

Definition at line 28 of file PS4BT.h.

Constructor & Destructor Documentation

- + +

◆ PS4BT()

+
@@ -305,12 +282,14 @@ Additional Inherited Members -

Definition at line 36 of file PS4BT.h.

+

Definition at line 36 of file PS4BT.h.

Member Function Documentation

- + +

◆ connected()

+
@@ -332,11 +311,13 @@ Additional Inherited Members

Used to check if a PS4 controller is connected.

Returns
Returns true if it is connected.
-

Definition at line 45 of file PS4BT.h.

+

Definition at line 45 of file PS4BT.h.

- + +

◆ ParseBTHIDData()

+
@@ -377,11 +358,13 @@ Additional Inherited Members

Reimplemented from BTHID.

-

Definition at line 56 of file PS4BT.h.

+

Definition at line 56 of file PS4BT.h.

- + +

◆ OnInitBTHID()

+
@@ -405,11 +388,13 @@ Additional Inherited Members

Reimplemented from BTHID.

-

Definition at line 65 of file PS4BT.h.

+

Definition at line 65 of file PS4BT.h.

- + +

◆ ResetBTHID()

+
@@ -433,11 +418,13 @@ Additional Inherited Members

Reimplemented from BTHID.

-

Definition at line 75 of file PS4BT.h.

+

Definition at line 75 of file PS4BT.h.

- + +

◆ sendOutputReport()

+
@@ -467,7 +454,7 @@ Additional Inherited Members

Implements PS4Parser.

-

Definition at line 81 of file PS4BT.h.

+

Definition at line 81 of file PS4BT.h.

@@ -479,7 +466,7 @@ Additional Inherited Members diff --git a/class_p_s4_b_t__coll__graph.map b/class_p_s4_b_t__coll__graph.map index d2126a78..e7ff1b1c 100644 --- a/class_p_s4_b_t__coll__graph.map +++ b/class_p_s4_b_t__coll__graph.map @@ -1,11 +1,11 @@ - - - - - - - - - + + + + + + + + + diff --git a/class_p_s4_b_t__coll__graph.md5 b/class_p_s4_b_t__coll__graph.md5 index 57a44763..62540081 100644 --- a/class_p_s4_b_t__coll__graph.md5 +++ b/class_p_s4_b_t__coll__graph.md5 @@ -1 +1 @@ -4bb85a2b4d5163f1d591f32b835727dc \ No newline at end of file +caf6d41b8cdc6da742f8f2054e40560a \ No newline at end of file diff --git a/class_p_s4_b_t__coll__graph.png b/class_p_s4_b_t__coll__graph.png index 56e8eaf240482f6b6bc2473c21519fb686057068..105c2bf151fcf80d732669cd7cd0da6cbde4a633 100644 GIT binary patch literal 22210 zcmd43bzGMFw=Mb-(%mVgq_i}OA_9VRDbk2^O1IKdq7o{NbSvGB0@5XoNVjy~`L4as z{+xaGZ|{5lx}Uq&l7+kvPkdv}F~=O^2~$;;!^fe)K_C$LkK|?45eSq{_)~|40YAy7 zwkv`EVVEe&$sn$f|EAVwzegY#5szf)6Ai#GJki&R5#}Leg%^}E_ZdbwK2TB&Txd}9zJBcbEm!~e2o$Y?-QP(;Ve$P zpNy=m$@jNR(-X zrX3Nvd>e7x&-k8yCptbpPJLEshlPzjuxf8&@;Z`M#H2MC|4FIIHDSA{(CvmZf{qS9 z!|T4sJH~bAf4kjbY6dbDDSMLd&}J(q4IZXQ`Q1G|+Aba{(k<+`yg1uUxjM(xuXTO6 z+?!PDed0tX=}v@jSRdt16m>*(b#*1YBel}ZPZyT+gX*>g5e^PcS*dJdw3Z4CW<|&a$uVAJ+s|k8F-NGCnJMS!L5rPDH||6 zta-lEO6dMOj14h0ZF0x^nD6ezzD80X6*cvIS1i}g;o+#Ogy%jx20jfs!r|r1)=xs# zCEh206|zf9N=gP{CCxB}z}#i3hfx}O6Q`x6tqf%ox^7Mc`JFE?l$4eZQ1gh3)4-BP z-Vq8SLoT|bcDo@Qmy$;lt4T4Qr+IvwDxTM{$f=G?r>HGa>}7wR7FVK_-*x0J!NY5V zQ89k;B1^C!CWd%wY6>xhUqjBN&3NMm`edbj@yPAN)uHUcEpI!Yi{G$ggg8t)qeiZ~ z71+h+DP+DbEaWD`xmH(Khe&N1U0C}0*%4-fPTU!5etteQBBH=K@tb*{tgbH2`T6E>rrfs6!I*3TR;7O^psJQr>jSZVkJ`@y`-y6TaO&kpj477B0DNxbU z;v&cmUM}?zOJnVxET@FqP1l6IT<+BpyR*ByOTN@xZ|VMoP{8l=M^!s9hz};up9c

40(85(* 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 literal 19041 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 - - - + + + diff --git a/class_p_s4_b_t__inherit__graph.md5 b/class_p_s4_b_t__inherit__graph.md5 index 22e73541..10dc4741 100644 --- a/class_p_s4_b_t__inherit__graph.md5 +++ b/class_p_s4_b_t__inherit__graph.md5 @@ -1 +1 @@ -405752bfa16040ed3832aa96d3e4fa2f \ No newline at end of file +2de412526e28e795ed39015c162d3536 \ No newline at end of file diff --git a/class_p_s4_b_t__inherit__graph.png b/class_p_s4_b_t__inherit__graph.png index cfb58080f18e4454ebc6bf95faa6ed48c1a9b270..f89976765e80ca34b17813a0f40a7ccd90c0ab82 100644 GIT binary patch literal 7090 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 - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@

- + - - + + + + - + - - + + + +
Inheritance graph
- - + +
[legend]
@@ -166,9 +141,11 @@ Protected Member Functions

Detailed Description

This class parses all the data sent by the PS4 controller

-

Definition at line 124 of file PS4Parser.h.

+

Definition at line 124 of file PS4Parser.h.

Constructor & Destructor Documentation

- + +

◆ PS4Parser()

+
@@ -190,12 +167,14 @@ Protected Member Functions

Constructor for the PS4Parser class.

-

Definition at line 127 of file PS4Parser.h.

+

Definition at line 127 of file PS4Parser.h.

Member Function Documentation

- + +

◆ getButtonPress()

+
@@ -218,11 +197,13 @@ Protected Member Functions
Returns
getButtonPress(ButtonEnum b) will return a true as long as a button is held down, while getButtonClick(ButtonEnum b) will return true once for each button press.
-

Definition at line 50 of file PS4Parser.cpp.

+

Definition at line 50 of file PS4Parser.cpp.

- + +

◆ getButtonClick()

+
@@ -245,11 +226,13 @@ Protected Member Functions
Returns
getButtonPress(ButtonEnum b) will return a true as long as a button is held down, while getButtonClick(ButtonEnum b) will return true once for each button press.
-

Definition at line 57 of file PS4Parser.cpp.

+

Definition at line 57 of file PS4Parser.cpp.

- + +

◆ getAnalogButton()

+
@@ -270,11 +253,13 @@ Protected Member Functions
Returns
Analog value in the range of 0-255.
-

Definition at line 64 of file PS4Parser.cpp.

+

Definition at line 64 of file PS4Parser.cpp.

- + +

◆ getAnalogHat()

+
@@ -295,11 +280,13 @@ Protected Member Functions
Returns
Return the analog value in the range of 0-255.
-

Definition at line 72 of file PS4Parser.cpp.

+

Definition at line 72 of file PS4Parser.cpp.

- + +

◆ getX()

+
@@ -339,11 +326,13 @@ Protected Member Functions
Returns
Returns the x-coordinate of the finger.
-

Definition at line 170 of file PS4Parser.h.

+

Definition at line 170 of file PS4Parser.h.

- + +

◆ getY()

+
@@ -383,11 +372,13 @@ Protected Member Functions
Returns
Returns the y-coordinate of the finger.
-

Definition at line 182 of file PS4Parser.h.

+

Definition at line 182 of file PS4Parser.h.

- + +

◆ isTouching()

+
@@ -427,11 +418,13 @@ Protected Member Functions
Returns
Returns true if the specific finger is touching the touchpad.
-

Definition at line 194 of file PS4Parser.h.

+

Definition at line 194 of file PS4Parser.h.

- + +

◆ getTouchCounter()

+
@@ -471,11 +464,13 @@ Protected Member Functions
Returns
Return the value of the counter, note that it is only a 7-bit value.
-

Definition at line 206 of file PS4Parser.h.

+

Definition at line 206 of file PS4Parser.h.

- + +

◆ getAngle()

+
@@ -504,11 +499,13 @@ Protected Member Functions
Returns
Return the angle in the range of 0-360.
-

Definition at line 215 of file PS4Parser.h.

+

Definition at line 215 of file PS4Parser.h.

- + +

◆ getSensor()

+
@@ -537,11 +534,13 @@ Protected Member Functions
Returns
Returns the raw sensor reading.
-

Definition at line 227 of file PS4Parser.h.

+

Definition at line 227 of file PS4Parser.h.

- + +

◆ getBatteryLevel()

+
@@ -563,11 +562,13 @@ Protected Member Functions

Return the battery level of the PS4 controller.

Returns
The battery level in the range 0-15.
-

Definition at line 250 of file PS4Parser.h.

+

Definition at line 250 of file PS4Parser.h.

- + +

◆ getUsbStatus()

+
@@ -589,11 +590,13 @@ Protected Member Functions

Use this to check if an USB cable is connected to the PS4 controller.

Returns
Returns true if an USB cable is connected.
-

Definition at line 258 of file PS4Parser.h.

+

Definition at line 258 of file PS4Parser.h.

- + +

◆ getAudioStatus()

+
@@ -615,11 +618,13 @@ Protected Member Functions

Use this to check if an audio jack cable is connected to the PS4 controller.

Returns
Returns true if an audio jack cable is connected.
-

Definition at line 266 of file PS4Parser.h.

+

Definition at line 266 of file PS4Parser.h.

- + +

◆ getMicStatus()

+
@@ -641,11 +646,13 @@ Protected Member Functions

Use this to check if a microphone is connected to the PS4 controller.

Returns
Returns true if a microphone is connected.
-

Definition at line 274 of file PS4Parser.h.

+

Definition at line 274 of file PS4Parser.h.

- + +

◆ setAllOff()

+
@@ -667,11 +674,13 @@ Protected Member Functions

Turn both rumble and the LEDs off.

-

Definition at line 279 of file PS4Parser.h.

+

Definition at line 279 of file PS4Parser.h.

- + +

◆ setRumbleOff()

+
@@ -693,11 +702,13 @@ Protected Member Functions

Set rumble off.

-

Definition at line 285 of file PS4Parser.h.

+

Definition at line 285 of file PS4Parser.h.

- + +

◆ setRumbleOn() [1/2]

+
@@ -725,11 +736,13 @@ Protected Member Functions -

Definition at line 293 of file PS4Parser.h.

+

Definition at line 293 of file PS4Parser.h.

- + +

◆ setRumbleOn() [2/2]

+
@@ -768,11 +781,13 @@ Protected Member Functions -

Definition at line 305 of file PS4Parser.h.

+

Definition at line 305 of file PS4Parser.h.

- + +

◆ setLedOff()

+
@@ -794,11 +809,13 @@ Protected Member Functions

Turn all LEDs off.

-

Definition at line 312 of file PS4Parser.h.

+

Definition at line 312 of file PS4Parser.h.

- + +

◆ setLed() [1/2]

+
@@ -842,11 +859,13 @@ Protected Member Functions -

Definition at line 320 of file PS4Parser.h.

+

Definition at line 320 of file PS4Parser.h.

- + +

◆ setLed() [2/2]

+
@@ -874,11 +893,13 @@ Protected Member Functions -

Definition at line 331 of file PS4Parser.h.

+

Definition at line 331 of file PS4Parser.h.

- + +

◆ setLedFlash()

+
@@ -917,11 +938,13 @@ Protected Member Functions -

Definition at line 340 of file PS4Parser.h.

+

Definition at line 340 of file PS4Parser.h.

- + +

◆ Parse()

+
@@ -960,11 +983,13 @@ Protected Member Functions -

Definition at line 76 of file PS4Parser.cpp.

+

Definition at line 76 of file PS4Parser.cpp.

- + +

◆ Reset()

+
@@ -986,11 +1011,13 @@ Protected Member Functions

Used to reset the different buffers to their default values

-

Definition at line 130 of file PS4Parser.cpp.

+

Definition at line 130 of file PS4Parser.cpp.

- + +

◆ sendOutputReport()

+
@@ -1031,7 +1058,7 @@ Protected Member Functions diff --git a/class_p_s4_parser__inherit__graph.map b/class_p_s4_parser__inherit__graph.map index 5b3ff389..9f167a7f 100644 --- a/class_p_s4_parser__inherit__graph.map +++ b/class_p_s4_parser__inherit__graph.map @@ -1,4 +1,4 @@ - - + + diff --git a/class_p_s4_parser__inherit__graph.md5 b/class_p_s4_parser__inherit__graph.md5 index 7d6cd78a..65bfd4cb 100644 --- a/class_p_s4_parser__inherit__graph.md5 +++ b/class_p_s4_parser__inherit__graph.md5 @@ -1 +1 @@ -b842fe07d690c9e08045bf8e0d96d45b \ No newline at end of file +dc6cd7ca1f2260cb5f86a8ae5bfdc9df \ No newline at end of file diff --git a/class_p_s4_parser__inherit__graph.png b/class_p_s4_parser__inherit__graph.png index 76bde1ff3e785227a3118192b8844816bdc44f3d..fd0acdf9e7e2f32dad9b66d5f4ac6a17eaec9755 100644 GIT binary patch literal 3691 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 NS`Qv;RH!`<`5%CKneG4p diff --git a/class_p_s4_u_s_b-members.html b/class_p_s4_u_s_b-members.html index 8bea55cc..aa146c1f 100644 --- a/class_p_s4_u_s_b-members.html +++ b/class_p_s4_u_s_b-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - - - - + + + + +
[legend]
@@ -110,14 +85,14 @@ Collaboration diagram for PS4USB:
Collaboration graph
- - - - - - - - + + + + + + + +
[legend]
@@ -286,9 +261,11 @@ Additional Inherited Members

Detailed Description

This class implements support for the PS4 controller via USB. It uses the HIDUniversal class for all the USB communication.

-

Definition at line 32 of file PS4USB.h.

+

Definition at line 32 of file PS4USB.h.

Constructor & Destructor Documentation

- + +

◆ PS4USB()

+
@@ -316,12 +293,14 @@ Additional Inherited Members -

Definition at line 38 of file PS4USB.h.

+

Definition at line 38 of file PS4USB.h.

Member Function Documentation

- + +

◆ connected()

+
@@ -343,11 +322,13 @@ Additional Inherited Members

Used to check if a PS4 controller is connected.

Returns
Returns true if it is connected.
-

Definition at line 47 of file PS4USB.h.

+

Definition at line 47 of file PS4USB.h.

- + +

◆ attachOnInit()

+
@@ -375,11 +356,13 @@ Additional Inherited Members -

Definition at line 55 of file PS4USB.h.

+

Definition at line 55 of file PS4USB.h.

- + +

◆ ParseHIDData()

+
@@ -434,11 +417,13 @@ Additional Inherited Members

Reimplemented from HIDUniversal.

-

Definition at line 68 of file PS4USB.h.

+

Definition at line 68 of file PS4USB.h.

- + +

◆ OnInitSuccessful()

+
@@ -462,11 +447,13 @@ Additional Inherited Members

Reimplemented from HIDUniversal.

-

Definition at line 78 of file PS4USB.h.

+

Definition at line 78 of file PS4USB.h.

- + +

◆ sendOutputReport()

+
@@ -496,11 +483,13 @@ Additional Inherited Members

Implements PS4Parser.

-

Definition at line 91 of file PS4USB.h.

+

Definition at line 91 of file PS4USB.h.

- + +

◆ VIDPIDOK()

+
@@ -542,7 +531,7 @@ Additional Inherited Members

Reimplemented from USBDeviceConfig.

-

Definition at line 123 of file PS4USB.h.

+

Definition at line 123 of file PS4USB.h.

@@ -554,7 +543,7 @@ Additional Inherited Members diff --git a/class_p_s4_u_s_b__coll__graph.map b/class_p_s4_u_s_b__coll__graph.map index e7c3c37e..73de91ef 100644 --- a/class_p_s4_u_s_b__coll__graph.map +++ b/class_p_s4_u_s_b__coll__graph.map @@ -1,10 +1,10 @@ - - - - - - - - + + + + + + + + diff --git a/class_p_s4_u_s_b__coll__graph.md5 b/class_p_s4_u_s_b__coll__graph.md5 index 31d2a590..58a3f35e 100644 --- a/class_p_s4_u_s_b__coll__graph.md5 +++ b/class_p_s4_u_s_b__coll__graph.md5 @@ -1 +1 @@ -6510784396c1c05ff338806741b9ed6c \ No newline at end of file +c1e443ad969075b8a7ad79af4e899d3e \ No newline at end of file diff --git a/class_p_s4_u_s_b__coll__graph.png b/class_p_s4_u_s_b__coll__graph.png index cfbf5f0e71e5edb26619545bcade2c528de51e54..4509681b17ec8e92252b242f46acb51d54c6a80a 100644 GIT binary patch literal 23675 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
xNNX7yn#9{) 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

kTR|M@wu}+ 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 lV*{-v0*+T - - - - - + + + + + diff --git a/class_p_s4_u_s_b__inherit__graph.md5 b/class_p_s4_u_s_b__inherit__graph.md5 index da6b8966..dca636bd 100644 --- a/class_p_s4_u_s_b__inherit__graph.md5 +++ b/class_p_s4_u_s_b__inherit__graph.md5 @@ -1 +1 @@ -cb813f5f3004b0786d96c27613056cb9 \ No newline at end of file +2c2ec41d26cf7fe9f9ccfbd8eebeb9bd \ No newline at end of file diff --git a/class_p_s4_u_s_b__inherit__graph.png b/class_p_s4_u_s_b__inherit__graph.png index 5849575899b36493c71b9c88051f975319bda9ae..d086f36ea480d8536916169e3eea588a8cfaca92 100644 GIT binary patch literal 12284 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 z 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 KsghSlf&UAqNNtAz diff --git a/class_p_s_buzz-members.html b/class_p_s_buzz-members.html index 1c84c0fe..9222c48e 100644 --- a/class_p_s_buzz-members.html +++ b/class_p_s_buzz-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@

- + - - + + + + - + - - + + + +
Inheritance graph
- - - - + + + +
[legend]
@@ -110,13 +85,13 @@ Collaboration diagram for PSBuzz:
Collaboration graph
- - - - - - - + + + + + + +
[legend]
@@ -249,9 +224,11 @@ Additional Inherited Members

Detailed Description

This class implements support for the PS Buzz controllers via USB. It uses the HIDUniversal class for all the USB communication.

-

Definition at line 43 of file PSBuzz.h.

+

Definition at line 43 of file PSBuzz.h.

Constructor & Destructor Documentation

- + +

◆ PSBuzz()

+
@@ -279,12 +256,14 @@ Additional Inherited Members -

Definition at line 49 of file PSBuzz.h.

+

Definition at line 49 of file PSBuzz.h.

Member Function Documentation

- + +

◆ connected()

+
@@ -306,11 +285,13 @@ Additional Inherited Members

Used to check if a PS Buzz controller is connected.

Returns
Returns true if it is connected.
-

Definition at line 58 of file PSBuzz.h.

+

Definition at line 58 of file PSBuzz.h.

- + +

◆ attachOnInit()

+
@@ -338,11 +319,13 @@ Additional Inherited Members -

Definition at line 66 of file PSBuzz.h.

+

Definition at line 66 of file PSBuzz.h.

- + +

◆ getButtonPress()

+
@@ -376,11 +359,13 @@ Additional Inherited Members
Returns
getButtonPress(ButtonEnum b) will return a true as long as a button is held down, while getButtonClick(ButtonEnum b) will return true once for each button press.
-

Definition at line 52 of file PSBuzz.cpp.

+

Definition at line 52 of file PSBuzz.cpp.

- + +

◆ getButtonClick()

+
@@ -414,11 +399,13 @@ Additional Inherited Members
Returns
getButtonPress(ButtonEnum b) will return a true as long as a button is held down, while getButtonClick(ButtonEnum b) will return true once for each button press.
-

Definition at line 56 of file PSBuzz.cpp.

+

Definition at line 56 of file PSBuzz.cpp.

- + +

◆ setLedRaw()

+
@@ -450,11 +437,13 @@ Additional Inherited Members -

Definition at line 64 of file PSBuzz.cpp.

+

Definition at line 64 of file PSBuzz.cpp.

- + +

◆ setLedOffAll()

+
@@ -476,11 +465,13 @@ Additional Inherited Members

Turn all LEDs off.

-

Definition at line 98 of file PSBuzz.h.

+

Definition at line 98 of file PSBuzz.h.

- + +

◆ setLedOff()

+
@@ -508,11 +499,13 @@ Additional Inherited Members -

Definition at line 108 of file PSBuzz.h.

+

Definition at line 108 of file PSBuzz.h.

- + +

◆ setLedOnAll()

+
@@ -534,11 +527,13 @@ Additional Inherited Members

Turn all LEDs on.

-

Definition at line 114 of file PSBuzz.h.

+

Definition at line 114 of file PSBuzz.h.

- + +

◆ setLedOn()

+
@@ -566,11 +561,13 @@ Additional Inherited Members -

Definition at line 124 of file PSBuzz.h.

+

Definition at line 124 of file PSBuzz.h.

- + +

◆ setLedToggle()

+
@@ -598,11 +595,13 @@ Additional Inherited Members -

Definition at line 132 of file PSBuzz.h.

+

Definition at line 132 of file PSBuzz.h.

- + +

◆ ParseHIDData()

+
@@ -657,11 +656,13 @@ Additional Inherited Members

Reimplemented from HIDUniversal.

-

Definition at line 23 of file PSBuzz.cpp.

+

Definition at line 23 of file PSBuzz.cpp.

- + +

◆ OnInitSuccessful()

+
@@ -685,11 +686,13 @@ Additional Inherited Members

Reimplemented from HIDUniversal.

-

Definition at line 41 of file PSBuzz.cpp.

+

Definition at line 41 of file PSBuzz.cpp.

- + +

◆ Reset()

+
@@ -711,11 +714,13 @@ Additional Inherited Members

Used to reset the different buffers to their default values

-

Definition at line 157 of file PSBuzz.h.

+

Definition at line 157 of file PSBuzz.h.

- + +

◆ VIDPIDOK()

+
@@ -757,7 +762,7 @@ Additional Inherited Members

Reimplemented from USBDeviceConfig.

-

Definition at line 172 of file PSBuzz.h.

+

Definition at line 172 of file PSBuzz.h.

@@ -770,7 +775,7 @@ Additional Inherited Members diff --git a/class_p_s_buzz__coll__graph.map b/class_p_s_buzz__coll__graph.map index f195bd2c..e66070f0 100644 --- a/class_p_s_buzz__coll__graph.map +++ b/class_p_s_buzz__coll__graph.map @@ -1,9 +1,9 @@ - - - - - - - + + + + + + + diff --git a/class_p_s_buzz__coll__graph.md5 b/class_p_s_buzz__coll__graph.md5 index babb5e21..a7baa4ca 100644 --- a/class_p_s_buzz__coll__graph.md5 +++ b/class_p_s_buzz__coll__graph.md5 @@ -1 +1 @@ -fea9ba05db96f5aefabee7a11c9c9f52 \ No newline at end of file +21462fd15ee84876fa8daa1b607dba33 \ No newline at end of file diff --git a/class_p_s_buzz__coll__graph.png b/class_p_s_buzz__coll__graph.png index 788f51c9d1a9d9e04b13561b71734d5a4f858fca..7f22b269942f403c4bee52b5e9c0e4e86aebf23a 100644 GIT binary patch literal 21077 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 literal 17131 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 z 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 B1^WO1 diff --git a/class_p_s_buzz__inherit__graph.map b/class_p_s_buzz__inherit__graph.map index 86a7f79c..192a2ce5 100644 --- a/class_p_s_buzz__inherit__graph.map +++ b/class_p_s_buzz__inherit__graph.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/class_p_s_buzz__inherit__graph.md5 b/class_p_s_buzz__inherit__graph.md5 index f6913f03..9e4d2b3d 100644 --- a/class_p_s_buzz__inherit__graph.md5 +++ b/class_p_s_buzz__inherit__graph.md5 @@ -1 +1 @@ -044341a0d1db5d69a79fcdf68e3f63aa \ No newline at end of file +24bc2881d71535eed040c27bf71992a9 \ No newline at end of file diff --git a/class_p_s_buzz__inherit__graph.png b/class_p_s_buzz__inherit__graph.png index 35c3aa8d45dfff67c4dbde7c5a73b25d23ff103e..764ca7e9c2f1cc07a77fef9123e513963c657d8e 100644 GIT binary patch literal 8841 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 literal 8794 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 - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +

Detailed Description

-

Definition at line 96 of file parsetools.h.

+

Definition at line 96 of file parsetools.h.

Member Enumeration Documentation

- + +

◆ ParseMode

+
@@ -125,18 +102,18 @@ Public Member Functions
- - + +
Enumerator
modeArray  -
modeRange  -
Enumerator
modeArray 
modeRange 
-

Definition at line 99 of file parsetools.h.

+

Definition at line 99 of file parsetools.h.

Constructor & Destructor Documentation

- + +

◆ PTPListParser()

+
@@ -157,12 +134,14 @@ Public Member Functions
-

Definition at line 122 of file parsetools.h.

+

Definition at line 122 of file parsetools.h.

Member Function Documentation

- + +

◆ Initialize()

+
@@ -206,11 +185,13 @@ Public Member Functions
-

Definition at line 133 of file parsetools.h.

+

Definition at line 133 of file parsetools.h.

- + +

◆ Parse()

+
@@ -246,7 +227,7 @@ Public Member Functions
-

Definition at line 41 of file parsetools.cpp.

+

Definition at line 41 of file parsetools.cpp.

@@ -259,7 +240,7 @@ Public Member Functions diff --git a/class_report_desc_parser-members.html b/class_report_desc_parser-members.html index 84967627..5c81f12c 100644 --- a/class_report_desc_parser-members.html +++ b/class_report_desc_parser-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - + +
[legend]
@@ -106,11 +81,11 @@ Collaboration diagram for ReportDescParser:
Collaboration graph
- - - - - + + + + +
[legend]
@@ -304,7 +279,7 @@ Additional Inherited Members

Detailed Description

-

Definition at line 145 of file hidescriptorparser.h.

+

Definition at line 145 of file hidescriptorparser.h.


The documentation for this class was generated from the following file: @@ -313,7 +288,7 @@ Additional Inherited Members diff --git a/class_report_desc_parser2-members.html b/class_report_desc_parser2-members.html index 2f4844f5..89ff050c 100644 --- a/class_report_desc_parser2-members.html +++ b/class_report_desc_parser2-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - + +
[legend]
@@ -108,11 +83,11 @@ Collaboration diagram for ReportDescParser2:
Collaboration graph
- - - - - + + + + +
[legend]
@@ -314,9 +289,11 @@ Additional Inherited Members

Detailed Description

-

Definition at line 148 of file hidescriptorparser.h.

+

Definition at line 148 of file hidescriptorparser.h.

Constructor & Destructor Documentation

- + +

◆ ReportDescParser2()

+
@@ -348,12 +325,14 @@ Additional Inherited Members
-

Definition at line 165 of file hidescriptorparser.h.

+

Definition at line 165 of file hidescriptorparser.h.

Member Function Documentation

- + +

◆ ParseItem()

+
@@ -387,7 +366,7 @@ Additional Inherited Members

Reimplemented from ReportDescParserBase.

-

Definition at line 1432 of file hidescriptorparser.cpp.

+

Definition at line 1432 of file hidescriptorparser.cpp.

@@ -400,7 +379,7 @@ Additional Inherited Members diff --git a/class_report_desc_parser2__coll__graph.map b/class_report_desc_parser2__coll__graph.map index 8f0cb1a5..f0e83ac9 100644 --- a/class_report_desc_parser2__coll__graph.map +++ b/class_report_desc_parser2__coll__graph.map @@ -1,7 +1,7 @@ - - - - - + + + + + diff --git a/class_report_desc_parser2__coll__graph.md5 b/class_report_desc_parser2__coll__graph.md5 index af9db977..a7dc2736 100644 --- a/class_report_desc_parser2__coll__graph.md5 +++ b/class_report_desc_parser2__coll__graph.md5 @@ -1 +1 @@ -27a80771267ed2f61d1a7277c51beb79 \ No newline at end of file +337962214a97d1da9120f71057904a21 \ No newline at end of file diff --git a/class_report_desc_parser2__coll__graph.png b/class_report_desc_parser2__coll__graph.png index 9196dd1b5e248d2d44295cbec5cf48dde333d4e5..50cb5e9020d4ba6c21ec94b2fdf6f33431ce6189 100644 GIT binary patch literal 15423 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 Gy!jtarYi{m literal 14484 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%0Dk2_Gf;IE*Q>NdeH_N729_pDOCgL z6Rm255_o5{7D+GZOel%cuE(Qv9H0+D! zfcX6Br{UqorpTCHnz2Me1Z1!C{{#&GpM7ZK=m3F+w%y)b{nKTWPqZ=EnNs(eJsF3Gu+}zmft6N)7{JwaKtcC#l zAu*L7LdTob5A~^?1MP$l;F{5_8xK%j2&wI48fpHwDF0vM>)#ansZr2Xh#%TB&b!?| zf4*s0H{pVTfe4TTbu9mGa(9k#Z9S3Q1srT9V5Vx1hWOarj!mkp=IXWe>2nd=wm>ee z4|LK%^jC4!Y-xMGujc`tLCdV>cr6y1Nr5a8Fo!R- zU6vk#QVKyZFe>CoBY#Gk8fUlZOj|mU^Jz&5;x6ea>it+2ov@7!6G$siYO)&jy{N6L z`-$+ry;#S>#r;-P#CY_^t&f2#hCvdNHop0sh$v`e+) zRUE3mCZgPDv{*n0qo=(1b4&I+&+F#!s6 zwMbQh!miBM_a1T&fH;N{vIxxC8Hhtu=5nB4q|-tMfFyX%d^j&sLJsJ{10cm;KK#?K z3gpRkmSD_)Jfs5NmwQ~;Y1Z1HY)=(es@{QtUPm{%cL*?xy}Y7!b@|$oKe-q{9j?>r zjn+*kc+}GIK7auQZgvk@MPYzr#G;W+=>&o^0QOM8Fu)b0mR@EYtdwh;(=a065mhV*nund7!H z5>!8W^ynS%F*Z;$!BBQse~$3Y=T>k81blD2peL`_`4XD_Ot{c(0Jxq8&Jvi6=REy9 z5dQ_a{=Q2=K|!t;K#j?Dcyu%fAfBVGt+28(UWsX4$YtF=Vy<)dMtZXjG;1OW_0 zshK)0UJxH}E(2g@<%ZHj7zB{fq2PJrqwVJ;rKP2HgW$YJhQRCB@Qfyp7LJbyLjW^2<{Dr~PXSOcUdUSz`oJHPv>kL#<*rAc zkLr=kJ&cH3|AeSg6N6#0C=~iYUO_?b(5F)9c%AO z)f(r$`FMU;c95>X_{sM%4t4wtwMUTA9SXFD{ag8$yWatu z4hYyn`|o)0-|E$WedqzkhonFR=QnEN;6N||sjIJV*Jb7A#Qu&h&c;GMF9b9r=fIUvtBmbR%%g5F#Ne11)*4 H>-)a|hX$rQ diff --git a/class_report_desc_parser2__inherit__graph.map b/class_report_desc_parser2__inherit__graph.map index 77e43e20..b83eb9a4 100644 --- a/class_report_desc_parser2__inherit__graph.map +++ b/class_report_desc_parser2__inherit__graph.map @@ -1,4 +1,4 @@ - - + + diff --git a/class_report_desc_parser2__inherit__graph.md5 b/class_report_desc_parser2__inherit__graph.md5 index 5a0ef029..819fec93 100644 --- a/class_report_desc_parser2__inherit__graph.md5 +++ b/class_report_desc_parser2__inherit__graph.md5 @@ -1 +1 @@ -28f3942ed411cf191d1a779af42e8bd4 \ No newline at end of file +820b0c432ce98035ef31739b6890111a \ No newline at end of file diff --git a/class_report_desc_parser2__inherit__graph.png b/class_report_desc_parser2__inherit__graph.png index d7a61232ba74613586e460a0cd35054e073ecfb8..566a7381e2f2b842e142503c0357d63673e7829d 100644 GIT binary patch literal 6579 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 Cjph~r literal 5984 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 diff --git a/class_report_desc_parser__coll__graph.map b/class_report_desc_parser__coll__graph.map index a53f7c5b..e3836237 100644 --- a/class_report_desc_parser__coll__graph.map +++ b/class_report_desc_parser__coll__graph.map @@ -1,7 +1,7 @@ - - - - - + + + + + diff --git a/class_report_desc_parser__coll__graph.md5 b/class_report_desc_parser__coll__graph.md5 index 60356562..ece91e52 100644 --- a/class_report_desc_parser__coll__graph.md5 +++ b/class_report_desc_parser__coll__graph.md5 @@ -1 +1 @@ -4eeff98c7d713241096fda58cb34b342 \ No newline at end of file +bba4c01c09194908b45e06e17ad8b5da \ No newline at end of file diff --git a/class_report_desc_parser__coll__graph.png b/class_report_desc_parser__coll__graph.png index 71e7d2d8d1b7db0a01ffdbb11063fcd3cba8800f..d0a12245b2d88241d4f4f8ffab58263a59c858a4 100644 GIT binary patch literal 15234 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 literal 14323 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 E1)I-NkpKVy diff --git a/class_report_desc_parser__inherit__graph.map b/class_report_desc_parser__inherit__graph.map index 9f5e893c..0d81a849 100644 --- a/class_report_desc_parser__inherit__graph.map +++ b/class_report_desc_parser__inherit__graph.map @@ -1,4 +1,4 @@ - - + + diff --git a/class_report_desc_parser__inherit__graph.md5 b/class_report_desc_parser__inherit__graph.md5 index f89c23d6..110a89dc 100644 --- a/class_report_desc_parser__inherit__graph.md5 +++ b/class_report_desc_parser__inherit__graph.md5 @@ -1 +1 @@ -d91197785a3b88c599def77d68a6ee2e \ No newline at end of file +2251768d2a22ec22c4c321cf08cb7759 \ No newline at end of file diff --git a/class_report_desc_parser__inherit__graph.png b/class_report_desc_parser__inherit__graph.png index 06451a5d62f7772ec703ec48379dca1a362f1b82..ed79734f137a719923ffdbae363cf14af07f81fc 100644 GIT binary patch literal 6392 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 literal 5826 zcmc(jcT`i~mdAq#(u*J^ln5$KDN?0N2dM(00)iCjMS2UM(xnLq1gRPkY0^R`pb$VQ zhTc0;qz55%c!%GcnfGSq&6+>oN^Y{&xhFaM+_U%oe)f*i(@~=&gOWiY5K0YoWqt5n z2CjM%V(`gV9*hKE#Fm`r@sViCfKiH^tyP8xiEsHR&{mt=gVS#+W+|1c%?P#%Tbuo z8kpSmukf%#iWx`+PRDxVT7MYZ~|Q z<8@S3)w}ii&CPg~XomOs`SzYJKf6vST-<9}d3kyD3J0lbs}QjVG~;|690U%P&}Yw{ zEpKe7T3KC7;Wr7Nm@q{KDPQD#rIV-R?9BfvBqZVOTk9%aaNDN)UD(^V^bwQoGnI}G z4mrJcr9mhD5l>7|-(Swn&-2R3otDLw8P4^H>+0&RY-|Lrd3gEwB<1BTMF#o@1cZ5` z&2(#PYel_Q3=@A?qudwn)din5_EeXZB}~EpXm9WC-VhWNG%mL$_44*6TR%BDL3ytm zgW=pCN!$izW?8+vS|yXcy$V4=LE@P#kcFis19f#0jq8^=Ii=j@E~==gBpCALmX-?f z@$p?gG^uCwSgL4!uM~0XG(DC$H7&|K_{6Ko3=N$QI^q|F#txnmhY+lEnYeFTecY!2?Be$34ppxK+xvv-X%pt%?4AB}qw1QIAEf#Cy3rbJ2o*u+yze$Wi96 zrP^Fc_mz}dA_FfF68=8iT~$^VwQ8fNb6vvq8RAuxeHte^?X)w)~){=I`ByRnXRpXlhazM9C66Y zcj@W8TwLLCtdfe#@hP`HalnjQYCV>C#Klvrh0}UAHZ}xMnz{OYcA~0#PoZ<)_^)1l zks@fWQ|&rk^?L&H{izVsq`9^>CBIn%;`sQOM@A;2qq8$i{I7>oHA9n*+wK%Jc<^Ab zv>lrvsRRzC(symL-p76p6V=>U`;Dz`QEWIbH#h8;yW}n&udl2eDs(elB=FF4tlAZp zKj_f++w-GQVeC&^DLM&J(MP6q@;__&*&KzKKBG`?f4SFgAu0p>`mS!j8;S8+9pVrZ zyOO7yt?KG32)x#9Wq|kNr%#saW0i_c!{)(kAYhl5m(TrScXb$tA9uaR#btx>C>(Tv zZ+*Ljkn~uL3{+H7qNSq?A-qI&m7kw7KR>?)ejrRtOsr>a9*@B&zuyeGL_M>x5JpPJ zm6MxGRQRw&Txz)dS?8PNWTNDI;2lQEB0eHRHT2V2M_>Q4z>~U*#YW_i=N?DDv&YBK zk*|Tn$o$Z95@K40o$X&zQBzB*u9ol%2r%&U6kQ*$#(tg#A!Gj|@y7L}AL@L`eJJ~W z9$DGU0f)+-OI+r1fq{X%0s?X1;9?IEhbx68c0)yvKMt?v=j6Pw=|U*Xx5wv!AdvFk z`P@@dR20L>$@#sdB?N2>%=o$t5>Mbx{q#wkwJY+z zQJ?ob7WMP#$BHI9lT=%nMan|IyJdTu)p_zlwoGn68JRJ;&Bk5}Kb)_-gFz}64$gN9VhJJs z{)b!L5)U&?6ISPF;uBxL?yT`CfkA{^GFTe-KeYY0QY%1(Z36{(GIBnD<^hUC&%mGx;#x7?s4zDpgO!Yu@&*hB8!NMFj~w1yUcM?XFVD&8 z;NTiE4X$n}(U06tcgJjDHSNFHiElc`J8>3Sv}swbc=R9U<-WrQ1u+SzEVDbWm4{j(YO{ z6zZ5bv@h;M=`;}4{ybeqyg3}Fg2W#l`Xjv|p7U+77Q2YT-i((o3AVSkXz;~@($6~R z`FMD8(j{D}q=&IVc#(pV5{ZD!_rnkK4S}kw197)G!td%2l$_Zi_0ejf=SB#7YQw`pT9p93#){L1ky?j8e3Y@ zYX=mA>_|UO$6lFgD5B-k!TCI=?4S^q=4ANl&$ zXp5BPpHoj`;E{Te*d74=T2wB&T@#3<@b`))~NYo)apOcrhOV?7r9N_`_Md4rNXA06W}xv5z#pZLgj;G zR8&>_dXZ|eacppJML>(j#_xJ7sG+gpV98KhZtxk?Xq{eDJ@jZ#(= zY}mTcogtYd?lPgy#>S@FZd|xG^DTs)mR3PO|LunlAJp>=$(#uZ33q-G zfyGuoTFNOe7k(WXd6k-)8l-~USFbJWjF>ET2^vj{Ixl##`jxsgN%5!*cFVRb z1~70w_*W$q2^)pMb>d{%&}J8Wd`=e!*?(q8hWPziqzr(MXvz3&m>!{7_hb5hU*F%5 zmaMCj$$au!6O>z7quCL{YgeRg3nGeYOEGz90&uILVv_FO-;c&WzgX^4)z=7L4NFCk-AS z2zm+<_9~Sg`BF)SjQ+Jp&uVOT?ez;^Ozm3+3)lY>3i9&_ySuBq8(RljTG-A`_x5x? zcT}F!0^kUC_6?hHl(DSb*|GGchrbR1E*R=6Y9yG-4!66@HT|0Pfm=Ba@MdiP$ke zlZsznwkM&&)3TG3AeNW=OrcHD&Tol`o>^eC=rOJ6l{I}+20?DbvRh=@zwH`5;cngA z-F@HC!0LbUy$QbX7!(X)r>9)2Y}o`Ji(TIa@(tDl^vf#}6E9!*%HnEM4LCeNEpAPY zZq-u?a#uwq46WO(?9!RSkKDfUZunmyX&c6sK2tupamxo(sSVp5H_z)pkaGK1ZU=fl zD^-nBz5wdpi$p{gz$YI8(uKp}U72kgVw9lTMTpo^_4W79E-Z+x470Dcb!nO2zyI>} zYqH}%*=HC{L3HTeQ~-AL2BpFM`vkfAQNT>6i5gl^13#*CxH2|A&gOjrX2Xwh?MzHe zcNG*~Dt(b2ij7M1g}0)Ckrt8^S`3U2DfF$$P| zoj%1&fUR?&LMpPv$QcEcwY6i<(ZG4U%A)o46&`+m6$J$XP<>rTvB~(-0J7KzEaEov zmB7>6drZ`3v++oPLC}mMO!4L1oaO$}5%TkAJ4^t|D1zV0#b3@AD#DQ^A1t?s&5p0B zx$`zPb$-%knh5eXCB?EOoRWls0)vU7OGrrx@94OPv=R{(p4r@_4h{}3GO4Bly^6{n z@8f+pYisMLeIGRtqV|{1#RJs57VSp|2eS7k8yg#!*VnHAL|EO}i2L$I;9OM*2nhD) zVP`xjHfe7PaQtd|dNf=*8Ie0Xo)yD}g@Yrt9^4<0NCL>YQi1d?6m;yXg%BbrG%9ZP znGUr5OQ%;6^1l(Ij{QzPeab#hX+u;2g%sv9_X$cyxJ+_ANPe98)NiENv$HRrBS zCSOrK1qFru{_N9G6iT!!OO^#J`Mt9<#8d!=tEs9I4-E?=4F>+kI0m{3F=G$-lJ6hQ zc=4~B=o=Y@12Q}Z2}){eH5V6wND^CYmWr7f`@MVjLao5e(zn85ecLvxL&fSE8s8fH z{s>t#UzG9Pf&fip*!*G4Hq>_P)@Fx_OL;m!-Ye?gCl@b;y?| z_2I=P)zIDPN=HWUfO-Z8!=BW8&&Enj(Tp+Ndh`N3o(~ljbl?%3p9>gyiaVT|nzFOE zXD&lGHNn6W9|1q@=;$Z~?XvgX#%Rz$19xesNJK;_n)X`-_4M>!fW1!C`%u^WY*yJf z0HEJG{)1KGO9sbG2y7|+J5c;7v)1ayDDfMkNMOOox5>!KITF-M{r=dXDl08I-tz9R zy9PTB_~6$@)wQ+5%u3WiJ}@eJ#DN0Hg)A+laU3cl*jm=y?(z0G?-PPX$t=hOf2pUqBdmED@< - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - - + + +
[legend]
@@ -115,10 +90,10 @@ Collaboration diagram for ReportDescParserBase:
Collaboration graph
- - - - + + + +
[legend]
@@ -325,9 +300,11 @@ Static Protected Attributes

Detailed Description

-

Definition at line 22 of file hidescriptorparser.h.

+

Definition at line 22 of file hidescriptorparser.h.

Member Typedef Documentation

- + +

◆ UsagePageFunc

+
@@ -337,12 +314,14 @@ Static Protected Attributes
-

Definition at line 24 of file hidescriptorparser.h.

+

Definition at line 24 of file hidescriptorparser.h.

Member Enumeration Documentation

- + +

◆ anonymous enum

+
@@ -352,20 +331,19 @@ Static Protected Attributes
- - - + + +
Enumerator
enErrorSuccess  -
enErrorIncomplete  -
enErrorBufferTooSmall  -
Enumerator
enErrorSuccess 
enErrorIncomplete 
enErrorBufferTooSmall 
-

Definition at line 138 of file hidescriptorparser.h.

+

Definition at line 138 of file hidescriptorparser.h.

Constructor & Destructor Documentation

- + +

◆ ReportDescParserBase()

+
@@ -386,12 +364,14 @@ Static Protected Attributes
-

Definition at line 124 of file hidescriptorparser.h.

+

Definition at line 124 of file hidescriptorparser.h.

Member Function Documentation

- + +

◆ PrintGenericDesktopPageUsage()

+
@@ -413,11 +393,13 @@ Static Protected Attributes
-

Definition at line 1296 of file hidescriptorparser.cpp.

+

Definition at line 1296 of file hidescriptorparser.cpp.

- + +

◆ PrintSimulationControlsPageUsage()

+
@@ -439,11 +421,13 @@ Static Protected Attributes
-

Definition at line 1308 of file hidescriptorparser.cpp.

+

Definition at line 1308 of file hidescriptorparser.cpp.

- + +

◆ PrintVRControlsPageUsage()

+
@@ -465,11 +449,13 @@ Static Protected Attributes
-

Definition at line 1318 of file hidescriptorparser.cpp.

+

Definition at line 1318 of file hidescriptorparser.cpp.

- + +

◆ PrintSportsControlsPageUsage()

+
@@ -491,11 +477,13 @@ Static Protected Attributes
-

Definition at line 1327 of file hidescriptorparser.cpp.

+

Definition at line 1327 of file hidescriptorparser.cpp.

- + +

◆ PrintGameControlsPageUsage()

+
@@ -517,11 +505,13 @@ Static Protected Attributes
-

Definition at line 1337 of file hidescriptorparser.cpp.

+

Definition at line 1337 of file hidescriptorparser.cpp.

- + +

◆ PrintGenericDeviceControlsPageUsage()

+
@@ -543,11 +533,13 @@ Static Protected Attributes
-

Definition at line 1346 of file hidescriptorparser.cpp.

+

Definition at line 1346 of file hidescriptorparser.cpp.

- + +

◆ PrintLEDPageUsage()

+
@@ -569,11 +561,13 @@ Static Protected Attributes
-

Definition at line 1354 of file hidescriptorparser.cpp.

+

Definition at line 1354 of file hidescriptorparser.cpp.

- + +

◆ PrintButtonPageUsage()

+
@@ -595,11 +589,13 @@ Static Protected Attributes
-

Definition at line 1279 of file hidescriptorparser.cpp.

+

Definition at line 1279 of file hidescriptorparser.cpp.

- + +

◆ PrintOrdinalPageUsage()

+
@@ -621,11 +617,13 @@ Static Protected Attributes
-

Definition at line 1287 of file hidescriptorparser.cpp.

+

Definition at line 1287 of file hidescriptorparser.cpp.

- + +

◆ PrintTelephonyPageUsage()

+
@@ -647,11 +645,13 @@ Static Protected Attributes
-

Definition at line 1362 of file hidescriptorparser.cpp.

+

Definition at line 1362 of file hidescriptorparser.cpp.

- + +

◆ PrintConsumerPageUsage()

+
@@ -673,11 +673,13 @@ Static Protected Attributes
-

Definition at line 1375 of file hidescriptorparser.cpp.

+

Definition at line 1375 of file hidescriptorparser.cpp.

- + +

◆ PrintDigitizerPageUsage()

+
@@ -699,11 +701,13 @@ Static Protected Attributes
-

Definition at line 1397 of file hidescriptorparser.cpp.

+

Definition at line 1397 of file hidescriptorparser.cpp.

- + +

◆ PrintAlphanumDisplayPageUsage()

+
@@ -725,11 +729,13 @@ Static Protected Attributes
-

Definition at line 1407 of file hidescriptorparser.cpp.

+

Definition at line 1407 of file hidescriptorparser.cpp.

- + +

◆ PrintMedicalInstrumentPageUsage()

+
@@ -751,11 +757,13 @@ Static Protected Attributes
-

Definition at line 1417 of file hidescriptorparser.cpp.

+

Definition at line 1417 of file hidescriptorparser.cpp.

- + +

◆ PrintValue()

+
@@ -787,11 +795,13 @@ Static Protected Attributes
-

Definition at line 1013 of file hidescriptorparser.cpp.

+

Definition at line 1013 of file hidescriptorparser.cpp.

- + +

◆ PrintByteValue()

+
@@ -813,11 +823,13 @@ Static Protected Attributes
-

Definition at line 1020 of file hidescriptorparser.cpp.

+

Definition at line 1020 of file hidescriptorparser.cpp.

- + +

◆ PrintItemTitle()

+
@@ -839,11 +851,13 @@ Static Protected Attributes
-

Definition at line 1026 of file hidescriptorparser.cpp.

+

Definition at line 1026 of file hidescriptorparser.cpp.

- + +

◆ ParseItem()

+
@@ -877,11 +891,13 @@ Static Protected Attributes

Reimplemented in ReportDescParser2.

-

Definition at line 1091 of file hidescriptorparser.cpp.

+

Definition at line 1091 of file hidescriptorparser.cpp.

- + +

◆ PrintUsagePage()

+
@@ -903,11 +919,13 @@ Static Protected Attributes
-

Definition at line 1254 of file hidescriptorparser.cpp.

+

Definition at line 1254 of file hidescriptorparser.cpp.

- + +

◆ SetUsagePage()

+
@@ -929,11 +947,13 @@ Static Protected Attributes
-

Definition at line 1236 of file hidescriptorparser.cpp.

+

Definition at line 1236 of file hidescriptorparser.cpp.

- + +

◆ Parse()

+
@@ -973,12 +993,14 @@ Static Protected Attributes

Implements USBReadParser.

-

Definition at line 993 of file hidescriptorparser.cpp.

+

Definition at line 993 of file hidescriptorparser.cpp.

Member Data Documentation

- + +

◆ usagePageTitles0

+
@@ -996,11 +1018,13 @@ Static Protected Attributes
- + +

◆ usagePageTitles1

+
@@ -1018,11 +1042,13 @@ Static Protected Attributes
- + +

◆ genDesktopTitles0

+
@@ -1040,11 +1066,13 @@ Static Protected Attributes
- + +

◆ genDesktopTitles1

+ - + +

◆ genDesktopTitles2

+ - + +

◆ genDesktopTitles3

+ - + +

◆ genDesktopTitles4

+ - + +

◆ simuTitles0

+ - + +

◆ simuTitles1

+
@@ -1172,11 +1210,13 @@ Static Protected Attributes
- + +

◆ simuTitles2

+
@@ -1194,11 +1234,13 @@ Static Protected Attributes
-

Definition at line 55 of file hidescriptorparser.h.

+

Definition at line 55 of file hidescriptorparser.h.

- + +

◆ vrTitles0

+
@@ -1216,11 +1258,13 @@ Static Protected Attributes
- + +

◆ vrTitles1

+
@@ -1238,11 +1282,13 @@ Static Protected Attributes
Initial value: -

Definition at line 57 of file hidescriptorparser.h.

+

Definition at line 57 of file hidescriptorparser.h.

- + +

◆ sportsCtrlTitles0

+
@@ -1260,11 +1306,13 @@ Static Protected Attributes
Initial value: -

Definition at line 58 of file hidescriptorparser.h.

+

Definition at line 58 of file hidescriptorparser.h.

- + +

◆ sportsCtrlTitles1

+
@@ -1282,11 +1330,13 @@ Static Protected Attributes
- + +

◆ sportsCtrlTitles2

+ - + +

◆ gameTitles0

+
@@ -1326,11 +1378,13 @@ Static Protected Attributes
Initial value: -

Definition at line 61 of file hidescriptorparser.h.

+

Definition at line 61 of file hidescriptorparser.h.

- + +

◆ gameTitles1

+ - + +

◆ genDevCtrlTitles

+ - + +

◆ ledTitles

+
@@ -1392,11 +1450,13 @@ Static Protected Attributes
-

Definition at line 64 of file hidescriptorparser.h.

+

Definition at line 64 of file hidescriptorparser.h.

- + +

◆ telTitles0

+
@@ -1414,11 +1474,13 @@ Static Protected Attributes
- + +

◆ telTitles1

+ - + +

◆ telTitles2

+
@@ -1458,11 +1522,13 @@ Static Protected Attributes
Initial value: -

Definition at line 67 of file hidescriptorparser.h.

+

Definition at line 67 of file hidescriptorparser.h.

- + +

◆ telTitles3

+
@@ -1480,11 +1546,13 @@ Static Protected Attributes
- + +

◆ telTitles4

+ - + +

◆ telTitles5

+ - + +

◆ consTitles0

+
@@ -1546,11 +1618,13 @@ Static Protected Attributes
- + +

◆ consTitles1

+
@@ -1568,11 +1642,13 @@ Static Protected Attributes
Initial value: -

Definition at line 72 of file hidescriptorparser.h.

+

Definition at line 72 of file hidescriptorparser.h.

- + +

◆ consTitles2

+
@@ -1590,11 +1666,13 @@ Static Protected Attributes
- + +

◆ consTitles3

+
@@ -1612,11 +1690,13 @@ Static Protected Attributes
- + +

◆ consTitles4

+
@@ -1634,11 +1714,13 @@ Static Protected Attributes
- + +

◆ consTitles5

+
@@ -1656,11 +1738,13 @@ Static Protected Attributes
-

Definition at line 76 of file hidescriptorparser.h.

+

Definition at line 76 of file hidescriptorparser.h.

- + +

◆ consTitles6

+
@@ -1678,11 +1762,13 @@ Static Protected Attributes
-

Definition at line 77 of file hidescriptorparser.h.

+

Definition at line 77 of file hidescriptorparser.h.

- + +

◆ consTitles7

+
@@ -1700,11 +1786,13 @@ Static Protected Attributes
- + +

◆ consTitles8

+
@@ -1722,11 +1810,13 @@ Static Protected Attributes
- + +

◆ consTitles9

+ - + +

◆ consTitlesA

+
@@ -1766,11 +1858,13 @@ Static Protected Attributes
- + +

◆ consTitlesB

+ - + +

◆ consTitlesC

+
@@ -1810,11 +1906,13 @@ Static Protected Attributes
- + +

◆ consTitlesD

+
@@ -1832,11 +1930,13 @@ Static Protected Attributes
-

Definition at line 84 of file hidescriptorparser.h.

+

Definition at line 84 of file hidescriptorparser.h.

- + +

◆ consTitlesE

+
@@ -1854,11 +1954,13 @@ Static Protected Attributes
-

Definition at line 85 of file hidescriptorparser.h.

+

Definition at line 85 of file hidescriptorparser.h.

- + +

◆ digitTitles0

+ - + +

◆ digitTitles1

+
@@ -1898,11 +2002,13 @@ Static Protected Attributes
Initial value: -

Definition at line 87 of file hidescriptorparser.h.

+

Definition at line 87 of file hidescriptorparser.h.

- + +

◆ digitTitles2

+ - + +

◆ aplphanumTitles0

+
@@ -1942,11 +2050,13 @@ Static Protected Attributes
Initial value: -

Definition at line 89 of file hidescriptorparser.h.

+

Definition at line 89 of file hidescriptorparser.h.

- + +

◆ aplphanumTitles1

+
@@ -1964,11 +2074,13 @@ Static Protected Attributes
-

Definition at line 90 of file hidescriptorparser.h.

+

Definition at line 90 of file hidescriptorparser.h.

- + +

◆ aplphanumTitles2

+ - + +

◆ medInstrTitles0

+
@@ -2008,11 +2122,13 @@ Static Protected Attributes
- + +

◆ medInstrTitles1

+
@@ -2030,11 +2146,13 @@ Static Protected Attributes
Initial value: -

Definition at line 93 of file hidescriptorparser.h.

+

Definition at line 93 of file hidescriptorparser.h.

- + +

◆ medInstrTitles2

+
@@ -2052,11 +2170,13 @@ Static Protected Attributes
Initial value: -

Definition at line 94 of file hidescriptorparser.h.

+

Definition at line 94 of file hidescriptorparser.h.

- + +

◆ medInstrTitles3

+ - + +

◆ medInstrTitles4

+
@@ -2096,11 +2218,13 @@ Static Protected Attributes
Initial value: -

Definition at line 96 of file hidescriptorparser.h.

+

Definition at line 96 of file hidescriptorparser.h.

- + +

◆ usagePageFunctions

+ - + +

◆ theBuffer

+
@@ -2140,11 +2266,13 @@ Static Protected Attributes
-

Definition at line 101 of file hidescriptorparser.h.

+

Definition at line 101 of file hidescriptorparser.h.

- + +

◆ valParser

+
@@ -2162,11 +2290,13 @@ Static Protected Attributes
-

Definition at line 102 of file hidescriptorparser.h.

+

Definition at line 102 of file hidescriptorparser.h.

- + +

◆ theSkipper

+
@@ -2184,11 +2314,13 @@ Static Protected Attributes
-

Definition at line 103 of file hidescriptorparser.h.

+

Definition at line 103 of file hidescriptorparser.h.

- + +

◆ varBuffer

+
@@ -2206,11 +2338,13 @@ Static Protected Attributes
-

Definition at line 104 of file hidescriptorparser.h.

+

Definition at line 104 of file hidescriptorparser.h.

- + +

◆ itemParseState

+
@@ -2228,11 +2362,13 @@ Static Protected Attributes
-

Definition at line 106 of file hidescriptorparser.h.

+

Definition at line 106 of file hidescriptorparser.h.

- + +

◆ itemSize

+
@@ -2250,11 +2386,13 @@ Static Protected Attributes
-

Definition at line 107 of file hidescriptorparser.h.

+

Definition at line 107 of file hidescriptorparser.h.

- + +

◆ itemPrefix

+
@@ -2272,11 +2410,13 @@ Static Protected Attributes
-

Definition at line 108 of file hidescriptorparser.h.

+

Definition at line 108 of file hidescriptorparser.h.

- + +

◆ rptSize

+
@@ -2294,11 +2434,13 @@ Static Protected Attributes
-

Definition at line 109 of file hidescriptorparser.h.

+

Definition at line 109 of file hidescriptorparser.h.

- + +

◆ rptCount

+
@@ -2316,11 +2458,13 @@ Static Protected Attributes
-

Definition at line 110 of file hidescriptorparser.h.

+

Definition at line 110 of file hidescriptorparser.h.

- + +

◆ totalSize

+
@@ -2338,11 +2482,13 @@ Static Protected Attributes
-

Definition at line 112 of file hidescriptorparser.h.

+

Definition at line 112 of file hidescriptorparser.h.

- + +

◆ pfUsage

+
@@ -2360,7 +2506,7 @@ Static Protected Attributes
-

Definition at line 117 of file hidescriptorparser.h.

+

Definition at line 117 of file hidescriptorparser.h.

@@ -2373,7 +2519,7 @@ Static Protected Attributes diff --git a/class_report_desc_parser_base__coll__graph.map b/class_report_desc_parser_base__coll__graph.map index b2e067a7..daf04811 100644 --- a/class_report_desc_parser_base__coll__graph.map +++ b/class_report_desc_parser_base__coll__graph.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/class_report_desc_parser_base__coll__graph.md5 b/class_report_desc_parser_base__coll__graph.md5 index 668df278..bbe75e65 100644 --- a/class_report_desc_parser_base__coll__graph.md5 +++ b/class_report_desc_parser_base__coll__graph.md5 @@ -1 +1 @@ -b9d3bd37562883d7bba8b8814d6dc468 \ No newline at end of file +f73fbd568e2e89c15da6964b370648d9 \ No newline at end of file diff --git a/class_report_desc_parser_base__coll__graph.png b/class_report_desc_parser_base__coll__graph.png index 6eea22d6002f7def03b0c0b7e71c6af052065974..fab6bbd6a84fc80cc57ad207ba1070466826143c 100644 GIT binary patch literal 12686 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 literal 12002 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 diff --git a/class_report_desc_parser_base__inherit__graph.map b/class_report_desc_parser_base__inherit__graph.map index 5372b1fb..9b3f79b6 100644 --- a/class_report_desc_parser_base__inherit__graph.map +++ b/class_report_desc_parser_base__inherit__graph.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/class_report_desc_parser_base__inherit__graph.md5 b/class_report_desc_parser_base__inherit__graph.md5 index 92049196..d89bf997 100644 --- a/class_report_desc_parser_base__inherit__graph.md5 +++ b/class_report_desc_parser_base__inherit__graph.md5 @@ -1 +1 @@ -e17b83123517010d14d04955e7bfd25a \ No newline at end of file +bf2a9d7ab53e22e743a9e609df1e484c \ No newline at end of file diff --git a/class_report_desc_parser_base__inherit__graph.png b/class_report_desc_parser_base__inherit__graph.png index 4ceac2e492b2dfff4d9e33b18653d63e2e9a48c0..f808dc59f41bf400e903c2a6cb0821afd9a11ed9 100644 GIT binary patch literal 8897 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 literal 8448 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 diff --git a/class_s_p_p-members.html b/class_s_p_p-members.html index e4f89282..08553a81 100644 --- a/class_s_p_p-members.html +++ b/class_s_p_p-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -107,13 +82,13 @@ Collaboration diagram for SPP:
Collaboration graph
- - - - - - - + + + + + + +
[legend]
@@ -184,9 +159,11 @@ Additional Inherited Members

Detailed Description

This BluetoothService class implements the Serial Port Protocol (SPP). It inherits the Arduino Stream class. This allows it to use all the standard Arduino print and stream functions.

-

Definition at line 55 of file SPP.h.

+

Definition at line 55 of file SPP.h.

Constructor & Destructor Documentation

- + +

◆ SPP()

+
@@ -224,12 +201,14 @@ Additional Inherited Members -

Definition at line 45 of file SPP.cpp.

+

Definition at line 45 of file SPP.cpp.

Member Function Documentation

- + +

◆ disconnect()

+
@@ -253,11 +232,13 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 72 of file SPP.cpp.

+

Definition at line 72 of file SPP.cpp.

- + +

◆ operator bool()

+
@@ -279,11 +260,13 @@ Additional Inherited Members

Used to provide Boolean tests for the class.

Returns
Return true if SPP communication is connected.
-

Definition at line 74 of file SPP.h.

+

Definition at line 74 of file SPP.h.

- + +

◆ available()

+
@@ -298,11 +281,13 @@ Additional Inherited Members

Get number of bytes waiting to be read.

Returns
Return the number of bytes ready to be read.
-

Definition at line 797 of file SPP.cpp.

+

Definition at line 797 of file SPP.cpp.

- + +

◆ flush()

+
@@ -325,11 +310,13 @@ Additional Inherited Members

Send out all bytes in the buffer.

-

Definition at line 88 of file SPP.h.

+

Definition at line 88 of file SPP.h.

- + +

◆ peek()

+
@@ -344,11 +331,13 @@ Additional Inherited Members

Used to read the next value in the buffer without advancing to the next one.

Returns
Return the byte. Will return -1 if no bytes are available.
-

Definition at line 805 of file SPP.cpp.

+

Definition at line 805 of file SPP.cpp.

- + +

◆ read()

+
@@ -363,11 +352,13 @@ Additional Inherited Members

Used to read the buffer.

Returns
Return the byte. Will return -1 if no bytes are available.
-

Definition at line 811 of file SPP.cpp.

+

Definition at line 811 of file SPP.cpp.

- + +

◆ write() [1/2]

+
@@ -388,11 +379,13 @@ Additional Inherited Members
Returns
Return the number of bytes written.
-

Definition at line 742 of file SPP.cpp.

+

Definition at line 742 of file SPP.cpp.

- + +

◆ write() [2/2]

+
@@ -424,11 +417,13 @@ Additional Inherited Members
Returns
Return the number of bytes written.
-

Definition at line 754 of file SPP.cpp.

+

Definition at line 754 of file SPP.cpp.

- + +

◆ discard()

+
@@ -443,11 +438,13 @@ Additional Inherited Members

Discard all the bytes in the buffer.

-

Definition at line 801 of file SPP.cpp.

+

Definition at line 801 of file SPP.cpp.

- + +

◆ send()

+
@@ -462,11 +459,13 @@ Additional Inherited Members

This will send all the bytes in the buffer. This is called whenever Usb.Task() is called, but can also be called via this function.

-

Definition at line 769 of file SPP.cpp.

+

Definition at line 769 of file SPP.cpp.

- + +

◆ ACLData()

+
@@ -496,11 +495,13 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 84 of file SPP.cpp.

+

Definition at line 84 of file SPP.cpp.

- + +

◆ Run()

+
@@ -524,11 +525,13 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 423 of file SPP.cpp.

+

Definition at line 423 of file SPP.cpp.

- + +

◆ Reset()

+
@@ -552,11 +555,13 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 60 of file SPP.cpp.

+

Definition at line 60 of file SPP.cpp.

- + +

◆ onInit()

+
@@ -580,12 +585,14 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 433 of file SPP.cpp.

+

Definition at line 433 of file SPP.cpp.

Member Data Documentation

- + +

◆ connected

+
@@ -596,7 +603,7 @@ Additional Inherited Members

Variable used to indicate if the connection is established.

-

Definition at line 78 of file SPP.h.

+

Definition at line 78 of file SPP.h.

@@ -609,7 +616,7 @@ Additional Inherited Members diff --git a/class_s_p_p__coll__graph.map b/class_s_p_p__coll__graph.map index 1a07ec6a..7b783448 100644 --- a/class_s_p_p__coll__graph.map +++ b/class_s_p_p__coll__graph.map @@ -1,9 +1,9 @@ - - - - - - - + + + + + + + diff --git a/class_s_p_p__coll__graph.md5 b/class_s_p_p__coll__graph.md5 index 7a218c80..787a2f39 100644 --- a/class_s_p_p__coll__graph.md5 +++ b/class_s_p_p__coll__graph.md5 @@ -1 +1 @@ -cad9aa3d2819cbf714312820a38ed5ae \ No newline at end of file +1e3a16374007af2c1704b8030bf6cd2e \ No newline at end of file diff --git a/class_s_p_p__coll__graph.png b/class_s_p_p__coll__graph.png index 3184888a199d3f556eaba98aacf3a546f62f06c6..329e8d5e6b80e033497d709487166f17f442fe08 100644 GIT binary patch literal 19973 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 literal 17830 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 diff --git a/class_s_p_p__inherit__graph.map b/class_s_p_p__inherit__graph.map index a070f5d4..bb4355cf 100644 --- a/class_s_p_p__inherit__graph.map +++ b/class_s_p_p__inherit__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_s_p_p__inherit__graph.md5 b/class_s_p_p__inherit__graph.md5 index 57b548e0..4994254f 100644 --- a/class_s_p_p__inherit__graph.md5 +++ b/class_s_p_p__inherit__graph.md5 @@ -1 +1 @@ -c60255fca3d4c819dfb05175121e3419 \ No newline at end of file +7800950b72dc105e9aff9c4a92cf0a7f \ No newline at end of file diff --git a/class_s_p_p__inherit__graph.png b/class_s_p_p__inherit__graph.png index 99ed458ce80edced3bf680abe0d8e39c7a51a495..1b2858f58f8ea231aaeb6568a053d0c60eccd337 100644 GIT binary patch literal 4726 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 Jqmpg(zW{i|JEi~t literal 4392 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 X8Kb>KIpDyr50LsJ9p!RGYt;V$#yOMy diff --git a/class_s_pi-members.html b/class_s_pi-members.html index f5815981..2b0f8ce5 100644 --- a/class_s_pi-members.html +++ b/class_s_pi-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
class SPi< SPI_CLK, SPI_MOSI, SPI_MISO, SPI_SS > -

Definition at line 38 of file usbhost.h.

+

Definition at line 38 of file usbhost.h.

Member Function Documentation

- + +

◆ init()

+
@@ -129,7 +106,7 @@ template<typename SPI_CLK , typename SPI_MOSI , typename SPI_MISO , typename
-

Definition at line 61 of file usbhost.h.

+

Definition at line 61 of file usbhost.h.

@@ -141,7 +118,7 @@ template<typename SPI_CLK , typename SPI_MOSI , typename SPI_MISO , typename diff --git a/class_sink_parser-members.html b/class_sink_parser-members.html index c7f21334..e701b773 100644 --- a/class_sink_parser-members.html +++ b/class_sink_parser-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
class SinkParser< BASE_CLASS, LEN_TYPE, OFFSET_TYPE > -

Definition at line 35 of file sink_parser.h.

+

Definition at line 35 of file sink_parser.h.

Constructor & Destructor Documentation

- + +

◆ SinkParser()

+
@@ -147,12 +124,14 @@ template<class BASE_CLASS, class LEN_TYPE, class OFFSET_TYPE>
-

Definition at line 38 of file sink_parser.h.

+

Definition at line 38 of file sink_parser.h.

Member Function Documentation

- + +

◆ Initialize()

+
@@ -175,11 +154,13 @@ template<class BASE_CLASS, class LEN_TYPE, class OFFSET_TYPE>
-

Definition at line 41 of file sink_parser.h.

+

Definition at line 41 of file sink_parser.h.

- + +

◆ Parse()

+
@@ -219,7 +200,7 @@ template<class BASE_CLASS, class LEN_TYPE, class OFFSET_TYPE>
-

Definition at line 44 of file sink_parser.h.

+

Definition at line 44 of file sink_parser.h.

@@ -231,7 +212,7 @@ template<class BASE_CLASS, class LEN_TYPE, class OFFSET_TYPE>
diff --git a/class_sink_parser__coll__graph.md5 b/class_sink_parser__coll__graph.md5 index 1a5a95f4..d1545881 100644 --- a/class_sink_parser__coll__graph.md5 +++ b/class_sink_parser__coll__graph.md5 @@ -1 +1 @@ -d02f7fd8d26a0375ade46df3226bf199 \ No newline at end of file +d020ff3f97932ad0814add922e6e3f64 \ No newline at end of file diff --git a/class_sink_parser__coll__graph.png b/class_sink_parser__coll__graph.png index f51849aebcbc74a41828c97a7e9599f655071bed..40f13f3f68c20c63eb01bd30f42ed38041fef5e6 100644 GIT binary patch literal 5412 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 literal 4688 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 D8m#wi diff --git a/class_sink_parser__inherit__graph.md5 b/class_sink_parser__inherit__graph.md5 index 1a5a95f4..10b46018 100644 --- a/class_sink_parser__inherit__graph.md5 +++ b/class_sink_parser__inherit__graph.md5 @@ -1 +1 @@ -d02f7fd8d26a0375ade46df3226bf199 \ No newline at end of file +2cc3cf9eea33b15a4670b329f94ff207 \ No newline at end of file diff --git a/class_sink_parser__inherit__graph.png b/class_sink_parser__inherit__graph.png index f51849aebcbc74a41828c97a7e9599f655071bed..40f13f3f68c20c63eb01bd30f42ed38041fef5e6 100644 GIT binary patch literal 5412 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 literal 4688 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 D8m#wi diff --git a/class_u_h_s2___g_p_i_o-members.html b/class_u_h_s2___g_p_i_o-members.html index cf87533a..4d8909d7 100644 --- a/class_u_h_s2___g_p_i_o-members.html +++ b/class_u_h_s2___g_p_i_o-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +

Detailed Description

-

Definition at line 32 of file UHS2_gpio.h.

+

Definition at line 32 of file UHS2_gpio.h.

Constructor & Destructor Documentation

- + +

◆ UHS2_GPIO()

+
@@ -135,12 +112,14 @@ Public Member Functions -

Definition at line 32 of file UHS2_gpio.cpp.

+

Definition at line 32 of file UHS2_gpio.cpp.

Member Function Documentation

- + +

◆ digitalWrite()

+
@@ -173,11 +152,13 @@ Public Member Functions -

Definition at line 40 of file UHS2_gpio.cpp.

+

Definition at line 40 of file UHS2_gpio.cpp.

- + +

◆ digitalRead()

+
@@ -205,11 +186,13 @@ Public Member Functions -

Definition at line 55 of file UHS2_gpio.cpp.

+

Definition at line 55 of file UHS2_gpio.cpp.

- + +

◆ digitalReadOutput()

+
@@ -238,7 +221,7 @@ Public Member Functions
Note
Value of MAX3421E output register, i.e. what the device has been set to, not the physical value on the pin
-

Definition at line 68 of file UHS2_gpio.cpp.

+

Definition at line 68 of file UHS2_gpio.cpp.

@@ -251,7 +234,7 @@ Public Member Functions diff --git a/class_u_s_b-members.html b/class_u_s_b-members.html index 252d8aa0..34dc7a73 100644 --- a/class_u_s_b-members.html +++ b/class_u_s_b-members.html @@ -3,7 +3,8 @@ - + +USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -106,7 +81,7 @@ Collaboration diagram for USB:
Collaboration graph
- +
[legend]
@@ -179,10 +154,10 @@ Public Member Functions - + - + @@ -205,9 +180,11 @@ Public Member Functions
uint8_t * bytesRd (uint8_t reg, uint8_t nbytes, uint8_t *data_p)
 
uint8_t gpioRd ()
 Reads the current GPI input values. More...
 Reads the current GPI input values. More...
 
uint8_t gpioRdOutput ()
 Reads the current GPI output values. More...
 Reads the current GPI output values. More...
 
uint16_t reset ()
 

Detailed Description

-

Definition at line 210 of file UsbCore.h.

+

Definition at line 210 of file UsbCore.h.

Constructor & Destructor Documentation

- + +

◆ USB()

+
@@ -221,12 +198,14 @@ Public Member Functions
-

Definition at line 25 of file Usb.cpp.

+

Definition at line 25 of file Usb.cpp.

Member Function Documentation

- + +

◆ SetHubPreMask()

+
@@ -247,11 +226,13 @@ Public Member Functions
-

Definition at line 218 of file UsbCore.h.

+

Definition at line 218 of file UsbCore.h.

- + +

◆ ResetHubPreMask()

+
@@ -272,11 +253,13 @@ Public Member Functions
-

Definition at line 222 of file UsbCore.h.

+

Definition at line 222 of file UsbCore.h.

- + +

◆ GetAddressPool()

+
@@ -297,11 +280,13 @@ Public Member Functions
-

Definition at line 226 of file UsbCore.h.

+

Definition at line 226 of file UsbCore.h.

- + +

◆ RegisterDeviceClass()

+
@@ -323,11 +308,13 @@ Public Member Functions
-

Definition at line 230 of file UsbCore.h.

+

Definition at line 230 of file UsbCore.h.

- + +

◆ ForEachUsbDevice()

+
@@ -349,11 +336,13 @@ Public Member Functions
-

Definition at line 240 of file UsbCore.h.

+

Definition at line 240 of file UsbCore.h.

- + +

◆ getUsbTaskState()

+
@@ -367,11 +356,13 @@ Public Member Functions
-

Definition at line 36 of file Usb.cpp.

+

Definition at line 36 of file Usb.cpp.

- + +

◆ setUsbTaskState()

+
@@ -385,11 +376,13 @@ Public Member Functions
-

Definition at line 40 of file Usb.cpp.

+

Definition at line 40 of file Usb.cpp.

- + +

◆ getEpInfoEntry()

+
@@ -413,11 +406,13 @@ Public Member Functions
-

Definition at line 44 of file Usb.cpp.

+

Definition at line 44 of file Usb.cpp.

- + +

◆ setEpInfoEntry()

+
@@ -447,11 +442,13 @@ Public Member Functions
-

Definition at line 64 of file Usb.cpp.

+

Definition at line 64 of file Usb.cpp.

- + +

◆ getDevDescr()

+
@@ -489,11 +486,13 @@ Public Member Functions

defined(USB_METHODS_INLINE)

-

Definition at line 796 of file Usb.cpp.

+

Definition at line 796 of file Usb.cpp.

- + +

◆ getConfDescr() [1/2]

+
@@ -535,11 +534,13 @@ Public Member Functions
-

Definition at line 801 of file Usb.cpp.

+

Definition at line 801 of file Usb.cpp.

- + +

◆ getConfDescr() [2/2]

+
@@ -575,11 +576,13 @@ Public Member Functions
-

Definition at line 807 of file Usb.cpp.

+

Definition at line 807 of file Usb.cpp.

- + +

◆ getStrDescr()

+
@@ -627,11 +630,13 @@ Public Member Functions
-

Definition at line 826 of file Usb.cpp.

+

Definition at line 826 of file Usb.cpp.

- + +

◆ setAddr()

+
@@ -661,11 +666,13 @@ Public Member Functions
-

Definition at line 831 of file Usb.cpp.

+

Definition at line 831 of file Usb.cpp.

- + +

◆ setConf()

+
@@ -695,11 +702,13 @@ Public Member Functions
-

Definition at line 840 of file Usb.cpp.

+

Definition at line 840 of file Usb.cpp.

- + +

◆ ctrlData()

+
@@ -743,7 +752,9 @@ Public Member Functions - + +

◆ ctrlStatus()

+
@@ -775,7 +786,9 @@ Public Member Functions - + +

◆ inTransfer()

+
@@ -817,11 +830,13 @@ Public Member Functions
-

Definition at line 209 of file Usb.cpp.

+

Definition at line 209 of file Usb.cpp.

- + +

◆ outTransfer()

+
@@ -857,11 +872,13 @@ Public Member Functions
-

Definition at line 303 of file Usb.cpp.

+

Definition at line 303 of file Usb.cpp.

- + +

◆ dispatchPkt()

+
@@ -891,11 +908,13 @@ Public Member Functions
-

Definition at line 401 of file Usb.cpp.

+

Definition at line 401 of file Usb.cpp.

- + +

◆ Task()

+
@@ -909,11 +928,13 @@ Public Member Functions
-

Definition at line 455 of file Usb.cpp.

+

Definition at line 455 of file Usb.cpp.

- + +

◆ DefaultAddressing()

+
@@ -943,11 +964,13 @@ Public Member Functions
-

Definition at line 561 of file Usb.cpp.

+

Definition at line 561 of file Usb.cpp.

- + +

◆ Configuring()

+
@@ -977,11 +1000,13 @@ Public Member Functions
-

Definition at line 683 of file Usb.cpp.

+

Definition at line 683 of file Usb.cpp.

- + +

◆ ReleaseDevice()

+
@@ -995,11 +1020,13 @@ Public Member Functions
-

Definition at line 781 of file Usb.cpp.

+

Definition at line 781 of file Usb.cpp.

- + +

◆ ctrlReq()

+
@@ -1077,7 +1104,7 @@ Public Member Functions
-

Definition at line 126 of file Usb.cpp.

+

Definition at line 126 of file Usb.cpp.

@@ -1090,7 +1117,7 @@ Public Member Functions diff --git a/class_u_s_b__coll__graph.map b/class_u_s_b__coll__graph.map index e0772ba6..4b63da77 100644 --- a/class_u_s_b__coll__graph.map +++ b/class_u_s_b__coll__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_u_s_b__coll__graph.md5 b/class_u_s_b__coll__graph.md5 index 2b3a8617..ca823f4a 100644 --- a/class_u_s_b__coll__graph.md5 +++ b/class_u_s_b__coll__graph.md5 @@ -1 +1 @@ -48f1f6d22e8ca875c8c73c2869a63fbd \ No newline at end of file +f6ccf1fad8d6ecd2cff38fc98711f46e \ No newline at end of file diff --git a/class_u_s_b__coll__graph.png b/class_u_s_b__coll__graph.png index b64f8fc090fdd60c4defdd1bed8e4efa5ed58cdd..49f8f36ccc7ca9182cf080672708b55a1d165808 100644 GIT binary patch literal 2698 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 QqR#^Wx3;&Uz - + diff --git a/class_u_s_b__inherit__graph.md5 b/class_u_s_b__inherit__graph.md5 index 2b3a8617..9e938cee 100644 --- a/class_u_s_b__inherit__graph.md5 +++ b/class_u_s_b__inherit__graph.md5 @@ -1 +1 @@ -48f1f6d22e8ca875c8c73c2869a63fbd \ No newline at end of file +23dbf1d6fae001672365342de66fd798 \ No newline at end of file diff --git a/class_u_s_b__inherit__graph.png b/class_u_s_b__inherit__graph.png index b64f8fc090fdd60c4defdd1bed8e4efa5ed58cdd..49f8f36ccc7ca9182cf080672708b55a1d165808 100644 GIT binary patch literal 2698 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 QqR#^Wx3;&Uz - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + +
[legend]
@@ -144,9 +119,11 @@ Public Member Functions

Detailed Description

-

Definition at line 134 of file UsbCore.h.

+

Definition at line 134 of file UsbCore.h.

Member Function Documentation

- + +

◆ Init()

+
@@ -186,11 +163,13 @@ Public Member Functions

Reimplemented in BulkOnly, BTD, HIDBoot< BOOT_PROTOCOL >, ACM, USBHub, FTDI, PL2303, XR21B1411, ADK, HIDUniversal, USBH_MIDI, HIDComposite, XBOXONE, XBOXRECV, XBOXUSB, PS3USB, and XBOXOLD.

-

Definition at line 137 of file UsbCore.h.

+

Definition at line 137 of file UsbCore.h.

- + +

◆ ConfigureDevice()

+
@@ -230,11 +209,13 @@ Public Member Functions

Reimplemented in BulkOnly, BTD, ADK, and XBOXRECV.

-

Definition at line 141 of file UsbCore.h.

+

Definition at line 141 of file UsbCore.h.

- + +

◆ Release()

+
@@ -257,11 +238,13 @@ Public Member Functions

Reimplemented in BulkOnly, BTD, HIDBoot< BOOT_PROTOCOL >, ACM, USBHub, FTDI, ADK, HIDUniversal, USBH_MIDI, HIDComposite, XBOXONE, XBOXRECV, XBOXUSB, PS3USB, and XBOXOLD.

-

Definition at line 145 of file UsbCore.h.

+

Definition at line 145 of file UsbCore.h.

- + +

◆ Poll()

+
@@ -284,11 +267,13 @@ Public Member Functions

Reimplemented in BulkOnly, BTD, HIDBoot< BOOT_PROTOCOL >, ACM, USBHub, FTDI, ADK, XBOXONE, HIDUniversal, XBOXRECV, HIDComposite, XBOXUSB, PS3USB, and XBOXOLD.

-

Definition at line 149 of file UsbCore.h.

+

Definition at line 149 of file UsbCore.h.

- + +

◆ GetAddress()

+
@@ -311,11 +296,13 @@ Public Member Functions

Reimplemented in BulkOnly, BTD, HIDBoot< BOOT_PROTOCOL >, ACM, USBHub, FTDI, ADK, XBOXONE, XBOXRECV, HIDUniversal, HIDComposite, USBH_MIDI, XBOXUSB, PS3USB, and XBOXOLD.

-

Definition at line 153 of file UsbCore.h.

+

Definition at line 153 of file UsbCore.h.

- + +

◆ ResetHubPort()

+
@@ -339,11 +326,13 @@ Public Member Functions

Reimplemented in USBHub.

-

Definition at line 157 of file UsbCore.h.

+

Definition at line 157 of file UsbCore.h.

- + +

◆ VIDPIDOK()

+
@@ -377,11 +366,13 @@ Public Member Functions

Reimplemented in BTD, PSBuzz, FTDI, XBOXONE, PS4USB, ADK, XR21B1411, XBOXRECV, XBOXUSB, PS3USB, and XBOXOLD.

-

Definition at line 161 of file UsbCore.h.

+

Definition at line 161 of file UsbCore.h.

- + +

◆ DEVCLASSOK()

+
@@ -405,11 +396,13 @@ Public Member Functions

Reimplemented in BulkOnly, BTD, HIDBoot< BOOT_PROTOCOL >, and USBHub.

-

Definition at line 165 of file UsbCore.h.

+

Definition at line 165 of file UsbCore.h.

- + +

◆ DEVSUBCLASSOK()

+
@@ -433,7 +426,7 @@ Public Member Functions

Reimplemented in HIDBoot< BOOT_PROTOCOL >.

-

Definition at line 169 of file UsbCore.h.

+

Definition at line 169 of file UsbCore.h.

@@ -445,7 +438,7 @@ Public Member Functions diff --git a/class_u_s_b_device_config__inherit__graph.map b/class_u_s_b_device_config__inherit__graph.map index 775c2aa6..997dae0c 100644 --- a/class_u_s_b_device_config__inherit__graph.map +++ b/class_u_s_b_device_config__inherit__graph.map @@ -1,22 +1,22 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + diff --git a/class_u_s_b_device_config__inherit__graph.md5 b/class_u_s_b_device_config__inherit__graph.md5 index 336e2e81..3348af13 100644 --- a/class_u_s_b_device_config__inherit__graph.md5 +++ b/class_u_s_b_device_config__inherit__graph.md5 @@ -1 +1 @@ -fd915a8e1b72b3dd4dec81d6c1c419c0 \ No newline at end of file +994d0cc22c63895732978d50034f369c \ No newline at end of file diff --git a/class_u_s_b_device_config__inherit__graph.png b/class_u_s_b_device_config__inherit__graph.png index 255f7b9e29be67ebdd27e4c05fb0d167144371ae..d6be754cd2ab6c91fa1da9635f77ab5c8e7178ac 100644 GIT binary patch literal 44737 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 literal 38708 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 z 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 diff --git a/class_u_s_b_h___m_i_d_i-members.html b/class_u_s_b_h___m_i_d_i-members.html index 2d0ecd04..1b88b789 100644 --- a/class_u_s_b_h___m_i_d_i-members.html +++ b/class_u_s_b_h___m_i_d_i-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -109,10 +84,10 @@ Collaboration diagram for USBH_MIDI:
Collaboration graph
- - - - + + + +
[legend]
@@ -215,9 +190,11 @@ Static Protected Attributes

Detailed Description

-

Definition at line 39 of file usbh_midi.h.

+

Definition at line 39 of file usbh_midi.h.

Constructor & Destructor Documentation

- + +

◆ USBH_MIDI()

+
@@ -231,12 +208,14 @@ Static Protected Attributes
-

Definition at line 87 of file usbh_midi.cpp.

+

Definition at line 87 of file usbh_midi.cpp.

Member Function Documentation

- + +

◆ parseConfigDescr()

+
@@ -268,11 +247,13 @@ Static Protected Attributes
-

Definition at line 253 of file usbh_midi.cpp.

+

Definition at line 253 of file usbh_midi.cpp.

- + +

◆ countSysExDataSize()

+
@@ -294,11 +275,13 @@ Static Protected Attributes
-

Definition at line 532 of file usbh_midi.cpp.

+

Definition at line 532 of file usbh_midi.cpp.

- + +

◆ setupDeviceSpecific()

+
@@ -319,11 +302,13 @@ Static Protected Attributes
-

Definition at line 345 of file usbh_midi.cpp.

+

Definition at line 345 of file usbh_midi.cpp.

- + +

◆ operator bool()

+
@@ -344,11 +329,13 @@ Static Protected Attributes
-

Definition at line 71 of file usbh_midi.h.

+

Definition at line 71 of file usbh_midi.h.

- + +

◆ idVendor()

+
@@ -369,11 +356,13 @@ Static Protected Attributes
-

Definition at line 72 of file usbh_midi.h.

+

Definition at line 72 of file usbh_midi.h.

- + +

◆ idProduct()

+
@@ -394,11 +383,13 @@ Static Protected Attributes
-

Definition at line 73 of file usbh_midi.h.

+

Definition at line 73 of file usbh_midi.h.

- + +

◆ RecvData() [1/2]

+
@@ -422,11 +413,13 @@ Static Protected Attributes
-

Definition at line 357 of file usbh_midi.cpp.

+

Definition at line 357 of file usbh_midi.cpp.

- + +

◆ RecvData() [2/2]

+
@@ -450,11 +443,13 @@ Static Protected Attributes
-

Definition at line 370 of file usbh_midi.cpp.

+

Definition at line 370 of file usbh_midi.cpp.

- + +

◆ RecvRawData()

+
@@ -468,11 +463,13 @@ Static Protected Attributes
-

Definition at line 411 of file usbh_midi.cpp.

+

Definition at line 411 of file usbh_midi.cpp.

- + +

◆ SendData()

+
@@ -496,11 +493,13 @@ Static Protected Attributes
-

Definition at line 417 of file usbh_midi.cpp.

+

Definition at line 417 of file usbh_midi.cpp.

- + +

◆ lookupMsgSize()

+
@@ -524,11 +523,13 @@ Static Protected Attributes
-

Definition at line 481 of file usbh_midi.cpp.

+

Definition at line 481 of file usbh_midi.cpp.

- + +

◆ SendSysEx()

+
@@ -558,11 +559,13 @@ Static Protected Attributes
-

Definition at line 556 of file usbh_midi.cpp.

+

Definition at line 556 of file usbh_midi.cpp.

- + +

◆ extractSysExData()

+
@@ -586,11 +589,13 @@ Static Protected Attributes
-

Definition at line 620 of file usbh_midi.cpp.

+

Definition at line 620 of file usbh_midi.cpp.

- + +

◆ SendRawData()

+
@@ -614,11 +619,13 @@ Static Protected Attributes
-

Definition at line 614 of file usbh_midi.cpp.

+

Definition at line 614 of file usbh_midi.cpp.

- + +

◆ RcvData() [1/2]

+
@@ -650,11 +657,13 @@ Static Protected Attributes
-

Definition at line 84 of file usbh_midi.h.

+

Definition at line 84 of file usbh_midi.h.

- + +

◆ RcvData() [2/2]

+
@@ -676,11 +685,13 @@ Static Protected Attributes
-

Definition at line 85 of file usbh_midi.h.

+

Definition at line 85 of file usbh_midi.h.

- + +

◆ Init()

+
@@ -720,11 +731,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 108 of file usbh_midi.cpp.

+

Definition at line 108 of file usbh_midi.cpp.

- + +

◆ Release()

+
@@ -747,11 +760,13 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 334 of file usbh_midi.cpp.

+

Definition at line 334 of file usbh_midi.cpp.

- + +

◆ GetAddress()

+
@@ -774,12 +789,14 @@ Static Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 90 of file usbh_midi.h.

+

Definition at line 90 of file usbh_midi.h.

Member Data Documentation

- + +

◆ epDataInIndex

+
@@ -797,11 +814,13 @@ Static Protected Attributes
-

Definition at line 42 of file usbh_midi.h.

+

Definition at line 42 of file usbh_midi.h.

- + +

◆ epDataOutIndex

+
@@ -819,11 +838,13 @@ Static Protected Attributes
-

Definition at line 43 of file usbh_midi.h.

+

Definition at line 43 of file usbh_midi.h.

- + +

◆ epDataInIndexVSP

+
@@ -841,11 +862,13 @@ Static Protected Attributes
-

Definition at line 44 of file usbh_midi.h.

+

Definition at line 44 of file usbh_midi.h.

- + +

◆ epDataOutIndexVSP

+
@@ -863,11 +886,13 @@ Static Protected Attributes
-

Definition at line 45 of file usbh_midi.h.

+

Definition at line 45 of file usbh_midi.h.

- + +

◆ pUsb

+
@@ -885,11 +910,13 @@ Static Protected Attributes
-

Definition at line 48 of file usbh_midi.h.

+

Definition at line 48 of file usbh_midi.h.

- + +

◆ bAddress

+
@@ -907,11 +934,13 @@ Static Protected Attributes
-

Definition at line 49 of file usbh_midi.h.

+

Definition at line 49 of file usbh_midi.h.

- + +

◆ bConfNum

+
@@ -929,11 +958,13 @@ Static Protected Attributes
-

Definition at line 50 of file usbh_midi.h.

+

Definition at line 50 of file usbh_midi.h.

- + +

◆ bNumEP

+
@@ -951,11 +982,13 @@ Static Protected Attributes
-

Definition at line 51 of file usbh_midi.h.

+

Definition at line 51 of file usbh_midi.h.

- + +

◆ bPollEnable

+
@@ -973,11 +1006,13 @@ Static Protected Attributes
-

Definition at line 52 of file usbh_midi.h.

+

Definition at line 52 of file usbh_midi.h.

- + +

◆ isMidiFound

+
@@ -995,11 +1030,13 @@ Static Protected Attributes
-

Definition at line 53 of file usbh_midi.h.

+

Definition at line 53 of file usbh_midi.h.

- + +

◆ pid

+
@@ -1017,11 +1054,13 @@ Static Protected Attributes
-

Definition at line 54 of file usbh_midi.h.

+

Definition at line 54 of file usbh_midi.h.

- + +

◆ vid

+
@@ -1039,11 +1078,13 @@ Static Protected Attributes
-

Definition at line 54 of file usbh_midi.h.

+

Definition at line 54 of file usbh_midi.h.

- + +

◆ bTransferTypeMask

+
@@ -1061,11 +1102,13 @@ Static Protected Attributes
-

Definition at line 55 of file usbh_midi.h.

+

Definition at line 55 of file usbh_midi.h.

- + +

◆ epInfo

+
@@ -1083,11 +1126,13 @@ Static Protected Attributes
-

Definition at line 57 of file usbh_midi.h.

+

Definition at line 57 of file usbh_midi.h.

- + +

◆ recvBuf

+
@@ -1105,11 +1150,13 @@ Static Protected Attributes
-

Definition at line 59 of file usbh_midi.h.

+

Definition at line 59 of file usbh_midi.h.

- + +

◆ readPtr

+
@@ -1127,7 +1174,7 @@ Static Protected Attributes
-

Definition at line 60 of file usbh_midi.h.

+

Definition at line 60 of file usbh_midi.h.

@@ -1140,7 +1187,7 @@ Static Protected Attributes diff --git a/class_u_s_b_h___m_i_d_i__coll__graph.map b/class_u_s_b_h___m_i_d_i__coll__graph.map index d89c496f..115a7213 100644 --- a/class_u_s_b_h___m_i_d_i__coll__graph.map +++ b/class_u_s_b_h___m_i_d_i__coll__graph.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/class_u_s_b_h___m_i_d_i__coll__graph.md5 b/class_u_s_b_h___m_i_d_i__coll__graph.md5 index 9672b222..0da20209 100644 --- a/class_u_s_b_h___m_i_d_i__coll__graph.md5 +++ b/class_u_s_b_h___m_i_d_i__coll__graph.md5 @@ -1 +1 @@ -25cb7fd7fbb45243f203aae31cb09034 \ No newline at end of file +68a4b7f7cabc03126d08e6372706b04f \ No newline at end of file diff --git a/class_u_s_b_h___m_i_d_i__coll__graph.png b/class_u_s_b_h___m_i_d_i__coll__graph.png index 52eb917acb63430b0b065945a075e2777e709e0a..351407c0cc76a83c2288a1747501d3b02060002a 100644 GIT binary patch literal 10218 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 literal 9288 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 diff --git a/class_u_s_b_h___m_i_d_i__inherit__graph.map b/class_u_s_b_h___m_i_d_i__inherit__graph.map index 490a48c9..599c8ea6 100644 --- a/class_u_s_b_h___m_i_d_i__inherit__graph.map +++ b/class_u_s_b_h___m_i_d_i__inherit__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_u_s_b_h___m_i_d_i__inherit__graph.md5 b/class_u_s_b_h___m_i_d_i__inherit__graph.md5 index 3e6af39f..906c0796 100644 --- a/class_u_s_b_h___m_i_d_i__inherit__graph.md5 +++ b/class_u_s_b_h___m_i_d_i__inherit__graph.md5 @@ -1 +1 @@ -040098623cab6b270fc5a8a159a31c5e \ No newline at end of file +46133410a3d5a24eaed9e2779b770092 \ No newline at end of file diff --git a/class_u_s_b_h___m_i_d_i__inherit__graph.png b/class_u_s_b_h___m_i_d_i__inherit__graph.png index f27a71f3437d519444335647019e6177c58958ce..556267bcb7a887594fc4d7fe6ace7d299e2a2c94 100644 GIT binary patch literal 3334 zcmb_fc{r5q+eWfvUqX^)Xe=>$N4&CqkuXS_ybMMR!$_6}*_VthNsP#A9bznDWE-JD zAym@H7(1ct>nPjc_q@O3_`cuw{r}z1@jUl&JkN35_jRAwbzbNBBw1UT@|}@9!@|PC z2QxE<1M^ehe!#^BJg;vH@BkBstA(jC%gH}iA*Jj&3kz>6%-GN-ByTN0+R}k8-BHs% zh=Zcas~=YnyDkb4X#bQ0OLOzr^xK6iSj@$3*t%{E_~^>*6f@tg47NfjG*j=NL)%!eEL3lRfZjPC^j zhHvQt2`H}DZCkrRY>#NH=?_@a;!ZtMkP>`6i8oUqL>*K#!C4DM&z`-Y7a}+rxoQco zq!|@`ol|C&zOE$tisrS7@5sz_aB$Ge6zJfHii-O5?2#rnCksrQ#q2%nHDUe-Cg}tM z0bbD%+~smP?`nX@IN8S-^oM~#TUFI(G_;6jU2db2^(j9)+umOE{Q2D6TwP7g#^J6E z^B*7oq6>k+;1Injvd_4g!eCqEp)m+AVt9s!M_KgArF$ctM;N%FVT_H+*(BrLjp_D? zegE)qUBZB=#YN#H+seqjO%w*R(A(SFy3y8JWmZfbqSH_I7YHyItiHbf{&J2bI4dKg zN)wfD)fBuj#dluoil*kTot+2TQjo0hxeqCtr?U$RNF!_2X;D*HoLiAM2!^-}IcIGxuyiu*V#>I=osw!_98o5B(ozjhBYX9aU z3}EU<@1KF{>8Fi;xl*$EbU_xy=Cw zPV=cBMLIZ`mwi(fHIIrqe*fOc!{g`SMtf=oL{-&VDPx6RQ!MXZi}?8QBiVaYSX%na z+*Y7YK1KU7?>EmYNyfM}hZ_2Hd$i2x@KRt+`*9coA(3yT4uNQ8TbhwUc+ZU~N>Ndf zOyrIbZzl?c5@h$8dV4MkIYP9^3R)Yx0m8%Y+|kw1k&>EfcS<(~p=uGvpe5-Q+h-s;Zi( z$K0~Ew!U*m#DVYAom=`u8`L*qHqzsRYEZ&Cgu1`7!v7d8|efM=}sG*@DPK=u!x45|IPIHmal1y0` zAfzTG+1tmpDFn923vwY^(a>`V-}CbFG%#NzcoWjn1Qlcg1G(67NQiTGbH6qok9Vz= zaJ;FKxjx-K?Q;2PYU*{tI7{qh-cM*KTg)SL`0l!s_fM^hr#U$VczFv^hlhvx&*wkW zCWosX@p^&@2?;nH?qzYY99Nw~wG_W8B&(R{t#v-MRW0_Ktf;8y(`U~N!ghK+)HO9V z)!UiSx|_vR>v)~~^`_~lSXm`qT}LHRAaja}ihk2=7sg+h6sJ6U1{yy)I+BTIZi&pI z(P-q`5TS8qWlbA2x8E3q{Z@K2CMHHD^UPI}jY{#$muWuHC$vNe7;I8x?ZW9r1C!rL z25efYT)H$46nf)*x`~NN6aaNeNy&4?TQ7;t&CQlz#)p*i0G1+2#+>|8*X%+T+v%eY z)wV?VSuwG}rNBzs6SYClE0dFx+1c4tDiz3}S*L)(-VDvo`L7C_Gx4*d7((RXS`$j* zE)rP+uh`n!;^X7{H1!_9tlPB@4UIR#E`BX)nhIOt#+H_q$%8;|kR*gEz<4Ef^<4&I zWpVLZ&iwrR>(Ny_UZ@$_7QX9?7K*>TppQPWd{tcyps>EWnpaS8yi`W`+p<)?lc(9e zr5>Rw4nev=v)S3?AdvNm<^YpoA;*L7i85dX1z93ypx_4Nwy0!) zz3+ec%jk#2eYlcs86O{?`=?*2wGx0r7)APOK~|P22+zyWSx2=;AZ8f*w{PD@L$f=- z7t&Avo-L;>&-J7N><~_Bh(3u5)Q?4lcz7iA%mK?#JsW0cUFRFMmADhWkByC8&<#p6 zQ_#wt93B>vlx$hvY%vw?FeEv(4o^>~u9F)Z*G6jHXttLw#%!z~n{aS&yg~XpJ5Mv2 z5w~s)jMig9^$J9=-b|{%48)3H;B!S%Lqh|o3O83*e}DfcPoCsGKBaJ!!p_ca^Y8IS zg3~hizr|ov6XwB4AALK&raJL7g(uOk{b-mG`i3Xol>=Ak)T%UP)s;Vzwlj9WCe%P6 z*bsbj3MZTI>l1C~w6OQiVCMwJU?jH&<;S8BkQ2;b+?pZYHINLT@xczO;Z3?u}%J7(D2A)B<5aUO9Ogs`C#|+(|6TZ4Fgfv3T4l$D<~-yR_l{PAKv&RRjMEVLo(RPe|Y0Rq;usnFPz~!Nef10GW_Q=vy zzMGR}aQpGWO2wTr30@OVPfu4@SHPAaR81`Y-C#lwmdfVl<`~=CX{HW3H~sygzv~dH zVnB}w&%~1|Y?cf3!&OvNK=SgF+s&BjDjt}eoZQ;l8o>L}o0gW|US4(f-=?Pt#-Qdw zJ9G0hw(#KKU~}^)u|675C^8~hyQd{B5a=fG8hbC z^DK2|t6R66ZR2LmoB=@vUYZkyak9nK5js71@v9ssqvYF?v}5Ays$|W33t#fHAWo9f z(l5-3(~-MQK0ZD`DjXan;bGhJum&*RY@V^d2qE_xGLMc3(Z~CaO}^dT-7p2=`K2v> z@~`0w{d$UhQcq>NHaJvUl?7ZphyL)q4-NQ`X9Euf*_|k1zp^m}SmOPK z&9B*kdz;^ZL^m^1& z$vXM`p|9Wepf77j*WaB85LdqoAdQCZb8F&BK-riS18`Bj8Ue== z@XwBE3eu^jvVvY-UVxn~w^>eBZ~OcC^Vk;!29Yg*_ac$30IjVU62BWF_vdbOQ`F~y z0aGmiS~oYh(`@hR4jXh00f+7AI1U`I0Lize0|Mc?T>(l6B^isi2C>=sZG`SDQv3Q~ zG1q2FBO>@>t_ey@ug{iMKE!hKhd@_mg(ucVT0gfwTzQeGf#qpa<}QP-vX<&f{ii8( z@QL%s#>UPBr0a8Va?*Ex72ZT<25!z6ip%e5DJv_J1n@Qb)?JGKm!z9AChIRJJN}N3 R27YW&$;)9yU#v*@3r=dftwnzG4nIi(b2IP8S0t? zYclXWWIPMZVa|TOz{22q$3U0v^sg(oxfoAJ$3isH)v^r9TF>@{*;@(y`CZ1BnER|= zg=DP+5sQ_mS%ptWRZ8n>8!CY%^Zhwe?unRvyC3i0(GPR}%zEX#T-?-KRnAa8H~w0^ zOMl#wAZ)bxy@QLPs?Zh!-q*R&huWAN5P5myOM2z-onGR=0T!aZyc>S9e4?^EJ3GuH z%6RsV-_MB;Gijb&hJ&3oU4B0kd4?hVWbW%{!i9?h51VFiB!&e&OUqQ_!W82|%g<2j ziLr8+9<_)yP8fL#$f1I!4LiKvVE+>}%w$O#ue*zvkoyK+vO_$9rCs z5s*j?e1hY0>6~iF=3Eb6yoc~EUc46U5{A!}^ziTi38-v#a^CIy_%T-Z^}@o!t5Sm7X*|s_9rK;t-KdG0`R4su!mC%v(fDLNN`H(0qW*&i545$lgMxxg zP5X&~%RIaW)#PO=H8KMxoZ;kh@7}%pwFe7ban|K~=}uv|UTR%kou!l(`*|&CX=%?o zyBJ+_B+?YM9df(%^yIMAqWGbJQ)}4qXM!@{-J9%gZf^3KJ|jgYiG6xO|MikF(O+8wP{rW*8T4*O8GTy?zZ%_4U@0 zFPJ0SNhA`Hs9HODG~t$HE6r2ZI_YBygS|sYTS}z&7FtS@D{MvB8TtA7&qiLQQ3FC9 z9kVI#*3nJcdF*jru5S=|@QHP_Ad8|k#cJe{k!6>7SZM%as%1ef_OgCxP@lf&;A3`SgBytJ9D z%w+9=}SJ(osF-ANjI+&M^dMXaPG zlt`slXn*y1tyC!d2!{-$lDJDP*BW;E`d|(YSvEheDG}D&mTMfF&^W4i&XaAjQ}`ZR zm36t(lP$dn;efzEAi_2!@7^g=xOpT}9d1AamZB-wZ#zd0HK`*I*K8($pHeb2ONTt~ z0~qu0xaruq+ov$_WOvBGot7qJ4}n06ii)yKmzS27W}7iAEG$@$fc*_eAQuDzZA=jg ztse8@X6`DpDlZY40_r9w2PF#@xEN(xEF~qCzi|6_cLeab6pm@2so>^sdFREgH?S4$SwD|W>_L~m*+Q(N`S6p0NP@pTpSH;s)izX+bbkQM0O|28SY#SFj(dbFvtwtM89@f!mZuC1-D&YR3IGGYT} zL7B+d|M*UU-nw;9k)INFxDL=;7yZ@_gP40vvT>oRs;X&mAaLm5;NUoxvyqXYNbNkh zgf{Eh2Hih@Z>KxQe2!IuRrbgsC#3j z5rtetV@AEO1>3gF2+@ji??3k`p9ZooMH|ZBIgfdk`8hECW>V(usHn-;#uohjV<&Y4RapG6p5>t^wW=l%96;<8b0XS9-6R$4uHxx3!jeXm5y#3I7_ z+S;4;7$d&TU>LNL??Nl1gRb^i0`8@3>Va#~Xc zocLCyH$-rT8Ib;XtUHh1kPR|aR7B({&eNyeSvDEE*lwsO22Fj1!(GAmfLR&0=wEgG zTPXkdC{p3%n3|scXmz+y^Tp22PGw~!7K;Un|A_`vO3J%C@$!Jiq4Z?bxA@m3n!*z` zE;?3LW3k*)g8T|_{_EGT7vIe(YH`2`N0Ug#`9p>pagQOYH)3DQ$;p*lSCV>qLifgO z=+A1&=1c$9yV6v2QAk6YC(cUJ%G`W-dU|?~Mg|}kXbz4LUdp?|*zWo!OC3`W3?eaf z$jt?erjlNm5R`DB!^1;4)}1N50NJmB04qYZ9;5d+W`GuJWMmX42+>U&N-G&zEh{Ta z!Q+VzRhq)dJ?;OQS znGFH$T$>NDgsTC(QdU%CWn%+)T@(9>`$reAQ$cZYl>9hAg%#FP2N)8$+NojEhoFqQ z_%%jPPY-%3(1Th->f0~m=|ll!`SRsUn3#pOb~_-E9<6`b`y`T-TsiuHRV(@ZdzD{d zhA3tZF1=n7${@$Ugm%6YOVwo_qT99bz z-y`99KEII^$J`4i3JhtgNi0^!S$9`TUyP+_~BT4ch8z zW>!{3bu}n}nI}$ELqp?J{~awvgKmtjyoQEpHJ^|WZ(J902F~@uxDeHHP-I%X!*-RO zk<{DE#-J13vl;T?vKqR?vTS(R{1;{LDKTVgA#gyQcVRG(eVp4GNa5h%=D0nou(0q7 zqdWxiWqSGp_7MFxn9_pn>gt-Dob>ni2TBQucxGm1ij7?FSy=(3%S>Z1i&iqwbh6ce#yEV(-CIwu3y@}$ z6B8>BRX8{}kRkJtFJJPn5l3(E^75u=u zFVDfr$rtlcY-5_}CJRoRIThWYwB~#WKeOf970XRePY=^`TTY_ZfI}|+&BFhHYq2$T Xv$G5$D-;OGdO9OLQ{5_U=ZOCR<9YlG diff --git a/class_u_s_b_h_i_d-members.html b/class_u_s_b_h_i_d-members.html index cfecbb96..a18f123b 100644 --- a/class_u_s_b_h_i_d-members.html +++ b/class_u_s_b_h_i_d-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - - - - - - + + + + + + +
[legend]
@@ -115,10 +90,10 @@ Collaboration diagram for USBHID:
Collaboration graph
- - - - + + + +
[legend]
@@ -200,9 +175,11 @@ Static Protected Attributes

Detailed Description

-

Definition at line 143 of file usbhid.h.

+

Definition at line 143 of file usbhid.h.

Constructor & Destructor Documentation

- + +

◆ USBHID()

+
@@ -224,12 +201,14 @@ Static Protected Attributes
-

Definition at line 165 of file usbhid.h.

+

Definition at line 165 of file usbhid.h.

Member Function Documentation

- + +

◆ PrintEndpointDescriptor()

+
@@ -251,11 +230,13 @@ Static Protected Attributes
-

Definition at line 74 of file usbhid.cpp.

+

Definition at line 74 of file usbhid.cpp.

- + +

◆ PrintHidDescriptor()

+
@@ -277,11 +258,13 @@ Static Protected Attributes
-

Definition at line 90 of file usbhid.cpp.

+

Definition at line 90 of file usbhid.cpp.

- + +

◆ GetReportParser()

+
@@ -305,11 +288,13 @@ Static Protected Attributes

Reimplemented in HIDUniversal, and HIDComposite.

-

Definition at line 159 of file usbhid.h.

+

Definition at line 159 of file usbhid.h.

- + +

◆ GetUsb()

+
@@ -330,11 +315,13 @@ Static Protected Attributes
-

Definition at line 168 of file usbhid.h.

+

Definition at line 168 of file usbhid.h.

- + +

◆ SetReportParser()

+
@@ -368,11 +355,13 @@ Static Protected Attributes

Reimplemented in HIDBoot< BOOT_PROTOCOL >, HIDUniversal, and HIDComposite.

-

Definition at line 172 of file usbhid.h.

+

Definition at line 172 of file usbhid.h.

- + +

◆ SetProtocol()

+
@@ -396,11 +385,13 @@ Static Protected Attributes
-

Definition at line 66 of file usbhid.cpp.

+

Definition at line 66 of file usbhid.cpp.

- + +

◆ GetProtocol()

+
@@ -424,11 +415,13 @@ Static Protected Attributes
-

Definition at line 70 of file usbhid.cpp.

+

Definition at line 70 of file usbhid.cpp.

- + +

◆ GetIdle()

+
@@ -458,11 +451,13 @@ Static Protected Attributes
-

Definition at line 58 of file usbhid.cpp.

+

Definition at line 58 of file usbhid.cpp.

- + +

◆ SetIdle()

+
@@ -492,11 +487,13 @@ Static Protected Attributes
-

Definition at line 62 of file usbhid.cpp.

+

Definition at line 62 of file usbhid.cpp.

- + +

◆ GetReportDescr()

+
@@ -520,11 +517,13 @@ Static Protected Attributes
-

Definition at line 34 of file usbhid.cpp.

+

Definition at line 34 of file usbhid.cpp.

- + +

◆ GetHidDescr()

+
@@ -556,7 +555,9 @@ Static Protected Attributes - + +

◆ GetReport()

+
@@ -604,11 +605,13 @@ Static Protected Attributes
-

Definition at line 54 of file usbhid.cpp.

+

Definition at line 54 of file usbhid.cpp.

- + +

◆ SetReport()

+
@@ -656,12 +659,14 @@ Static Protected Attributes
-

Definition at line 50 of file usbhid.cpp.

+

Definition at line 50 of file usbhid.cpp.

Member Data Documentation

- + +

◆ pUsb

+
@@ -679,11 +684,13 @@ Static Protected Attributes
-

Definition at line 145 of file usbhid.h.

+

Definition at line 145 of file usbhid.h.

- + +

◆ bAddress

+
@@ -701,11 +708,13 @@ Static Protected Attributes
-

Definition at line 146 of file usbhid.h.

+

Definition at line 146 of file usbhid.h.

- + +

◆ epInterruptInIndex

+
@@ -723,11 +732,13 @@ Static Protected Attributes
-

Definition at line 149 of file usbhid.h.

+

Definition at line 149 of file usbhid.h.

- + +

◆ epInterruptOutIndex

+
@@ -745,11 +756,13 @@ Static Protected Attributes
-

Definition at line 150 of file usbhid.h.

+

Definition at line 150 of file usbhid.h.

- + +

◆ maxHidInterfaces

+
@@ -767,11 +780,13 @@ Static Protected Attributes
-

Definition at line 152 of file usbhid.h.

+

Definition at line 152 of file usbhid.h.

- + +

◆ maxEpPerInterface

+
@@ -789,11 +804,13 @@ Static Protected Attributes
-

Definition at line 153 of file usbhid.h.

+

Definition at line 153 of file usbhid.h.

- + +

◆ totalEndpoints

+
@@ -811,7 +828,7 @@ Static Protected Attributes
-

Definition at line 154 of file usbhid.h.

+

Definition at line 154 of file usbhid.h.

@@ -824,7 +841,7 @@ Static Protected Attributes diff --git a/class_u_s_b_h_i_d__coll__graph.map b/class_u_s_b_h_i_d__coll__graph.map index e856d868..4354142e 100644 --- a/class_u_s_b_h_i_d__coll__graph.map +++ b/class_u_s_b_h_i_d__coll__graph.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/class_u_s_b_h_i_d__coll__graph.md5 b/class_u_s_b_h_i_d__coll__graph.md5 index 92be9460..b8d9dc3c 100644 --- a/class_u_s_b_h_i_d__coll__graph.md5 +++ b/class_u_s_b_h_i_d__coll__graph.md5 @@ -1 +1 @@ -cf485acf15d75bd6f1697dfca03233cb \ No newline at end of file +55575cb1417a298be7b19ac4ba5cc390 \ No newline at end of file diff --git a/class_u_s_b_h_i_d__coll__graph.png b/class_u_s_b_h_i_d__coll__graph.png index a5eb0f3f3be79fbe00e94bd57bb1b476051a5eef..ba3cfee165677ccf81f2333e39b54b16066795d0 100644 GIT binary patch literal 10755 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 CUM3Cz literal 9349 zcmd6NbyQW+w*H}!kP;~Y!2oGcLQ>$+jf6DP9O;k_$wMnCE!{2MAt4RY9J-H`wA5SN z``#OGy!-C&@1Kt0aV*$p?={z)-~8tH?GR-}DSRAC90&x0FCz_Ag+NfgfdBVnV}gIn z#7iB(2d0sn6cloM_xD?KUJL~C7$O4|RdY?*MYz3FGrbi#IKxA`UswJN)o&#zKT#)l zZ9FS~W{PF1ZCz&2JDxILdp1T@C=NGD((t*~#_&(uXJKaRV=I#J%kdOAVt#%W@8PJS z#V^zMX}i06%kf|0q3usO4?1&hro28ge>mi^=eRL1MMsZHPf!1ZkyQ^uM5M(YgiS<5 z5kV&gg-RO335mXps>QSU!h7FsZ*RYAaC-5IG9pLL@*yf38WA~pK5v8&5q+h0Pb9Ut znp$j5zs19q)m0)YDjiFH4|=G{iII^Ji=J2v*@Firc6TdKlUM)p{pA0(%*~7wh}!Ia z(vfOB9E$CJ`ukp>n94S%ZOg@TH73#p&m)EA?JBduj`?~=W>yjNp+|xjYcUXCA&*nT zt&t4nqKSj!<1P{9^h!uj@KG2UyX41@Jc_CO7;&9lyh*Xe9FKO z791R$ot>>Va}zWJjCBSP;RZftL+5lCMQX zL;?Z>w}a3_;Beovvai=yf(j*+3BO>plh!GLJU}1@^ zv7Y;RakR-?;?m}e!eue?4K|1I*v7`jVQ>C5;&{L1QgN?wUw9N&9XH!L-WS90qrYFy z`(ix-mY$sPaldJT^e){<2U1>>^hDA2OqS?;`TW_J;-#6IwpnKoe(%swP;;};0~`#H z6<<4_;RnV8~aZ!Q;aHIfV#kac#;ehaI^=^|xQ z0y6UQ50sRYWaQ*xe*IEAJU))CG9T8M@z&Q*`))O(S|%i38=9G!*)=}?Hj+k28@Z{0 zcx7D9AO>{`PSAJ1my?roe%5-cXQ{8I_5c%~5}lTows||1-?^jtY$0rG%VNI48CO(P z6doQ9-5g3C&5;g~Inm6A(HCzw~9TRp((Uv9iT8=%v zJ9V1Nt*j`cpRq42CJIS|@F@Jo##F6lDsv{Cn+`f~>s${r_a4RnnHx;zb?#RaJnI~B zd%Pj21f?_jnQ9D$;xjydjv2$C#Iq~x&6V%TcrFl(xXVg-csC&(J$)7@6b|pTzysyM zMJfKjmzm_q-ayq1Dk>`C*)kMM4cLQX-r{~eND-;(9~cOzt#!%S23J;U)6mc;7pOIm zEEj)LEeJ}UvszoHe)Il)bWVQ(iI2~%?6_+;KamRBY~?yb)3GWGCc$3lun0ko)9aJ& zyMx8IxI86MX7n}g8M9lLZ2?#D0vJ<4t9N)tz@V5dzIOTzZs2timLpgA&mYXRT$@i% z&oBIjRr^g(uRbizzqtz~zR6t8>WIa6h>gL^wSmO`Iy<_#4)qBFu&;cS?A)7>wKbOJ z_eg7N>x1=#$!57Q0K>l^E$1swt*ot&bK~M+gw$RGVx)_?Laf9C zMMJ~K0GJ17C3Dhx0Z0;(lA2CR_WgxQNGt=yG1KvZLeW9-4%T?XDDR4xi0FOI3Gc7d z{k_JrB%wF|Y`-5Sc_44pC&ED+sp3_f6wgrp+8iMf_K=Q|vG@1x=abNokoL8{7^-aQ z4^zswa)Qsr{=3`%XE&B6IarMn>6n{q6phq*^(Iif09)T z0va0yaurhxUG9tixQL95+?pz*)py^1W@2uhys`~}?D2W!>PN@KZ~|4^7Tz z_ZTz-v&xfnVJ}J)6qJU`+~Ven!d>&y7D}WC?}tg2fmDIovE$c{8%uo*>F6UIpSngq zobMVKkAD;T0$KxT_gIZC`;s;`Y^tiN9M-e1SPWWpZC?|8f`2P6#$!-Qg96awbl&+T z+iy{=eRXrWKi%Z^67{7`MXuqeYNm!I6_jfFckxixZ z^STwawPh8}n)+@MG(K1M2(JjqC;bWRWB}#uKYonYsxs>XAo`4fL29o7$yWbyH)&zj z(ZQi>a8RLCuQ7K@($cb^>CaE*u?%r6dk2T;^73-ZIYwTvU#$uwiR$6{{Cw$$Ebkrz zE)nx_cec+D12-Ei?O)hTmy7a${LKif*2W~DVaZcUpB#MYR8+SI_8b}(7WVzal%htN zzTW0pZBy#j))v3WkS?-p*W6~Y#cQn0Kt!czVywbg>SD>C;5c5V*}b~1zCHw8hmM6M zXK!C&<8AD-Ka?iKytlU(osz=R*VnhQyiE7v#S6?Sy^6Gh1G~dNe~1Ic0NjH$E^zer z_V!;uhV=&ABY7$ypmX-MQ2188T4nq;AcGRt|8+N}erj=Ku5}g%4==W@t&Lx#w3PBY z0~a_R!RzC3KF@QGJJO@8Uo=6_%#53nkx>T-15DTZ^!Lnkt!?_=&204tA~LdIz@;9u zvf_ij>UuJvxxBLC*F)ohcSlJ)uDT(61O$)@2F>o=-sj6$kNE5$o5Sf-NNtS? z$@=Tdv#E1dqxGM0((>|MAtVd{I`2Jw`qXfuP~E-X^K!QqaH&qfLpj}#EfA%67az`o zuTFL)_NJ*Tjeg*mn3yabZ;$i2{mIs!s(<}e*o$9GOzd-Va+rAV{pH>-Pu!2r_7Gv9 zH`3G5p@7I>{4ipM)o0^(hYGD2glGgrsO9kXFq&B!4`~Lmz z9JvI$!xf3|wu>|XcP3a3CN^6Od0>CjIn=}*4fl4_f6ON`ZOE?xj^nl-rAdzy8`Naz&9UUEn7a)K#ii(qn;h#UFBdG;Kdv|T^ zsrj8ggQibZe{J30(<8;j#l=)TTKz#2QQIS+J{1Iq%jQIb2WB#$CHgXyDj;WMl(~1a zJ)Q@ikj;JgEK1~N1i{Y8m|tVAap(<*%lhw`s)oyukdVPbhLzo2R^((!3?R>xx}_^f z?~MV9<|%~sLL&+qX74vqe>`Ck@$s?o@ggrpH#fJH_4S-a1H|T{G8Ol=(y!d0!gr2J zU1}g#VEJiq8L_U(NsTgGgVOSHj=z`qR|J1P-|MUQ2VcR}OEskx-UYRD6CuBN5RI7z5;!c?J!sVATyjBV-h;?+RsX zYz$AhrtpO9;lohvlG4))jT8+;kaUR#vY9t9Fi?RW3cF0ayx2@Py*fW!+1X)2G&skA zA!e&u3xTx3-$w+~dNYF5O1Qbc>}N>#R9$aiQXGd>yN^fGim-JC6Ofskn%Pq!up<`o`qh&0aE2SBPV^xOup@2 zU0rF@k|YXyHSBqV1Y7S2#8t1k-mP5>ZEbCZ!|`YY-zlaET9!xHAR5#!6pC|sz})b> zNTa0Cp+$PPWpJUOhAK06mZSh_u2?kj6F^TF0-;wn7+U554t4>#FumB=)djs{x8J|N zl2K3~1(dgW9iQ5kLrp1xO>Yf!miUyEM=zL}V^UI5w0&;y?@Al$CH9RoNLt+X7S>-V z_LPfD)%|Rb6(B)$LIMLgS%-rq(fZ51M$^G0?uPZC`_xRMqodJranHaXhnp)mFi%B> z(+K_D_uI3$+?gl>Kv>qh)b5YZ_EuT>F#!2k4BUtCyu7@HU>AUZTn=l}GP1JKD=S7a z($b$nn?RPdYL@B$84}p<1;uw_@D<0pShrp^2%qY?rKP3A?ku-fo!$GAxpNSzyB&9Q zc0POg@@;5n=-Sq3)*WmixajEU?!LHhU?6s2K%PR_v##mtPrrK0a~H)T8}SFk#PoOB z13A(<+uH?G8~G|(YhyWb4%=hTD7ay< zO@DWa8ZII(nwc3HKkGNU_krqj>bIS%QMij!tqp>h=nLqRvY^GqA=x+g_SghI{{Ebq zNq;wOfC+En?~!eOMA8jIlJgxe(ki-ox`)r`M{XIc4VBLQ-@}cT#N(&$x z7Z_+{8=u{g2*(Y1x0?$vZC=)Iro}L%xdKMC;ErSkZM3jPi0BI#xaB~t`~c{|@3i$8 z?5pVHKQZQ2HKFC!u7S0dI{fp=`N@<)&f7diXK!6&+%Frw(`ThGEW_!>-f{P(pGTXr zXn)7n($ebf?QOfGgNLg98*>{&VznBe z{y=>Z6cik&@n&ad2OZ}zJ$;9j^}A#qYa4?@4w2h$fy|b=O-)S$HG4ZXKKFU7?P^!A zw~%}fyi4{w1uTb`#Y8h_V4N5}K0Z~o8HDw#MrbA<`{S*9q-d|P1I19{WJ4;sSfS`Z z{jssJUfSG@OcN3stuCVS^g`TyJffy%(c|I%*3m(HymP_@MGpyKUS4Wr*3=gBHsj>F zzfO1khOPAJ0|-4Kigrzv_)<+;x$_bcN*aR^3bTeh^y4W$=*5!g!xsIiM_W3e+BR{jrx%{Y#^mB0Ys0?XXVu z*A=I}B(-LC^|#vn`+5hPF&G$5-ze-}Eg<>M9r(YS`gULv4(_&% z#9mDx^UI6JBtP*iuyPni=3y{dH%-%4ebXq>e$4OACMcLQxyeGojbzM)3U=~$5O z^^AB9*VRWjqo9a)j>BE2_dQT1AnZtHzsS|56F0jj%4z^Tdw{j$QnHLofGMv zu0M*!V1i*jcynfNJ(?MZ6DnZff$>cl6{TN5JxvNiP9G84>OQ&y{b%+k-s_Pb)-8IArP?{cBPXkO)S|r+LdpEr_W4^|W(yC$J;S zZmBQhvoo4~lIO65j~VT5iEa5lE)i%Kb`V;cbcb*Is~6FrK`dVRP3cqRB~MkF;-X_k zwPlFQaeBHEu;|p_Kap(ev&~n4y8l%N;y`5K(5;Z;2G>yfu+36oQfac*v+0vxuTyT0 zmGHb5a8dfbM)q&(k?xOV<4||^tub2fxoFjmbq{V-Pw9IMj!ArO5%y|YUK&9?n_mqK zA=xi^)vC_SP2*WkM&tFJR#mlLfLU6+EhF+d%r;FfutV}w@RP>ORb>WA;LfyHC?dBhpW>KZR<=fuT-Uw`10fpE)AM|{Zx)ZD5{HaUZE<{SdXyA|mseRr zAu1OdW^8*K`BKFvbB>(s%2*34|JPpu6C1O*r6R4?cAp9|{s_BD<(x@>y0L((gHBu5 z-D>vFNq-rhE42{Z71LZz39H`22{EG;Q^9k?cO~%v{yE)GV742fNx4YN!097-rl6}i zD&bBF!rV4OOQY}F?Wem8<**5x`8pN2RuxT~<8TBNIk}TWEB`R&%NPHV5rlh>xcB8Q z4y0|WHq|CcETe5K#~5Vy2mh&QH4E7Q2D~If@$3*L7MAvnL6N0Yms8Q4%Jz=Htb;C+ z+x$NPk}%JWfeUiT!Oi7MR^59l6Lk`nnLxZGd?bhpHg3H0s~xlp22@lHNkIb z;rXTH^a?3ej&cD3f_|OB3GIumxEq6Weo{1AVd>to)lQaBGdk^2{BP15J%pCeXKP)$ zlek5}fOJn+PiMKJhn~~z4`zzcWn+%q6Rt!*5xEKv8>YwrgG#3tgP7vkiHAo=ZSky1 zbo}l#4vx0V?O2^0=0iQb15IYzWAL5zu`iy#&o#Mh^jHHI(QgjEWpF@~3b1Gne(){| zM&VPLf#FAvod3A>U41l~VD!moEcVJ`Q$X2fUPpf`_jAt`tf{@GQ(5ulvMTJH97?DZ zZD$gO%8ANh*{ciMP=69>xiI|h-ZsP%I}vtvVZSmlS-?p z$L=SDH*N%1PGyY4LC3rgbbHp$Oo^<6)>{wqn;YhG%W=BcxWfcp6Utex_6p~O!;>pD z-O%A$r`KxuLD&?5ASCtkS6S$dX*c*GDl_C)O=L8#_2PFt4r8)d%O8jX?GqEEK=_xE zk&#KAn{D+G0pli9>NUwyD-XXji2K{?G_39w z*r>As#YI0w(2e-sy?fF!GNKk17O8W||1#q~x6LY8r9hgf_VxLIxmjjAoH}mqUf(csaVDvBP04duLyECgV))w zeojg%Og5OvEm>*0Pt9-G7yXP}#9Oebxf%Hj6VaW9o%jID^{KI*5_1Q9M3MZD?LG`G zTNlin&OR>NV;BkS29t=|>S_rvcjWXuASD$oxbi?4cphThf5hkOef_t6YKqLj=i0es z?%NzWy~#sTELVBy-Ze;+8f#oL@v87%)L+g!mEf|`>$0^>U=d8hDg5eg*@1u< z0!OMfs^WNmkruG?H^2?LvzOLllqMVS8-VL(mZi*iu$ARyzcr%Tbl8m!vi`?XJ2N3g zJ?)Plrtxf1#q&TDv%C0Xs@vj85%!R^qxI&59nl1wlGTE|w2reypQx)V&$Z3XCv0r@ zm4r?nq`7TSARNG*B~(?3W#!~h-jpS%zNK=a3buS!#Z0?o-w|+gzLiCLcsl2CxEw5E zwA`WcmEW1r%IaJ%Xvd}tPPDbyDgrL#H2wJi^c8vDI~%~x&aQ3cN0>b@V<2z9>``vg zM-1!*@mj!IS2^rgpg`RCCKW|<4z>nEfWV_6e=Sv3{sCQrH8V3Z)6tw4m;>Uj$D=Lr zY(=A%Fsw-lX2vFcOf1bg_p+h}w9Q}T=cJ!0A7Qy#dE=DE8cvOG9w0K0xY^}30_nsa zcB0TE2Zz@QdJ1z>NKEw~ypdif!Rl+^g!ZoRwHc3RzZj*z8I(J>v8Qah9o;DFpPWrL zLCnWZxPtN?U4ld@NZGg(wRqBFwC)aww&Bp?d30hidDz$_(YF-+%D3~CLTb9pg{3Op zU{dKkdv3G)sr0t9f0D=a%K0HTY^scG3E@Jp;!n^LTw9B)?`i*v#w}Z^ihO7;$tU$> za~pMjq7y|{ecUHKN#GQkuTli_?KwYxC6^#MVTVLSqm0ROKzo_K+wO;RfAA}}T_mn+ zsOiX-LH-ZCg-wF&Qs--XqOuD7$)YY48dm0`JkLiuJw(&bRjS+mf5g>R(MDl6?hy zZCPdPSgyqc)`?4(w~d0+!4h#;Qm8Wdh(_RR;=9 zh&*sZ2BVvssr~$=9t+=?$|rJRGi&^YzG;K~o_8yp(JK-wA_6qM(uu+(hn)UbG4~k? zjjdUn;ndsBat1z9Q;FXpDhOaFjR=C8jq3lg`8Gx+MKdUPaThZ#DH*L$z#9fFKYVjbC50Md{e(pr6|A?kqtd=xlfI0=UdLEJ3*_PN8sEfv0Z|t#|nX z3XM)pm9g(K<1*^X&+j+l&(a ziw^-bq9s?yQV4hwOUuEuLE0rXPA`5*b3ow`(3dv9zOsx~iK?#pK%g^M!^p^C9R)3L zf

)BaqOx-ML!hm9CI@Hh;={aXGk;VR%1(+R!qJxE|cie)FiPs7__1L~VCgnHs^r zac4l~eE9-?v+#;r^M@M-2FCgCs$sjW5jr6KcMc8RKbv_ArM0yH z0J!h>=IbryYOGUd8;|z?IM2?_b&ijd0O1y@tV{^xBl!a+Wyc;uIYzfvz3%jXJSv`nr9WU+EiEnm%4r-l z%J7B~$flzuI=oKEN&FJ+>W+=UB{;21>ktzna>V9q<+?!Pt#F zCZ`v#6A0^-1{olAr}S(W6ckuYm8Q1$Fh0P!;{rEV7t+$w`3?w0MMcmyn4+Vj=w1MdZOGz?`<2@=+fDe#mtt;S8bG8;^ zvMk`p_*@-g@z~767n(gZ>-RuE1L4R5TJiIu+PXS&(5yRwlvCkxW;2k)-EV@--3V)} zf``BQ`1{>=i&0c69;-H>EJGmr`ubnFOmQS5D06gdfQk(aG%O(6sp#tBX=-ZXQNF?k za-BP}s7|gBq{9{<`8lTHM1+J8AWBqgmk21C0H!0T6d><6MM8&4NJ8QdR6<9_b4uWP zKj!DB1jvx3%Rv_~&JBw*T9^XbS zSoCDG%#4lwfeuU#tDYUpQGU|?4=eoe>%Y9412JONLkF+z - - - - - - - + + + + + + + diff --git a/class_u_s_b_h_i_d__inherit__graph.md5 b/class_u_s_b_h_i_d__inherit__graph.md5 index 1094a598..966fc3f1 100644 --- a/class_u_s_b_h_i_d__inherit__graph.md5 +++ b/class_u_s_b_h_i_d__inherit__graph.md5 @@ -1 +1 @@ -fd1ceed8df188748cafb6f9910104e67 \ No newline at end of file +21b3a3c0457bbd752948baa7e8c1df2a \ No newline at end of file diff --git a/class_u_s_b_h_i_d__inherit__graph.png b/class_u_s_b_h_i_d__inherit__graph.png index 7bbcf2d5a3fbd5880cd996c1619dd1788a44af6e..5bc20bcd71aa940ccdd54af057721c4bc2753f37 100644 GIT binary patch literal 16899 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 RR~=B&;?KqM|9SoX{{v}QF8=@k literal 14352 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πOZ>R4KPx($Vg`wtB***4=!IloX=)-o`d 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 - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@

- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -106,7 +81,7 @@ Collaboration diagram for USBHub:
Collaboration graph
- +
[legend]
@@ -147,9 +122,11 @@ Public Member Functions

Detailed Description

-

Definition at line 164 of file usbhub.h.

+

Definition at line 164 of file usbhub.h.

Constructor & Destructor Documentation

- + +

◆ USBHub()

+
@@ -163,12 +140,14 @@ Public Member Functions
-

Definition at line 21 of file usbhub.cpp.

+

Definition at line 21 of file usbhub.cpp.

Member Function Documentation

- + +

◆ ClearHubFeature()

+
@@ -190,11 +169,13 @@ Public Member Functions
-

Definition at line 211 of file usbhub.h.

+

Definition at line 211 of file usbhub.h.

- + +

◆ ClearPortFeature()

+
@@ -232,11 +213,13 @@ Public Member Functions
-

Definition at line 216 of file usbhub.h.

+

Definition at line 216 of file usbhub.h.

- + +

◆ GetHubDescriptor()

+
@@ -274,11 +257,13 @@ Public Member Functions
-

Definition at line 221 of file usbhub.h.

+

Definition at line 221 of file usbhub.h.

- + +

◆ GetHubStatus()

+
@@ -310,11 +295,13 @@ Public Member Functions
-

Definition at line 226 of file usbhub.h.

+

Definition at line 226 of file usbhub.h.

- + +

◆ GetPortStatus()

+
@@ -352,11 +339,13 @@ Public Member Functions
-

Definition at line 231 of file usbhub.h.

+

Definition at line 231 of file usbhub.h.

- + +

◆ SetHubDescriptor()

+
@@ -394,11 +383,13 @@ Public Member Functions
-

Definition at line 236 of file usbhub.h.

+

Definition at line 236 of file usbhub.h.

- + +

◆ SetHubFeature()

+
@@ -420,11 +411,13 @@ Public Member Functions
-

Definition at line 241 of file usbhub.h.

+

Definition at line 241 of file usbhub.h.

- + +

◆ SetPortFeature()

+
@@ -462,11 +455,13 @@ Public Member Functions
-

Definition at line 246 of file usbhub.h.

+

Definition at line 246 of file usbhub.h.

- + +

◆ PrintHubStatus()

+
@@ -481,7 +476,9 @@ Public Member Functions - + +

◆ Init()

+
@@ -521,11 +518,13 @@ Public Member Functions

Reimplemented from USBDeviceConfig.

-

Definition at line 44 of file usbhub.cpp.

+

Definition at line 44 of file usbhub.cpp.

- + +

◆ Release()

+
@@ -548,11 +547,13 @@ Public Member Functions

Reimplemented from USBDeviceConfig.

-

Definition at line 216 of file usbhub.cpp.

+

Definition at line 216 of file usbhub.cpp.

- + +

◆ Poll()

+
@@ -575,11 +576,13 @@ Public Member Functions

Reimplemented from USBDeviceConfig.

-

Definition at line 229 of file usbhub.cpp.

+

Definition at line 229 of file usbhub.cpp.

- + +

◆ ResetHubPort()

+
@@ -603,11 +606,13 @@ Public Member Functions

Reimplemented from USBDeviceConfig.

-

Definition at line 309 of file usbhub.cpp.

+

Definition at line 309 of file usbhub.cpp.

- + +

◆ GetAddress()

+
@@ -630,11 +635,13 @@ Public Member Functions

Reimplemented from USBDeviceConfig.

-

Definition at line 199 of file usbhub.h.

+

Definition at line 199 of file usbhub.h.

- + +

◆ DEVCLASSOK()

+
@@ -658,7 +665,7 @@ Public Member Functions

Reimplemented from USBDeviceConfig.

-

Definition at line 203 of file usbhub.h.

+

Definition at line 203 of file usbhub.h.

@@ -671,7 +678,7 @@ Public Member Functions diff --git a/class_u_s_b_hub__coll__graph.map b/class_u_s_b_hub__coll__graph.map index 04f84c15..edffc860 100644 --- a/class_u_s_b_hub__coll__graph.map +++ b/class_u_s_b_hub__coll__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_u_s_b_hub__coll__graph.md5 b/class_u_s_b_hub__coll__graph.md5 index 5328fe8d..acaaeb5a 100644 --- a/class_u_s_b_hub__coll__graph.md5 +++ b/class_u_s_b_hub__coll__graph.md5 @@ -1 +1 @@ -bf8ca3c3b9277566d37448eda78dfa47 \ No newline at end of file +19a6b573cae00d583786c381a3eb5446 \ No newline at end of file diff --git a/class_u_s_b_hub__coll__graph.png b/class_u_s_b_hub__coll__graph.png index 921bd62a6f68b17127c5800335679d1aeef0b94a..51d7bed2d668458d5fbf167a7d950892c983bed4 100644 GIT binary patch literal 3197 zcmb`KhgTEZ7RICUs8Uow3=(<^7?l#F3ld17<|<8^0R=+|0@6D|1Ox;`F4C14Aru1$ zB1TYzfV7K94WU0HUApu)@4k2MdVjz>vu4hkwPw!jwa>SI-=0KEa}!=}FgFMU;zc2i zu)zEXIDI*f1J`S7{5-(Kj>DK3fsX!t6w%0;Akaw_l##*p;Jl^$2vd6-@#u?5bC%~+ zn(ULT8PlEz4&J$UMl$BmrZt=1i?}*r5x9SDM_%qdoG61g=bqdi`UT-;zUQM6>-%v7 zw_I(8mc3cA`CV$U=E2J!d{vBYhiC}vnBt6*9_jO+~9IEN?+ahh9M_4)Ve5?5gFGQQ#8SSoA; zqaPzU;|<@~FWDM8IL*<;qc*PV3CIg@K9H65H9rpedm)z#8Jujf*wTO-I5n_E-W6)Z z-d1yS^V_#q^a=^^+*SOQ;^N}-d?w`n3;eBZZQo~SP0h@7eQ;=!-%fcWxQ$M4a9G}2 zVsyBzjnl#qQhi{sqOx)cw$vgcL1`>XR!C3~Ny4Th16IaqJZE7KTXB#yqKUS)HW1pu z-Zq25xB(s5TWM;NDe3c=Usw>=34Z+aDO^=`-ImP9#ibdtHajC%KC}=7ynnaH75B8DSKaN+o>Qd1+3*xq3CxsM?jzXX6cr!3OCcl=t1d|{CSSXekgqWyb!ZeQ!C z`T6vOC=NwpUoI!Ih&QjjxjliYNJqEp95rgakJgJK%|{63x{SOK*lYLJu@1!sAlz zr{aDt?e2zZQe*fLw4uL zS!fakPQog}6k#xP$^ec5MCpmgmvy*t^YJ}JlN6F5+JWV@wcn^g(=#(S?d@Oh1}%>@ z1k7bn0uOgs;%o*#G2UF(lq{qSRFKSGYXXNEKc`ZSq%=o) zxws6hfSoM7a_^Ie8aoGv>&_(YnpFC%-_BZBeqGJ&PT@qOXk-HBA`NZ}1|C#Nq1vz8}P1sco z0(IWrj+9EjqNesBODXG1#m#ygBQjDc$kEjFkzuj#;wvHkd#Nv|H=I!6dQq&N{OpU) z)}_~ns+=t_n9lC*))$(Znyag;HkA(NL_`DLuVqh>7073s;U?cM~ zP}@G^?{l)UgoK3DRaN7}e)XA%({|@6*REaTj-TFP6-I3{gRBJe3k&&qc~g>;Jv}^Z z*Mwn8N*FV!Kr)MHd z#IytR^dd&xR5XqC4}ZAUj+vtw^-sfDE~h`6sMmfgwA!}FrgqqVhl*wc+hx>`S*oHA@9Y(7X$*y9s@mL1AUO| z@TnQ`h7;VU?&OVK+5g$XU(nm)*tNMS$!Um2{tT2_{+w7chg*V#?tyak2Pg&RGq+@HV;Q<7%IpJ zaB{{J+4lEFz?DBpcj&09`mMi=xOL3YR^)IciWTl*zb1w{sHph0kCqT%A02(4n*z`p3Hc#juE$)PmrKTbMc00CX2cX-Dr}%?WGb%YwBtwVr}}DzMCuE3)+` z_6g@9uLh2^0yrn~A9tQ&OGKjm$^~-r7UR3dh!zptsS-#}CrGTsQDwy@kVdv&Q_Dxk z{`O)J`hSf1|9%sFKk92Qjl!rvPXA^h$@x6^ZBmiD?Y7=Vbjjl4;^)tw@9QSlTPg?w zg-_f2;|xDsUQX^MnH)B0e(}mzuYS+ZcQniGJSQsJ+1~EUqWFn}_8HI0%Agh2N&=ixQc}jo z#$^!uD44o*&xx=B*nvFMV?Nf)ZE*CmnH%qLHtynHD~RzKL^Z+BZu z;?+v^!WcI!3{};PEJ~ZC=4tx3;ix+ImY0u#P-Kh3<&~A*o*uoBwGyPvvuDrz9zE;6 zQ!}EYp`oFr6*~1PzN@QCRx)oOk5W;wRMV?RDKB4KUOwDn5SaVuL2i&g*3i(<(UCbh zS#%wG0N@sn$D=Wr)%qwOADENsrAv?LGgFPJ#W&W*!&Yu}9(@1)J@R04h(OyMJVRb# zhbPI{h)3Be174C*P|)LYN#rDZax31$<5g+tN7;y@gKYr%6h%Sq@)*L{7_SBn4{~#RfRr&dGLqoL)iXLfJ8wXRAj}%~wC)l8 z^|9K!{pr#swe}TGRnFZg>QUr-x1XPdwdrsvX=(8zQaO*P;n$CG9F(#$ALcvK0G=@M z!O_YpJtqexbNUpUWI8e@C+B!f5wJ@y`T_z1^0b3eJKUz}^P8dh=H&jl<%uR|XJ>H; z#Jt!N67jC6NP^9v(usyw$uUaKhG+ubJv=+8Vm;GJw4UIW*#0tFc)c0GBe{$*4Njmy!!f0z$yUUgql7+w^X2~ ziR*`LdAYi}Mn*=Om~cR}0)AMcP>FpWI=++5ZFY;DXC~xVcfy?y%BF$7;CPG+ZO`}G z$)Lw3C;kIJ%hRB%sJ}>9@Jm|};J1!WxMT111%RJ>ySvdxOvk{$tNhIsEIL_vXp7;#aKd; zGD2mSWnz$}QOwlDWEp;^t;`&O{yxw`g!cmf*ek(7KqusDV`(O^`}-?sqGbpO9MC&&hHxh2%;g56q{rmn z(TX#R@YfLPAnSHHV~JZBa}$4+HnA};nJ+MnV|+wadXkpK+_VsaR3hcaPd8^Lq?fsjeAqQdd;5nR9>}TZR^sXdM?9mush+t}rwcy0f!W<%`8&=Emy|XnIzTkX@1_uX?<9416_?Ot_mJbJzb`GbgDl3~+3`-UEVsE;-jy!X(9mT!6crxryP_>+} zAe~OPW5U6r$in+Q-|%#=LVJHGI5CGzCLdQ)x_Hvn%gf8t^T>CcktAY}$-EOEU+*wsU^{rycHhFlb=eI<@%OG``5yE{>CF{|?|&r6q59vuLI zW@l#u0t2HWBYUySWlpsC`1n`BEDuLVXO2Okb?=O`r-4Rw>Q@Ufpt+)q^3_= zGTxV+oX&aA`}ODOAJ6E1{EvBfdNT5iY+x=fF2lpaWy7;=ZEb)59m?sEw=$mA13bdh z8!Ia->2!*oWwOu`XKV&XgKv)bC5fLz$xL#@!-v0gTxgV)y|`b@vc{}QQfcg_dgaRq8G zbIagMSC}g+*9c*ffTMf~T{S^*w!_NPg$> zY;Xtk)RG2gLf-_#sg+GlMrY2fbSlJ!=5%+aDVQrcL`OHGrBl65=Nrcuc(1OlouI0A zSffyxR?6Uetoj@06eUK9zBLz94|)-&@pL02BRj55>YXAray$O94u7x=DoZwpz@is! z7(6^WB5y5#0v$rK7-<4PZ1;V#7hmK>IMc4RaJJ? zpLi=9Z^9Q&yT9OUtuGUJ4Yznt9m}kXwJE5krl$P|Ayz08uWh2tNiKqw_8g#NaWs#bi!0GMJL+$EsbVb zF)VK!P55Q6>D?$SCf3JbxT(nq-I?OEJ3U|F-c!w#9FWL(WTCy944=<8+5S6&9s2yb z2mlrmiL@};6a}~|ZnE{&)dx-l0$_)I3GoF51y7$oou3cJOQ%>+wK2ez^wyv|jiY~=w!QSIBoc`Z4i2%gu>%7G zKpY=?eEM=TipH!cFNdT(==L*+Sn?wf^b%UT8H`VnthWvZ!y=mS>B-4C`&2NkXfLh=_j72JA+pynMi2M2D4)P0!Dr|W?&6`pcBF~j5vvO`2ZP438%Ky3;<_;WUudbUB)K6_IFL_`*b zBqP2)6#mWQe>l45UIsaJX$il^-E&Btql;NtSrNUb>!n*oF^uTrbm#TQ?*)rm#Kahl zNs28uEF}22^4_9-B?Q;qY!38wb~0z|ljZVSCt07axqK^&?$}o?rTXU9fx-z!Df(r8eO@*p?fJ13i-FO^nC(A;da+T=Q9amr z+RO#hM$6G(woec4~^J{#qAEE!!xf*%WWOlLT&5CgR z7WdsALB!5FuR71}Ze*jM&DQQ7&^}Q$QD_15-R%~EegC(CDLPqPA1p$lP=fQE1v3t5 z#WK2XBCyz!BL_>)HnX=@=O)a_vOyEC`oz!?Nk9xtQ}FC0YICN%lvE3MnWgj4vOatv zFG?t$``?rHinO6?PbdQ6gDQx-^b&Xpfy{3xhd>}(+iPEVJl^KUMmFmEV6lzv^~pxx zcF^6IivF;})IRU#=!nS3jhEM$&4;ATRPR5Z>hACVj;BXNL=+Yl=9|RDuKpZb;eEQ{ zBOL#AFI1EnP=~=_^!4?D)RONDZxq1V0C2Fqa6w#L{3;ZTgHst?IT@MJmBIo4_wU~W zxf%g5!^(F&x1vi^Md~~rk9Tw&Y$wZ|y1eV@!PuMp9MkiV)IPns8un!1N4a=&i?xjn zK>ZFqFDEDFx1L7;0n6>xfXPm93i9@t)P-CFl`L!E@sa_VhlDJS*9C?zOd75CNZ;rp zA6Hbo-KdZ{pRRfQIC^%dOgJ855Nf3?Ra{b%dMf5awrLAk^xhb5b!9~*0Hq2LqqQeP z)fU(ruvRGQ^dlSP^v|C^H#QnJX4NNtoC$p$%+fe{vX{Yl9jF8*wahSSY~mpuZ0Yc< z7K-ev`tc!HR(6ENvaOn#p9e$>V*#3`b)F6VVILS+ftG+%bJNoY2L`m#B`GM?n)d;9 z9{3E$GG)*&N2(%9(Wkq++qb5^xESOA+kTAIUiGaZusc!+ys6d%-t6qg=H@9`vSZmv zb#+o|YM7`t6snkI%>}TVE(z35npxIjLU$a?8bhY`(#uLqttwrC60WGI={V39lCUs#@T@xt&=R@=E-_0f0HI AG5`Po diff --git a/class_u_s_b_hub__inherit__graph.map b/class_u_s_b_hub__inherit__graph.map index 04f84c15..edffc860 100644 --- a/class_u_s_b_hub__inherit__graph.map +++ b/class_u_s_b_hub__inherit__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_u_s_b_hub__inherit__graph.md5 b/class_u_s_b_hub__inherit__graph.md5 index 5328fe8d..33450caf 100644 --- a/class_u_s_b_hub__inherit__graph.md5 +++ b/class_u_s_b_hub__inherit__graph.md5 @@ -1 +1 @@ -bf8ca3c3b9277566d37448eda78dfa47 \ No newline at end of file +f8fb8ebf62ffeb914faf5e448f0fa095 \ No newline at end of file diff --git a/class_u_s_b_hub__inherit__graph.png b/class_u_s_b_hub__inherit__graph.png index 921bd62a6f68b17127c5800335679d1aeef0b94a..51d7bed2d668458d5fbf167a7d950892c983bed4 100644 GIT binary patch literal 3197 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 AG5`Po diff --git a/class_u_s_b_read_parser-members.html b/class_u_s_b_read_parser-members.html index 5b07368b..b949f4d7 100644 --- a/class_u_s_b_read_parser-members.html +++ b/class_u_s_b_read_parser-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - - - + + + +
[legend]
@@ -112,9 +87,11 @@ Public Member Functions

Detailed Description

-

Definition at line 205 of file UsbCore.h.

+

Definition at line 205 of file UsbCore.h.

Member Function Documentation

- + +

◆ Parse()

+
@@ -164,7 +141,7 @@ Public Member Functions diff --git a/class_u_s_b_read_parser__inherit__graph.map b/class_u_s_b_read_parser__inherit__graph.map index aa62913b..50ef4849 100644 --- a/class_u_s_b_read_parser__inherit__graph.map +++ b/class_u_s_b_read_parser__inherit__graph.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/class_u_s_b_read_parser__inherit__graph.md5 b/class_u_s_b_read_parser__inherit__graph.md5 index b9ca8675..083c726c 100644 --- a/class_u_s_b_read_parser__inherit__graph.md5 +++ b/class_u_s_b_read_parser__inherit__graph.md5 @@ -1 +1 @@ -ec3e429c5021a90ad76c1c993c8aa8bc \ No newline at end of file +bfbf139c46e46f9f8d2fef64f5bb2e5b \ No newline at end of file diff --git a/class_u_s_b_read_parser__inherit__graph.png b/class_u_s_b_read_parser__inherit__graph.png index 6aec8228740d5f2704ceed6a4040193cab0be8c1..e126ab8382f17f3a5ff35537b5eaebe103a47c4a 100644 GIT binary patch literal 16206 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 l&!z&}RsZt;FBOn0xJLj diff --git a/class_universal_report_parser-members.html b/class_universal_report_parser-members.html index f6dd7f79..020188b8 100644 --- a/class_universal_report_parser-members.html +++ b/class_universal_report_parser-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -106,7 +81,7 @@ Collaboration diagram for UniversalReportParser:
Collaboration graph
- +
[legend]
@@ -117,9 +92,11 @@ Public Member Functions

Detailed Description

-

Definition at line 170 of file hidescriptorparser.h.

+

Definition at line 170 of file hidescriptorparser.h.

Member Function Documentation

- + +

◆ Parse()

+
@@ -165,7 +142,7 @@ Public Member Functions

Implements HIDReportParser.

-

Definition at line 1587 of file hidescriptorparser.cpp.

+

Definition at line 1587 of file hidescriptorparser.cpp.

@@ -178,7 +155,7 @@ Public Member Functions diff --git a/class_universal_report_parser__coll__graph.map b/class_universal_report_parser__coll__graph.map index c873c83a..a7c5dd97 100644 --- a/class_universal_report_parser__coll__graph.map +++ b/class_universal_report_parser__coll__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_universal_report_parser__coll__graph.md5 b/class_universal_report_parser__coll__graph.md5 index 18ce6809..b9a0d07a 100644 --- a/class_universal_report_parser__coll__graph.md5 +++ b/class_universal_report_parser__coll__graph.md5 @@ -1 +1 @@ -6ae2ae36eea0ce9a020916893890ce48 \ No newline at end of file +77621cd9b3f148b98b1c0c2ce929a351 \ No newline at end of file diff --git a/class_universal_report_parser__coll__graph.png b/class_universal_report_parser__coll__graph.png index 85f3c95ad8ba80cc71eebce696b11ab506151bb8..02fb571c6318fee22cda72f48d7077a89ff9e9c8 100644 GIT binary patch literal 3624 zcmb`Kc{o&W|HqFl5A=o~hdg79 z0|Gu&xTKMI-);XHLbpI#ujrfJN8t)9=5x6{VnflGJ@LYVH1SdSXs66Zk(%R9-7{F>MD8E#TSq+?XF zzjYhG5y;Z0_aYO{!k>hL+u%BmSK^EoFwTd5U?!^ucXo1>#b zMfmyomseJx)JR!)DEF3#-b@bR=w}<)2n2+ zc#l@LwrU^QGODPkT)leL*VotmoTY9FvB94N=Z@!5r+lei>Iw-DZ!w3iP$=hFUc|)2 zKvaBqd3iJIZbC8Gy1M3#J{c;Nx(P3+t;MuCo2UJloP2t;ADm!_$;?z;HyK2IW$f$g zbLXT3{-IItT@#N@4~&kEe)#ZV@znl&FDDSCS19MgUOY=BckgQ`OL5f&B}6bj`5mLHIllS|IY8E}?!xOF4hmt=50FSJrLxW!~7K_EBSnN84`x zjKRn)bSoTCr-p_U%9%5_X?}iw#YBoV*|=!v)vH(Y^KNh5!9aX`d_qD(yuDXq*&vM$ zaBW0;d%KXI=n}D45~1v$D31Mm##>E@)|K>0cKT5_)4ED?9q*N4XPT zaJ_qE#8$7Op<$OsQ;l_5U0n^G?TqJXX=&N^w$RGsv?~44F#V+L-Mecg#Ds)|BXDvW zUx4}2mA2B&$IEM9@57hW-M+%g&TeULK44gK-Z6{3_hawr4jb56N!JbOv@>VU1O^6n z6tAuMd3bmn>Z`+GuTPd2_oJxwkQe3u&mY=MaZ+$IC6|M;?25dVcN)7vs6CCX$xi=_>!moV8tD zUHu=u6yy21xoFvYV}EI0=Y>Gx(dgd3zK>N^veME+r03my0s=QnZGL^t#q=+L>yUlL zze`q$m4Yn%{mA|MUWJw9{KHQ+(nqTeBv)5gbqx(Rt>b$NZ$SOf#sNTBL_|bG16NzS zd3m3@(o6lorYC7hl64Tbx)59wu zFiZ&|5BN5Xi*Myb8|Cy zMYCFz4!iOK-PT);yi44vMZX(bTEcJN&MLYIgQwS!SWm?ee%-mMkdVo;0f8rz z0_aLfrVE)x;`Xs&jVL=uN53cM6s>O#U%0Rk>moZ&xGS1ceyg_Y{kh_w-vfOJ2h&I)661G1r9^Hth=nGr#gDQK;ec z5m�&8ME8TNzFhbO4z=kst9OxB8faK^aBv!(w4BmjfsnIJx$7sAlB+zn=h zwljqq4=X=-4pCmVu|c6hA?wEtI2zvaIx0>NJnMix%6sD-2 z_2p%p+s6FSuxA|)TsO!V)w3QK=U!o}fjw+v7;i@@Y_3$F{+o6*>V!yH>aE*Nl;YZ0 z=>PlTkP8*pw4ZnU=94x!q?#HH_mO*215_Qhc)A2bobTilS8V-G)u`j6z=t&wrt=$D zp~Q%$Vlx)r{3JTSzWk`O6ZiJ*@jWk*#Z&2IHG1ZMnHA_TO#fP&XNR$W&0lf&w~zhT zZi(DG(~OTeJ2v6h@poFft;<I_ zdeOh}-`&e+?8=;CX3j`Yud#<+65j_abw@`>Q&W@LgB<03baYG%`XPTp{o~b%@^TpH zkOlNxn2Cvr$~z5kMMX@n8{Bh<=gUR%bV*Sx>v>EJL#{;$kphRqOG`^# zt3#cgog=K5f|^X^sqaBc+uGXF4E@LX&Yf&TX%6XqvD`@nGcz-(IqVUr$vX{xS|Mu} z0bS{|Ip!vU&Pfgpz!| zUk|>#I^Ck7si`REDu4`zXdA~Q2nD1tT{!>+9waoBjf!d5!XDDfh7d;9X` z%Tu);>`C23%jb&wk$KwT(p)U$3@F<9@>k&zKYef^nBGu=XwFc|DTk-~cF zlCp9d;g^wt0Udy_wjTGXN0fr8G32QPKAe)0($>~yBMsKo^wd;UHMQ@aN}w$QpKb8g z2*k_#5J+~d2Z5t3Rw3e$+6|^k=$&V}pJxLeczZL^w}GTX2lV##k|GX#Jv}80uS=)# zo5s0h;_)XuPDnbS08twIgMYl6@2UIQk%902WdHAvgMt`=^!7^VvAwz~ME@V0k^}*fSJ6;y_4LYE_q9RPw@&5gV@mh~?B$9)Z6Vz3bOQr){ zR#Fl~F%YAOeZp|Q9}krC353DH1!`!QB8StR$B!OaOLBp!N_>Fr2u8)n$Lke-8+8{e z)i(U!kOn&ap_p+ZF(!!th_Z)u$qn@OqCZ3>O?ZKjFiQ;u@l0D=Tc6R$sGC#5VrEK7 zL1Bn=a>#IlChP9wV_sn!xzQ`3o(mFSV*i4zogLA$t{uhxYjM$UqRtD6JOoY6kP*BH zni&K0*>mEt3Z`Nl$e+ey93X0`=UPB9MTk-m^!})*@;27gX%Yrb|DPE%fs+z1vD`d7yE{8^ zopaYvXDOB_RR?%Oad9z7bk5G7K~=QNrI{+Ls2D;q!w;}ll8gYa4jTxJrbUP%1RtS? zOnr}_#4xj4AQO&)@^-VIa%r8UsG4nmLL zWPJkRmxQ=@`1Y_}wu*1xz(CIZJFM*>XYU^z#6(BG)H{o6cT*q|i6B%uI5-Rq4Q*wE zAou&XPoWj<_+Z_s6{#j6fiiqIK0Y2!n?-@DGO@65ueJv{1-xXqp}@-uCSqILRWcta zt44>l!fPlHL{%@I1)NE(;faZfUS3`f@GHW?fR2bnz~jd|o12P35f*aqCcJh7yYk*J zob2ZrgoTA6kiOuzP<@g%P`+$5+N`kU<@CL z2LV78{0;hl^?UGo_0OLUwf(xV)4S`WQG68>bZ>QenI8i2b~Jg(Bqk{-DJN%zXB=AZ h)cfl{{(d@7fE|v2U0rWUkiY=I#K1zoQqMX1e*jPt7SaF! literal 3332 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 diff --git a/class_universal_report_parser__inherit__graph.map b/class_universal_report_parser__inherit__graph.map index c873c83a..a7c5dd97 100644 --- a/class_universal_report_parser__inherit__graph.map +++ b/class_universal_report_parser__inherit__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_universal_report_parser__inherit__graph.md5 b/class_universal_report_parser__inherit__graph.md5 index 18ce6809..078a0db8 100644 --- a/class_universal_report_parser__inherit__graph.md5 +++ b/class_universal_report_parser__inherit__graph.md5 @@ -1 +1 @@ -6ae2ae36eea0ce9a020916893890ce48 \ No newline at end of file +6e5e7f853ac6bc17614d8031baec2670 \ No newline at end of file diff --git a/class_universal_report_parser__inherit__graph.png b/class_universal_report_parser__inherit__graph.png index 85f3c95ad8ba80cc71eebce696b11ab506151bb8..02fb571c6318fee22cda72f48d7077a89ff9e9c8 100644 GIT binary patch literal 3624 zcmb`Kc{o&W|HqFl5A=o~hdg79 z0|Gu&xTKMI-);XHLbpI#ujrfJN8t)9=5x6{VnflGJ@LYVH1SdSXs66Zk(%R9-7{F>MD8E#TSq+?XF zzjYhG5y;Z0_aYO{!k>hL+u%BmSK^EoFwTd5U?!^ucXo1>#b zMfmyomseJx)JR!)DEF3#-b@bR=w}<)2n2+ zc#l@LwrU^QGODPkT)leL*VotmoTY9FvB94N=Z@!5r+lei>Iw-DZ!w3iP$=hFUc|)2 zKvaBqd3iJIZbC8Gy1M3#J{c;Nx(P3+t;MuCo2UJloP2t;ADm!_$;?z;HyK2IW$f$g zbLXT3{-IItT@#N@4~&kEe)#ZV@znl&FDDSCS19MgUOY=BckgQ`OL5f&B}6bj`5mLHIllS|IY8E}?!xOF4hmt=50FSJrLxW!~7K_EBSnN84`x zjKRn)bSoTCr-p_U%9%5_X?}iw#YBoV*|=!v)vH(Y^KNh5!9aX`d_qD(yuDXq*&vM$ zaBW0;d%KXI=n}D45~1v$D31Mm##>E@)|K>0cKT5_)4ED?9q*N4XPT zaJ_qE#8$7Op<$OsQ;l_5U0n^G?TqJXX=&N^w$RGsv?~44F#V+L-Mecg#Ds)|BXDvW zUx4}2mA2B&$IEM9@57hW-M+%g&TeULK44gK-Z6{3_hawr4jb56N!JbOv@>VU1O^6n z6tAuMd3bmn>Z`+GuTPd2_oJxwkQe3u&mY=MaZ+$IC6|M;?25dVcN)7vs6CCX$xi=_>!moV8tD zUHu=u6yy21xoFvYV}EI0=Y>Gx(dgd3zK>N^veME+r03my0s=QnZGL^t#q=+L>yUlL zze`q$m4Yn%{mA|MUWJw9{KHQ+(nqTeBv)5gbqx(Rt>b$NZ$SOf#sNTBL_|bG16NzS zd3m3@(o6lorYC7hl64Tbx)59wu zFiZ&|5BN5Xi*Myb8|Cy zMYCFz4!iOK-PT);yi44vMZX(bTEcJN&MLYIgQwS!SWm?ee%-mMkdVo;0f8rz z0_aLfrVE)x;`Xs&jVL=uN53cM6s>O#U%0Rk>moZ&xGS1ceyg_Y{kh_w-vfOJ2h&I)661G1r9^Hth=nGr#gDQK;ec z5m�&8ME8TNzFhbO4z=kst9OxB8faK^aBv!(w4BmjfsnIJx$7sAlB+zn=h zwljqq4=X=-4pCmVu|c6hA?wEtI2zvaIx0>NJnMix%6sD-2 z_2p%p+s6FSuxA|)TsO!V)w3QK=U!o}fjw+v7;i@@Y_3$F{+o6*>V!yH>aE*Nl;YZ0 z=>PlTkP8*pw4ZnU=94x!q?#HH_mO*215_Qhc)A2bobTilS8V-G)u`j6z=t&wrt=$D zp~Q%$Vlx)r{3JTSzWk`O6ZiJ*@jWk*#Z&2IHG1ZMnHA_TO#fP&XNR$W&0lf&w~zhT zZi(DG(~OTeJ2v6h@poFft;<I_ zdeOh}-`&e+?8=;CX3j`Yud#<+65j_abw@`>Q&W@LgB<03baYG%`XPTp{o~b%@^TpH zkOlNxn2Cvr$~z5kMMX@n8{Bh<=gUR%bV*Sx>v>EJL#{;$kphRqOG`^# zt3#cgog=K5f|^X^sqaBc+uGXF4E@LX&Yf&TX%6XqvD`@nGcz-(IqVUr$vX{xS|Mu} z0bS{|Ip!vU&Pfgpz!| zUk|>#I^Ck7si`REDu4`zXdA~Q2nD1tT{!>+9waoBjf!d5!XDDfh7d;9X` z%Tu);>`C23%jb&wk$KwT(p)U$3@F<9@>k&zKYef^nBGu=XwFc|DTk-~cF zlCp9d;g^wt0Udy_wjTGXN0fr8G32QPKAe)0($>~yBMsKo^wd;UHMQ@aN}w$QpKb8g z2*k_#5J+~d2Z5t3Rw3e$+6|^k=$&V}pJxLeczZL^w}GTX2lV##k|GX#Jv}80uS=)# zo5s0h;_)XuPDnbS08twIgMYl6@2UIQk%902WdHAvgMt`=^!7^VvAwz~ME@V0k^}*fSJ6;y_4LYE_q9RPw@&5gV@mh~?B$9)Z6Vz3bOQr){ zR#Fl~F%YAOeZp|Q9}krC353DH1!`!QB8StR$B!OaOLBp!N_>Fr2u8)n$Lke-8+8{e z)i(U!kOn&ap_p+ZF(!!th_Z)u$qn@OqCZ3>O?ZKjFiQ;u@l0D=Tc6R$sGC#5VrEK7 zL1Bn=a>#IlChP9wV_sn!xzQ`3o(mFSV*i4zogLA$t{uhxYjM$UqRtD6JOoY6kP*BH zni&K0*>mEt3Z`Nl$e+ey93X0`=UPB9MTk-m^!})*@;27gX%Yrb|DPE%fs+z1vD`d7yE{8^ zopaYvXDOB_RR?%Oad9z7bk5G7K~=QNrI{+Ls2D;q!w;}ll8gYa4jTxJrbUP%1RtS? zOnr}_#4xj4AQO&)@^-VIa%r8UsG4nmLL zWPJkRmxQ=@`1Y_}wu*1xz(CIZJFM*>XYU^z#6(BG)H{o6cT*q|i6B%uI5-Rq4Q*wE zAou&XPoWj<_+Z_s6{#j6fiiqIK0Y2!n?-@DGO@65ueJv{1-xXqp}@-uCSqILRWcta zt44>l!fPlHL{%@I1)NE(;faZfUS3`f@GHW?fR2bnz~jd|o12P35f*aqCcJh7yYk*J zob2ZrgoTA6kiOuzP<@g%P`+$5+N`kU<@CL z2LV78{0;hl^?UGo_0OLUwf(xV)4S`WQG68>bZ>QenI8i2b~Jg(Bqk{-DJN%zXB=AZ h)cfl{{(d@7fE|v2U0rWUkiY=I#K1zoQqMX1e*jPt7SaF! literal 3332 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 diff --git a/class_usb_config_xtracter-members.html b/class_usb_config_xtracter-members.html index 7d758e70..d7990334 100644 --- a/class_usb_config_xtracter-members.html +++ b/class_usb_config_xtracter-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - - - - - - - - - - - - - + + + + + + + + + + + + + +
[legend]
@@ -122,9 +97,11 @@ Public Member Functions

Detailed Description

-

Definition at line 30 of file confdescparser.h.

+

Definition at line 30 of file confdescparser.h.

Member Function Documentation

- + +

◆ EndpointXtract()

+
@@ -176,7 +153,7 @@ Public Member Functions

Reimplemented in BulkOnly, BTD, ACM, HIDBoot< BOOT_PROTOCOL >, XBOXONE, FTDI, ADK, HIDUniversal, and HIDComposite.

-

Definition at line 35 of file confdescparser.h.

+

Definition at line 35 of file confdescparser.h.

@@ -188,7 +165,7 @@ Public Member Functions diff --git a/class_usb_config_xtracter__inherit__graph.map b/class_usb_config_xtracter__inherit__graph.map index a95fdf96..1645e7b7 100644 --- a/class_usb_config_xtracter__inherit__graph.map +++ b/class_usb_config_xtracter__inherit__graph.map @@ -1,16 +1,16 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + diff --git a/class_usb_config_xtracter__inherit__graph.md5 b/class_usb_config_xtracter__inherit__graph.md5 index 1d61e3cd..122b897f 100644 --- a/class_usb_config_xtracter__inherit__graph.md5 +++ b/class_usb_config_xtracter__inherit__graph.md5 @@ -1 +1 @@ -8b41492a27286a05ac2d4683d2b4d6c6 \ No newline at end of file +9c2a0c5b68bd54ead963169aff634d3f \ No newline at end of file diff --git a/class_usb_config_xtracter__inherit__graph.png b/class_usb_config_xtracter__inherit__graph.png index 7cb16ff61a066487e01a572ebe4b9af47f9b4f4a..56008785c45610fa7550676a9a231f613712dc1c 100644 GIT binary patch literal 29671 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

jrHHzfekuIecb!&L%{Cwr4@%Ak!^5$d8f@& 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%0AG|&?qzQP}Q|mCFb`?RL+VXPtqljew^X5 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

MX7- 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 d_4;MSV$u}E-X_uR z4o=BQonC`G9bfAC6QwP7%B@s42{B~?Bsf1Jf=$v6?dAo7$~|KK=C>HCc<`;87Y|UF zuy1}F<7iGJAvj;e#K&(>S4S&mhX~>P9BTH*Bx2WQ++su^nvvjx)KQUydm!fvhP$aB`S4IcB@NC+zVUqt_%_7OUK298cD8M~X` zR3E6?ki^zJcH4+9>x1g*>ZC&M2kAeBH&|~j?*#Mi-OHmX8_Fl|y+6`sA|t#TJ`kWG zx|(@>RvguKxBk?od7gFk^z{7s(B!kYt5AE6l=8>>}e`GEV4yqVcbijXs}%}jDs)L?DKYb~uVW1sfV z<0U3?o}O2i=f}mB$J?_UtgO>@F813MmcTvNNo8LU1s~-Me>1MH@L9 zFYuBm$jQm^@tFDT;73zh5rGc?KS<5ZF&-U7n&B(x@iR|oaZLJV3ElSUOZEbC} zLS2RQ7dR-V^C27+)_+`g=i3I-M8k=>49|}?p9W&Lu_qMi@;9;nb8vP}d*ZU!^a0KI zk<0H4sfQ0A-lKRD5g$KW>%2XhuhrMrhl?WMaduE_)bVd|Q4`Z(X6JRKwT`9bMn^cM zs)`CT3(G*N@cG`NoM4KGL9?Gt!|5{xg}dT7f+-ZZxRDVNzh-8(mX|v=@LFFJ1ZPA> zMmldzzqPQifA?;(>}|BKFY+?|+2sNfLI$rY_?GwM)59@64-XHUKQ)dQC%etf5=#fY zy}hNT1F523H^Zi^tUTUI#GzYNQ}d3E;nAa#y1FN{H%C@p9_yn=Q3C6y`^z0+|$7A?)q{i(u9v9WE*BJX$R$}PrV&Yibs>et5#`FMHX zu=rIQD=PM{4rLerGlDy_U+xbL4Xt-SEvcwDnkY3bHeuJPiAhRwJ6QQ0Lc}pTHfGPp z%+Ag(BqYSh$jHnb{46s?)GKwJ9)Y-p0hTL+j~8^XyU+o{zrMESdA?cMyGqJuJv@4I z%oG_sH8iB=Ev~NCl#>gw5RjFXy?OKZ%`s7BXY}sfBl}U9hQq@{LIQ%i`g*zN&ux8W z6%}F(j`smu) z+Ty8ap9>1uk$t@DMQrE9Bqb%^zpwi7V-3zruaM}cz{kn?Q8#Pi|=*De3YkI7%Z zekQjCJJx_Z+Y_RQKjz^nCfeKEOG!!LPcOOOToLQ%he9Cr_VMd??@E%ANDJ{C932x1 zLqbBHN=Q7HlhbdGkopY%)-8ekKXU-Th{ij5)u-or>8S0CW|RMz<4b!Esa0Q zOF#>7><0V0yu2hQBa4ZRotm74;8L_&Q&U4J;!Z5+z*tCFY=TWLm{nLf@PKyt84}_a z%Jg?+v69{-zU`gAEdl}poBtgX6BB{=C{wvjv3ZY|)4U44fB!PH+UeC;r;bmEawP{_~7@Kt~NlKB-_nz(p6*fd;P z?<)73UVhJu_we0va+vlkmQsBQ+{^F|jKyP;{JcEN>#NK9@7M^j_MflF5VRp+S#@<6 z;3O<8EVw9Kyu3%dySqC(KbHgr1-EAEYbz>7hld@;3UqqQ>E%BcnU63Frfkj6&#$kC zC_Lun#m2x8bl%dIlthVrPR?cM7ao3(w`X90gO=9#aBT$L*BzpF?VASz^!8GxafWm@^flxCRj@l{tlw2XWU!E+4L+~MRrmC;BnH3=?Pw9#0fOLlN zw*48(j1b$tjfUoRc8~*>#?SxRWf2vDphW^JKpdntG+ZU}Sk%@EYgBZ*2xyg$hbRTbXvmI?LaU7DnbkY9FXunp`BR}q3GWi#Thk3QaSb9>JfD?io!r;By^ydk z1tRt3hXSFaKP#zUzZRj5dM+(3E-j54dK5Hf*xk+h^%mKI5{Q>GbFu+!jb3gdGV zPC@0e=%$s7-y(x%3W9jg+s|608kieMtZ^AQtMj(KKOL@_5xospGgd%8Diw}4t&keYV=cW?32_;~Nq zk`qM1$1y`gUN4oEf6lImUdOO&;E>_WovasPo{Umc&!=rShPP#u6me>lw0icFky>qv zTZT9~4^>))G`yq3&t`m-AW4g7_W10(GHO@X?6<7C$(lnIBO@(mzFVej82)7rIrUWO z$WSXe@S%!j^d*`|rSH@gN>WjwAU`tcmcd)~I@YVHUDeSk+p-q4@O(;-KQbI+Jw4vq zYePahMME>BqmAwIo~*(4udJ%75X_6jc%v7^>;Z)f&c+z5&l1(u z3ZuV0D|)XH4a=A6&!2<7Bn~IX--1G`_zc(&1Y?wl?j!raUC0{$6V({>&j1^I^(yqv z9T(F95mu(0SIWwqT)$~?&{2>L_Kdj|6c*9$1>^Xc67TK(!)J)=?ujlQqo6Rdv<%4l zcHi0YcQr5M#m*j87~9Fo4>2+Sb~0}xI#I!ey=j@*3uK=&S2=TBFZN&{`-o+i&iX%$ z{P^aLYkIm*OTa1>dQ{T6XZt6r0;$L@NgbUL7IogoJmnp&#;t886%|f+LE1gEv~(Uq z<}paKJ9zl}w~+g3(4W&sFZDifp7#?IeRV-=@d!V^x{=(LRfm`+{qSgshitl**Hbnd&MApWLPy(;F1z!p)R8~qR)|S0)>dXHt`F&f2(AM|x+-=zrN)677qNK0glf>Fyrz^z?#{7t^s5V04XZEUb;( zCBT@NbmjB$E;^btkfO(r=Ww2>buOSvFVH3TJhrBY%VT6#+1tOz$h_D1cyL-i<;f`o zMcg~On@=I z9r=+Xdc|K`U(dpl`-JDv@%7~T#l>@EAN{v)|7}=`m;_g+{Ndb4#6gI?5rbR&%)?Wj z{jEXqIkSvBtC{r{C(p<``_hA*A_rSyae91Ql%O!r3XgM>4MWrfc@?!dA-m?WKC8zS zu1-g_+@=&W)zL;~-(d;iMPW@H9rWhSS#k0DW1d)C6sT#nvK7DXRE0nNHT?2ynewXs z6E4bIo9&Xa>5&Q9mKnStKh^9w7ne}{tP=IYH&)ZcU59y3sc~as2=MS5xp+nl620=$OiU3ttut*{!?^7#Co?qfkEGPP%uO%?+;SA;Q2QexFBFffPUsbKC z_bK5CopvpP6fHG27q&`vFxYe7a_e55}`uRwGEcIdN4yM@KB=wms#_2lHM{Sk@> z30IfL#aO7%>G3x=0|NsKjcdK2&=>G<{Z;FHH;>$qksvBIR@VK39;vY>p8c+@oLgUF zW`s;@U0vG9NGytGeO}(pAPTtt!@;IV-rnBsbd3G>?dYrA0C;Ei&?*VZ^NES`1a(b_ zHxRQTBUi&I<3A^wv+0;O8VA(}1U%wBUg#L5^!#YV`Rms&F>%AEI9VAP57{<(jtYy5 zb+p_fKD3~3ycwNqdVMj5hLFL6I(o&KoLmRK2kshvhDUk1ZKUpaKFzAC3Q#m%S^E(X zD2k2gHa#ej!fkqSc340oy;jQp?5oq%_{Lky4O{2RCvLpn6RLr$Be~|HjiqU#l@M?f z$hBo?B@E}CFfpHsQ@^#etSp)A8x;tUp`{S1>+CR%qN1Zhf44KYIh3vXSr#uya(Lub zaS`VeNArXq%*R3|DJf+<7R}p#dS>e;JUYTOlQHXDREfw_c8_PT9h{tCVYUTE7y7`6 zR{x3i@6}JfzW3g~E#!VQ^DR3bVrOEa`NSl4c`51A67Oq0y?hS;TL?)6lt*WB9v(d{ zfl`&$i%(o%%4h!W_{8PpOu4yb{npBAa44g@M>JI^{yt%BK^AT0`{K)B!v4AjLk?Z{ z#I$RJ>nj%xQ3^FCroz$u5MqHr{UQ3wpFj7<9SI&KR2jC#2)iwz6U$1riq<;m{FS$( zS0Hg(>~=-MOjm)T&oe*gts&fjV5sC z4-dcBWxvUVo|jS@8k4!|Bcr4A4Gq|s_vK%{_<~MM%<-5cvuNij1he7cF{QMI)va$y ziRJ=ANkT$NN-2VP*BE37G3^_#?hFpGh>FI62U=T;}vWq;y6ui4~**S z!c0wK?Nj;CQ6$txDVhqcz+_I&1Mz}TgoVqqvNjVFyUWWJSk(OLJ$3NOHkP-nnck07 zb@zEtk|eq=w983JRr_OFspltB=S|7)Xxv8(-W08VUrM9nz)3%A*e)wtJ33}YMz#~_ zeR}6ynJnl?yZnb*Twh0CLV}{N@Qs(QB@)5<;T zS?tdSL}#CPoQc~OrFq{(*_?cV z-yg3GTwG$4wObe?Ue=@NekYO&;C%*XpO381?k@oL=^>5TYrgdxMy`PvUNSXZgUjQRIF%lX=ek zF?^uEn>qW1jFVH#^dB~1;f|wXOmizMdnkKM2fhuiVo|2a=Bg`k^Ny~_`4sBDLPPP3 zl4->xQu~~=zOUz#w$KsX(n85STT$uU)f1gSB!zXCXMTb2*n(D-<2T)5@$u!o zJ!6i--CQ+=#Y4{c7e9?O5g&=+u5Eq(1V4Yy{Qm6VuKmhi@NNO2umeSPqR_D&4-byh zDH{&G`b4@sidz0Np*C?GKSk4vqp6g+xpNjZ`H5QRFdR1w?vb%d?S^DrimR+2YqRWK z+@`PXMc#2}-#8C70v1=-&09?1g{>XSb)Gtz1qJ^$KHU|zY_oV$qkD2v%tODVX=b*T ztz@MgxV;`SIk`m0(jOl)jEZ*7<<9uF3`q~XO?$HAQLn0@L5PC`wP|yU z`qBDbBKpX${OG>_mc7uio&<{Weu3Vv*Qa1t=tB;Ts;zx`pauaA^6zD(0PoFxNI<8U z_zN?OsHnR}Ow7xj6=klJ{-UzS@0=-x-H!OvpSZNr(`0T;SCB5ywZE-?wy^WZ^R4t#Qc z3w%Y45=vUsxcT`+t;&+heazHiCyU8U#2uC)tLg z(wH)K^77(zsWowpzq zUl!jX%TTi8l%OPyC|p_!>xoYb4EWaIHs)=TOT7}+OL*h&a}eSm<))|eKwb0hox$_& z+^{hAr9%B9i!{{qd$WPH`QIQpEiO`CpY_ak$vRw0eQu4Nr@G|jr4q@LduMEXmLgOQ ztCst$MLG@BT|dPnwU$xBO_03rsgO}wU|@*Q(%+}0Us_&LV`hBuO_6+cOJuUIuSC>Z zs(3B@@3}1jfjc@nKLdj__B}lTLqF?lEA&8ORWcND$f0NFfxLXG{vy0zsFK29-d6{Q z;^Mq&X@vw5f+{&U;qnm-GIrjqD_h@0JfWt%XMR*XU?Xuh~w0 z@&=m&vzC$E>^l}GB4oR}6IvD8C8eY!c=H_XZus*Gb`e*Uq&Rx&M4L197vPCyWn(nY zR$SetPEQr${IsNQjEfjfL||dF?YfsmD3KB|DtRPj@?sM(IwwV_ETnIGqa=^uKWLR}QsdQ}iI;dXU90cE*`@?0Hi3T{M7V z>1Ol=YZ?Q#TYgW-PE~BGxVs-Uc>d?8Pen~eibGi{xA&*E8qzK%(d2Cuev$`=>hb$CJ{=`L5umC>m^~(0 zXbagpIY|c3$;~AV{q(qK_IRstx!wi0X~%=Vq=Z>5kDt#hLPD~YIZ`KYUM@q0OtQ@A z76zU?SO_FU=nv>YVAEOqQox?^H`@&Z#`O^@ zSe!U4L1g4Fj*sh=3CKlf9F8{ZAjyYV&f%+3-^^2RhPe2#uP+`f7w@a&dxhUF`)gP`~E zO&<4Z+wJ%xV<61k%uKnRk@35Cf773aNM1{pQPJ{3F#h+qC4po`|@Q6*fXS=(_h0H(QBARXOrYe_JxG zXqz~#5rkc+Nd7+yl9H;0H6*BmdXM-G;@BiOC@p0@Ksa+}?jm5OmCn zidvzlT$0j;X!}!;h*IF4O7lJj1c|O#t-4PqN4vU zDK+I2MnMNN(7Y<4ODG3DG2e~_$4)#*1$-f>~i%f2xtU62s} z>W3LeM?^3Pq*#uBbO!ev8410*N{22Iv~`Y-@FpQOIDF;*=oboO4)p<)(_lBu%-w9- zX0_%c1Ua7WcfjT|pf9?DKbjU|7-md!C&f}jwizby5%+9?2JW}~d_0N<6=sTDgQyw; zw8%QJjUTxdL7{zB(4d3zI5RV$u<(QAW_>*Z0(K;r#{ug4fK<*8=3oz6Qe9dDn5f^s z2b?xOrU*J3Ln-X%%)Ue$%7pz4xdXMeL;njjN+29Ps-@-7wJgkGQqYO22165T1T#j* zSQjCqOtU|>wtf}M@5TNc2M@9>_J(YlYPQN~zWqe?zFgO~cCW0fDw(882kO7vyu7Qy zucpe%tDBoTkUe(~9c`U>iJV_FBf-U`gL&^H4O1~X z+JCry?RoJ1WXE9pHYRwAs<&jvj1RRvW~7Ze8}GAk?pp4+AbY0LBK zB6xQJEkr1JCi)1@Z~~)xvoLv(KtUAG#2~%5N7DFik-*-bE8K(10nV|)BV+f|OW)|A zt-};nJw08KDJgw_{;*{$QNj#RZ~b~7^%L@-v2jek_JeQP*-n3(F=%MIYMe(^A4SYl z4c?gR;UQZ*hpD9G#s1$G(>%Go-h@%(l7m-%9N-fN=vn-8UZQ?3`){0NW%C09N^*1k z!Jk7y{GmxvmDxh$1I|$Ues{G$#SRAcbbo;Ek*$_EuL{|xm!Ix_40n0REl~YJU43M1 zOoZyEteiyzcpK5p=%h8eeii^ zc^YZ=hBI^Dsuo<52Xb~1*Oa71Sy@N_Wc9jk(lW$DF0SjsMhX*?*rbG2$jQ*E(#7)> z`l<(c#G4Q-|+Lz|Jg@bLk6-jgToE2}xdLXUm)7kp(lz%ig@*>JI^ zp{2F#kI9ln7fukdaZ_PBI1M&j@-9u56G?}&$IS%((cr43Rb|W)ux~Ha;F4eMIQBVZl#j5y3c6wRkhzr%1<=gc6m$vJp`SS%B zM5w4C^70k=y5v`TCQ^DLBE`dsnl8wZo%S&mAe$b2eP);!@9X;@h<43$Mf=!3z4CL( z9zUKe) zU@be_6IteZh+lD8$3a`v=J%==v{8~!r_()?eoe;UvI?i%@2p$rYON*^7e_`$gmrpa zC5ND06FxwTA`b0@)F(``GAG%!wb2$VUAzV<_F2eT{PhMlHjTD_CG4bkDQ`rbhmZwD zM3#>>lM@pm3o6_T=R(7F9|_rNp{J+EdnHaF1zg4C@dYZ4a(PH-D507%-m5}SUyQ@{ znym8AwiXP^uc8^D%@j_SBWm`-(Q-q~lI~%uJuPJxf5}s2yW#0-23EGvB4sXCR;*TX zToA{ocq8UJv6&D1hO$MQPt_Q$sJ^ zTL>z-o4@XgVkr&$U@xgXvSzqv!rV+YEJ zpP8R6WO{=X6cmJXVa?xRZ5FAh!DH@%;mj>^cj)Vn zluJNU7TQBuI5MzvtURaO2V+P3Y42 zzS6|A%~vmsjf<OuSZftHAb77rWv(wW*(@0zTUuvl{s&1|GK^LGSpu%e|gITYwuQSlm-6?tado0Y# z9*_~3P=3rg_3G_i^jxxJ*WDku%OSnJ@-#G=Mjc`4j5Q9cgRr(ODmWQZ5-s)|%~nd| z<>7ht;zdzqr55nK1f#OdHyxn4pRW@aobED};uyLqDXRBvv%h(8o*Mdl3p0^0Eg ziZ5Tj{CB8{-au5W@Xx)8c5c@f!yR==?x&jT;aY4%gD3DZ%F2;GKH_$ET-;crZ5pIV z%U|YRlgxft0nHg8CilZNLVKj-xPNjQ%VaqSCdKeO@4W$iT8F7+3=Z)3hu0wjI!a30 zeMx+E&%X_=zIpQoPz7=21E7ZBwS%CJp(>fK;Dn=D`tfeQ!gcXUm)}i$DJ6Z=IBYlUu`7)OUjHoSe7E zTYtdFz?g`6Eys^GrxJ)9caEtG#xb@JcYT9t+QgL|n*HuX(<>Naeo&{Gqa;ZFx-0y# zh-em6@BS2_3Hm*AbFy2^Z9WbBm-BFAz@LCQqacebD;ERD0Dl>0Wn%-_hdJ31h?q1{ zFHZn!rl+S(dg6j;XJ&rp&}2hmfy-T*iin7Km8u%wj0hBWo2_Z4p+VMOnWKv8H>*m0TSt;4U{ORtK>+|H|k;h`0?ZXczd9~AFQDf zsw@Czz@rl6<~O90^|*aeXu7N%|2E$ykb<}aD!MF5r0~+qqPoG;sK|x?j zZ<1z0Mk)BI+HggfV@W6|u8uafmP7!of_m>Zb8Ilx$J|_&qp@2Y5W4}jc@0F>QeV>I zBHclt?e2Of)8og(eSM*)kYg7O3=DuLt9RM|_FZC280ZmlA*ZbD>|-;w3T8Q~3RfmZ z#m zcI324e%rTbo_*@Pm{r-B2FbGrHUZP z7_Cvq03oigucO_*UGH_B`uwYi+mYqf#c6Mpi&dn}OX>#ia6Rcav@oL_x^+O@l%}UY zF#}<^6u$ zR>#`9Bf7F>2pyB8ui#c7F9FchGSlAHrm3lEkP>Z6;xi`Rlv_qYF6ni3n%&qaI`&jn z?AF>dC~Sq>j}b}Gn*;`QoF34nq0!O%ZaNwo{5CUBzykmVgQ@~%_f1z_MJFFKZra)I z`bU!izz%+W5eMJB+^XFM=q(|nxIG~nbY-*7C%JpnGZe&$iHW+px|Wwn0*y1aKcqvXFLiXR3=E3FUpB0OXZ-Yl8=y5fAkU=2GNwkLBHvyy zJT#Ptn|pn0>wZ=uUg|u0)zm)qJV9WSzMsFpLNdQH%$I_K)qHEv-@ku*tASTd|CAezGNuafg@L1O|=V}KsAAcgv8jWiZb>AIs0+b zJ!;esTpni*6>-LGmGd{jCG9Uk11S6Uiph`&HzrDp#{lJ1FVtPsMqRWcjU98~YA&Sl z{F!H;pPxTrEg^^AVAWsYjpF%C`){kjn_lA4sk;_q1twblr;v3Ti;5zuv&zd4f#$qD zL1wCq?hB~m##CjveB3X4T*Z(>GpMJ8{lutH{yS__)`3TxpKo@Io3m=>jaSEWf z`pLUEAbQ=ZJE!h*Q$Honq2c<7$;ime@emb7{u;tSh%Ipue*$fFZ||Lrjg4IgGJsh( zU~%gQN$R@~9?|mh#+?$}Lm<#`Z?LUhZ;K6tx94rICpUHG|Amac`OtrC*PklBFbZK3 zBBBn*`ya$lE;Pk8tL4Of*x&mwJ{ME=liBdt?tuw7cGXb?pAWguhG*#GLEBO;r=;X; zYm1|%9Hm<5N!{XxJeWI4NHjJ)!UN3C)TAIT3aF1lLT?ii%DcPq>6LWDs8C2kZz?!y zEYzl-Ule3>v{nocoIF$i6bD6I8ATkO zF&GE^dxcZ&i-k*d)-f9dwH!SFDYu|#5 z_4V6U)(aV5q7w60b&Fgl2t83PwrPwBHh z^8o^ur0t(3LNm;CX9m{R>MznylK4u;3PSZg9~cCYgg%qT@sp$`A+^wWO_Gqbo|Lq% zsrld@WdTdsicj8$T>kpu;b98svw$R$oP2EjsJJ#Mj7mnG=&pE#=#|EB<_&vQQ*$3h zTrpKXm8->kLnHbMoftvoR#(4SpxxE1=`Bxx_dy0BVfkdMWT_}}m4^^GE{N*K)?4#! zNA)bNJr>g-`+yeRR6>S&%Y^f)zDgpSo0*vex{oo*+G3ep1O$w9bd9*^C_I2Qs_!qfyUp8yu9NkRDnb_-JeUyvb{KXi!^EEj6(?8*u(A zU>6LMJlHJ`yg)_ARv{DTB3`*Cs$E<*O-TG65Yi`tDNXucu-d(>_mvs5>fM%)GIjz2 z)KJ7%9NKH0(|mom?l2f4yyc%NKc-oL-pQkcUQc=k92{hyx$SKN!t&QrQt4^P-}9|J zkMce#NhSPWN>5TEH+0?oolqUD})Wl`Qp+!;nM=k@D57t{j}8 zV4^;fu|okADl|Xnll=IZP+Yi;D-&HK-zG_#L}#2DAQ>X<~~jhJDIFpYA{tMrKmHhecTcxg0U3=^%L4K{?Y~ zDj%-zob%c2ar^mk+C56e6)9zy?HC}}j<+m$dELhH&y${SVq+im^!@Q#`9;mbVuT_d z$7=WUNA;Tr_4BAGtc;^W_?V<4=94^18PCtL6q2GUj*520D>=**WQ zMnxu6@&2#Glx{rP{iFBWGwZz!0|}kRgFjxWI&B}VY0V)JIm+7F_(bs!$S*hcmwBb7 zOQA{Y3Pbra2H#nGV{c#d{d=+{K^CUBwO_wRzNk>q(BLucPiqNW2MRoNbJ7LaI6coG zuf43{i3#`ZnQGuIBqpdMxHu2e#2^$Q-x?Sh;nAxpdjpCBy02egp@Z}F!cca_9sB@R z4bEZ?f3LIQ_Co<#l28h~J=-Pu+#vkGqp$7=Z@-oRywH#Dqkzi+P01V4Ar-Q5X2Y4( zQ0sYl+h1b-qUDpsL!H_q2@R(HmEQr*+n$+utQ{@^WPH{Dte$~HaDF^{bF$n*`i;rO zoa}7+m`&saBz3zJx1&7Eksq9ZWEK?><}sw?)j0v`zm@rOooiUQhnnS=?ez3ZJzDU}^+?-+Un928M&EsZ(3f``N&8 zV|?DTM!U}S(EsEFR8|>UMWRk*je=gxDwD#sW|a>f8k~ z)6*TB{T_li=y^DTLPr-=`>^fRn+AaFKj^lqT)#Cm&^>+} zE08z_Z{ng9mtXQ_Kg7GkqOOSBL+oK?m15fe1RY!P_wdV^k~X8=dD(i>&Rd-Tt5w~g zH|vEQ|Nhm9db+RnCa7K3VCb$!pfumpYA zW)}9}SfSpHB68L)k=N7P{FN@H=Ow%uF1l5qiH}Q?c(xE;nn0BB(;Jy+cO2A(fz-?F z$jAV*JyO`#@TR=H@9S5`jM>KsF~-EC9EjNU^-4+!ds;7thXm{`uTD+XC7OBl^w2tO zB#m0p|3u(iC-Lz`%d}S8E9L2u&m2d_`waW!@?U?*SjkakLc2EuZTG8qy`@rY3g+iV z9f{w6FpGF<8@~C*5C_F)eT)8=gan&~`A5KHW(++5QH@<&19o8CrzQ=%SCqinbO6vU z&~?XK^;}ky+cPsxQ6G4_;GnqYVd5{)?Zl5b56|t=~D}!hQBFTLwz-m zjd37U1@V3Q*%3Ym14Ai|^w#fHtoN|XPZp>{20B8?XWv9UwKH;a=T`-+yP{<8-w&7% z!z`k~y8}~aZ%^uR&hJowe$+=9#f`+uM)k=3;*Rk`@$XPU5Ww1cal+ z2gB#%-2)Ug6q@tHW}x!nEf}GP0NrK0ROi#JPb4HfEUUZ7tggO_W7`6+C@Vt^5@P># zYi;d$t&9jsK0!W1}Fv zLFNGd8)isVMfWaA7N^_MxJeIL$0yu=4lY@toZ8@)wZrv97$~qMpa8E=7A#M4RobzB zUx3Qjh zLLkjr$uSYP6s@dO-QD}Y$|>p9|KQ~t(`%eD`AscUe8Gr>;{(B4x3PhXDMuf652$8e zEp1vIZ&q^uU5G=v#oiVaJ}^^r7*$^0HBpKb<&NgjiDPAC6xtDf)2A0RuBkB#ry%TT zGnoOAJd1XFk!K4cjx828&JDKnEfh#a{&%#0A*&-HDMAt7@*-5l3USyL84-DjQt7z< z)p?twKzjnT6hwpvh$wb;3GwX0R+g5|4v)2p^fR)THM(3-#G_;#^~ee)r)t5)6_aJY zz37DRLPOzinhRAi|DxSy5VmpLK^f92Qj+Ek>~Vo^pSjJpii+<(E8;SvxcCyp|D7F% z+qWqL?v35Wa@adcZ9OWr)BmEZ5~bBRgw%+L?C&zWJH-1#O1h8shi1hXVPlE& z<{lQh?Zy5;7G$aZWUdLw{{$W%5XMwlH`Bj0^N0Q+&G{V}B_*p9+duz1ni~I;B0dGV z9IdL};EA56CRgfu3f`Dsy@_aOLZ1fSXVcqq2SWEYrY|%MjyDpxT_0oVvymG=X^Vuf zMOogk1f?&iDia~L#>3}4U6()(p%zH?(+3=H}1m!)_y1Au1`Q##nwqi(LOANem_4G8KzdL52tOio0i8f9 zO@u88Fq$eOB(cPpxY0jVyVQb$3oU^I0Mwoz4uPs2pCW`vi8^v_;$0WD1yfkrrws>K;W!)u5fF&G0I zEzog$2z%&op!eLKt6rLsks2581)R)mNt?&6p__t&iCxESgb-Yi+i^p+htP7op0z^i z#X1mouoQ!CcCb)^k4%j!*;~p9C9!CRBy!=zldDUHRg#nk-VN&;S#99@bF1$QyF5Rw%4*#nOO zE%nB&KmJ>42>&GC2%NXH^zpwga9vGa5Zrs8JVT%&FO@Dr5yb!QpRUIE0-F{XO=MIz z!;jB2=j5UdFMoiMCs!W7g%TCEB?ZF<#53S~RAENiLI!3U^7$a{R@r7$9zzc{Iaz-f zfgqQ-c`kq^F+xJE3ICPv_nfyF7&S!XmzEF`tfs!TlrCmG^ia1merqh+Bp{gR@BcNO zk$Gw?_ow&Bh*YgJhbTMye$xl_=g;?GwGu{gSX@dqFSq`T zSy~%OEUS=xD!eboxFz0NCir^UM-cO$L&9p+5F*f2n6>#nj*b72tr7Y)?<*VQ+X}AT^RckAW}j zR3IH3)ZPB$W(2z}faC=U{mzHlBed0(ke2_cW;(|^J$?6&?|pqC16U6vVegrBU=`gp z2#Den{!bJx1putHw7O~mxgO2K&J`TkX0~6zmZ|};K+az-L-c%vgtzU`=v1@jn8Pf? z|Hs|`r<_>{y_cnIXQ!a8{YJjGR4HweUY>Xl_Paqpl&Zx@81a+n$g( zFg*G~=+aGKPxd{^{)u9vR-Gi}DQsQ(g)j);4RLwlg4 zOG%m5!1t~&vTKJZT$1#0r=miij-s{Lg?CI**zNJ$^E(OhTj$wBUbE=5QEOksoi1Ni z(Zcs)Zi&LC&S%ggj18C(K&Hk)*Z6uSbM*SzM|ctf?aaE?V-hxc`Zpi~8h%1TNPh1? z-Wa)rjhH<^rh9OpHQ>5RYix4xuZ;Zn@QVNc9^0E%E&}mIiFUuk|35f@DxG#eM0HQR z*1$D-9_K0z?!K|n>*>>5_JYgJckbLNC@27F40_@$&{t%42T3MJHJh1{5q89*qM*R; zAHyMKf^bCSqxg*YY3<3=NfLWua(! zt1lE4G{2^@r;d~v9vjnxXF`~m&|NWq20aR!;>l$ui$VKY*TO;V!M#1F!EMg?0LIx>LD69#DPd5Em7hjQW z1nuYL<%NZXDJ1d!Wqm+EQ08%d1dPMRhUKG#jqU4gs#)0QJ_8TD01?5?Znwyw1-5AW zDqOD@HbzB9!#zcU9`X6}`>kn#i$yx=|GSWX-=cVa-jI}(^bO69IoZ-)vR2c#A+s{r zgiZY50h?~!=WS+mUl0#WK^)W$nJ>R1p37$cg20567*^5XP1`Fg#C+D;E-nJ=+Pa$@ zkoX*>!zsx5tjQE3v|AY2*c|Qb?CkAXm~IX`XJ=(t{n{pwlDo9@1}?6D6;Aa0`SWoLG_*iKI`j+S=_m^;D<2!5 z%)S6o3Plqy&6{n1ZG;7MOPHUG4C-6AKEPnSA?`IvOiF^i`2u5$ll+#XCT<`lb!rlr zCj0yQgHi_fJooyx?jc@Q!{`5=vQqWpr~ml}suAhRcCQ(YU&z1vcl67_SpLl`}2JIDi^;sQ5xvDr6hXU`iatu zz3~3ed){LYyd6ci+njdQHA{@Ud~TstwFfj(&rZ@YFr1&B!e-3ARAC`@_JYz8;NT+|4pvrp*oVBhc+6iQxC74ZNBkig;s9v8B75DBpl2^^5-O9OoB&CJYB05#g&*x*$Bg`YX~w*(=bgRg;tJX=_^qP6dV&W{n%`f0+t@U@8)J7yh3%&O99I z_WR>gDM~3>Lx{@0X3JnGOL-K^zL)HbJv+sN2rUvqwuHtmF&HW#VI*M~TNoZ;Y+>xb zGxc1*>wA5#@8=KyjL&v|?sM*QpYuBJE>iD)g?(8{c!cX#fW*7@YCiXo`X3yeyRrMp zy>JSYs9}=#eES9}FT>FOe$bRY=_PZtZ)uB@PC9PAU7`^x|450SS+-4vo)H)gavd;ILQpaf!obTw#~RMdVT8cg~IL}TpN5T@M=x& zB5`kDDOl(t>yM;@9T2PC&CSh0E1C!0dzSQmzHiZm?Sik0lWh84@8XGjF`iD zq1X$?Okn1FLg?*{#F2mg1V2k@UpZ#@Nr)jfhY2(*WSmZ#v+Eo>bjW?Q0ZNQ66Inwy zxQsYBI5svmD44V7&kqg^NU1grspOTjH?*{9XFq}{NC#uj()674;1km z+EKxjukG!CD#aED?TgKU=Y`U2b1jLFPTKKn*6Y{j=X`B#b3xQ-cljw5q7sa~>*uGX zp;3NaOCQ?PpFMxhz@xGa&{a{Tzbu1shc2wEXwU$noX!Rnqp39a1g?vG@ye@zCwMQg z-6{S9m*6iE1{>eJaVC`ABFr-KYX(ym_k}5@{rdIGw9+0HI%osdP*=CH<^($sI|`Hg z-8BP4L#c_@Od@|h{*PZzcGm#&4lK{PXJ&5R)YN1NF*JZqP>=?DT66T(|G8xq-;<&c zRC@pZzO_qNuR?7An6D}Gxt9u2*iAs)Hn^Fg60Upo>M2xcJr=tG!@h*k)7O`B{w`== zy$(fN`Wv3zvs<+4*?Njdr0MjHLIc<>j1Jdx@Tfh8k7H_PcDu2Fg^f)ws>Iur*qCqZS!O=$T43-KzD?uy@?XBbs{r{NCa^`z#zBXi z_nNwCtxqAZHM>3^$*sP0SR-0mUPDj=+(}DI)If7g z|8nqU7SmXuH|(990_F#0=iDqT(vy-5gMyG>x~1t^MHRfKj((~0O!2sWjt3PwgbS+1 z;golUgB{djn^rX-q65zZDqyZuf`e`B?H;)3lwo?1=nCCl(%PN@y&Q#1*qL@d;nylE zF5c*i6pMp}9#*HUtSs;)aAalig1@z|_S?oP9E)T^;C-e-M;^|Pmo9IvxC^b`cdN#-X{rx4kh8BhU zT3hqs3YC>Bz(PWd>Y7)6S{n4TydfqM6`h-#>*(xU1pypz(tqbGSfH{%UI_R(i0lAY zgoDZ%b)-l|Gn^i;JzR1)Ixmj|qC|j#rQGzd;x>1(KrzBIf-}%B{0=Bx2e4u`c?#)l zM->EaTMB`q4v{+5fM(ta-e$)r7eDCcgO-{ml*xK42G<~x2V8VQW`w4-W z)}d50Kpp~}%aonMz*Inrc(pCMbzl_no#UFFe|4KE+7OPVT^Yhcxa!UFg^u>RQLY-|k?^hqyQtK4ou20w|a3ejk@VPTs-nO*`<>p}< zP6Wbdwk1AoV}n*@yX+Ek} z34R|*zuLG>0tD_tj^L4S3T5K>TIj&7rf@#KOEhXl7#9e-T1RjKO3C?Nda(V?@;Tqr z?>*%Tns?4x(UvD@!on?WBcAU*Rc>NQT`QB>j-V+tu z=HDl08 zvhtIs6`1nwaRvXLHs`9<8FjAcGndJn%9{>&ez~+^=PGx?;!=g(Io7{|!Y&wb!!$uW z%PX8|efw6P{>T?sxw=mKg=J?CkN204M`9V}gl5j58cU4h9_DyVejXU8tWHOTHFx?X z#Zo7b-A1ST$VK0uPlrc3EiHcqy4|=D7bMTEbA`R1bnkIQuXAbf&gkUiX z-_juvUpWsP`o}uJZe;Akfwj4f%Ca(>>L!(4%4JxDhH87y(1jae z%88K#f=8kdlJ~v!i~1yW!&MFh;!QUoZGGmgnZaHkKSnNv^Ey^>w8kjx#H2o!#Osg# z<1@&}A2m7IQCL(2(U`N7v=Ms(^|=*t1WU|~IhbY2vUo`iTZhgHw3e7wF8u86o9WpK z#@1BEFy;Cv77vSyn?FxUmhZP&+#=W24p~fe=Sm#okWqaz$r9e`u^%oJw!1PKwzqYF zC$#4F@?>|y6O6Gtm%?IaW!LqU^@aW)G3%o!Ao2${wrMLjHsemEv5NZts_K6^hC^5*ghaiy)z`F?l+_zsrMR@z<{#K>2TNCjX+} zNMYCI&@JNAH*d_6sxS(}>q!doH03XSx;t#R)(C4Ns= zA#tms(F#(}(9m9N%uL_`&PTO-yJ}&Srke{5K|epm(2rP@YITF`n<}HCB5)H6UuS*o z>_qB@mb#DzeI?_9;E!U<+=veFS)i-k)3n9^O#8_T^d@r@iRLp#$h+E--fg*go2rPpGn{gpn19nw5FFHHTS zylJbmC};O-^ho-7KR(OCEK3dQ;41B|Raa_G^ry+?sVu(d#d^M(=T0_@NYO$?!TALe>I6o6p$bfVL#a{CL)tZmb?GG^zzPnr-lZtap}v`Y-~b) z;vo|c|2^je8XVG6L_qCfMa2EuQ#}j&yN9@g36TKlf2`S((xeqhtq6Fa?y|M`21nCdUagd!vN+~lk!#I0U+J5J&?v{kzQJOMwXix-m{(?{wr%8H7bkS$*2Z~u9p zZJsr|4R4mt zs#RQ^M!EORoE>S3ijHPuV_QchwB3ZKSfc-A^>FuX1kQ!lx0m0tR&!6=^&IgkxTi)IH{+)XHbyj_54gI2m0!J4Y^D5^gTS;h=a+L!C z;>E!#DjjQ5@4tj8ZTMOL9VAt){C`A_ls5aSYB7MbbHJyclDe&~sTp1TL8JbDF1e{W@AZ3>XVDp>` zp!mZN4OF8TdRStCr3Uwqq(z1fHHL*jGYv4hSFU_ck+Svj_6EgQE{PDh1N5DRxYg9q z32yt~W3T7a)6)~-@j2b=&-B(SWv>&pJ^Y+Obvat)!$Rvu(1LFUevhx^po4$5Gph zpgGFN&wrX9vVIWF;oUvd*^zf$?d(XCZHY+hH<079_@bfe0DdY2vV+mbIH%Tpl-`sQ zznCT$o;nIbrG5AAA=FMl=NNLdk3fLl?vK!h2OGg!?m3a)z8E%EO^z~hGBPH`eXtXR zWE*Jbw*HmF^uehVq()*PSqk#d-)@(ih(3oo-~ioN&{og>HFdxh^6u^YkCeufOtqVE zh01FLTk~o(&T~Q&HthK-SmA3zx7$g{<7 zi7!~okj-lx!AOUg{@XnNS6F|Bdkn1l5p+NxdCuoCkVvGHnwY{usZ^blhYWbpJG2PB zmkYXTe diff --git a/class_w_i_i-members.html b/class_w_i_i-members.html index 3bc3840c..29d77c5e 100644 --- a/class_w_i_i-members.html +++ b/class_w_i_i-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@

- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -107,13 +82,13 @@ Collaboration diagram for WII:
Collaboration graph
- - - - - - - + + + + + + +
[legend]
@@ -311,9 +286,11 @@ Additional Inherited Members

This BluetoothService class implements support for the Wiimote including the Nunchuck and Motion Plus extension.

It also support the Wii U Pro Controller.

-

Definition at line 56 of file Wii.h.

+

Definition at line 56 of file Wii.h.

Constructor & Destructor Documentation

- + +

◆ WII()

+
@@ -344,12 +321,14 @@ Additional Inherited Members -

Definition at line 85 of file Wii.cpp.

+

Definition at line 85 of file Wii.cpp.

Member Function Documentation

- + +

◆ disconnect()

+
@@ -373,11 +352,13 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 116 of file Wii.cpp.

+

Definition at line 116 of file Wii.cpp.

- + +

◆ getButtonPress()

+
@@ -400,11 +381,13 @@ Additional Inherited Members
Returns
getButtonPress(ButtonEnum b) will return a true as long as a button is held down, while getButtonClick(ButtonEnum b) will return true once for each button press.
-

Definition at line 1097 of file Wii.cpp.

+

Definition at line 1097 of file Wii.cpp.

- + +

◆ getButtonClick()

+
@@ -427,11 +410,13 @@ Additional Inherited Members
Returns
getButtonPress(ButtonEnum b) will return a true as long as a button is held down, while getButtonClick(ButtonEnum b) will return true once for each button press.
-

Definition at line 1104 of file Wii.cpp.

+

Definition at line 1104 of file Wii.cpp.

- + +

◆ pair()

+
@@ -454,11 +439,13 @@ Additional Inherited Members

Call this to start the pairing sequence with a controller

-

Definition at line 89 of file Wii.h.

+

Definition at line 89 of file Wii.h.

- + +

◆ getAnalogHat() [1/2]

+
@@ -479,11 +466,13 @@ Additional Inherited Members
Returns
Return the analog value in the range from approximately 25-230.
-

Definition at line 1115 of file Wii.cpp.

+

Definition at line 1115 of file Wii.cpp.

- + +

◆ getAnalogHat() [2/2]

+
@@ -504,11 +493,13 @@ Additional Inherited Members
Returns
Return the analog value in the range from approximately 800-3200.
-

Definition at line 1127 of file Wii.cpp.

+

Definition at line 1127 of file Wii.cpp.

- + +

◆ getPitch()

+
@@ -530,11 +521,13 @@ Additional Inherited Members

Pitch calculated from the Wiimote. A complimentary filter is used if the Motion Plus is connected.

Returns
Pitch in the range from 0-360.
-

Definition at line 110 of file Wii.h.

+

Definition at line 110 of file Wii.h.

- + +

◆ getRoll()

+
@@ -556,11 +549,13 @@ Additional Inherited Members

Roll calculated from the Wiimote. A complimentary filter is used if the Motion Plus is connected.

Returns
Roll in the range from 0-360.
-

Definition at line 120 of file Wii.h.

+

Definition at line 120 of file Wii.h.

- + +

◆ getYaw()

+
@@ -583,11 +578,13 @@ Additional Inherited Members

This is the yaw calculated by the gyro.

NOTE: This angle will drift a lot and is only available if the Motion Plus extension is connected.

Returns
The angle calculated using the gyro.
-

Definition at line 132 of file Wii.h.

+

Definition at line 132 of file Wii.h.

- + +

◆ setAllOff()

+
@@ -601,11 +598,13 @@ Additional Inherited Members

Used to set all LEDs and rumble off.

-

Definition at line 903 of file Wii.cpp.

+

Definition at line 903 of file Wii.cpp.

- + +

◆ setRumbleOff()

+
@@ -619,11 +618,13 @@ Additional Inherited Members

Turn off rumble.

-

Definition at line 909 of file Wii.cpp.

+

Definition at line 909 of file Wii.cpp.

- + +

◆ setRumbleOn()

+
@@ -637,11 +638,13 @@ Additional Inherited Members

Turn on rumble.

-

Definition at line 915 of file Wii.cpp.

+

Definition at line 915 of file Wii.cpp.

- + +

◆ setRumbleToggle()

+
@@ -655,11 +658,13 @@ Additional Inherited Members

Toggle rumble.

-

Definition at line 921 of file Wii.cpp.

+

Definition at line 921 of file Wii.cpp.

- + +

◆ setLedRaw()

+
@@ -679,11 +684,13 @@ Additional Inherited Members -

Definition at line 927 of file Wii.cpp.

+

Definition at line 927 of file Wii.cpp.

- + +

◆ setLedOff() [1/2]

+
@@ -705,11 +712,13 @@ Additional Inherited Members

Turn all LEDs off.

-

Definition at line 152 of file Wii.h.

+

Definition at line 152 of file Wii.h.

- + +

◆ setLedOff() [2/2]

+
@@ -729,11 +738,13 @@ Additional Inherited Members -

Definition at line 933 of file Wii.cpp.

+

Definition at line 933 of file Wii.cpp.

- + +

◆ setLedOn()

+
@@ -753,11 +764,13 @@ Additional Inherited Members -

Definition at line 939 of file Wii.cpp.

+

Definition at line 939 of file Wii.cpp.

- + +

◆ setLedToggle()

+
@@ -777,11 +790,13 @@ Additional Inherited Members -

Definition at line 949 of file Wii.cpp.

+

Definition at line 949 of file Wii.cpp.

- + +

◆ setLedStatus()

+
@@ -796,11 +811,13 @@ Additional Inherited Members

This will set the LEDs, so the user can see which connections are active.

The first LEDEnum indicate that the Wiimote is connected, the second LEDEnum indicate indicate that a Motion Plus is also connected the third LEDEnum will indicate that a Nunchuck controller is also connected.

-

Definition at line 955 of file Wii.cpp.

+

Definition at line 955 of file Wii.cpp.

- + +

◆ getBatteryLevel()

+
@@ -814,11 +831,13 @@ Additional Inherited Members

Return the battery level of the Wiimote.

Returns
The battery level in the range 0-255.
-

Definition at line 968 of file Wii.cpp.

+

Definition at line 968 of file Wii.cpp.

- + +

◆ getWiiState()

+
@@ -840,11 +859,13 @@ Additional Inherited Members

Return the Wiimote state.

Returns
See: http://wiibrew.org/wiki/Wiimote#0x20:_Status.
-

Definition at line 189 of file Wii.h.

+

Definition at line 189 of file Wii.h.

- + +

◆ getWiimotePitch()

+
@@ -866,11 +887,13 @@ Additional Inherited Members

Pitch and roll calculated from the accelerometer inside the Wiimote.

-

Definition at line 212 of file Wii.h.

+

Definition at line 212 of file Wii.h.

- + +

◆ getWiimoteRoll()

+
@@ -892,11 +915,13 @@ Additional Inherited Members

Pitch and roll calculated from the accelerometer inside the Wiimote.

-

Definition at line 216 of file Wii.h.

+

Definition at line 216 of file Wii.h.

- + +

◆ getNunchuckPitch()

+
@@ -918,11 +943,13 @@ Additional Inherited Members

Pitch and roll calculated from the accelerometer inside the Nunchuck.

-

Definition at line 224 of file Wii.h.

+

Definition at line 224 of file Wii.h.

- + +

◆ getNunchuckRoll()

+
@@ -944,11 +971,13 @@ Additional Inherited Members

Pitch and roll calculated from the accelerometer inside the Nunchuck.

-

Definition at line 228 of file Wii.h.

+

Definition at line 228 of file Wii.h.

- + +

◆ getWeight()

+
@@ -969,11 +998,13 @@ Additional Inherited Members
Returns
Returns the weight in kg.
-

Definition at line 1150 of file Wii.cpp.

+

Definition at line 1150 of file Wii.cpp.

- + +

◆ getTotalWeight()

+
@@ -987,11 +1018,13 @@ Additional Inherited Members

Used to get total weight on the Wii Balance Board.

Returns
Returns the weight in kg.
-

Definition at line 1163 of file Wii.cpp.

+

Definition at line 1163 of file Wii.cpp.

- + +

◆ getWeightRaw()

+
@@ -1020,11 +1053,13 @@ Additional Inherited Members
Returns
Returns the raw reading.
-

Definition at line 295 of file Wii.h.

+

Definition at line 295 of file Wii.h.

- + +

◆ IRinitialize()

+
@@ -1038,11 +1073,13 @@ Additional Inherited Members

Initialises the camera as per the steps from: http://wiibrew.org/wiki/Wiimote#IR_Camera

-

Definition at line 1173 of file Wii.cpp.

+

Definition at line 1173 of file Wii.cpp.

- + +

◆ getIRx1()

+
@@ -1064,11 +1101,13 @@ Additional Inherited Members

IR object 1 x-position read from the Wii IR camera.

Returns
The x-position of the object in the range 0-1023.
-

Definition at line 311 of file Wii.h.

+

Definition at line 311 of file Wii.h.

- + +

◆ getIRy1()

+
@@ -1090,11 +1129,13 @@ Additional Inherited Members

IR object 1 y-position read from the Wii IR camera.

Returns
The y-position of the object in the range 0-767.
-

Definition at line 319 of file Wii.h.

+

Definition at line 319 of file Wii.h.

- + +

◆ getIRs1()

+
@@ -1116,11 +1157,13 @@ Additional Inherited Members

IR object 1 size read from the Wii IR camera.

Returns
The size of the object in the range 0-15.
-

Definition at line 327 of file Wii.h.

+

Definition at line 327 of file Wii.h.

- + +

◆ getIRx2()

+
@@ -1142,11 +1185,13 @@ Additional Inherited Members

IR object 2 x-position read from the Wii IR camera.

Returns
The x-position of the object in the range 0-1023.
-

Definition at line 335 of file Wii.h.

+

Definition at line 335 of file Wii.h.

- + +

◆ getIRy2()

+
@@ -1168,11 +1213,13 @@ Additional Inherited Members

IR object 2 y-position read from the Wii IR camera.

Returns
The y-position of the object in the range 0-767.
-

Definition at line 343 of file Wii.h.

+

Definition at line 343 of file Wii.h.

- + +

◆ getIRs2()

+
@@ -1194,11 +1241,13 @@ Additional Inherited Members

IR object 2 size read from the Wii IR camera.

Returns
The size of the object in the range 0-15.
-

Definition at line 351 of file Wii.h.

+

Definition at line 351 of file Wii.h.

- + +

◆ getIRx3()

+
@@ -1220,11 +1269,13 @@ Additional Inherited Members

IR object 3 x-position read from the Wii IR camera.

Returns
The x-position of the object in the range 0-1023.
-

Definition at line 359 of file Wii.h.

+

Definition at line 359 of file Wii.h.

- + +

◆ getIRy3()

+
@@ -1246,11 +1297,13 @@ Additional Inherited Members

IR object 3 y-position read from the Wii IR camera.

Returns
The y-position of the object in the range 0-767.
-

Definition at line 367 of file Wii.h.

+

Definition at line 367 of file Wii.h.

- + +

◆ getIRs3()

+
@@ -1272,11 +1325,13 @@ Additional Inherited Members

IR object 3 size read from the Wii IR camera.

Returns
The size of the object in the range 0-15.
-

Definition at line 375 of file Wii.h.

+

Definition at line 375 of file Wii.h.

- + +

◆ getIRx4()

+
@@ -1298,11 +1353,13 @@ Additional Inherited Members

IR object 4 x-position read from the Wii IR camera.

Returns
The x-position of the object in the range 0-1023.
-

Definition at line 383 of file Wii.h.

+

Definition at line 383 of file Wii.h.

- + +

◆ getIRy4()

+
@@ -1324,11 +1381,13 @@ Additional Inherited Members

IR object 4 y-position read from the Wii IR camera.

Returns
The y-position of the object in the range 0-767.
-

Definition at line 391 of file Wii.h.

+

Definition at line 391 of file Wii.h.

- + +

◆ getIRs4()

+
@@ -1350,11 +1409,13 @@ Additional Inherited Members

IR object 4 size read from the Wii IR camera.

Returns
The size of the object in the range 0-15.
-

Definition at line 399 of file Wii.h.

+

Definition at line 399 of file Wii.h.

- + +

◆ isIRCameraEnabled()

+
@@ -1376,11 +1437,13 @@ Additional Inherited Members

Use this to check if the camera is enabled or not. If not call WII::IRinitialize to initialize the IR camera.

Returns
True if it's enabled, false if not.
-

Definition at line 408 of file Wii.h.

+

Definition at line 408 of file Wii.h.

- + +

◆ ACLData()

+
@@ -1410,11 +1473,13 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 133 of file Wii.cpp.

+

Definition at line 133 of file Wii.cpp.

- + +

◆ Run()

+
@@ -1438,11 +1503,13 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 725 of file Wii.cpp.

+

Definition at line 725 of file Wii.cpp.

- + +

◆ Reset()

+
@@ -1466,11 +1533,13 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 101 of file Wii.cpp.

+

Definition at line 101 of file Wii.cpp.

- + +

◆ onInit()

+
@@ -1494,12 +1563,14 @@ Additional Inherited Members

Implements BluetoothService.

-

Definition at line 1139 of file Wii.cpp.

+

Definition at line 1139 of file Wii.cpp.

Member Data Documentation

- + +

◆ wiimoteConnected

+
@@ -1510,11 +1581,13 @@ Additional Inherited Members

Variable used to indicate if a Wiimote is connected.

-

Definition at line 191 of file Wii.h.

+

Definition at line 191 of file Wii.h.

- + +

◆ nunchuckConnected

+
@@ -1525,11 +1598,13 @@ Additional Inherited Members

Variable used to indicate if a Nunchuck controller is connected.

-

Definition at line 198 of file Wii.h.

+

Definition at line 198 of file Wii.h.

- + +

◆ motionPlusConnected

+
@@ -1540,11 +1615,13 @@ Additional Inherited Members

Variable used to indicate if a Nunchuck controller is connected.

-

Definition at line 200 of file Wii.h.

+

Definition at line 200 of file Wii.h.

- + +

◆ wiiUProControllerConnected

+
@@ -1555,11 +1632,13 @@ Additional Inherited Members

Variable used to indicate if a Wii U Pro controller is connected.

-

Definition at line 202 of file Wii.h.

+

Definition at line 202 of file Wii.h.

- + +

◆ wiiBalanceBoardConnected

+
@@ -1570,11 +1649,13 @@ Additional Inherited Members

Variable used to indicate if a Wii Balance Board is connected.

-

Definition at line 204 of file Wii.h.

+

Definition at line 204 of file Wii.h.

- + +

◆ accXwiimote

+
@@ -1585,11 +1666,13 @@ Additional Inherited Members

Accelerometer values used to calculate pitch and roll.

-

Definition at line 230 of file Wii.h.

+

Definition at line 230 of file Wii.h.

- + +

◆ accYwiimote

+
@@ -1600,11 +1683,13 @@ Additional Inherited Members

Accelerometer values used to calculate pitch and roll.

-

Definition at line 230 of file Wii.h.

+

Definition at line 230 of file Wii.h.

- + +

◆ accZwiimote

+
@@ -1615,11 +1700,13 @@ Additional Inherited Members

Accelerometer values used to calculate pitch and roll.

-

Definition at line 230 of file Wii.h.

+

Definition at line 230 of file Wii.h.

- + +

◆ accXnunchuck

+
@@ -1630,11 +1717,13 @@ Additional Inherited Members

Accelerometer values used to calculate pitch and roll.

-

Definition at line 236 of file Wii.h.

+

Definition at line 236 of file Wii.h.

- + +

◆ accYnunchuck

+
@@ -1645,11 +1734,13 @@ Additional Inherited Members

Accelerometer values used to calculate pitch and roll.

-

Definition at line 236 of file Wii.h.

+

Definition at line 236 of file Wii.h.

- + +

◆ accZnunchuck

+
@@ -1660,11 +1751,13 @@ Additional Inherited Members

Accelerometer values used to calculate pitch and roll.

-

Definition at line 236 of file Wii.h.

+

Definition at line 236 of file Wii.h.

- + +

◆ gyroPitch

+
@@ -1675,11 +1768,13 @@ Additional Inherited Members

This is the pitch calculated by the gyro - use this to tune WII::pitchGyroScale.

-

Definition at line 241 of file Wii.h.

+

Definition at line 241 of file Wii.h.

- + +

◆ gyroRoll

+
@@ -1690,11 +1785,13 @@ Additional Inherited Members

This is the roll calculated by the gyro - use this to tune WII::rollGyroScale.

-

Definition at line 243 of file Wii.h.

+

Definition at line 243 of file Wii.h.

- + +

◆ gyroYaw

+
@@ -1705,11 +1802,13 @@ Additional Inherited Members

This is the yaw calculated by the gyro - use this to tune WII::yawGyroScale.

-

Definition at line 245 of file Wii.h.

+

Definition at line 245 of file Wii.h.

- + +

◆ pitchGyroSpeed

+
@@ -1720,11 +1819,13 @@ Additional Inherited Members

The speed in deg/s from the gyro.

-

Definition at line 249 of file Wii.h.

+

Definition at line 249 of file Wii.h.

- + +

◆ rollGyroSpeed

+
@@ -1735,11 +1836,13 @@ Additional Inherited Members

The speed in deg/s from the gyro.

-

Definition at line 250 of file Wii.h.

+

Definition at line 250 of file Wii.h.

- + +

◆ yawGyroSpeed

+
@@ -1750,11 +1853,13 @@ Additional Inherited Members

The speed in deg/s from the gyro.

-

Definition at line 251 of file Wii.h.

+

Definition at line 251 of file Wii.h.

- + +

◆ pitchGyroScale

+
@@ -1765,11 +1870,13 @@ Additional Inherited Members

You might need to fine-tune these values.

-

Definition at line 256 of file Wii.h.

+

Definition at line 256 of file Wii.h.

- + +

◆ rollGyroScale

+
@@ -1780,11 +1887,13 @@ Additional Inherited Members

You might need to fine-tune these values.

-

Definition at line 257 of file Wii.h.

+

Definition at line 257 of file Wii.h.

- + +

◆ yawGyroScale

+
@@ -1795,11 +1904,13 @@ Additional Inherited Members

You might need to fine-tune these values.

-

Definition at line 258 of file Wii.h.

+

Definition at line 258 of file Wii.h.

- + +

◆ gyroYawRaw

+
@@ -1810,11 +1921,13 @@ Additional Inherited Members

Raw value read directly from the Motion Plus.

-

Definition at line 263 of file Wii.h.

+

Definition at line 263 of file Wii.h.

- + +

◆ gyroRollRaw

+
@@ -1825,11 +1938,13 @@ Additional Inherited Members

Raw value read directly from the Motion Plus.

-

Definition at line 264 of file Wii.h.

+

Definition at line 264 of file Wii.h.

- + +

◆ gyroPitchRaw

+
@@ -1840,11 +1955,13 @@ Additional Inherited Members

Raw value read directly from the Motion Plus.

-

Definition at line 265 of file Wii.h.

+

Definition at line 265 of file Wii.h.

- + +

◆ gyroYawZero

+
@@ -1855,11 +1972,13 @@ Additional Inherited Members

These values are set when the controller is first initialized.

-

Definition at line 270 of file Wii.h.

+

Definition at line 270 of file Wii.h.

- + +

◆ gyroRollZero

+
@@ -1870,11 +1989,13 @@ Additional Inherited Members

These values are set when the controller is first initialized.

-

Definition at line 271 of file Wii.h.

+

Definition at line 271 of file Wii.h.

- + +

◆ gyroPitchZero

+
@@ -1885,7 +2006,7 @@ Additional Inherited Members

These values are set when the controller is first initialized.

-

Definition at line 272 of file Wii.h.

+

Definition at line 272 of file Wii.h.

@@ -1898,7 +2019,7 @@ Additional Inherited Members diff --git a/class_w_i_i__coll__graph.map b/class_w_i_i__coll__graph.map index d3abf026..f0c52a3e 100644 --- a/class_w_i_i__coll__graph.map +++ b/class_w_i_i__coll__graph.map @@ -1,9 +1,9 @@ - - - - - - - + + + + + + + diff --git a/class_w_i_i__coll__graph.md5 b/class_w_i_i__coll__graph.md5 index 32ea2769..a10fe2cb 100644 --- a/class_w_i_i__coll__graph.md5 +++ b/class_w_i_i__coll__graph.md5 @@ -1 +1 @@ -e2fa40aab171687d763b41a969505c68 \ No newline at end of file +e1501afe750d6b78ef0a9e4e2bae788b \ No newline at end of file diff --git a/class_w_i_i__coll__graph.png b/class_w_i_i__coll__graph.png index 6928eefcaebcc01fd451b2da8ce5dd1ecfee518e..43744ae1f5620505ef9c7926e1e498b9ea3217f9 100644 GIT binary patch literal 17576 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 E7Zy5j`Tzg` literal 15516 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 iBUU*74WvDNfIBmwOmb*D76jXkAupwsrOG5 - + diff --git a/class_w_i_i__inherit__graph.md5 b/class_w_i_i__inherit__graph.md5 index 6b41428e..7b7bcaf0 100644 --- a/class_w_i_i__inherit__graph.md5 +++ b/class_w_i_i__inherit__graph.md5 @@ -1 +1 @@ -0f2ab569d0b7006cfff8d64fe9f9fda1 \ No newline at end of file +e76134827ecba3876499802eaee4ce30 \ No newline at end of file diff --git a/class_w_i_i__inherit__graph.png b/class_w_i_i__inherit__graph.png index 5f2cbe2dfb3892dcf6f7953811eb16ef0d69609c..fa1371cf1b9c068f05913bc5818cd8955c22f589 100644 GIT binary patch literal 2393 zcmcImhgZ`}7XF1MVgQ8zp{NLvb`S(vG_(+U4aFz{DN2i=h?GZo2pT|o4IKmmN<@SN zG14|bD34AEK0unNbQGiufTQ!CgoFaw*x^q@i_hFLtamFS>sF^?U>G4o_qX>MoDNG{EX zdT5`OSnVR2thy@WWv8(y+qxZ(MZM&F?I}@JOWJ_AF1;N7Xb`?l+-Kwu7uO}@pDN(- z(NK!8K1&eBDU%M4*H@R8Np%_Wt;MaqpHa$QPfrq4y^cm-?4&1yY15Rqw>5Q1>yQ)^ zkNT+zLc@?nb93{PY$h&6Uz#_u1peR!XeJ$(;%=g!L7G)-7oczbJWa%xKV3^Nv21COg~Bb1K%o)+k4u~tzU-DjytAePmt}c@B z3ILv$m*>y+=c;zPs~Ou34-c>S40>}~8{FVtFq9Qda-%pg=jiCDsHnKaB<_VZ9}|!QfYtGuXv(XGhR}l@ zp9G_f>}-;K#dQaV4xVTy5Kyf1yFCV@Ae3zA-Q`;N&x8 zt`~8jAulg~;R2aNilKb|7IxL%J~l2c{~0eAhi|Qxwzf9gR9bo~ARvIOcR5gL!uuUU zy{o%Bm)&x57Qc4wT7Q54;o%{GPdkgShmb~n)xefkRyq$^-=}FfEEb!8aEBDY zzFl!~F@>Vy4dxdRuprsfKQdQ0cfU@l=MUW0n7!ia>PoS%c=siUQ`RF|ef;k9KS$kb zs!UB>U5h(rO6pBbP1V32N25#Iot>ShxR7GUczAZ#rX@9@N^|?$OAuoM>^P=gIRnPe zV`yp`=d6;JmbSjO_A^Z4O6pZe?d#VWSy}97R!DqFCN~Ez@cmHW-q6$B`;+aW#y)@Z;37lHttkZ z27PP)G*0Tw$j=wogcg_#t)MbsD__1Oo5%`RR8{Tlhr8Lxs;u=}xcK>zO`eHMNhx2r zFiph@(y$fiz5(62xw-m#(@xA%vRGaIw>0npiQF;s%8ATiFtl-NF!PMY@IsV4P*PdB zvc1F{9UZkII#j!oDU>=VG8a-xCv;H$}&(F`z&E3(_;Z1FsOCGDJUq&&E5Od#;Mhgwyhk6#?D+p zo&2NJFmA9APQ6ZCfv4CNUvl^GPy-M9){eNXqkL<_rt19m_xBAA4XuXeHZ?9^#(H|j zch1Jf#x5*)(LcJ`*%8=Lb-3T?T#hQ5Y>A+umHd2s99>-aCBeQT*JD4f(?h-%Sjh?V z#WXfHve_2we`}aGB4&DgJg=~DHG~%JSw*3|M86yuup*eD9UPVd8`;>)^pt*T@B;is zllznzkCC+a$w*Iqt_;vGCH#bXcnh8>_DL&A;pAeaR@xceNtTXGq_i`DpLJIoOE9v4 zip!%4$JvWWm=+I!!9W+a2xg~jb&evsh>yaOk{*>Q^xbCd2_jfYE5R~RdqG`2yffbp zB3fEi>3I!<=j}sPpVd2_BN=$Q7`(~nwSj4{*aa|y_dk@4~5j+!37>x5Ph zaZXM;PsGk?Ny+VD8+u^2&HM(&#J@UKTvX%XqmugEZk$p}Uta$H6*V=ngVa&a0;*F{ zVHpG-p8a+V8=oea86F+GyMD#ZFE7fjGD z#@HkvV3Qzg+AygNQy(h)8w>wB7sB&B4Y&TjG03WhM!Qjg9%M3yjmw8C&`RCi-5|h% z6nO7mYAUt*ONsG;_-rimS|N6ChW^dWp3O(fk*d}~Q0Qm`63eaXst+`S9# z{RA{RqwKN_N^i<|d3kX}>dR#YWMj25IZbtnDJeFqN literal 2228 zcmb_ec~}z47N^o4X(}#PEsau16nDb~Ma_Z`a@W+%u0-a|CC%LTQc9_7mPUr=8fmFF z&0NyTCAV_P1#?&2xdw)W;)eOC`@Yxr{(on_ne)w@neRLEJ7<1pNcOfEF_D8J002M? zYlU(Y=oCS}3fwIiOLe^r1ZpqgGzJCO`O)&;6{Q0JKp!m1(mCSsQucXk>9Y#g?N0AW z?6c{Vy5K5=at7+*;nW3gfqcPHRg@IW!f57Zyq?X;nVXl3^-zCGlJs5#OtqQb*S@32 zEEL|5V17}4<2P1@dqD8tEidBadyZ9^%_fX*d|AN|U(RQn^#~&vOOJymd5aV$@sk)7 z4gS6~s)b_H8*}hS_PwySwKasp*SEh%TuQv)@Z1?jzWrC6er}F=?C9hq znEOE218fmjN?S}&N$X8CF)<;KB~+0~;)iBX%bP-bSo`)4OYe{1L8M6QOIIUH)8G+8 zJy39R(-;AfgW5SFdxu7&`T6?#8;*%^-KL$+6M~bP`+9rJLz#mHeuGphRS_9cUQ-i( zbXLCwuM3g?*Q0<>a2UoXk=o2GHxX$z(K$=%HAG2{S zD2OAK<Pe#%m3`z5t20YQQnDs<1p6nhY!i^vuAOH{fUW*b~(s=pSp^QimEDdN=4OVbl9zTV-wYhNd7gBiT96P=N2 zX+?8$bNF_`OJf#C$T9*6E@W{cfC^}*kjmxJoeC55K1)js+*Fd(BqufCG?*;j1I z2_hxz+7MzMlo>xL-OT6n>q40Y&^8}GUHLHfqz$doL;J8Gc@$q=>U`L{A@iJ}w*1yy ziO34u`ds2FDk_TLWSfQyLi)x-yX12ee?7=B?%UkQCzw=sP1&*`Kls6tk`hXUuWxZH z;etfT^XGk+;f7h=-miS%2YFmCs&P>yL`DRS!L)aE?MFMfl&p49jz#lWq#XIA*e#v_ z%<;F8!Aql6reUlpq`RwYkxL0wRds>EU^1Bv&lo*|fE{2u;c&Rf$c+-$GGn&plRmYK z&V30VIywYbkyTjR+BOOp|Ipca8iyOLkKNkdTBEF2`3+GW)uSJ^&pMQR?qZl!xgUyo zA*#TDVXyJBpqPg*qAa&&aGh48Wo4_u-%S98pw4OLW5 zs-{;}R-y#?oX^F|@aw`uLY&W>39`l$B)H)zQx>|@u`2&zkLzYlfaru>yq`31;f3g| z2jUjVERbG5@j7T0nm^?km2~SCBu#hWxKbL9EcLO5V|(%Gz|at8JQW0J*ya^id`qgU z+kqRLX)~2GmmJ+3_-xR|r>a?=KdPf{@T{>mE6v zct5vkgH?+nlHcVlsHRfOy;c960@>HQ4RzeD0%471C2uS^6HK?Q0%;q=&Mmx+Kt z$25r2^z1oZJqKWq!{x1cU_QH{Y=_g{JU@@-*b?oCS0}fO{s(gb_5PR2|9^(-%Olai zmYd|5iz=4>SSz=hx7CjWp&n+X{X6HgGc&(!#K>uTB+uuWWCzR}x$|+Qj&}P+ZYn=) z784h5yY^aVciGR{^2?!TIaX<<&z|L}-A=h&N^`QxiZkRyydF)?9HsqL#6@%Ju{diVQt z=QbUK@4Hx7?Tpma)N}|5q))Ma6Sky(Fa?-DGBP5dz*-M5TWCY597;kJ*sFofqKH5C zgocKyrteeo(v=syvMGA+yfh&C1W=ufOKh6rZalXA!_x8wZIP - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -108,10 +83,10 @@ Collaboration diagram for XBOXOLD:
Collaboration graph
- - - - + + + +
[legend]
@@ -172,9 +147,11 @@ Protected Attributes

Detailed Description

This class implements support for a the original Xbox controller via USB.

-

Definition at line 46 of file XBOXOLD.h.

+

Definition at line 46 of file XBOXOLD.h.

Constructor & Destructor Documentation

- + +

◆ XBOXOLD()

+
@@ -194,12 +171,14 @@ Protected Attributes -

Definition at line 47 of file XBOXOLD.cpp.

+

Definition at line 47 of file XBOXOLD.cpp.

Member Function Documentation

- + +

◆ Init()

+
@@ -248,11 +227,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 63 of file XBOXOLD.cpp.

+

Definition at line 63 of file XBOXOLD.cpp.

- + +

◆ Release()

+
@@ -276,11 +257,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 237 of file XBOXOLD.cpp.

+

Definition at line 237 of file XBOXOLD.cpp.

- + +

◆ Poll()

+
@@ -304,11 +287,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 245 of file XBOXOLD.cpp.

+

Definition at line 245 of file XBOXOLD.cpp.

- + +

◆ GetAddress()

+
@@ -332,11 +317,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 78 of file XBOXOLD.h.

+

Definition at line 78 of file XBOXOLD.h.

- + +

◆ isReady()

+
@@ -358,11 +345,13 @@ Protected Attributes

Used to check if the controller has been initialized.

Returns
True if it's ready.
-

Definition at line 86 of file XBOXOLD.h.

+

Definition at line 86 of file XBOXOLD.h.

- + +

◆ VIDPIDOK()

+
@@ -404,11 +393,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 96 of file XBOXOLD.h.

+

Definition at line 96 of file XBOXOLD.h.

- + +

◆ getButtonPress()

+
@@ -431,11 +422,13 @@ Protected Attributes
Returns
getButtonClick(ButtonEnum b) will return a bool, while getButtonPress(ButtonEnum b) will return a byte if reading L2 or R2.
-

Definition at line 295 of file XBOXOLD.cpp.

+

Definition at line 295 of file XBOXOLD.cpp.

- + +

◆ getButtonClick()

+
@@ -458,11 +451,13 @@ Protected Attributes
Returns
getButtonClick(ButtonEnum b) will return a bool, while getButtonPress(ButtonEnum b) will return a byte if reading L2 or R2.
-

Definition at line 302 of file XBOXOLD.cpp.

+

Definition at line 302 of file XBOXOLD.cpp.

- + +

◆ getAnalogHat()

+
@@ -483,11 +478,13 @@ Protected Attributes
Returns
Returns a signed 16-bit integer.
-

Definition at line 317 of file XBOXOLD.cpp.

+

Definition at line 317 of file XBOXOLD.cpp.

- + +

◆ setRumbleOff()

+
@@ -509,11 +506,13 @@ Protected Attributes

Turn rumble off the controller.

-

Definition at line 125 of file XBOXOLD.h.

+

Definition at line 125 of file XBOXOLD.h.

- + +

◆ setRumbleOn()

+
@@ -544,11 +543,13 @@ Protected Attributes -

Definition at line 327 of file XBOXOLD.cpp.

+

Definition at line 327 of file XBOXOLD.cpp.

- + +

◆ attachOnInit()

+
@@ -576,12 +577,14 @@ Protected Attributes -

Definition at line 139 of file XBOXOLD.h.

+

Definition at line 139 of file XBOXOLD.h.

Member Data Documentation

- + +

◆ XboxConnected

+
@@ -592,11 +595,13 @@ Protected Attributes

True if a Xbox controller is connected.

-

Definition at line 141 of file XBOXOLD.h.

+

Definition at line 141 of file XBOXOLD.h.

- + +

◆ pUsb

+
@@ -615,11 +620,13 @@ Protected Attributes

Pointer to USB class instance.

-

Definition at line 149 of file XBOXOLD.h.

+

Definition at line 149 of file XBOXOLD.h.

- + +

◆ bAddress

+
@@ -638,11 +645,13 @@ Protected Attributes

Device address.

-

Definition at line 151 of file XBOXOLD.h.

+

Definition at line 151 of file XBOXOLD.h.

- + +

◆ epInfo

+
@@ -661,7 +670,7 @@ Protected Attributes

Endpoint info structure.

-

Definition at line 153 of file XBOXOLD.h.

+

Definition at line 153 of file XBOXOLD.h.

@@ -674,7 +683,7 @@ Protected Attributes diff --git a/class_x_b_o_x_o_l_d__coll__graph.map b/class_x_b_o_x_o_l_d__coll__graph.map index d42fe55d..15595386 100644 --- a/class_x_b_o_x_o_l_d__coll__graph.map +++ b/class_x_b_o_x_o_l_d__coll__graph.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/class_x_b_o_x_o_l_d__coll__graph.md5 b/class_x_b_o_x_o_l_d__coll__graph.md5 index c02a188a..42b7005f 100644 --- a/class_x_b_o_x_o_l_d__coll__graph.md5 +++ b/class_x_b_o_x_o_l_d__coll__graph.md5 @@ -1 +1 @@ -3285ca35607fc26fc3c6347499cd29e6 \ No newline at end of file +c0023cd1084e2018409a7a9723373210 \ No newline at end of file diff --git a/class_x_b_o_x_o_l_d__coll__graph.png b/class_x_b_o_x_o_l_d__coll__graph.png index e1f1ed8bad5f6f4aedbca4d8e9db5e5611e7d2ed..980c7046b3c6743e624f5f0ed1b3a587a3be64f3 100644 GIT binary patch literal 10235 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 literal 9243 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 diff --git a/class_x_b_o_x_o_l_d__inherit__graph.map b/class_x_b_o_x_o_l_d__inherit__graph.map index aadd3be4..56c84bae 100644 --- a/class_x_b_o_x_o_l_d__inherit__graph.map +++ b/class_x_b_o_x_o_l_d__inherit__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_x_b_o_x_o_l_d__inherit__graph.md5 b/class_x_b_o_x_o_l_d__inherit__graph.md5 index 73dafbc3..de29cd5b 100644 --- a/class_x_b_o_x_o_l_d__inherit__graph.md5 +++ b/class_x_b_o_x_o_l_d__inherit__graph.md5 @@ -1 +1 @@ -1eeb2bcd708d5b17ef18f534c5633a29 \ No newline at end of file +8ea0f3477d33c1fccfccfb30f84bc05e \ No newline at end of file diff --git a/class_x_b_o_x_o_l_d__inherit__graph.png b/class_x_b_o_x_o_l_d__inherit__graph.png index 3a601a30a176a9fbef2d224c9f93e24af9bfdc2a..32c56a6953176bc08c3f1b8001ffce4392831a1e 100644 GIT binary patch literal 3324 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 BUE2Tv literal 3026 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 D+icw? diff --git a/class_x_b_o_x_o_n_e-members.html b/class_x_b_o_x_o_n_e-members.html index 96c22c5e..ba23a712 100644 --- a/class_x_b_o_x_o_n_e-members.html +++ b/class_x_b_o_x_o_n_e-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - + +
[legend]
@@ -110,11 +85,11 @@ Collaboration diagram for XBOXONE:
Collaboration graph
- - - - - + + + + +
[legend]
@@ -191,9 +166,11 @@ Protected Attributes

Detailed Description

This class implements support for a Xbox ONE controller connected via USB.

-

Definition at line 66 of file XBOXONE.h.

+

Definition at line 66 of file XBOXONE.h.

Constructor & Destructor Documentation

- + +

◆ XBOXONE()

+
@@ -213,12 +190,14 @@ Protected Attributes -

Definition at line 27 of file XBOXONE.cpp.

+

Definition at line 27 of file XBOXONE.cpp.

Member Function Documentation

- + +

◆ Init()

+
@@ -267,11 +246,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 46 of file XBOXONE.cpp.

+

Definition at line 46 of file XBOXONE.cpp.

- + +

◆ Release()

+
@@ -295,11 +276,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 286 of file XBOXONE.cpp.

+

Definition at line 286 of file XBOXONE.cpp.

- + +

◆ Poll()

+
@@ -323,11 +306,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 300 of file XBOXONE.cpp.

+

Definition at line 300 of file XBOXONE.cpp.

- + +

◆ GetAddress()

+
@@ -351,11 +336,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 98 of file XBOXONE.h.

+

Definition at line 98 of file XBOXONE.h.

- + +

◆ isReady()

+
@@ -377,11 +364,13 @@ Protected Attributes

Used to check if the controller has been initialized.

Returns
True if it's ready.
-

Definition at line 106 of file XBOXONE.h.

+

Definition at line 106 of file XBOXONE.h.

- + +

◆ readPollInterval()

+
@@ -403,11 +392,13 @@ Protected Attributes

Read the poll interval taken from the endpoint descriptors.

Returns
The poll interval in ms.
-

Definition at line 114 of file XBOXONE.h.

+

Definition at line 114 of file XBOXONE.h.

- + +

◆ VIDPIDOK()

+
@@ -449,11 +440,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 124 of file XBOXONE.h.

+

Definition at line 124 of file XBOXONE.h.

- + +

◆ getButtonPress()

+
@@ -476,11 +469,13 @@ Protected Attributes
Returns
getButtonClick(ButtonEnum b) will return a bool, while getButtonPress(ButtonEnum b) will return a word if reading L2 or R2.
-

Definition at line 380 of file XBOXONE.cpp.

+

Definition at line 380 of file XBOXONE.cpp.

- + +

◆ getButtonClick()

+
@@ -503,11 +498,13 @@ Protected Attributes
Returns
getButtonClick(ButtonEnum b) will return a bool, while getButtonPress(ButtonEnum b) will return a word if reading L2 or R2.
-

Definition at line 388 of file XBOXONE.cpp.

+

Definition at line 388 of file XBOXONE.cpp.

- + +

◆ getAnalogHat()

+
@@ -528,11 +525,13 @@ Protected Attributes
Returns
Returns a signed 16-bit integer.
-

Definition at line 408 of file XBOXONE.cpp.

+

Definition at line 408 of file XBOXONE.cpp.

- + +

◆ attachOnInit()

+
@@ -560,11 +559,13 @@ Protected Attributes -

Definition at line 157 of file XBOXONE.h.

+

Definition at line 157 of file XBOXONE.h.

- + +

◆ setRumbleOff()

+
@@ -578,11 +579,13 @@ Protected Attributes

Used to set the rumble off.

-

Definition at line 450 of file XBOXONE.cpp.

+

Definition at line 450 of file XBOXONE.cpp.

- + +

◆ setRumbleOn()

+
@@ -627,11 +630,13 @@ Protected Attributes -

Definition at line 472 of file XBOXONE.cpp.

+

Definition at line 472 of file XBOXONE.cpp.

- + +

◆ EndpointXtract()

+
@@ -693,11 +698,13 @@ Protected Attributes

Reimplemented from UsbConfigXtracter.

-

Definition at line 239 of file XBOXONE.cpp.

+

Definition at line 239 of file XBOXONE.cpp.

- + +

◆ PrintEndpointDescriptor()

+
@@ -725,12 +732,14 @@ Protected Attributes -

Definition at line 265 of file XBOXONE.cpp.

+

Definition at line 265 of file XBOXONE.cpp.

Member Data Documentation

- + +

◆ XboxOneConnected

+
@@ -741,11 +750,13 @@ Protected Attributes

True if a Xbox ONE controller is connected.

-

Definition at line 175 of file XBOXONE.h.

+

Definition at line 175 of file XBOXONE.h.

- + +

◆ pUsb

+
@@ -764,11 +775,13 @@ Protected Attributes

Pointer to USB class instance.

-

Definition at line 179 of file XBOXONE.h.

+

Definition at line 179 of file XBOXONE.h.

- + +

◆ bAddress

+
@@ -787,11 +800,13 @@ Protected Attributes

Device address.

-

Definition at line 181 of file XBOXONE.h.

+

Definition at line 181 of file XBOXONE.h.

- + +

◆ epInfo

+
@@ -810,11 +825,13 @@ Protected Attributes

Endpoint info structure.

-

Definition at line 183 of file XBOXONE.h.

+

Definition at line 183 of file XBOXONE.h.

- + +

◆ bConfNum

+
@@ -833,11 +850,13 @@ Protected Attributes

Configuration number.

-

Definition at line 186 of file XBOXONE.h.

+

Definition at line 186 of file XBOXONE.h.

- + +

◆ bNumEP

+
@@ -856,11 +875,13 @@ Protected Attributes

Total number of endpoints in the configuration.

-

Definition at line 188 of file XBOXONE.h.

+

Definition at line 188 of file XBOXONE.h.

- + +

◆ qNextPollTime

+
@@ -879,7 +900,7 @@ Protected Attributes

Next poll time based on poll interval taken from the USB descriptor.

-

Definition at line 190 of file XBOXONE.h.

+

Definition at line 190 of file XBOXONE.h.

@@ -892,7 +913,7 @@ Protected Attributes diff --git a/class_x_b_o_x_o_n_e__coll__graph.map b/class_x_b_o_x_o_n_e__coll__graph.map index 81ce6aa5..5593ee1c 100644 --- a/class_x_b_o_x_o_n_e__coll__graph.map +++ b/class_x_b_o_x_o_n_e__coll__graph.map @@ -1,7 +1,7 @@ - - - - - + + + + + diff --git a/class_x_b_o_x_o_n_e__coll__graph.md5 b/class_x_b_o_x_o_n_e__coll__graph.md5 index d3362d25..11a3d6d9 100644 --- a/class_x_b_o_x_o_n_e__coll__graph.md5 +++ b/class_x_b_o_x_o_n_e__coll__graph.md5 @@ -1 +1 @@ -ab6103dfda6af6e334c7e58ac7721ece \ No newline at end of file +685a1b999dfc021cbeace7d73ca5f08c \ No newline at end of file diff --git a/class_x_b_o_x_o_n_e__coll__graph.png b/class_x_b_o_x_o_n_e__coll__graph.png index e7222c5b9b0ffaae0e353e65a624e21dadb0497b..bb859741cf33896021a36a15817cf5929712a9fd 100644 GIT binary patch literal 13683 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 DWtws! diff --git a/class_x_b_o_x_o_n_e__inherit__graph.map b/class_x_b_o_x_o_n_e__inherit__graph.map index 44cd7708..b6551e61 100644 --- a/class_x_b_o_x_o_n_e__inherit__graph.map +++ b/class_x_b_o_x_o_n_e__inherit__graph.map @@ -1,4 +1,4 @@ - - + + diff --git a/class_x_b_o_x_o_n_e__inherit__graph.md5 b/class_x_b_o_x_o_n_e__inherit__graph.md5 index 5e155b32..3e4c3048 100644 --- a/class_x_b_o_x_o_n_e__inherit__graph.md5 +++ b/class_x_b_o_x_o_n_e__inherit__graph.md5 @@ -1 +1 @@ -d14ff9b240aab210984df810f6df378d \ No newline at end of file +01199dc77ff7dcdfb5dccdc4b3c6381b \ No newline at end of file diff --git a/class_x_b_o_x_o_n_e__inherit__graph.png b/class_x_b_o_x_o_n_e__inherit__graph.png index 36068495032b92d4e137b2d588dffd12a65ef9a0..1594c0499a7c8023c8aab2a677ffba95ff0362ae 100644 GIT binary patch literal 5967 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 diff --git a/class_x_b_o_x_o_n_e_s_b_t-members.html b/class_x_b_o_x_o_n_e_s_b_t-members.html index 6685b6e3..76dd01ef 100644 --- a/class_x_b_o_x_o_n_e_s_b_t-members.html +++ b/class_x_b_o_x_o_n_e_s_b_t-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - - + + +
[legend]
@@ -108,15 +83,15 @@ Collaboration diagram for XBOXONESBT:
Collaboration graph
- - - - - - - - - + + + + + + + + +
[legend]
@@ -216,9 +191,11 @@ Additional Inherited Members

Detailed Description

This class implements support for the Xbox One S controller via Bluetooth. It uses the BTHID class for all the Bluetooth communication.

-

Definition at line 28 of file XBOXONESBT.h.

+

Definition at line 28 of file XBOXONESBT.h.

Constructor & Destructor Documentation

- + +

◆ XBOXONESBT()

+
@@ -257,12 +234,14 @@ Additional Inherited Members -

Definition at line 35 of file XBOXONESBT.h.

+

Definition at line 35 of file XBOXONESBT.h.

Member Function Documentation

- + +

◆ connected()

+
@@ -284,11 +263,13 @@ Additional Inherited Members

Used to check if a Xbox One S controller is connected.

Returns
Returns true if it is connected.
-

Definition at line 45 of file XBOXONESBT.h.

+

Definition at line 45 of file XBOXONESBT.h.

- + +

◆ ParseBTHIDData()

+
@@ -329,11 +310,13 @@ Additional Inherited Members

Reimplemented from BTHID.

-

Definition at line 56 of file XBOXONESBT.h.

+

Definition at line 56 of file XBOXONESBT.h.

- + +

◆ OnInitBTHID()

+
@@ -357,11 +340,13 @@ Additional Inherited Members

Reimplemented from BTHID.

-

Definition at line 65 of file XBOXONESBT.h.

+

Definition at line 65 of file XBOXONESBT.h.

- + +

◆ ResetBTHID()

+
@@ -385,7 +370,7 @@ Additional Inherited Members

Reimplemented from BTHID.

-

Definition at line 72 of file XBOXONESBT.h.

+

Definition at line 72 of file XBOXONESBT.h.

@@ -397,7 +382,7 @@ Additional Inherited Members diff --git a/class_x_b_o_x_o_n_e_s_b_t__coll__graph.map b/class_x_b_o_x_o_n_e_s_b_t__coll__graph.map index 105bb353..dede758a 100644 --- a/class_x_b_o_x_o_n_e_s_b_t__coll__graph.map +++ b/class_x_b_o_x_o_n_e_s_b_t__coll__graph.map @@ -1,11 +1,11 @@ - - - - - - - - - + + + + + + + + + diff --git a/class_x_b_o_x_o_n_e_s_b_t__coll__graph.md5 b/class_x_b_o_x_o_n_e_s_b_t__coll__graph.md5 index 16eeb07d..927d8a61 100644 --- a/class_x_b_o_x_o_n_e_s_b_t__coll__graph.md5 +++ b/class_x_b_o_x_o_n_e_s_b_t__coll__graph.md5 @@ -1 +1 @@ -d0f53f539e449721da09627ae39bd54f \ No newline at end of file +6c9a21fa0883371d3ba385960cfc9cc3 \ No newline at end of file diff --git a/class_x_b_o_x_o_n_e_s_b_t__coll__graph.png b/class_x_b_o_x_o_n_e_s_b_t__coll__graph.png index 0d481286571ef9ec777a77c898b04375f403db39..591895f93e7f2458871127e3c4bebf077eae4d66 100644 GIT binary patch literal 21165 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ⅅ} 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 - - - + + + diff --git a/class_x_b_o_x_o_n_e_s_b_t__inherit__graph.md5 b/class_x_b_o_x_o_n_e_s_b_t__inherit__graph.md5 index 57c5c466..8f8b21ab 100644 --- a/class_x_b_o_x_o_n_e_s_b_t__inherit__graph.md5 +++ b/class_x_b_o_x_o_n_e_s_b_t__inherit__graph.md5 @@ -1 +1 @@ -e1573688b319ec5ee68fc12f1dcd9eb5 \ No newline at end of file +836e0a5f00181bd888f2ff751c3dbc59 \ No newline at end of file diff --git a/class_x_b_o_x_o_n_e_s_b_t__inherit__graph.png b/class_x_b_o_x_o_n_e_s_b_t__inherit__graph.png index 4411883ee5c0dcf8ae86be4dce470df9ceea563f..8451e22a586fab7b0cc7c5d9025a09b519b7669b 100644 GIT binary patch literal 8254 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 - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -125,9 +100,11 @@ Protected Member Functions

Detailed Description

This class parses all the data sent by the Xbox One S controller

-

Definition at line 54 of file XBOXONESParser.h.

+

Definition at line 54 of file XBOXONESParser.h.

Constructor & Destructor Documentation

- + +

◆ XBOXONESParser()

+
@@ -149,12 +126,14 @@ Protected Member Functions

Constructor for the XBOXONESParser class.

-

Definition at line 57 of file XBOXONESParser.h.

+

Definition at line 57 of file XBOXONESParser.h.

Member Function Documentation

- + +

◆ getButtonPress()

+
@@ -177,11 +156,13 @@ Protected Member Functions
Returns
getButtonPress(ButtonEnum b) will return a true as long as a button is held down, while getButtonClick(ButtonEnum b) will return true once for each button press.
-

Definition at line 72 of file XBOXONESParser.cpp.

+

Definition at line 72 of file XBOXONESParser.cpp.

- + +

◆ getButtonClick()

+
@@ -204,11 +185,13 @@ Protected Member Functions
Returns
getButtonPress(ButtonEnum b) will return a true as long as a button is held down, while getButtonClick(ButtonEnum b) will return true once for each button press.
-

Definition at line 84 of file XBOXONESParser.cpp.

+

Definition at line 84 of file XBOXONESParser.cpp.

- + +

◆ getAnalogHat()

+
@@ -229,11 +212,13 @@ Protected Member Functions
Returns
Return the analog value as a 16-bit signed integer.
-

Definition at line 108 of file XBOXONESParser.cpp.

+

Definition at line 108 of file XBOXONESParser.cpp.

- + +

◆ Parse()

+
@@ -276,11 +261,13 @@ Protected Member Functions -

Definition at line 112 of file XBOXONESParser.cpp.

+

Definition at line 112 of file XBOXONESParser.cpp.

- + +

◆ Reset()

+
@@ -302,7 +289,7 @@ Protected Member Functions

Used to reset the different buffers to their default values

-

Definition at line 171 of file XBOXONESParser.cpp.

+

Definition at line 171 of file XBOXONESParser.cpp.

@@ -315,7 +302,7 @@ Protected Member Functions diff --git a/class_x_b_o_x_o_n_e_s_parser__inherit__graph.map b/class_x_b_o_x_o_n_e_s_parser__inherit__graph.map index c66c7937..6cd41af7 100644 --- a/class_x_b_o_x_o_n_e_s_parser__inherit__graph.map +++ b/class_x_b_o_x_o_n_e_s_parser__inherit__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_x_b_o_x_o_n_e_s_parser__inherit__graph.md5 b/class_x_b_o_x_o_n_e_s_parser__inherit__graph.md5 index fd76db55..c3061ea0 100644 --- a/class_x_b_o_x_o_n_e_s_parser__inherit__graph.md5 +++ b/class_x_b_o_x_o_n_e_s_parser__inherit__graph.md5 @@ -1 +1 @@ -a1e83baf59aaaef04fff9db54fd642ca \ No newline at end of file +820f401952cf618eb033d9b8dc7fdae8 \ No newline at end of file diff --git a/class_x_b_o_x_o_n_e_s_parser__inherit__graph.png b/class_x_b_o_x_o_n_e_s_parser__inherit__graph.png index ef9c138a8e0e6f162c74ac18e00d656d77a64833..7087d71ed8956988167be2e6d2d55af865c8f9a9 100644 GIT binary patch literal 3658 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 literal 3576 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 - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -108,10 +83,10 @@ Collaboration diagram for XBOXRECV:
Collaboration graph
- - - - + + + +
[legend]
@@ -193,9 +168,11 @@ Protected Attributes

This class implements support for a Xbox Wireless receiver.

Up to four controllers can connect to one receiver, if more is needed one can use a second receiver via the USBHub class.

-

Definition at line 55 of file XBOXRECV.h.

+

Definition at line 55 of file XBOXRECV.h.

Constructor & Destructor Documentation

- + +

◆ XBOXRECV()

+
@@ -215,12 +192,14 @@ Protected Attributes -

Definition at line 25 of file XBOXRECV.cpp.

+

Definition at line 25 of file XBOXRECV.cpp.

Member Function Documentation

- + +

◆ ConfigureDevice()

+
@@ -269,11 +248,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 41 of file XBOXRECV.cpp.

+

Definition at line 41 of file XBOXRECV.cpp.

- + +

◆ Init()

+
@@ -322,11 +303,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 138 of file XBOXRECV.cpp.

+

Definition at line 138 of file XBOXRECV.cpp.

- + +

◆ Release()

+
@@ -350,11 +333,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 283 of file XBOXRECV.cpp.

+

Definition at line 283 of file XBOXRECV.cpp.

- + +

◆ Poll()

+
@@ -378,11 +363,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 293 of file XBOXRECV.cpp.

+

Definition at line 293 of file XBOXRECV.cpp.

- + +

◆ GetAddress()

+
@@ -406,11 +393,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 95 of file XBOXRECV.h.

+

Definition at line 95 of file XBOXRECV.h.

- + +

◆ isReady()

+
@@ -432,11 +421,13 @@ Protected Attributes

Used to check if the controller has been initialized.

Returns
True if it's ready.
-

Definition at line 103 of file XBOXRECV.h.

+

Definition at line 103 of file XBOXRECV.h.

- + +

◆ VIDPIDOK()

+
@@ -478,11 +469,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 113 of file XBOXRECV.h.

+

Definition at line 113 of file XBOXRECV.h.

- + +

◆ getButtonPress()

+
@@ -516,11 +509,13 @@ Protected Attributes
Returns
getButtonClick(uint8_t controller, ButtonEnum b) will return a bool, while getButtonPress(uint8_t controller, ButtonEnum b) will return a byte if reading L2 or R2.
-

Definition at line 410 of file XBOXRECV.cpp.

+

Definition at line 410 of file XBOXRECV.cpp.

- + +

◆ getButtonClick()

+
@@ -554,11 +549,13 @@ Protected Attributes
Returns
getButtonClick(uint8_t controller, ButtonEnum b) will return a bool, while getButtonPress(uint8_t controller, ButtonEnum b) will return a byte if reading L2 or R2.
-

Definition at line 418 of file XBOXRECV.cpp.

+

Definition at line 418 of file XBOXRECV.cpp.

- + +

◆ getAnalogHat()

+
@@ -590,11 +587,13 @@ Protected Attributes
Returns
Returns a signed 16-bit integer.
-

Definition at line 438 of file XBOXRECV.cpp.

+

Definition at line 438 of file XBOXRECV.cpp.

- + +

◆ disconnect()

+
@@ -614,11 +613,13 @@ Protected Attributes -

Definition at line 498 of file XBOXRECV.cpp.

+

Definition at line 498 of file XBOXRECV.cpp.

- + +

◆ setAllOff()

+
@@ -646,11 +647,13 @@ Protected Attributes -

Definition at line 153 of file XBOXRECV.h.

+

Definition at line 153 of file XBOXRECV.h.

- + +

◆ setRumbleOff()

+
@@ -678,11 +681,13 @@ Protected Attributes -

Definition at line 162 of file XBOXRECV.h.

+

Definition at line 162 of file XBOXRECV.h.

- + +

◆ setRumbleOn()

+
@@ -720,11 +725,13 @@ Protected Attributes -

Definition at line 557 of file XBOXRECV.cpp.

+

Definition at line 557 of file XBOXRECV.cpp.

- + +

◆ setLedRaw()

+
@@ -755,11 +762,13 @@ Protected Attributes -

Definition at line 507 of file XBOXRECV.cpp.

+

Definition at line 507 of file XBOXRECV.cpp.

- + +

◆ setLedOff()

+
@@ -787,11 +796,13 @@ Protected Attributes -

Definition at line 185 of file XBOXRECV.h.

+

Definition at line 185 of file XBOXRECV.h.

- + +

◆ setLedOn()

+
@@ -822,11 +833,13 @@ Protected Attributes -

Definition at line 516 of file XBOXRECV.cpp.

+

Definition at line 516 of file XBOXRECV.cpp.

- + +

◆ setLedBlink()

+
@@ -857,11 +870,13 @@ Protected Attributes -

Definition at line 523 of file XBOXRECV.cpp.

+

Definition at line 523 of file XBOXRECV.cpp.

- + +

◆ setLedMode()

+
@@ -892,11 +907,13 @@ Protected Attributes -

Definition at line 527 of file XBOXRECV.cpp.

+

Definition at line 527 of file XBOXRECV.cpp.

- + +

◆ getBatteryLevel()

+
@@ -917,11 +934,13 @@ Protected Attributes
Returns
Returns the battery level as an integer in the range of 0-3.
-

Definition at line 467 of file XBOXRECV.cpp.

+

Definition at line 467 of file XBOXRECV.cpp.

- + +

◆ buttonChanged()

+
@@ -942,11 +961,13 @@ Protected Attributes
Returns
True if a button has changed.
-

Definition at line 442 of file XBOXRECV.cpp.

+

Definition at line 442 of file XBOXRECV.cpp.

- + +

◆ attachOnInit()

+
@@ -974,12 +995,14 @@ Protected Attributes -

Definition at line 223 of file XBOXRECV.h.

+

Definition at line 223 of file XBOXRECV.h.

Member Data Documentation

- + +

◆ XboxReceiverConnected

+
@@ -990,11 +1013,13 @@ Protected Attributes

True if a wireless receiver is connected.

-

Definition at line 225 of file XBOXRECV.h.

+

Definition at line 225 of file XBOXRECV.h.

- + +

◆ Xbox360Connected

+
@@ -1005,11 +1030,13 @@ Protected Attributes

Variable used to indicate if the XBOX 360 controller is successfully connected.

-

Definition at line 231 of file XBOXRECV.h.

+

Definition at line 231 of file XBOXRECV.h.

- + +

◆ pUsb

+
@@ -1028,11 +1055,13 @@ Protected Attributes

Pointer to USB class instance.

-

Definition at line 235 of file XBOXRECV.h.

+

Definition at line 235 of file XBOXRECV.h.

- + +

◆ bAddress

+
@@ -1051,11 +1080,13 @@ Protected Attributes

Device address.

-

Definition at line 237 of file XBOXRECV.h.

+

Definition at line 237 of file XBOXRECV.h.

- + +

◆ epInfo

+
@@ -1074,7 +1105,7 @@ Protected Attributes

Endpoint info structure.

-

Definition at line 239 of file XBOXRECV.h.

+

Definition at line 239 of file XBOXRECV.h.

@@ -1087,7 +1118,7 @@ Protected Attributes diff --git a/class_x_b_o_x_r_e_c_v__coll__graph.map b/class_x_b_o_x_r_e_c_v__coll__graph.map index 4f9b5ac7..3f752564 100644 --- a/class_x_b_o_x_r_e_c_v__coll__graph.map +++ b/class_x_b_o_x_r_e_c_v__coll__graph.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/class_x_b_o_x_r_e_c_v__coll__graph.md5 b/class_x_b_o_x_r_e_c_v__coll__graph.md5 index bb538112..d5c8e537 100644 --- a/class_x_b_o_x_r_e_c_v__coll__graph.md5 +++ b/class_x_b_o_x_r_e_c_v__coll__graph.md5 @@ -1 +1 @@ -2d7f0ed5a487b4ea4ec343e72841b2c4 \ No newline at end of file +0ca59a14f198ee4c34dfdb2ce5f86159 \ No newline at end of file diff --git a/class_x_b_o_x_r_e_c_v__coll__graph.png b/class_x_b_o_x_r_e_c_v__coll__graph.png index dcada608331450928358d7655a85cf0a98afa3ff..ab07561618fd540a8c063a43e161cac77e311cd9 100644 GIT binary patch literal 10661 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

*>yos7;s@zkmQaz__7b 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 Ugx4ht)KWn{ipz - + diff --git a/class_x_b_o_x_r_e_c_v__inherit__graph.md5 b/class_x_b_o_x_r_e_c_v__inherit__graph.md5 index b6ad7df6..1518a1e6 100644 --- a/class_x_b_o_x_r_e_c_v__inherit__graph.md5 +++ b/class_x_b_o_x_r_e_c_v__inherit__graph.md5 @@ -1 +1 @@ -f7208ed6bda886c3efbb05f7e1cbd52d \ No newline at end of file +74130f6418584d70a67a0ea80db1eaa1 \ No newline at end of file diff --git a/class_x_b_o_x_r_e_c_v__inherit__graph.png b/class_x_b_o_x_r_e_c_v__inherit__graph.png index 71d28ecdf664dede18a252d084cbb7ed691f6377..db413c054a7d61fc7e87bb9f039e38a9f3fcf944 100644 GIT binary patch literal 3692 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 - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@

- + - - + + + + - + - - + + + +
Inheritance graph
- +
[legend]
@@ -108,10 +83,10 @@ Collaboration diagram for XBOXUSB:
Collaboration graph
- - - - + + + +
[legend]
@@ -184,9 +159,11 @@ Protected Attributes

Detailed Description

This class implements support for a Xbox wired controller via USB.

-

Definition at line 53 of file XBOXUSB.h.

+

Definition at line 53 of file XBOXUSB.h.

Constructor & Destructor Documentation

- + +

◆ XBOXUSB()

+
@@ -206,12 +183,14 @@ Protected Attributes -

Definition at line 23 of file XBOXUSB.cpp.

+

Definition at line 23 of file XBOXUSB.cpp.

Member Function Documentation

- + +

◆ Init()

+
@@ -260,11 +239,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 39 of file XBOXUSB.cpp.

+

Definition at line 39 of file XBOXUSB.cpp.

- + +

◆ Release()

+
@@ -288,11 +269,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 224 of file XBOXUSB.cpp.

+

Definition at line 224 of file XBOXUSB.cpp.

- + +

◆ Poll()

+
@@ -316,11 +299,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 232 of file XBOXUSB.cpp.

+

Definition at line 232 of file XBOXUSB.cpp.

- + +

◆ GetAddress()

+
@@ -344,11 +329,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 85 of file XBOXUSB.h.

+

Definition at line 85 of file XBOXUSB.h.

- + +

◆ isReady()

+
@@ -370,11 +357,13 @@ Protected Attributes

Used to check if the controller has been initialized.

Returns
True if it's ready.
-

Definition at line 93 of file XBOXUSB.h.

+

Definition at line 93 of file XBOXUSB.h.

- + +

◆ VIDPIDOK()

+
@@ -416,11 +405,13 @@ Protected Attributes

Reimplemented from USBDeviceConfig.

-

Definition at line 103 of file XBOXUSB.h.

+

Definition at line 103 of file XBOXUSB.h.

- + +

◆ getButtonPress()

+
@@ -443,11 +434,13 @@ Protected Attributes
Returns
getButtonClick(ButtonEnum b) will return a bool, while getButtonPress(ButtonEnum b) will return a byte if reading L2 or R2.
-

Definition at line 283 of file XBOXUSB.cpp.

+

Definition at line 283 of file XBOXUSB.cpp.

- + +

◆ getButtonClick()

+
@@ -470,11 +463,13 @@ Protected Attributes
Returns
getButtonClick(ButtonEnum b) will return a bool, while getButtonPress(ButtonEnum b) will return a byte if reading L2 or R2.
-

Definition at line 291 of file XBOXUSB.cpp.

+

Definition at line 291 of file XBOXUSB.cpp.

- + +

◆ getAnalogHat()

+
@@ -495,11 +490,13 @@ Protected Attributes
Returns
Returns a signed 16-bit integer.
-

Definition at line 311 of file XBOXUSB.cpp.

+

Definition at line 311 of file XBOXUSB.cpp.

- + +

◆ setAllOff()

+
@@ -521,11 +518,13 @@ Protected Attributes

Turn rumble off and all the LEDs on the controller.

-

Definition at line 132 of file XBOXUSB.h.

+

Definition at line 132 of file XBOXUSB.h.

- + +

◆ setRumbleOff()

+
@@ -547,11 +546,13 @@ Protected Attributes

Turn rumble off the controller.

-

Definition at line 138 of file XBOXUSB.h.

+

Definition at line 138 of file XBOXUSB.h.

- + +

◆ setRumbleOn()

+
@@ -582,11 +583,13 @@ Protected Attributes -

Definition at line 344 of file XBOXUSB.cpp.

+

Definition at line 344 of file XBOXUSB.cpp.

- + +

◆ setLedRaw()

+
@@ -606,11 +609,13 @@ Protected Attributes -

Definition at line 321 of file XBOXUSB.cpp.

+

Definition at line 321 of file XBOXUSB.cpp.

- + +

◆ setLedOff()

+
@@ -632,11 +637,13 @@ Protected Attributes

Turn all LEDs off the controller.

-

Definition at line 156 of file XBOXUSB.h.

+

Definition at line 156 of file XBOXUSB.h.

- + +

◆ setLedOn()

+
@@ -656,11 +663,13 @@ Protected Attributes -

Definition at line 329 of file XBOXUSB.cpp.

+

Definition at line 329 of file XBOXUSB.cpp.

- + +

◆ setLedBlink()

+
@@ -680,11 +689,13 @@ Protected Attributes -

Definition at line 336 of file XBOXUSB.cpp.

+

Definition at line 336 of file XBOXUSB.cpp.

- + +

◆ setLedMode()

+
@@ -704,11 +715,13 @@ Protected Attributes -

Definition at line 340 of file XBOXUSB.cpp.

+

Definition at line 340 of file XBOXUSB.cpp.

- + +

◆ attachOnInit()

+
@@ -736,12 +749,14 @@ Protected Attributes -

Definition at line 179 of file XBOXUSB.h.

+

Definition at line 179 of file XBOXUSB.h.

Member Data Documentation

- + +

◆ Xbox360Connected

+
@@ -752,11 +767,13 @@ Protected Attributes

True if a Xbox 360 controller is connected.

-

Definition at line 181 of file XBOXUSB.h.

+

Definition at line 181 of file XBOXUSB.h.

- + +

◆ pUsb

+
@@ -775,11 +792,13 @@ Protected Attributes

Pointer to USB class instance.

-

Definition at line 189 of file XBOXUSB.h.

+

Definition at line 189 of file XBOXUSB.h.

- + +

◆ bAddress

+
@@ -798,11 +817,13 @@ Protected Attributes

Device address.

-

Definition at line 191 of file XBOXUSB.h.

+

Definition at line 191 of file XBOXUSB.h.

- + +

◆ epInfo

+
@@ -821,7 +842,7 @@ Protected Attributes

Endpoint info structure.

-

Definition at line 193 of file XBOXUSB.h.

+

Definition at line 193 of file XBOXUSB.h.

@@ -834,7 +855,7 @@ Protected Attributes diff --git a/class_x_b_o_x_u_s_b__coll__graph.map b/class_x_b_o_x_u_s_b__coll__graph.map index 5ea7e477..8a15c23c 100644 --- a/class_x_b_o_x_u_s_b__coll__graph.map +++ b/class_x_b_o_x_u_s_b__coll__graph.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/class_x_b_o_x_u_s_b__coll__graph.md5 b/class_x_b_o_x_u_s_b__coll__graph.md5 index d2631857..4024397e 100644 --- a/class_x_b_o_x_u_s_b__coll__graph.md5 +++ b/class_x_b_o_x_u_s_b__coll__graph.md5 @@ -1 +1 @@ -654de9f0f1b78cafbc20482878c5abaf \ No newline at end of file +3faed061859104f3cc71c3486dd11752 \ No newline at end of file diff --git a/class_x_b_o_x_u_s_b__coll__graph.png b/class_x_b_o_x_u_s_b__coll__graph.png index deacbb477d9af5dd6164ebe9a8e5c882fd3ec5f6..c2dbd5dea251ea83bb6eb878686cbb743467ffc6 100644 GIT binary patch literal 10406 zcmd6NbyU?)*Y6<|knXNSNq2~pbV;{#bB>fW2uQbtAfbRD4HA-qw17x=ONY{Z=sP^W z8_#{;XRZ71T`Xd8zA>|BX75kzC=E3Q>_-%jAP@+)lA^2@1cJl?{_aD62!4*MlwW~g z4=q&`WFdF=U!R%_-$5XB5GC1XI^G|57krF$PH!a-rm#@ZF~0u9p@*konyU7}Hw0ak z`hIB;;n#4a%4$ASx-mV?(C^z$`aM4t0LyJi4F6_p^f-YM%8C;CCOG)bufhJS^N6XD zL~7gR*!|5_R~p=n{wLYT5}gsGn;$Rw$?@^=$*fc%KW4e!@OD!~qr~tslTjJO^0qIv zS;k_7%g#OEu^<@!xVt`JWnUSlF3^FzU)Ofxq(Hz6e@f0xf)Pe+G{kDtF5 ze9{Fz87X-FA$++r0^Wp`$w&}YV<>u@~{zWRcS$I$o5_nzmhJu1Z=kPGzRJn<^;~_S9 zI4m;_=4#Gc+vKrLQf~Y$SD>P@60a597uUD{yP0xuaB#ZWuYUBJ%cOCsw4y~?Q4#$S zCMFUDmsa9Op3*xW=ig%PJJa|O4MW4IKVyZR?d?d8vo-CXo`oc2WtETX85vRZ_xC4v z9D(_uKYA40+$=s@=NQx0CbhP?$^J!OQxgde--ZeHbaz8pSPEx<=)|DJ6lYdcaG&ih zlnQW*ic&QDotM|Ww6ugKy?a;Xb8Kte=#Ih4%Bnmxl=+l&a&j^sOb{6NevN zUG&`CxT`(!Xb>^q6Z8+l&fQDxA+C3~H!zPEhKB9k-39-1Tnm*Jot1V&H2FT7nwkg4 z$E9^Udkak?OoUXY;V&tAF z?&Oyj+5rI)NOZ+IB?iAICQ^i6PD{zkx@`{TzomXUIlZTE<}U}aAIX)gb$Y@4PSe(w zIV?PU^lHCVT~;;%hZ^ea?99f=sXJSz%FIx#qpYi|8-1F}`9eMf4Ob7Q&6YA66DS1P z`jx_df;e1-XohT-EB|(GJ~MXN}jZ|w58cv_|N|S zA8WnuTtQ@NU=zv?hE)bw!otE3DOXqC_Z)`7KYuDxiMV`vcD1#;YqI)!<;tprD4T#U zjtm^W6;VBt!jP1dl**c#P({Yz_;_51&Qs3$Z*DAVU^%o4)#%yS9*vBQ2s*iS$C5Yr zopXib(!K?IG?wZK0oYQZ@7@tc$HX9sVH8G3Kk5<%i@!CTgR-~S8h^Ywq>uS)Rxw`- zPqQ|vI86w5KkeWXMq#K{ak4cZ`OM7B$V|0evB&nLJ2+3Up{F7u!_ma-$!f*6{b|p# zva+Jj_U6CIkdTnnxUR}Wp+;Y=F=l3GwE_ZKEYp{k%o|^=N3XaV8&jocWF*N#=^+yZ zASmFvZ?BkYofospO`DCjZ^u2A5!VimZUX;W1ALM(^eThc9GM8qYsBH!?`FT+m?^uV zEIB79F8Mf$Fnv=WIo=1Ts7o6I9~xd?@IlP)FB>l=l(^dAhp4~Jefjbw9sxnFeQ9nk zGB`}q($dIWW-YPKtv4j#TZoOFy_EU}Oqs)^kqBh8j*m~=?h^qS8QD^I9A$Jd{e5KS z=jUOB+Ps`-%!FhDhv+epTm9+$sBb3A47GPJFbJ84-yosDUUn`lWI~}(`>V6v@e*D3 zMxWz?(c{Cz!@R;m1@J!xXl_S`^wIe_3neAx*P0r}z`(#pzjLR|+MC;}eL))kW(14Y z9KN2+q+?`vOA9w8K7O`+bvR*^Y-DWg+FV}|Mr(`5s4~8lhUgqB8?m&qsx^@g*_~$%%g)Bc!al7rd8Ca*Bl3$vPO<)mI10<$>i9u) zwA!bdnzJU+8UZnv8c!+%RlD68!ua7~6Yukdv+1f;Ovlttoi`O0yqUFufyj`h{&dRM zoGJ=nAeqV8cVw-1w>tp`5x8c>Ru0TW;C2={1vBJ>HQx`$YLU^=Q%=uRnM5kn)MlH6 zpScdPL%}jU-22Tr{z|v(8~FcV?;uxO3VV7&-+HuBJ)ZH*fmsb~59?{LVpqSw? z!sS1#^pKy{uXYyt3d5v(g1X!Xv&0V*dXp8l@sN6Zy%Lf->N!dHa5xIIwX|N*r)*3j z;sh@*eeaschC)Fx`;+W{MewP@?6}8;jooIt`KekbF|Y0lc!AAgi=?I@Yw795&JMD1 zb4GD{bQ&9|BbkSr+2lV5xr*G#{r$zM#Jn|Sz#XgL4v>vwAhJ9>3FD%@U_^6X_^+M> zhU!Hk&iGXAL`2e7`?wc%GtO_$S$NH*SQ?sMun!Ck1!A$Y6Fz_6qw{8evdulC`9`4Z z1!*k3Orw1hQ33L6<)37PSU4R2uf_eRQvQE)DX3Rj+4z){G3$M)@KTz|VAX61YH{Ba z4VAf!zjmZtB5j?kNE{r>6OEZP;=bmWCx2k@!0Ad07`!RJr1(zvX~(brepwxzcXWLTovcYW0_~~hbS|{VGHsqS}*S2jn{R6R4`$L2cMCJ zCd$`+#=KG0R*)Pkc-{$8wBT1x$I>r%hl2kpoEl2zQL@myf`ZAXtql!iASVQuma@mj z#V!B&6XkQfkyBQt>X5m~qN1XL`tV`yr%#_IZH$eL@u;X`zkmO3yRQO+mHgro+1%KG zK7Nc|US7__%iB)r{5{D3>Z~|#cX(JM?ZXEY4aWh_^n$DOgyx38A$4q%)`F=<=Am;r zkFhO$JpepbR#&T>7bWIf{3$_=mUnj-=;-WBc^?xOC#R-{v-i6>#;WHny|_5Fc7bZK zYx>U4%a;p{!~m&;f{YKUeunPn^mKBNZ89bvLWoF6R-6N`D6z1yt3X1z2LW_+kf5NT z$fzg>y}65v3xj4~L6BZcMl(FZ*ubd77g|YKbbYJ1OQ@Ua`1q1wX(lWX#uVl4OlK!2 zHBv5P4Wo_v#Q+97yG_wKQNJ^e^ba4Vnwmk($G-a&$K~YFZ(E0tKwLmOC_HQX?QB0AQo3ty7B6Rju)}rtG>E73D1kbGNV)^uGRn ztnH}^1q+KDOVbL|W*2}hM5o5a#zMlvw7Pw(P&w*B6$Q zu;t&8-CYa?76Aa@zB??3@5g6%T~jqV{)t5(0P{B! z_U8Ebz3ZNFGchrZH+sOMtl24wb<4}ocIA7t? zh|xiG3=9l5xAhDSl?b9jlai8%j=_ggG&D5PH`k|AX2g9G3;T`8r2s$Hz^AzKcdx-_ z;?_0CFD}Ry)KS4Mn`O?m^JnJe)vQtjan@S& zHDe^YgoFghf^GRKsXTUrA7P|2`C6=7N@=-yd8qezW3k15`^z)7l#YRc=Z7Nv{DgIN zb-fzo^*}k7Y-!wHftyHC^l1f}|efFIL z05Kvnle*lj)%43iXecUxVALQkKL-Znbahj-2KM&$l(WgJ>+8`Vij1`Z(aK6N7#rBF zMFRU^%Fe@$(!&Io=^A3KARP@I9~@|0gWPi^Dp@g|&@!DMu|UO!!C_}-2ar&{Pj7GU z@YGZUI2jNru2cq)OYTXQ(csh+DL|gJb&l57p$Q3i^Nk*u=YZK%zpaH&SspC4NB5ka zohi500GRVpGLQzs^J+~|R!)u{5Fe8!Pu)ian^S?ejXf#s`Um@gcTLZBamo2m``&Yw zPHq4k4`>&Lm6g@>^t2Q-k&ct|`Qd9Y1u7~kqWG?r?we?UoFnq`82>fAIN0ZW80(E{ zYF=L6Obbp<+(mtk7%vcrVY_Vqf*NBN z7akuUA5B$Nto*#ZVGxL|0pZ0wa(>&#)Q`HmyR|?LUSC_&0LKIniTg9qyM6@gv$nGv zOXs)S`W!C-2p$WdCR#P8fp_PD0s#FhtEhYi!}~i^&GI}$ASyBveEf5CGzn~G2Y~*f zJ+dT!WP;@6+9E|9)F3zy#D-P z%_+Dtl&Kxp?$|uvzlhp0%=S57@KRz+(R%$_3?Qsg$-4{nu1mqwW>VTIckI&g`$MX$ zWDc0o$Y{PwFF07Sv9Vxt#cd2`s(`UhyuaF%yi>{)_0ZxFwi~2kVK+xKLfw>Jyyqxva(od8JXV6$@l#O1FRw<2CgHCk@f(cTU%O6cXf3| z`wZP7|LW^w6%+di78#JDSY%}6WUjoasQ{4c;>dV|si>)YfBXn-^w=(Ne;ylI^yw22 zGJ=a7=jyDToz*QYETX4Avj)kXFxJf0JF7D@Gp}uLtDxc1j-RrZ6)-(~|4$s+ zN*tlSlXif`N^@~>S=-pi(bLoG=;;+0v=#^H>SsIc-Ig#`8uYm$4lM3z%IJ4M4Yk0s zQBJ6-V3oZuVS1?NFTnf0;t6cd?3N?v?Kj_3He?hO*FU37$?xAoxwvrLHu|4wXe89B zSe4CCoJ|rE#)7SKp9N_BPw?+agy-(8#dwh>tl6KNkOtHc)ij=Gb2b7LXz$;SjE!}6 zgkcghB$Ag#rKAu~mYbCB@=?U8W03z#8TmK7m#O!<;%sDB)f?8l)dE=Q^T`~3Yrc+j zey`;X+h{<9*Yg{{sAv~8WfRj@h8_By)4`bZ=Y)Vhu(Y*RRCkuGb>T%zpb^kcbxBPt zJ#SPnTQ`w6*#>CIlr^Z?jyba$0thesZG^Ri54i z5A=8~onOnq=5Qd0i;Ln~e~1AfaC+s&#YuG>*gJ<|eU@aAF_q?FE-ku^v-%VK6J+AP z3~E{5am2-Wt@)np><;j_+v{VI9|^nf6y@Rue-&lg@9X>)xEQ`b`Q`A|SKTpn%rcLL zv(4Ge?o)}*+riI{2ew5nmkem{GuAdpa_ok>9<%y*7RmuwuA}$M96t9j1kGA2%a_U|9f?D0s6=tv4rI~u;U)TxY?L|c*vm?dF2^oOwUqmz9fL^)eft$AU< z;9_1pf-89)G*kVVE>%A;3LA^DsHiA7Gn4!w_TN~G&fij-gK9=aTEZ#w6+g<)37(-w zp2~W=WuS<@t(o*RG;)(HMrEGK}O2uMk1+*++4b zP^JRDN61(?e?pi(Si8eyPb72k?vvH9cmM{SqR7}0P0X-uqQ>lZg!5cpUSfW}Y}{m0 zg?{}2W%%741|8nfE!(pZM`C~cU@4+ay`_T&N|9DEOh$&`V`tQ8S?}7y^hp?;4TnR} z&7)S@V7kqBfATR&3=e#g?)&i|oT5b4OT3?>2gQLEeMqgVivWN0?RIx+o{;Qiuk;S} z`&d6ErcV^|?g_C=(=sAc=J7sCn*u^E#x%$%ZRaqkcjq|EA*nO9M8?O#K< zbnhQ$|NU8tF8ukpRwr>oC#CnWr`}M6mmgb~iSK7AtVP!GuQ@s)nhdu7)N3jO3cAF| z!^OLYxdrvYCnrC6goN5U!eo3Bilg(WdMgfbPc8JG(BvhZ9JBIfCt}pDuN!Z7+&nr@w zG(F|whN4d86va!L3d0K2!tJMeuuy{yjISgmeTdut>=#g!sd|W13Owd`N%zumPD*|M zPajvuX#TB;n=MJByK6@eZAHiVV)i&JPCE6n4<+&xeruJYPvAr|i01B27oQbG=KS32 z$0tD=9)YP4gNlu*XX?=4FY0h?{Xz;b*YT1RiTB*J7~ek95k%op%@cM;c!fkMvA>)Z zAgQ*+?nq*i1jO==R#_P)p=@5u@PzK>0%YUjDvo6Zl+ z-hAQ9Gj32`^Sf{i#_*2oF;d$JFmnuGIw9A{@14ugXo6+=0otX_ZR_T0~kthRHu zTxzpXR9YUQ6_Ov!S9t8Np}Wav8HKJzEy4M^M4*-6Nh55_G>4EY!rUlz46C=f_5Mr!>UlxYJgeBaNck64HrO%Jo)%UKKx%^l8afza$#?HArM2)bw)1c&3<*7OJxFYnm$x=jp_47r6I zFQ3mbRguVZF?_scqwdzb^oBQH?gx}`QW+py*xJTYKW&lnMo9H%2jabB*_U!)#q~E= zkCc70y7+wg>Pw7y1cyNA-d;M6ujq-z)tRe^2OBx<>jP@1giC57+hG|xkmCQ*13W4F#*bqo*LLbbP%QR(4RrmH!)ja>T`1oKgWdAocy z!SR*uSojtL8QKQl5$NGKyV1@qn(h;dMF!-Oj8I{fZDraYfe^e7mJ zZu}XJaGdL2MjURF@mUk|@wwkkwv_<+KOrMycIkp!`T29*z6GmwzK-5V_XMo1>dH*z z*_T@qNK*FpkNXE|ukcxLIH=dRuSC^8qKC*rh$kKgRgFrjJ-&ud)j@VXg&s?FYX5qNz6sd#o$aK^2^KCRi0c!rl9-F znLdM+z6%DcbKD#pp~hSQLwmOFq@t+wkW(mEzD$>Fxv&K?E`s>>7M_q=IOjEAHZ-PP z$Dr``lS~9oWnEo25Qa5Pe>d!Nig_Q<0X&Dwz`)S(?VANac*;Zjv$dE2=-*!l3=0jT z*&6P)pUp*?x-J#pJ;>+Qt=yf{tFhYtWzislMvBKp<&egxo; zz{IF@S(b*hy>M=R0I965*5-JjqZ3+X)zk6o*CRDGHFR8D=M(s}{SQ+L{qp&Oy@fkD zlcvGK7*hTkleh9av?;2Fn=#27O8HvIQvWyY8@|3cj*3KwDCLjB9K|K?4p)1u&CR6% zv;X|@Bh~Cz8_Yl3+uE+KRk=3+bZaRqKLSWFv9OTE|8zn>ZV~CpNKl)#sHm>;E5qFw zPSfvc*VosN`T5@w5EAzG^h9)Ybby&a>=6gcfa58C5ORb^FUY+HsHm92^{y z)6x_HPR)IQNg@zHOBsZ+&Gat&E=@kxKxJ^yqQG97Mo_6v^@u zH*$4#^X#B1A67Ww6c zWM`F?5*gpx)A^R0BW!;~B_+-4*T);ryJ$RRMyu==&(Hye*%}bu%HKmo*A4|{k)dh()Fgw+{y|i zN;bHrMxg6EF#AMALVjXJy3z zYJr@&xw)HHz7tG***aK5PfsZ)r|IYK01E$`Q+397y|pGuzs5bV;egSut*l7v>FE&> z5J=nD*vQK2=<3R;q;fHFb93|Y@j(HZ&v@#^m6DwNxV9Qp%U7FJ|`!~8V*<4*w`SVqEd~gl`Qu%)9e&1%b=NZ zA8Gz?{0O$70EOP#<7iJ;F_5@z>~uce_qII!E0vb+5b!;|Wa5O02!zwc%d6sCG^IfN zS9u$|&?TOVj<9k|{vKTWkdzPM@&+xHdvVfJi92q^F9q@Em=fXU zIL6iA$^kTd0)Q#NilLO3>j80YV!C$w^$mNiIqm*IaOZ~tctuO;}AG z)*({tS1iLA6bfV!fqL%~`h^432wi3ghhRR1t zDjK(y>knAr6gV7{FHs)4{}_@~SCEq<2BCNoaJ3r_qC}3aXyAu-A^gD;Zmma+Mxu?O zug`vcGN$wWrjA8EZuX5$-`kdX8CrD2%?DNEnfEaf>9Cfe3zbmdboaAYkXbG?(s7vX zMCg{PneR*wcq0yOK11~(o&xc;O~ZTS`Hb?l?$z#&>kM)5P>|E<*ED@eHCT#ww_ z%RNMmuBax$FNqRJ-5;_~pkL#c+NqoZ_Lh7vn^E%GPb9!!tlzhy{e7kcT&*M`2 zlxmUhOW=b^d$G|>haaHyqhl{TASGpgIWI!;_N`zbeNo9eQ)=6fcD(QckHGC%w)vZ5 zd@LgsL`Xjj>&3fCX>A9r^kZbg!f=3$AN!u2NJ+K% za=h@=vD*_I6bOm0OzXzS7jl+}3B&w6QmF1%W<(6p)|QB~JOz%Dk=yNSHfGi7w;+RA zj1^QJ9DN=0R4NMtZeM|*bMt!mX9c^qj$Fa})db#{(j3#ow(q#V@jT)vmL2W@rmQzJ zTi1Sj^A2S2xipc(i1$xVg5ESt%pm-gm}Q|8{?2r8DhVcQ&hGXQQlOhhy``qE3h>8! z`O>JnO~q&Z-N?2>59aVOJBzpfyxtsBa}5GLrk0G>e=P*O`cq{kYD>#q`!_e?4-2+# z`w_ag8sXWk$k142cyfYG4=6z0%}vd>uR?JP(0H_T%n$O^BCWZe{bzBd~+)_YUUo~ zW@qmN)dU|8?@bU2n&rvX$bAO|02RrT4vM>F7YGyS0zFW7(b3V{N_0zyYvKAJ3s3-+ z&7jKi0dVb6NJ&Y%zAgsdi38_BO7>@8UnjV(()SeBpCwKS0kULt6d_B;{5%!#4enLp z(Xp{An?4doMn?0CqxHC1Q<*ZO+DA{GJTa&=M=JaBB{4BEXrfeq6%@TRJ{#o_xLrxR zf`RI;d^`;{01PjuE0G|e9ps^bk&)$(NPOkK^z`(0@OS_q4*>55GQ8{UwNKZvh(*aQi-kvgqROE(?sCN~Z-;Q2U|G%mtcr@JLW7mt(kF-b6&8-CsMH`ILc?F>iKh z<`M>83)+0tfV>NZBJ=X{f{aFLX=#avkB=nY-01v*gCxen(lXck^)Yyqo zhyMEJ#uey>wvH9dz>&E3%4j45gtS_~i$Ft<*XMs8dvBnj+}_?!gHi=l!r^k0CRiVE zSb(30m7kvv&{PNL5g2I=4E$H4#nJKc^4^}Q)fHHX2LCJ1&vjFH;DKEOAB2}THzOh= z(Rb$RaRFwCE6FUzG3&IXc$b)nBrYzVZ|?K^UPL|tLNyrxYY>h7FUeh&RVy8SGWAn< z0Q`vxInARN>qH|E-c;hgL;(DD0<;1SefGnNL7fPY3gkbExFV-=nRFbj_qlHLr&CBu zH3Jy%QNo`BT-6Ph>3;Ko9wZd+S1?-#2aIAJBdaT|Vxp|9p_cJn`nghW)V{txV%ld% z2M1D8QV{UQNYLX^_M*PLy_O#+9+t4w?Cf~mQay{6A5mNL-}r+=LaJWQd=*_h6BZEo z(L);;3jjGV4v`_R{rwMt2cd(RadhY^c&F0CVRA|9F>@ee|f$i51>9BkYGWFiU{y3L0blj znc1Q|2zChQSf~Xq2pItZK_%$7>T2=>9X){G^Z@=eeBbNzcLEb~u%2qhHc1%M<>Knv z4j2saHZbX|I>WK20bv1JY|K-yz59-=mX;Pk-V8q1kpg%Lcv+cA6Un!4-#{ylEU}AC!SMWirr-YOCSWtObLyMzstO_kK)YPlZ`|$m#^zYt{%lEF zfD>O!mWhJ$@o&9w|EBoNDn zyK|#?;DBlMLP;KScmG$|QIQ6L&_Pt>WpsUV50-pQbl+S{ACGq9#Zl#iFwlij>{=hb z&fT=L7l#>K8pSlGwd&*=J|Cmi}eQyh>7x-;ay$930F-v zzj{x1Cr}_!gtX8XJRRtqoSbcKZL3S(D+77r-f!QzA1zC^eg8gVcQ=&6=(CxjZ{g^O zPew*IlEsI1d3hqvStViXo8V`pbS zK0WRK^CQin`QOPPEh8OWA@mB&omEd5#?bJvoUAM=7*4r*UX@l<^j>>MQC0g@+%5&* zG&Y2dgQH3YalSt%H!6MC4!r{JqV3`FOmdl&kVZ_t!~dLxp*RS61q1)B(aO)wRXdpf zQsOXE2LreN6nK4>o|>xda839`qVVxkBfFXxs;Ue;JUpqxn}YMfCa$i0U+gE!r>!U6 zm|Dv#DC|0#mq#mEjMxPP1h||Zn%;nyg@m-ViTv5#wq9&=72FF#B4)7h@X#S6`I5$x zjaBOh2MJTv`qnoWC*;yW61{zWu(B6qwFe*4(=Cu!2yzLZ&(JH32ai|NG^9c^GW0qc z2BFYmrKBffG^_#)MFMOjtk0~_73G_K|JhIqzI{YQgij?D-|}v*SW8_#{lf>v#Kc6V z%;A`5W$w(hk`l(Uii(+8=K`rfyY3Ja&z1)vxw*MJR|xnXVla`WL^FFNY?GgsY z#&QfP-ShL5zP`S*ZLTGX9gYhvq0xn!Y@gk?)oTxkhz?h}l0rft2%I2DmUOVxbd90T zQ49jiQ9Pv}uDJK1{Aj);l}Angb~m0z_n#l~cnQ>@L`1bFUsFMdYmL5CDf&*?aWXQ> zSzn)?dL(Ggf$94(Fc2|5KF%g6m|&kvU>o14?4qs!H@WmQyEbhWf(va_=vk&`Recin#beNt=K6uG#x1lDS$)*uvT zM8pU8$H#OK4U4n=Iiq1zRMg4MzDWGOEI#YWH&Rkk_o4M$NMTg68ZT9`o2nws55Dzf zdxX0`+aR|svNc+eG%})wkbJ9G57My;uG`i6Vj<8hfHrIGWW&Rt*q6+BN$@aDJ}IR>9M~+{6qA^10=)Mys^{SC zT04*ikmoWzQlX6Y|L(s%TJXC|nSHm_Rp#Kc;R#OPhL z0yOJiy*=S%D9R9JmmSTpu{B=FHFW65h@G7WbPS(#--DxURNv`)5^@3Gxw(io5B3Kf zq@l_YFESgGv$M_bB5QtZphMM`I|GAz7TfpUR-$WHQV=}(V_(X?3a*=Zocgk5+yy)} zep80)f0j$e%TUgf+nuFyeSKt7TE47+$cc!?uB`NSIhc1`L$&tn!HLgqrVYM%z@P1# zfZ)#-Jv&Mwqhl!706+S{z_7pMkAfS~sF*EVB(FOu8Z=%x1S%E_r_?Qr(+YRhmz&>t zR{evvlza^3&iB8VZ{;zApElrXFb*VvA*iU9;YuSmF>wwja+`$r>8q-4VCywv+IYU%&W#|3aGWtsPIv=hDE8d`vKGYC(etIp=e@FsYe?CG|hhH2+v1v#kWlH>s}DVA zgc7PIk?LjuJ+TQ1g=cSb;MYwpx2&~};Q%wqpV6^!6UX$gI=+AZ-lF$C4yN;9GDy$x z7!p>>vb?R*mfOMq9ZyHlZ*H%TT-@CSe)@7i_uK$NdF+l4*afDL7(DGy#{VO_bVjotvd6-MLpE`L4dYzh6F{oUfSAQYcnS z$%2GcT|OvCD(Lpo_7N#5Ju@>#8mk8M@8+=J9uZMAc1A`g@Hl&@N>bB{-kjhj2NtgKAttd>-gg@Yruxu#CX6j7aNXl$$l7)|)Op02L^ z^z<~MGt>dm`+?={G*T~rDVWG^51{|Dgm14YHAiX1cH%> zii&E<$b>3V;YNf>UF|Tsd3&=O8yg#S_<43X>Sjy$^4A(P6#us7=Hx6XETnVu@?x>I zwZ+B7EpBY&PuN&$b7l10pG~Q$sj*w_4)wVF`^Gc7MIRA(eSMwQ(IF`+F0Nx>U=SYM zrFQ_ZUC>8d?qFp$P+dR4_m14}4l#xG+|ttW&!0c?XJ=>6Y=2X8@bJuh3zWNJ&_V`& zryne=4JP+Q7qT0p8_5+Vsn95hG~upq?Nlw3b#mf-fHWs!ibF|liQNFqHE07*i4Z%ma4?TU6BB8VxeN+V$cT*;NxZzgJT`x3 z_$^d_`b3wlR&EC7sT@$N%1n^=mDYoa^783`a2*~VmTIy^@4(oG`})G2mfH(`q(zGCDJM2MOSP7!5+p#I%M9{tSV6udG=+zFTROwY7Zx#7)UMVS$2sj*Cm zaitG$zP7O`_oT{DRnV_9DXP?|7>Cz))e+fwdLJ#94aAX64D)oEIOK5%J1>`>9V}F5 z*4EZK+>BQZ{)aMj_zM#e0qPjXqLE+o1)r0%+9*vk&`|`eAtR%Y(~b@cT_)VD;IdfK z`H8xoaW+Ud=#e6KW{y0nfLFnUp3X}PL6&K;*;U}A!=BSX)o4+r(3_d@H2Q4iwCV%``^`)j$$jo<>6s+zkidMjn#wRAG zhAS&8cgBk3ItHsB0B-;K_3KZW)vb&+FUv-=WA~5@l9HzN$WhHes<8>Zq3-VI7nhf7 zGv>hxpbW&u#SxK_VM$9%-?Lj&=dnVW*(O`U!^N*?5wfB2@pu8pJyj1qJ2!-#LuQPmy~$ zTn9cMWG^-0uE-X!P0h=r0i_hiS`bj|ny;yEXQiWTeSV)g?4|daQ&pV|GWpTNhngE4 zZ7p|jZ8P%~ry)M_eQI)&B!FjH73z7E?WQ^}EMDsAs97M0`mQ@#ZhL5%-(t$j$|mRJ z#N`M(Gdz3t$Ql|?B*p|iEuO}rIRjxz&7n9AYqQCU~BwWI?)z|F!w%p+^?P1IX7vp(&gm?zPGv>?Po^b5=am6&=LnTj$z%4qv6cw=5eU!S#*^Q{}kQ_rCV zUVDXQXB$BG*VBV)9yY}BLm)iC(>VEZ2YYkHzC$-iDfJ)^v=UEHvQ9A=jNBNh(> zu?=(^i>|v{VHWkpQiP36_6Rj@1hM11f#uFvu;rhje4pL23QNnLb29h>Y*qL5-3bJ} z``~h#{PD8kPBMC#HZix;uYrM~g%ET)QVW)}Lb#8Tgz$>q&anq{!w$`VErQzzUK^UM z>TvssG*)R8pOc%rFBFZ8&+{$QH!sup`c5&e5^jg~zgEnRqY@#iDs;^B@KdyOGJRZ{ z4;D|B>$-cqbzDwzOdd+Ann4PynA!;5J$>hb-;Xnb{eg=DUujUtQ=Ozb)zID^~qC;DK02DY>egDFp|{dJ8yR7GEvUtES0f3GFINRtXH*M4XzuH zCWQ?%Re!-sqNu{cA}Luv+pJ%WVo(lqJglST_*B+nU&W=rmNeSrYGo;w4kj;&@HunH zM3>R?X;~9?853Bn!QE{>s5E5F>dYwJBWkFeoD?lid6?NFi$k#Nx^aKpMHMy}wd1D{ zaU4P|w^rYHj|UUOpPl~-G93h-4vfy1`SfmbhCt4o>Dt+ z*xiux<;+rFu??veqskD=#B_p_RmD#79dqBOT08tudCo0tOvJFWEv1G7(lX zLoXm;zN$P>FY=xGGI;n)mp9Ik2KxXqXHzk0IICvAl$_%7nc2k{&DLY$EENYcJzw`23E?n54Nk>VbYuYGDIy*^kOwkVJ4ykH9t4wQ5bwOGPC|lgE z99$@oaes^V25%AcaR;gMftos_)1P+ryNN2f6Q`un$AFmq|u9Tq$Eovat1DvNJMPtj#u5lS}&1Xs{c; zBrY6g!&0tQJ9l*YrZkNgPkzFcNNWxObxSU)4jPIkQTF=R16JM?clV}24QULk^?np= zY@cUk>B9g*;`mBd7ueK>09jMC+i`09I%oNBt8!;jCHMS{Tveuu8e*|B*X(TMs4fzk zowdI&i;n(INmZ3w>Mj5k8o&G0Lph!TkCm4M=sPi+!*@~6T}XT>slbPig`P}LmwOXF zyjGfr$z~a=uJR4F-2P;FKN^}%_aIJ5pS=s|C6-95(R;kMrmXUVRIJA4SMrL8Su)39 z<)&~7)!mqdGLIw+he~MQT*TE1#i+HVm&#dwwW8pbSd6LM_KiY@ z$m5TggSJM6ckKkSQQ;8}$QZb|)ZjDNl&Bi?IiWvQNqc(n{bAbOZuoypP2@1sogf^nA%vFkd6sLwl z)N3C%EZn;X)*uK}23+T(GubF6+?Rr(d1e_AU4&cKe}qlP&M5jM3BJ)cP_2u=dv%6v zUIXM<>yJ6Nu%19=RD5r}{aZjbYLW?%(}3H{Z5J=ENYJICqM>PN!H)fRt*orZzI!_Z zZLqJe4=p7ng>v)CuH@$m*1!L(u%~bX=fB#Ox&{qa7yyUSLC>RBAVtH>%)IwElDbQt zp{M+1&g$A4ii3lL#QCCoo7-mWx0=0`s=Lh0OhyqAazMM~fEf9ZnmYck8&VRQLt-GX zv2GPt5QN*GE6THhJTKvMURF>4Ae2O9zQO3sDD}5xx^ZJLiBU@GNlZ+PvWiL%=nbga z@7Q(9El$=4fM(na8UUBGeZ!7c6p1U$gBJ@&g{|iPKAlE)QO%4D3=hf3qGo3eN|d5KtzI$XSgH&2~Qt-j$2#I(atuOnddC+Xk6 zf5+MCUn2N{OlQ>UMDxbRMyM?zk|S7CrF6Wu4vYjh4hLOP9k$%uaP22Q@%-qsMsZxasvcV-*EPjaXL?JVZAh9-juOClz9JT8tc^A>oSz!OjlPpY1H z2R2CNcR$hB{|bI4lay1D{3|yu?rG2s-^0+*dW+q0WR|cqtE#Hnbv3kEMMGoeA~=fR zZZUQ2zqdNGEcEm!pe5YfT<-9<2J-8@zVG8BQm#=@=S~&*=kPEQG!lr(#OOlZw?SI* zMON;vuCQ6}w{NS=l5$AM!*$$2Yq)5qlG*q~dvxq{aNnL-h?Fzf5-bDcKAox$cTuPv^0{rxjC)p&qJW;T4mZW@0CC$;50CU9s;xyMV*1yA4S`Dyf$j}>!XU@1hncFKc{WJbFy#t zoLf--EZeI2XaaZZabymc;O0g>p$5GnzMjs{rSC}B+W;}ec!RiVefReS)pK7dylIuT z%IFW2i^htc83I?p^XIUC$X9po^-<}G&ps#0BUvW^9t4dXN6{Q&8I#+qnMIz##l*U7 zlJ2gP{E<`=q2)d|-+*$tSEgI_km$rt^>W@}sln@jsoB1d5aU^T7~Jhf0xp*8*W5oQ zn4g?QvHgR=Y)@}YNd+;Q*0h5s- z0O`r~s#Yw%NbbAk!Mw`n2EN6KhaclEp0>Ked*#~C%E(HmbK5e+7h7_iS5obS3@qF_~Tj{>x0ZR4Mv>W^T;0zB6G$TcEz zf2*mAbh$_m1^M?p8tmCxE;0%6yX)}{)?K}k_WG?Epg0bgBB-7J*DAY<#>#8Mi-zTQU;U3q1P=I|7X4}r-O)Mp zCbG3DC(0bXkFS5KNn9ri+;)uN69;YYV%(8u%gimb_9xN=88p6rHeD+oYCq8_V`-^^ zr22@9dW$#ObBW)2+{@s7TEKaeIr@=U-C|_5syzMrd{hn~vss|0;O_!qBzsw-Y(y5J zfQ#p-X?tTMN&bmFCy0C$5ad6abu69?^U&|iPhm(&l}nd#{jTfI>nCn+sS^;xZy*(; zPU}ApcSjKjMwp87(EF}C z0=7r0?-oTckk^2(5tC5l%kuY}?(ZgA4?Zr`C`k1A_Y0pzy6pAUAR{kJ+n&x(6tpKV z+4FMoz_s=NT&t>1$0Ed}=j5cV@4UhYx;}6&>Kl(K){Q9Lktpi3YY_=;U@1`|6s8t$ zfq+T1{QKwE%OKTDx(aHn<(D!y9~RiYmOK>8wTY=nu2H$Vy%sQNzfd|oTET(OXoNPo zQx(aLyNKV?1FTSbp+sS3x)CwWeFLMT2Sa%I%F62T4bppct&cwdF|}~tKR8`YPd0dUXnBW}e?Dh6Q*QY|A6$Hea) zqz&fsU}LeIYkYI>FGSJf1{{yO7eXND8TWeu&Qku*4mr3QK$=QnYG6SAnx8^ePEK&T z-mnQ1+!SDS|7uV86r7nD=bfV?tXiK3pn4w+re*peB_;G%jxZyDa>((1)2P+fNH(yj zC%@(aP5o^`lb@lA3Qo|)8dk2DCoa(NKY#w*-83o{2MmxRK)?2`zV(lsMggaICoDYN z6~H@i0zSqk|8Vg8*VSp3ZO;+>Rl$+mMxVHB8 zF=a0@8Gx!~`pp9c@@}yWD2ha%o11I2%z=N~(}Qx<{*M5-*pu*9$Aw5(iPF78z2^x? z(_mi|VFM5%xQv=V$s9~FgDH@{y6;(`#R{{|;5(`L zmfB0bHv|L(ZNYb)zYlgm4P=gvjg^&`M{jIwTwPraAu|sk(kWNdO8V&$16~r?mtmrA zf3W{!f&ejIKH+cGKb89k04(P9JGD!AJy!mbYVo^wJ=6(NLF?78<>mJhJB%SdylJLG;g`s*9b0RKS;z0V<_~q`D)Y0CIhB_cN=I zWiR@l&CT7LXR&(KuZqAxvn2gnpjV&_;sP_s2Q1q!`7idCJH$capaGc~admIzUw41= zK1wufvgrZheuY;wHn1!PfK8H;huq;4t*fg87)~8YKvT86wLTCx+v-dU-VF4=1Xx&D zc;vj0i3$xR_;gaIjLJ+Fyy@K>zlfNa71&Q8<~(5n3|@_zBAocC1d^=7|0g50LhCcD zjgwO%*rU)tFn~i7`y=a_ed-u}H0nysX#Q*hm9We0jc-vOFFV+=5grv4HD>wD_rLby p{I6yrGseTG9uMRBrpfOJSMXad${*P^fbB~V6$N$qI$4Xb{{}0>S?T}) diff --git a/class_x_b_o_x_u_s_b__inherit__graph.map b/class_x_b_o_x_u_s_b__inherit__graph.map index f9dd3b82..e8860ed9 100644 --- a/class_x_b_o_x_u_s_b__inherit__graph.map +++ b/class_x_b_o_x_u_s_b__inherit__graph.map @@ -1,3 +1,3 @@ - + diff --git a/class_x_b_o_x_u_s_b__inherit__graph.md5 b/class_x_b_o_x_u_s_b__inherit__graph.md5 index 816edbfb..5035c5d3 100644 --- a/class_x_b_o_x_u_s_b__inherit__graph.md5 +++ b/class_x_b_o_x_u_s_b__inherit__graph.md5 @@ -1 +1 @@ -f856eb1a72c58d28a6481d6c3bc6012d \ No newline at end of file +901d7e9b19359e5d2c53012c155e3718 \ No newline at end of file diff --git a/class_x_b_o_x_u_s_b__inherit__graph.png b/class_x_b_o_x_u_s_b__inherit__graph.png index 8e473b7d411e99e912045e95013c885bbdca6430..3aae4648a6c2155d8e5a28610e4fae491f175607 100644 GIT binary patch literal 3475 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 a*a<*8+$n!t>GA8Z1;DRc7*$-o`~1HFezji! literal 3166 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 diff --git a/class_x_r21_b1411-members.html b/class_x_r21_b1411-members.html index 5974918f..3dbf8ad0 100644 --- a/class_x_r21_b1411-members.html +++ b/class_x_r21_b1411-members.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Member List @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@
- + - - + + + + - + - - + + + +
Inheritance graph
- - - + + +
[legend]
@@ -108,14 +83,14 @@ Collaboration diagram for XR21B1411:
Collaboration graph
- - - - - - - - + + + + + + + +
[legend]
@@ -233,9 +208,11 @@ Additional Inherited Members

Detailed Description

-

Definition at line 103 of file cdc_XR21B1411.h.

+

Definition at line 103 of file cdc_XR21B1411.h.

Constructor & Destructor Documentation

- + +

◆ XR21B1411()

+
@@ -259,12 +236,14 @@ Additional Inherited Members
-

Definition at line 19 of file cdc_XR21B1411.cpp.

+

Definition at line 19 of file cdc_XR21B1411.cpp.

Member Function Documentation

- + +

◆ VIDPIDOK()

+
@@ -306,11 +285,13 @@ Additional Inherited Members

Reimplemented from USBDeviceConfig.

-

Definition at line 115 of file cdc_XR21B1411.h.

+

Definition at line 115 of file cdc_XR21B1411.h.

- + +

◆ Init()

+
@@ -350,11 +331,13 @@ Additional Inherited Members

Reimplemented from USBDeviceConfig.

-

Definition at line 25 of file cdc_XR21B1411.cpp.

+

Definition at line 25 of file cdc_XR21B1411.cpp.

- + +

◆ enhanced_features()

+
@@ -378,11 +361,13 @@ Additional Inherited Members

Reimplemented from ACM.

-

Definition at line 121 of file cdc_XR21B1411.h.

+

Definition at line 121 of file cdc_XR21B1411.h.

- + +

◆ read_register()

+
@@ -414,11 +399,13 @@ Additional Inherited Members
-

Definition at line 132 of file cdc_XR21B1411.h.

+

Definition at line 132 of file cdc_XR21B1411.h.

- + +

◆ write_register()

+
@@ -450,11 +437,13 @@ Additional Inherited Members
-

Definition at line 136 of file cdc_XR21B1411.h.

+

Definition at line 136 of file cdc_XR21B1411.h.

- + +

◆ autoflowRTS()

+
@@ -478,11 +467,13 @@ Additional Inherited Members

Reimplemented from ACM.

-

Definition at line 145 of file cdc_XR21B1411.h.

+

Definition at line 145 of file cdc_XR21B1411.h.

- + +

◆ autoflowDSR()

+
@@ -506,11 +497,13 @@ Additional Inherited Members

Reimplemented from ACM.

-

Definition at line 176 of file cdc_XR21B1411.h.

+

Definition at line 176 of file cdc_XR21B1411.h.

- + +

◆ autoflowXON()

+
@@ -534,11 +527,13 @@ Additional Inherited Members

Reimplemented from ACM.

-

Definition at line 211 of file cdc_XR21B1411.h.

+

Definition at line 211 of file cdc_XR21B1411.h.

- + +

◆ half_duplex()

+
@@ -562,7 +557,7 @@ Additional Inherited Members

Reimplemented from ACM.

-

Definition at line 243 of file cdc_XR21B1411.h.

+

Definition at line 243 of file cdc_XR21B1411.h.

@@ -575,7 +570,7 @@ Additional Inherited Members diff --git a/class_x_r21_b1411__coll__graph.map b/class_x_r21_b1411__coll__graph.map index ef7794b0..8a27dafc 100644 --- a/class_x_r21_b1411__coll__graph.map +++ b/class_x_r21_b1411__coll__graph.map @@ -1,10 +1,10 @@ - - - - - - - - + + + + + + + + diff --git a/class_x_r21_b1411__coll__graph.md5 b/class_x_r21_b1411__coll__graph.md5 index f6a09260..3553a473 100644 --- a/class_x_r21_b1411__coll__graph.md5 +++ b/class_x_r21_b1411__coll__graph.md5 @@ -1 +1 @@ -2dbccd1b011c53b5f85709ffafe012c5 \ No newline at end of file +74eb1928e681995aa3f1df1987bc06dc \ No newline at end of file diff --git a/class_x_r21_b1411__coll__graph.png b/class_x_r21_b1411__coll__graph.png index b0212e1af1c51e8c1b25ce01f9e7504ed01f36a2..dbf735ad660399ac8b798500389b718a76d3ac79 100644 GIT binary patch literal 21578 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 WnPHiG$0ZhyiK#LDhwAT7#{UaE$}Cm@ literal 21055 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 diff --git a/class_x_r21_b1411__inherit__graph.map b/class_x_r21_b1411__inherit__graph.map index 71b4bc43..45e6a4d4 100644 --- a/class_x_r21_b1411__inherit__graph.map +++ b/class_x_r21_b1411__inherit__graph.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/class_x_r21_b1411__inherit__graph.md5 b/class_x_r21_b1411__inherit__graph.md5 index b61794d2..cf04dca4 100644 --- a/class_x_r21_b1411__inherit__graph.md5 +++ b/class_x_r21_b1411__inherit__graph.md5 @@ -1 +1 @@ -b90701a331346260b7eefd76bf910398 \ No newline at end of file +a23c31938e633c59322b2327db463c90 \ No newline at end of file diff --git a/class_x_r21_b1411__inherit__graph.png b/class_x_r21_b1411__inherit__graph.png index 19b7e439086da7c4c7e74c5e7302f52997d0fbef..4da9d9186624664cb7ae963150698c713e5860f3 100644 GIT binary patch literal 8390 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 a#WquK8QqOtZ3MrPL1ZM~OBB4;@%k@(3dfZI diff --git a/classes.html b/classes.html index 8c424052..be38d926 100644 --- a/classes.html +++ b/classes.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Index @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@

- + - - + + + +
Class Index
-
A | B | C | E | F | H | I | K | L | M | P | R | S | T | U | W | X
+
a | b | c | e | f | h | i | k | l | m | p | r | s | t | u | w | x
- - - - - - - - - - + + + + + + + + + + + - - - + + - - - - - - + + + + + - - - - - - - - + + + + + +
  A  
-
CommandBlockWrapperBase   KBDLEDS   PSBuzz   USB_INTERFACE_DESCRIPTOR   
CommandStatusWrapper   KeyboardReportParser   PSBUZZButtons   UsbConfigXtracter   
ACM   ConfigDescParser   
  L  
-
PTPListParser   UsbDevice   
ACM_FUNC_DESCR   
  E  
-
  R  
-
UsbDeviceAddress   
AddressPool   LINE_CODING   USBDeviceConfig   
AddressPoolImpl   EpInfo   
  M  
-
ReportDescParser   USBH_MIDI   
ADK   
  F  
-
ReportDescParser2   USBHID   
  B  
-
MainItemIOFeature   ReportDescParserBase   USBHub   
FTDI   MAX3421e   RequestSenseResponce   USBReadParser   
BASICCDB   FTDIAsyncOper   Max_LCD   
  S  
-
  W  
+
  a  
+
CommandBlockWrapperBase   KBDLEDS   PSBuzz   USB_ENDPOINT_DESCRIPTOR   
CommandStatusWrapper   KeyboardReportParser   PSBUZZButtons   USB_HID_DESCRIPTOR   
ACM   ConfigDescParser   
  l  
+
PTPListParser   USB_INTERFACE_DESCRIPTOR   
ACM_FUNC_DESCR   
  e  
+
  r  
+
UsbConfigXtracter   
AddressPool   LINE_CODING   UsbDevice   
AddressPoolImpl   EpInfo   
  m  
+
ReportDescParser   UsbDeviceAddress   
ADK   
  f  
+
ReportDescParser2   USBDeviceConfig   
  b  
+
MainItemIOFeature   ReportDescParserBase   USBH_MIDI   
FTDI   MAX3421e   RequestSenseResponce   USBHID   
BASICCDB   FTDIAsyncOper   Max_LCD   
  s  
+
USBHub   
BluetoothService   
  h  
+
MODIFIERKEYS   USBReadParser   
BTD   MOUSEINFO   SETUP_PKT   
  w  
BluetoothService   
  H  
-
MODIFIERKEYS   
BTD   MOUSEINFO   SETUP_PKT   WII   
BTHID   HexDumper   MouseReportParser   SinkParser   
  X  
+
BTHID   HexDumper   MouseReportParser   SinkParser   
BulkOnly   HID_CLASS_DESCRIPTOR_LEN_AND_TYPE   MultiByteValueParser   SPi   WII   
ByteSkipper   HIDBoot   MultiValueBuffer   SPP   
  x  
BulkOnly   HID_CLASS_DESCRIPTOR_LEN_AND_TYPE   MultiByteValueParser   SPi   
ByteSkipper   HIDBoot   MultiValueBuffer   SPP   XBOXOLD   
  C  
-
HIDComposite   
  P  
-
  T  
-
XBOXONE   
HidItemPrefix   XBOXONESBT   
CALL_MGMNT_FUNC_DESCR   HIDReportParser   PL2303   TEL_RINGER_FUNC_DESCR   XboxOneSButtons   
Capacity   HIDUniversal   PS3BT   
  U  
+
  c  
+
HIDComposite   
  p  
+
  t  
+
HidItemPrefix   XBOXOLD   
CALL_MGMNT_FUNC_DESCR   HIDReportParser   PL2303   TEL_RINGER_FUNC_DESCR   XBOXONE   
Capacity   HIDUniversal   PS3BT   touchpadXY   XBOXONESBT   
CDB10   HubDescriptor   PS3USB   tty_features   XboxOneSButtons   
CDB12   HubEvent   PS4BT   
  u  
XboxOneSData   
CDB10   HubDescriptor   PS3USB   XBOXONESParser   
CDB12   HubEvent   PS4BT   UHS2_GPIO   XBOXRECV   
CDB6   
  I  
-
PS4Buttons   UniversalReportParser   XBOXUSB   
CDB_LBA32_16   PS4Data   USB   XR21B1411   
CDB_LBA64_16   InquiryResponse   PS4Output   USB_CONFIGURATION_DESCRIPTOR   
  t  
-
CDCAsyncOper   
  K  
-
PS4Parser   USB_DEVICE_DESCRIPTOR   
CLASS_NOTIFICATION   PS4Status   USB_ENDPOINT_DESCRIPTOR   touchpadXY   
CommandBlockWrapper   KBDINFO   PS4USB   USB_HID_DESCRIPTOR   tty_features   
CDB6   
  i  
+
PS4Buttons   XBOXONESParser   
CDB_LBA32_16   PS4Data   UHS2_GPIO   XBOXRECV   
CDB_LBA64_16   InquiryResponse   PS4Output   UniversalReportParser   XBOXUSB   
CDCAsyncOper   
  k  
+
PS4Parser   USB   XR21B1411   
CLASS_NOTIFICATION   PS4Status   USB_CONFIGURATION_DESCRIPTOR   
CommandBlockWrapper   KBDINFO   PS4USB   USB_DEVICE_DESCRIPTOR   
-
A | B | C | E | F | H | I | K | L | M | P | R | S | T | U | W | X
+
a | b | c | e | f | h | i | k | l | m | p | r | s | t | u | w | x
diff --git a/confdescparser_8h.html b/confdescparser_8h.html index 0cad4899..a96b1f08 100644 --- a/confdescparser_8h.html +++ b/confdescparser_8h.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: confdescparser.h File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
 

Macro Definition Documentation

- + +

◆ CP_MASK_COMPARE_CLASS

+
@@ -121,11 +100,13 @@ Macros
-

Definition at line 39 of file confdescparser.h.

+

Definition at line 39 of file confdescparser.h.

- + +

◆ CP_MASK_COMPARE_SUBCLASS

+
@@ -135,11 +116,13 @@ Macros
-

Definition at line 40 of file confdescparser.h.

+

Definition at line 40 of file confdescparser.h.

- + +

◆ CP_MASK_COMPARE_PROTOCOL

+
@@ -149,11 +132,13 @@ Macros
-

Definition at line 41 of file confdescparser.h.

+

Definition at line 41 of file confdescparser.h.

- + +

◆ CP_MASK_COMPARE_ALL

+
@@ -163,7 +148,7 @@ Macros
-

Definition at line 42 of file confdescparser.h.

+

Definition at line 42 of file confdescparser.h.

@@ -172,7 +157,7 @@ Macros diff --git a/confdescparser_8h_source.html b/confdescparser_8h_source.html index 6169440c..589d7159 100644 --- a/confdescparser_8h_source.html +++ b/confdescparser_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: confdescparser.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- + - - + + + +
- - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + +
@@ -262,7 +239,9 @@ Enumerations  

Enumeration Type Documentation

- + +

◆ LEDEnum

+
@@ -273,38 +252,28 @@ Enumerations

This header file is used to store different enums for the controllers, This is necessary so all the different libraries can be used at once.Enum used to turn on the LEDs on the different controllers.

- - - - - - - - - - - - + + + + + + + + + + +
Enumerator
OFF  -
LED1  -
LED2  -
LED3  -
LED4  -
LED5  -
LED6  -
LED7  -
LED8  -
LED9  -
LED10  -
ALL  -

Used to blink all LEDs on the Xbox controller

+
Enumerator
OFF 
LED1 
LED2 
LED3 
LED4 
LED5 
LED6 
LED7 
LED8 
LED9 
LED10 
ALL 

Used to blink all LEDs on the Xbox controller

-

Definition at line 31 of file controllerEnums.h.

+

Definition at line 31 of file controllerEnums.h.

- + +

◆ ColorsEnum

+
@@ -315,39 +284,32 @@ Enumerations

Used to set the colors of the Move and PS4 controller.

- - - - - - - + - -
Enumerator
Red  -

r = 255, g = 0, b = 0

+
Enumerator
Red 

r = 255, g = 0, b = 0

Green  -

r = 0, g = 255, b = 0

+
Green 

r = 0, g = 255, b = 0

Blue  -

r = 0, g = 0, b = 255

+
Blue 

r = 0, g = 0, b = 255

Yellow  -

r = 255, g = 235, b = 4

+
Yellow 

r = 255, g = 235, b = 4

Lightblue  -

r = 0, g = 255, b = 255

+
Lightblue 

r = 0, g = 255, b = 255

Purple  -

r = 255, g = 0, b = 255

+
Purple 

r = 255, g = 0, b = 255

Purble  +
Purble 
White 

r = 255, g = 255, b = 255

White  -

r = 255, g = 255, b = 255

-
Off  -

r = 0, g = 0, b = 0

+
Off 

r = 0, g = 0, b = 0

-

Definition at line 50 of file controllerEnums.h.

+

Definition at line 50 of file controllerEnums.h.

- + +

◆ RumbleEnum

+
@@ -357,17 +319,17 @@ Enumerations
- - + +
Enumerator
RumbleHigh  -
RumbleLow  -
Enumerator
RumbleHigh 
RumbleLow 
-

Definition at line 72 of file controllerEnums.h.

+

Definition at line 72 of file controllerEnums.h.

- + +

◆ ButtonEnum

+
@@ -378,154 +340,107 @@ Enumerations

This enum is used to read all the different buttons on the different controllers

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - + + + +
Enumerator
UP  -

These buttons are available on all the the controllers

+
Enumerator
UP 

These buttons are available on all the the controllers

RIGHT  -

These buttons are available on all the the controllers

+
RIGHT 

These buttons are available on all the the controllers

DOWN  -

These buttons are available on all the the controllers

+
DOWN 

These buttons are available on all the the controllers

LEFT  -

These buttons are available on all the the controllers

+
LEFT 

These buttons are available on all the the controllers

PLUS  -

Wii buttons

+
PLUS 

Wii buttons

TWO  -

Wii buttons

+
TWO 

Wii buttons

ONE  -

Wii buttons

+
ONE 

Wii buttons

MINUS  -

Wii buttons

+
MINUS 

Wii buttons

HOME  -

Wii buttons

+
HOME 

Wii buttons

-

Wii buttons

+

Wii buttons

-

Wii buttons

+

Wii buttons

-

Wii buttons

+

Wii buttons

-

Wii buttons

+

Wii buttons

-

These are only available on the Wii U Pro Controller

+

These are only available on the Wii U Pro Controller

-

These are only available on the Wii U Pro Controller

+

These are only available on the Wii U Pro Controller

ZL  -

These are only available on the Wii U Pro Controller

+
ZL 

These are only available on the Wii U Pro Controller

ZR  -

These are only available on the Wii U Pro Controller

+
ZR 

These are only available on the Wii U Pro Controller

SELECT  -

PS3 controllers buttons

+
SELECT 

PS3 controllers buttons

START  -

PS3 controllers buttons

+
START 

PS3 controllers buttons

L3  -

PS3 controllers buttons

+
L3 

PS3 controllers buttons

R3  -

PS3 controllers buttons

+
R3 

PS3 controllers buttons

L2  -

PS3 controllers buttons

+
L2 

PS3 controllers buttons

R2  -

PS3 controllers buttons

+
R2 

PS3 controllers buttons

L1  -

PS3 controllers buttons

+
L1 

PS3 controllers buttons

R1  -

PS3 controllers buttons

+
R1 

PS3 controllers buttons

TRIANGLE  -

PS3 controllers buttons

+
TRIANGLE 

PS3 controllers buttons

CIRCLE  -

PS3 controllers buttons

+
CIRCLE 

PS3 controllers buttons

CROSS  -

PS3 controllers buttons

+
CROSS 

PS3 controllers buttons

SQUARE  -

PS3 controllers buttons

+
SQUARE 

PS3 controllers buttons

PS  -

PS3 controllers buttons

+
PS 

PS3 controllers buttons

MOVE  -

PS3 controllers buttons

+
MOVE 

PS3 controllers buttons

-

PS3 controllers buttons

+

PS3 controllers buttons

SHARE  -

PS4 controllers buttons - SHARE and OPTIONS are present instead of SELECT and START

+
SHARE 

PS4 controllers buttons - SHARE and OPTIONS are present instead of SELECT and START

OPTIONS  +
OPTIONS 
TOUCHPAD 
BACK 

Xbox buttons

TOUCHPAD  +

Xbox buttons

BACK  -

Xbox buttons

+

Xbox buttons

-

Xbox buttons

+
XBOX 

Xbox buttons

-

Xbox buttons

+
SYNC 

Xbox buttons

XBOX  -

Xbox buttons

+
BLACK 

Xbox buttons

SYNC  -

Xbox buttons

+
WHITE 

Xbox buttons

BLACK  -

Xbox buttons

+
VIEW 

Xbox One S buttons

WHITE  -

Xbox buttons

+
MENU 

Xbox One S buttons

VIEW  -

Xbox One S buttons

-
MENU  -

Xbox One S buttons

-
RED  -

PS Buzz controllers

-
YELLOW  -
GREEN  -
ORANGE  -
BLUE  +
RED 

PS Buzz controllers

YELLOW 
GREEN 
ORANGE 
BLUE 
-

Definition at line 78 of file controllerEnums.h.

+

Definition at line 78 of file controllerEnums.h.

- + +

◆ AnalogHatEnum

+
@@ -536,25 +451,23 @@ Enumerations

Joysticks on the PS3 and Xbox controllers.

- - - -
Enumerator
LeftHatX  -

Left joystick x-axis

+
Enumerator
LeftHatX 

Left joystick x-axis

LeftHatY  -

Left joystick y-axis

+
LeftHatY 

Left joystick y-axis

RightHatX  -

Right joystick x-axis

+
RightHatX 

Right joystick x-axis

RightHatY  -

Right joystick y-axis

+
RightHatY 

Right joystick y-axis

-

Definition at line 163 of file controllerEnums.h.

+

Definition at line 163 of file controllerEnums.h.

- + +

◆ SensorEnum

+
@@ -565,57 +478,43 @@ Enumerations

Sensors inside the Sixaxis Dualshock 3, Move controller and PS4 controller. Note: that the location is shifted 9 when it's connected via USB on the PS3 controller.

- - + + - + + - - - - - - - - - - - - -
Enumerator
aX  -

Accelerometer values

+
Enumerator
aX 

Accelerometer values

aY  +
aY 
aZ 
gZ 

Gyro z-axis

aZ  +
gX 
gY 
aXmove 

Accelerometer x-axis

gZ  -

Gyro z-axis

+
aZmove 

Accelerometer z-axis

gX  +
aYmove 

Accelerometer y-axis

gY  +
gXmove 

Gyro x-axis

aXmove  -

Accelerometer x-axis

+
gZmove 

Gyro z-axis

aZmove  -

Accelerometer z-axis

+
gYmove 

Gyro y-axis

aYmove  -

Accelerometer y-axis

+
tempMove 

Temperature sensor

gXmove  -

Gyro x-axis

+
mXmove 

Magnetometer x-axis

gZmove  -

Gyro z-axis

+
mZmove 

Magnetometer z-axis

gYmove  -

Gyro y-axis

-
tempMove  -

Temperature sensor

-
mXmove  -

Magnetometer x-axis

-
mZmove  -

Magnetometer z-axis

-
mYmove  -

Magnetometer y-axis

+
mYmove 

Magnetometer y-axis

-

Definition at line 178 of file controllerEnums.h.

+

Definition at line 178 of file controllerEnums.h.

- + +

◆ AngleEnum

+
@@ -626,13 +525,11 @@ Enumerations

Used to get the angle calculated using the PS3 controller and PS4 controller.

- - + +
Enumerator
Pitch  -
Roll  -
Enumerator
Pitch 
Roll 
-

Definition at line 211 of file controllerEnums.h.

+

Definition at line 211 of file controllerEnums.h.

@@ -641,7 +538,7 @@ Enumerations diff --git a/controller_enums_8h__dep__incl.map b/controller_enums_8h__dep__incl.map index e92fcb94..24accfbc 100644 --- a/controller_enums_8h__dep__incl.map +++ b/controller_enums_8h__dep__incl.map @@ -1,27 +1,27 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/controller_enums_8h__dep__incl.png b/controller_enums_8h__dep__incl.png index aadc1293d0783f3520247772e3175ab2ee36eab3..9a37cf5d045ad7e7971dd9e00407cdb8dc0aee75 100644 GIT binary patch literal 45011 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�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�c!DSEEF-SbMP*i@hbU1O;}fxOk}`@OIk3 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 literal 38705 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 - + + USB Host Shield 2.0: controllerEnums.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- + - - + + + +
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- _ -

    +

    - _ -

    • _enhanced_status : ACM
    • @@ -135,7 +71,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_a.html b/functions_a.html index 00491c7e..ae46aef7 100644 --- a/functions_a.html +++ b/functions_a.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- a -

    +

    - a -

    • a : XboxOneSButtons
    • @@ -287,7 +223,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_b.html b/functions_b.html index e607c67d..620e2554 100644 --- a/functions_b.html +++ b/functions_b.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- b -

    +

    - b -

    • b : PS4Output , XboxOneSButtons @@ -591,7 +527,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_c.html b/functions_c.html index 996219a1..ee056361 100644 --- a/functions_c.html +++ b/functions_c.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- c -

    +

    - c -

    • CBWCB : CommandBlockWrapper
    • @@ -289,7 +225,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_d.html b/functions_d.html index 6a3b3bdb..fa7240cc 100644 --- a/functions_d.html +++ b/functions_d.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- d -

    +

    - d -

    • data : Capacity
    • @@ -239,7 +175,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_e.html b/functions_e.html index 64a4dd8c..48e4daaa 100644 --- a/functions_e.html +++ b/functions_e.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- e -

    +

    - e -

    • ENCSERV : InquiryResponse
    • @@ -226,7 +162,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_enum.html b/functions_enum.html index 1fe022a9..400dd9ad 100644 --- a/functions_enum.html +++ b/functions_enum.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Enumerations @@ -11,9 +12,6 @@ - @@ -32,52 +30,19 @@
- + - - - + + + +
- + - - - + + + +
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- f -

    +

    - f -

    • finger : touchpadXY
    • @@ -155,7 +91,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func.html b/functions_func.html index 27a2cbc6..e8d8fcd0 100644 --- a/functions_func.html +++ b/functions_func.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- a -

    +

    - a -

    • ACLData() : BluetoothService , BTHID @@ -178,7 +117,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_b.html b/functions_func_b.html index 6168a012..40d04e1c 100644 --- a/functions_func_b.html +++ b/functions_func_b.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- b -

    +

    - b -

    • begin() : Max_LCD
    • @@ -162,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_c.html b/functions_func_c.html index 367b3f38..dd00d393 100644 --- a/functions_func_c.html +++ b/functions_func_c.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- c -

    +

    - c -

    • CDB10() : CDB10
    • @@ -196,7 +135,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_d.html b/functions_func_d.html index 4596f009..8a9ec2de 100644 --- a/functions_func_d.html +++ b/functions_func_d.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- d -

    +

    - d -

    • DefaultAddressing() : USB
    • @@ -170,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_e.html b/functions_func_e.html index 9ca6ab89..cc0acfc8 100644 --- a/functions_func_e.html +++ b/functions_func_e.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- e -

    +

    - e -

    • EndpointXtract() : ACM , ADK @@ -151,7 +90,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_f.html b/functions_func_f.html index 8d9b4b3a..1aeb06c7 100644 --- a/functions_func_f.html +++ b/functions_func_f.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- f -

    +

    - f -

    • flush() : SPP
    • @@ -143,7 +82,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_g.html b/functions_func_g.html index 87f802f7..e284e9ba 100644 --- a/functions_func_g.html +++ b/functions_func_g.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- g -

    +

    - g -

    • get9DOFValues() : PS3BT
    • @@ -423,7 +362,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_h.html b/functions_func_h.html index 0947ec66..7ab57ba2 100644 --- a/functions_func_h.html +++ b/functions_func_h.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- h -

    +

    - h -

    • half_duplex() : ACM , XR21B1411 @@ -220,7 +159,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_i.html b/functions_func_i.html index 2646330d..aaed92db 100644 --- a/functions_func_i.html +++ b/functions_func_i.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- i -

    +

    - i -

    • idProduct() : USBH_MIDI
    • @@ -202,7 +141,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_k.html b/functions_func_k.html index 41c2ae86..b443ad7f 100644 --- a/functions_func_k.html +++ b/functions_func_k.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- k -

    +

    - k -

    • KeyboardReportParser() : KeyboardReportParser
    • @@ -132,7 +71,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_l.html b/functions_func_l.html index f63b1242..2045ab03 100644 --- a/functions_func_l.html +++ b/functions_func_l.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- l -

    +

    - l -

    • L2CAP_Command() : BTD
    • @@ -165,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_m.html b/functions_func_m.html index 73197d51..d0632a88 100644 --- a/functions_func_m.html +++ b/functions_func_m.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- m -

    +

    - m -

    • MAX3421e() : MAX3421e< SPI_SS, INTR >
    • @@ -152,7 +91,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_n.html b/functions_func_n.html index 66c14028..dee96a98 100644 --- a/functions_func_n.html +++ b/functions_func_n.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- n -

    +

    - n -

    • noAutoscroll() : Max_LCD
    • @@ -141,7 +80,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_o.html b/functions_func_o.html index 34aedf1a..2f578b99 100644 --- a/functions_func_o.html +++ b/functions_func_o.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- o -

    +

    - o -

    • OemToAscii() : KeyboardReportParser
    • @@ -197,7 +136,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_p.html b/functions_func_p.html index 37e895fc..7a95059b 100644 --- a/functions_func_p.html +++ b/functions_func_p.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- p -

    +

    - p -

    • pair() : BTHID , WII @@ -291,7 +230,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_r.html b/functions_func_r.html index daeacb2f..e06e81c2 100644 --- a/functions_func_r.html +++ b/functions_func_r.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- r -

    +

    - r -

    • RcvData() : ACM , ADK @@ -230,7 +169,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_s.html b/functions_func_s.html index 4651c195..802ee18f 100644 --- a/functions_func_s.html +++ b/functions_func_s.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- s -

    +

    - s -

    • scrollDisplayLeft() : Max_LCD
    • @@ -355,7 +294,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_t.html b/functions_func_t.html index 426eec73..59e75693 100644 --- a/functions_func_t.html +++ b/functions_func_t.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- t -

    +

    - t -

    • Task() : MAX3421e< SPI_SS, INTR > , USB @@ -133,7 +72,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_u.html b/functions_func_u.html index dcfd4e94..628980db 100644 --- a/functions_func_u.html +++ b/functions_func_u.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- u -

    +

    - u -

    • UHS2_GPIO() : UHS2_GPIO
    • @@ -144,7 +83,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_v.html b/functions_func_v.html index b2f6f0ba..0a8378f1 100644 --- a/functions_func_v.html +++ b/functions_func_v.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- v -

    +

    - v -

    • vbusPower() : MAX3421e< SPI_SS, INTR >
    • @@ -146,7 +85,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_w.html b/functions_func_w.html index bd112bdb..c0bd16b1 100644 --- a/functions_func_w.html +++ b/functions_func_w.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- w -

    +

    - w -

    • wide() : ACM
    • @@ -148,7 +87,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_func_x.html b/functions_func_x.html index c03558d1..cc8c5303 100644 --- a/functions_func_x.html +++ b/functions_func_x.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Functions @@ -11,9 +12,6 @@ - @@ -32,78 +30,19 @@
- + - - - - + + + +
  -

- x -

    +

    - x -

    • XBOXOLD() : XBOXOLD
    • @@ -150,7 +89,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_g.html b/functions_g.html index 8bbf4d0f..40d020c1 100644 --- a/functions_g.html +++ b/functions_g.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- g -

    +

    - g -

    • g : PS4Output
    • @@ -492,7 +428,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_h.html b/functions_h.html index ee9575a6..ad279204 100644 --- a/functions_h.html +++ b/functions_h.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- h -

    +

    - h -

    • half_duplex() : ACM , tty_features @@ -242,7 +178,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_i.html b/functions_i.html index 14226382..f5ed11c3 100644 --- a/functions_i.html +++ b/functions_i.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- i -

    +

    - i -

    • iConfiguration : USB_CONFIGURATION_DESCRIPTOR
    • @@ -252,7 +188,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_k.html b/functions_k.html index 5d6317cb..01f1d657 100644 --- a/functions_k.html +++ b/functions_k.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- k -

    +

    - k -

    • kbdInfo : KeyboardReportParser
    • @@ -147,7 +83,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_l.html b/functions_l.html index e4d9b025..8b142587 100644 --- a/functions_l.html +++ b/functions_l.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- l -

    +

    - l -

    • l1 : PS4Buttons , XboxOneSButtons @@ -252,7 +188,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_m.html b/functions_m.html index d526183c..d89eee97 100644 --- a/functions_m.html +++ b/functions_m.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- m -

    +

    - m -

    • MAX3421e() : MAX3421e< SPI_SS, INTR >
    • @@ -219,7 +155,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_n.html b/functions_n.html index 4ac2463d..432ef5db 100644 --- a/functions_n.html +++ b/functions_n.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- n -

    +

    - n -

    • noAutoscroll() : Max_LCD
    • @@ -150,7 +86,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_o.html b/functions_o.html index 74f32d4d..05e64fbb 100644 --- a/functions_o.html +++ b/functions_o.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- o -

    +

    - o -

    • OemToAscii() : KeyboardReportParser
    • @@ -217,7 +153,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_p.html b/functions_p.html index 8e97e2cc..59d2c9e6 100644 --- a/functions_p.html +++ b/functions_p.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- p -

    +

    - p -

    • pair() : BTHID , WII @@ -374,7 +310,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_q.html b/functions_q.html index 4986d3d2..c418fad2 100644 --- a/functions_q.html +++ b/functions_q.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- q -

    +

    - q -

    • qNextPollTime : ACM , BTD @@ -138,7 +74,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_r.html b/functions_r.html index 855913c8..8c192b8d 100644 --- a/functions_r.html +++ b/functions_r.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- r -

    +

    - r -

    • r : PS4Output
    • @@ -324,7 +260,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_s.html b/functions_s.html index 134f065a..bb97f615 100644 --- a/functions_s.html +++ b/functions_s.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- s -

    +

    - s -

    • SCCS : InquiryResponse
    • @@ -411,7 +347,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_t.html b/functions_t.html index 13493d0b..df98b393 100644 --- a/functions_t.html +++ b/functions_t.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- t -

    +

    - t -

    • Task() : MAX3421e< SPI_SS, INTR > , USB @@ -197,7 +133,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_type.html b/functions_type.html index d8e38b4d..aee1031c 100644 --- a/functions_type.html +++ b/functions_type.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Typedefs @@ -11,9 +12,6 @@ - @@ -32,52 +30,19 @@
- + - - - + + + + - + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- u -

    +

    - u -

    • UHS2_GPIO() : UHS2_GPIO
    • @@ -171,7 +107,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_v.html b/functions_v.html index 4f52683c..e8c00a44 100644 --- a/functions_v.html +++ b/functions_v.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- v -

    +

    - v -

    • val : PS4Buttons , PSBUZZButtons @@ -188,7 +124,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars.html b/functions_vars.html index f14710c9..c3177106 100644 --- a/functions_vars.html +++ b/functions_vars.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- _ -

    +

    - _ -

    • _enhanced_status : ACM
    • @@ -135,7 +71,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_a.html b/functions_vars_a.html index 36fc744f..486b7650 100644 --- a/functions_vars_a.html +++ b/functions_vars_a.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- a -

    +

    - a -

    • a : XboxOneSButtons
    • @@ -238,7 +174,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_b.html b/functions_vars_b.html index 56e69645..73588d9d 100644 --- a/functions_vars_b.html +++ b/functions_vars_b.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- b -

    +

    - b -

    • b : PS4Output , XboxOneSButtons @@ -558,7 +494,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_c.html b/functions_vars_c.html index a9604282..0864df1f 100644 --- a/functions_vars_c.html +++ b/functions_vars_c.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- c -

    +

    - c -

    • CBWCB : CommandBlockWrapper
    • @@ -224,7 +160,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_d.html b/functions_vars_d.html index 6ffd853b..25caa8ae 100644 --- a/functions_vars_d.html +++ b/functions_vars_d.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- d -

    +

    - d -

    • data : Capacity
    • @@ -198,7 +134,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_e.html b/functions_vars_e.html index 2498811f..123ace99 100644 --- a/functions_vars_e.html +++ b/functions_vars_e.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- e -

    +

    - e -

    • ENCSERV : InquiryResponse
    • @@ -195,7 +131,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_f.html b/functions_vars_f.html index 405759df..ad17bcb8 100644 --- a/functions_vars_f.html +++ b/functions_vars_f.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- f -

    +

    - f -

    • finger : touchpadXY
    • @@ -141,7 +77,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_g.html b/functions_vars_g.html index 7bff218f..d5d203a4 100644 --- a/functions_vars_g.html +++ b/functions_vars_g.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- g -

    +

    - g -

    • g : PS4Output
    • @@ -198,7 +134,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_h.html b/functions_vars_h.html index 3d755776..30c7f097 100644 --- a/functions_vars_h.html +++ b/functions_vars_h.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- h -

    +

    - h -

    • half_duplex : tty_features
    • @@ -153,7 +89,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_i.html b/functions_vars_i.html index 16f01c46..7e26dcc4 100644 --- a/functions_vars_i.html +++ b/functions_vars_i.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- i -

    +

    - i -

    • iConfiguration : USB_CONFIGURATION_DESCRIPTOR
    • @@ -183,7 +119,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_k.html b/functions_vars_k.html index e3dc6971..6fb28555 100644 --- a/functions_vars_k.html +++ b/functions_vars_k.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- k -

    +

    - k -

    • kbdInfo : KeyboardReportParser
    • @@ -144,7 +80,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_l.html b/functions_vars_l.html index 6a16d827..9a784ef2 100644 --- a/functions_vars_l.html +++ b/functions_vars_l.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- l -

    +

    - l -

    • l1 : PS4Buttons , XboxOneSButtons @@ -216,7 +152,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_m.html b/functions_vars_m.html index af88152c..176d8f1b 100644 --- a/functions_vars_m.html +++ b/functions_vars_m.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- m -

    +

    - m -

    • maxEpPerInterface : USBHID
    • @@ -190,7 +126,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_n.html b/functions_vars_n.html index 148a7b8c..d0ecc37c 100644 --- a/functions_vars_n.html +++ b/functions_vars_n.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- n -

    +

    - n -

    • NormACA : InquiryResponse
    • @@ -138,7 +74,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_o.html b/functions_vars_o.html index d0330d0c..038d0a27 100644 --- a/functions_vars_o.html +++ b/functions_vars_o.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- o -

    +

    - o -

    • Opcode : BASICCDB , CDB10 @@ -149,7 +85,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_p.html b/functions_vars_p.html index 3bb23e09..59975090 100644 --- a/functions_vars_p.html +++ b/functions_vars_p.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- p -

    +

    - p -

    • pairWithHIDDevice : BTD
    • @@ -209,7 +145,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_q.html b/functions_vars_q.html index 266f3d63..7c16560b 100644 --- a/functions_vars_q.html +++ b/functions_vars_q.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- q -

    +

    - q -

    • qNextPollTime : ACM , BTD @@ -138,7 +74,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_r.html b/functions_vars_r.html index 7e35f50b..97f814c4 100644 --- a/functions_vars_r.html +++ b/functions_vars_r.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- r -

    +

    - r -

    • r : PS4Output
    • @@ -223,7 +159,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_s.html b/functions_vars_s.html index 73193a64..a3f4607d 100644 --- a/functions_vars_s.html +++ b/functions_vars_s.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- s -

    +

    - s -

    • SCCS : InquiryResponse
    • @@ -185,7 +121,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_t.html b/functions_vars_t.html index 261e841c..3c9abb81 100644 --- a/functions_vars_t.html +++ b/functions_vars_t.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- t -

    +

    - t -

    • telTitles0 : ReportDescParserBase
    • @@ -193,7 +129,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_u.html b/functions_vars_u.html index cce363c0..3a6e8690 100644 --- a/functions_vars_u.html +++ b/functions_vars_u.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- u -

    +

    - u -

    • unknown : PS4Status
    • @@ -153,7 +89,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_v.html b/functions_vars_v.html index 538f4870..691fefa9 100644 --- a/functions_vars_v.html +++ b/functions_vars_v.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- v -

    +

    - v -

    • val : PS4Buttons , PSBUZZButtons @@ -171,7 +107,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_w.html b/functions_vars_w.html index af3ba86a..dbea142a 100644 --- a/functions_vars_w.html +++ b/functions_vars_w.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- w -

    +

    - w -

    • waitingForConnection : BTD
    • @@ -190,7 +126,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_x.html b/functions_vars_x.html index fac727c9..ae8b361d 100644 --- a/functions_vars_x.html +++ b/functions_vars_x.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- x -

    +

    - x -

    • x : touchpadXY , XboxOneSButtons @@ -152,7 +88,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_vars_y.html b/functions_vars_y.html index 54258dfb..97c79323 100644 --- a/functions_vars_y.html +++ b/functions_vars_y.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members - Variables @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
  -

- y -

    +

    - y -

    • y : touchpadXY , XboxOneSButtons @@ -145,7 +81,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_w.html b/functions_w.html index 32e2da03..e9c864bf 100644 --- a/functions_w.html +++ b/functions_w.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- w -

    +

    - w -

    • waitingForConnection : BTD
    • @@ -207,7 +143,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_x.html b/functions_x.html index 3687bdca..de1e4eb6 100644 --- a/functions_x.html +++ b/functions_x.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- x -

    +

    - x -

    • x : touchpadXY , XboxOneSButtons @@ -173,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/functions_y.html b/functions_y.html index 4040b48a..24939d76 100644 --- a/functions_y.html +++ b/functions_y.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Class Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all class members with links to the classes they belong to:
-

- y -

    +

    - y -

    • y : touchpadXY , XboxOneSButtons @@ -145,7 +81,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals.html b/globals.html index d5b5be40..46aec086 100644 --- a/globals.html +++ b/globals.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- _ -

    +

    - _ -

    • __BYTE_GRABBING_DEFINED__ : macros.h
    • @@ -144,7 +80,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_a.html b/globals_a.html index 6751d7d2..83c5112d 100644 --- a/globals_a.html +++ b/globals_a.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- a -

    +

    - a -

    • A : controllerEnums.h
    • @@ -219,7 +155,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_b.html b/globals_b.html index 74daae89..656bfc4e 100644 --- a/globals_b.html +++ b/globals_b.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- b -

    +

    - b -

    • B : controllerEnums.h
    • @@ -735,7 +671,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_c.html b/globals_c.html index fed02220..bb6f6f1e 100644 --- a/globals_c.html +++ b/globals_c.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- c -

    +

    - c -

    • C : controllerEnums.h
    • @@ -324,7 +260,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_d.html b/globals_d.html index 01553fac..4ed33f66 100644 --- a/globals_d.html +++ b/globals_d.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- d -

    +

    - d -

    • D_PrintBin() : printhex.h
    • @@ -238,7 +174,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs.html b/globals_defs.html index c0031b25..0e1a494d 100644 --- a/globals_defs.html +++ b/globals_defs.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- _ -

    +

    - _ -

    • __BYTE_GRABBING_DEFINED__ : macros.h
    • @@ -142,7 +80,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_a.html b/globals_defs_a.html index 0d9811e3..4e5d04d8 100644 --- a/globals_defs_a.html +++ b/globals_defs_a.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- a -

    +

    - a -

    • ACCESSORY_STRING_DESCRIPTION : adk.h
    • @@ -184,7 +122,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_b.html b/globals_defs_b.html index 7af7af52..18b50fe2 100644 --- a/globals_defs_b.html +++ b/globals_defs_b.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- b -

    +

    - b -

    • BELKIN_F8T065BF_PID : BTD.h
    • @@ -697,7 +635,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_c.html b/globals_defs_c.html index 5d9c451e..f7c57905 100644 --- a/globals_defs_c.html +++ b/globals_defs_c.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- c -

    +

    - c -

    • CALL_STATE_CHANGE : cdcacm.h
    • @@ -292,7 +230,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_d.html b/globals_defs_d.html index cfcdf8dd..386f8208 100644 --- a/globals_defs_d.html +++ b/globals_defs_d.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- d -

    +

    - d -

    • DATA_SIZE_0 : usbhid.h
    • @@ -181,7 +119,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_e.html b/globals_defs_e.html index 98dbfed7..97e42268 100644 --- a/globals_defs_e.html +++ b/globals_defs_e.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- e -

    +

    - e -

    • E : max_LCD.cpp
    • @@ -241,7 +179,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_f.html b/globals_defs_f.html index 82893b0b..45edcd1a 100644 --- a/globals_defs_f.html +++ b/globals_defs_f.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- f -

    +

    - f -

    • F : version_helper.h
    • @@ -274,7 +212,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_g.html b/globals_defs_g.html index fef623d1..cff15960 100644 --- a/globals_defs_g.html +++ b/globals_defs_g.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- g -

    +

    - g -

    • GAMESTOP_VID : XBOXUSB.h
    • @@ -157,7 +95,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_h.html b/globals_defs_h.html index f10fbbf3..11f7a0fe 100644 --- a/globals_defs_h.html +++ b/globals_defs_h.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- h -

    +

    - h -

    • HCI_BDADDR_STATE : BTD.h
    • @@ -455,7 +393,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_i.html b/globals_defs_i.html index ceb3d51c..5930094a 100644 --- a/globals_defs_i.html +++ b/globals_defs_i.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- i -

    +

    - i -

    • INTERNAL_DELAY : cdcprolific.h
    • @@ -142,7 +80,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_j.html b/globals_defs_j.html index 2ebc593b..84948832 100644 --- a/globals_defs_j.html +++ b/globals_defs_j.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- j -

    +

    - j -

    • JOYTECH_VID : XBOXOLD.h , XBOXRECV.h @@ -138,7 +76,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_k.html b/globals_defs_k.html index 858f036b..967b2579 100644 --- a/globals_defs_k.html +++ b/globals_defs_k.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- k -

    +

    - k -

    • kBreakError : cdcprolific.h
    • @@ -190,7 +128,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_l.html b/globals_defs_l.html index df65cb26..b6d6ee14 100644 --- a/globals_defs_l.html +++ b/globals_defs_l.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- l -

    +

    - l -

    • l2cap_check_flag : BTD.h
    • @@ -355,7 +293,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_m.html b/globals_defs_m.html index 2d0417a9..624d9499 100644 --- a/globals_defs_m.html +++ b/globals_defs_m.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- m -

    +

    - m -

    • MADCATZ_VID : XBOXOLD.h , XBOXRECV.h @@ -330,7 +268,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_n.html b/globals_defs_n.html index 81f868d1..4c70d922 100644 --- a/globals_defs_n.html +++ b/globals_defs_n.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- n -

    +

    - n -

    • NETWORK_CONNECTION : cdcacm.h
    • @@ -163,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_o.html b/globals_defs_o.html index 841b096b..14a49869 100644 --- a/globals_defs_o.html +++ b/globals_defs_o.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- o -

    +

    - o -

    • OTG_FEATURE_A_ALT_HNP_SUPPORT : usb_ch9.h
    • @@ -145,7 +83,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_p.html b/globals_defs_p.html index 549ab910..9cea3aa2 100644 --- a/globals_defs_p.html +++ b/globals_defs_p.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- p -

    +

    - p -

    • PAIR : BTD.h
    • @@ -257,7 +195,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_r.html b/globals_defs_r.html index 602b2524..95755f0b 100644 --- a/globals_defs_r.html +++ b/globals_defs_r.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- r -

    +

    - r -

    • rCPUCTL : max3421e.h
    • @@ -229,7 +167,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_s.html b/globals_defs_s.html index f5b83b30..9fda797d 100644 --- a/globals_defs_s.html +++ b/globals_defs_s.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- s -

    +

    - s -

    • SCSI_ASC_LBA_OUT_OF_RANGE : masstorage.h
    • @@ -484,7 +422,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_t.html b/globals_defs_t.html index dc5a04e1..0c2ea66a 100644 --- a/globals_defs_t.html +++ b/globals_defs_t.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- t -

    +

    - t -

    • TAG_GLOBAL_LOGICALMAX : usbhid.h
    • @@ -232,7 +170,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_u.html b/globals_defs_u.html index 7d1329c5..882c5521 100644 --- a/globals_defs_u.html +++ b/globals_defs_u.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- u -

    +

    - u -

    • UHS_HID_BOOT_KEY_CAPS_LOCK : hidboot.h
    • @@ -511,7 +449,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_v.html b/globals_defs_v.html index 21c8341e..8712591c 100644 --- a/globals_defs_v.html +++ b/globals_defs_v.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- v -

    +

    - v -

    • VALUE_BETWEEN : macros.h
    • @@ -157,7 +95,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_w.html b/globals_defs_w.html index c9eaf168..31477635 100644 --- a/globals_defs_w.html +++ b/globals_defs_w.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- w -

    +

    - w -

    • WI_PROTOCOL_BT : BTD.h
    • @@ -163,7 +101,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_defs_x.html b/globals_defs_x.html index 968b34df..e6966810 100644 --- a/globals_defs_x.html +++ b/globals_defs_x.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,79 +30,19 @@
- + - - - - + + + +
  -

- x -

    +

    - x -

    • XBOX_CONTROL_PIPE : XBOXOLD.h , XBOXRECV.h @@ -455,7 +393,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_e.html b/globals_e.html index 9530b83d..4a28dd39 100644 --- a/globals_e.html +++ b/globals_e.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- e -

    +

    - e -

    • E : max_LCD.cpp
    • @@ -261,7 +197,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_enum.html b/globals_enum.html index a526005b..a54cd626 100644 --- a/globals_enum.html +++ b/globals_enum.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,51 +30,19 @@
- + - - - + + + + - + - - - - + + + +
  -

- a -

    +

    - a -

    • A : controllerEnums.h
    • @@ -152,7 +92,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    -

    - b -

      +

      - b -

      • B : controllerEnums.h
      • @@ -183,7 +123,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
      -

      - c -

        +

        - c -

        • C : controllerEnums.h
        • @@ -205,7 +145,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
        -

        - d -

          +

          - d -

          • DOWN : controllerEnums.h
          • @@ -251,7 +191,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
          -

          - f -

            +

            - f -

            • FASTBLINK : xboxEnums.h
            • @@ -261,7 +201,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
            -

            - g -

              +

              - g -

              • Green : controllerEnums.h
              • @@ -289,7 +229,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
              -

              - h -

                +

                - h -

                • HatX : Wii.h
                • @@ -305,7 +245,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
                -

                - k -

                  +

                  - k -

                  • kXO_Idle : cdcprolific.h
                  • @@ -324,7 +264,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
                  -

                  - l -

                    +

                    - l -

                    • L : controllerEnums.h
                    • @@ -385,7 +325,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
                    -

                    - m -

                      +

                      - m -

                      • MENU : controllerEnums.h
                      • @@ -428,14 +368,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
                      -

                      - n -

                        +

                        - n -

                        -

                        - o -

                          +

                          - o -

                          • OFF : controllerEnums.h
                          • @@ -454,7 +394,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
                          -

                          - p -

                            +

                            - p -

                            • Pitch : controllerEnums.h
                            • @@ -476,7 +416,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
                            -

                            - r -

                              +

                              - r -

                              • R : controllerEnums.h
                              • @@ -528,7 +468,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
                              -

                              - s -

                                +

                                - s -

                                • SELECT : controllerEnums.h
                                • @@ -553,7 +493,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
                                -

                                - t -

                                  +

                                  - t -

                                  • T : controllerEnums.h
                                  • @@ -584,7 +524,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
                                  -

                                  - u -

                                    +

                                    - u -

                                    • unknown : cdcprolific.h
                                    • @@ -597,7 +537,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
                                    -

                                    - v -

                                      +

                                      - v -

                                      • vbus_off : usbhost.h
                                      • @@ -610,7 +550,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
                                      -

                                      - w -

                                        +

                                        - w -

                                        • WHITE : controllerEnums.h
                                        • @@ -620,7 +560,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
                                        -

                                        - x -

                                          +

                                          - x -

                                          • X : controllerEnums.h
                                          • @@ -630,7 +570,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
                                          -

                                          - y -

                                            +

                                            - y -

                                            • Y : controllerEnums.h
                                            • @@ -643,7 +583,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
                                            -

                                            - z -

                                              +

                                              - z -

                                              • Z : controllerEnums.h
                                              • @@ -659,7 +599,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_f.html b/globals_f.html index 0d898b8d..014e9a77 100644 --- a/globals_f.html +++ b/globals_f.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- f -

    +

    - f -

    • F : version_helper.h
    • @@ -282,7 +218,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_func.html b/globals_func.html index 1c2c4d9b..7153f9e3 100644 --- a/globals_func.html +++ b/globals_func.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,51 +30,19 @@
- + - - - + + + + - + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- g -

    +

    - g -

    • GAMESTOP_VID : XBOXUSB.h
    • @@ -183,7 +119,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_h.html b/globals_h.html index 09f7c476..55fe05cf 100644 --- a/globals_h.html +++ b/globals_h.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- h -

    +

    - h -

    • HatEnum : Wii.h
    • @@ -472,7 +408,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_i.html b/globals_i.html index 08e29c18..0a10208b 100644 --- a/globals_i.html +++ b/globals_i.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- i -

    +

    - i -

    • INTERNAL_DELAY : cdcprolific.h
    • @@ -144,7 +80,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_j.html b/globals_j.html index 184df601..78d0bb5b 100644 --- a/globals_j.html +++ b/globals_j.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- j -

    +

    - j -

    • JOYTECH_VID : XBOXOLD.h , XBOXRECV.h @@ -140,7 +76,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_k.html b/globals_k.html index 9084689a..766b3570 100644 --- a/globals_k.html +++ b/globals_k.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- k -

    +

    - k -

    • kBreakError : cdcprolific.h
    • @@ -207,7 +143,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_l.html b/globals_l.html index 4c70c7bb..7010f3bc 100644 --- a/globals_l.html +++ b/globals_l.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- l -

    +

    - l -

    • L : controllerEnums.h
    • @@ -420,7 +356,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_m.html b/globals_m.html index 891c5207..75a834b7 100644 --- a/globals_m.html +++ b/globals_m.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- m -

    +

    - m -

    • MADCATZ_VID : XBOXOLD.h , XBOXRECV.h @@ -374,7 +310,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_n.html b/globals_n.html index b5be5f00..0f0e87e8 100644 --- a/globals_n.html +++ b/globals_n.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- n -

    +

    - n -

    • NETWORK_CONNECTION : cdcacm.h
    • @@ -168,7 +104,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_o.html b/globals_o.html index 5d58b012..c72e5151 100644 --- a/globals_o.html +++ b/globals_o.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- o -

    +

    - o -

    • OFF : controllerEnums.h
    • @@ -162,7 +98,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_p.html b/globals_p.html index 7cf6421b..485da60d 100644 --- a/globals_p.html +++ b/globals_p.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- p -

    +

    - p -

    • PAIR : BTD.h
    • @@ -2891,7 +2827,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_r.html b/globals_r.html index 9700cd0a..e007cef9 100644 --- a/globals_r.html +++ b/globals_r.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- r -

    +

    - r -

    • R : controllerEnums.h
    • @@ -285,7 +221,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_s.html b/globals_s.html index 926b0c83..0ad96c2d 100644 --- a/globals_s.html +++ b/globals_s.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- s -

    +

    - s -

    • SCSI_ASC_LBA_OUT_OF_RANGE : masstorage.h
    • @@ -516,7 +452,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_t.html b/globals_t.html index 07692099..6b8553ad 100644 --- a/globals_t.html +++ b/globals_t.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- t -

    +

    - t -

    • T : controllerEnums.h
    • @@ -270,7 +206,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_type.html b/globals_type.html index abec4bc2..224039fe 100644 --- a/globals_type.html +++ b/globals_type.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,51 +30,19 @@
- + - - - + + + + - + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- u -

    +

    - u -

    • UHS_HID_BOOT_KEY_CAPS_LOCK : hidboot.h
    • @@ -531,7 +467,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_v.html b/globals_v.html index 496a5794..5e8b76d9 100644 --- a/globals_v.html +++ b/globals_v.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- v -

    +

    - v -

    • VALUE_BETWEEN : macros.h
    • @@ -171,7 +107,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_vars.html b/globals_vars.html index dee4ead6..58262c93 100644 --- a/globals_vars.html +++ b/globals_vars.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,60 +30,19 @@
- + - - - - + + + +
  -

- p -

    +

    - p -

    • PS3_ANALOG_BUTTONS : PS3Enums.h
    • @@ -2703,7 +2660,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_vars_r.html b/globals_vars_r.html index dd11cf81..10e728b6 100644 --- a/globals_vars_r.html +++ b/globals_vars_r.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,60 +30,19 @@
- + - - - - + + + +
  -

- r -

    +

    - r -

    • rfcomm_crc_table : SPP.cpp
    • @@ -114,7 +71,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_vars_u.html b/globals_vars_u.html index 0e912ac4..20900927 100644 --- a/globals_vars_u.html +++ b/globals_vars_u.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,60 +30,19 @@
- + - - - - + + + +
  -

- u -

    +

    - u -

    • UsbDEBUGlvl : hexdump.h , sink_parser.h @@ -117,7 +74,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_vars_w.html b/globals_vars_w.html index c9085b94..9a269cbc 100644 --- a/globals_vars_w.html +++ b/globals_vars_w.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,60 +30,19 @@
- + - - - - + + + +
  -

- w -

    +

    - w -

    • WII_BUTTONS : Wii.cpp
    • @@ -120,7 +77,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_vars_x.html b/globals_vars_x.html index 3ce9e3cc..dbdd39e0 100644 --- a/globals_vars_x.html +++ b/globals_vars_x.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,60 +30,19 @@
- + - - - - + + + +
  -

- x -

    +

    - x -

    • XBOX_BUTTONS : xboxEnums.h
    • @@ -123,7 +80,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_w.html b/globals_w.html index edc83b26..d7619b4e 100644 --- a/globals_w.html +++ b/globals_w.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- w -

    +

    - w -

    • WHITE : controllerEnums.h
    • @@ -180,7 +116,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_x.html b/globals_x.html index 2c0727aa..aa2740dd 100644 --- a/globals_x.html +++ b/globals_x.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- x -

    +

    - x -

    • X : controllerEnums.h
    • @@ -475,7 +411,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_y.html b/globals_y.html index aecdee83..567dce70 100644 --- a/globals_y.html +++ b/globals_y.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- y -

    +

    - y -

    • Y : controllerEnums.h
    • @@ -141,7 +77,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/globals_z.html b/globals_z.html index ed5c1026..ff37abc2 100644 --- a/globals_z.html +++ b/globals_z.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: File Members @@ -11,9 +12,6 @@ - @@ -32,81 +30,19 @@
- + - - - - + + + +
Here is a list of all file members with links to the files they belong to:
-

- z -

    +

    - z -

    • Z : controllerEnums.h
    • @@ -141,7 +77,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/graph_legend.html b/graph_legend.html index 75dbee35..d0763e71 100644 --- a/graph_legend.html +++ b/graph_legend.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: Graph Legend @@ -11,9 +12,6 @@ - @@ -32,34 +30,19 @@
- + - + + + +

This page explains how to interpret the graphs that are generated by doxygen.

-

Consider the following example:

1 /*! Invisible class because of truncation */
2 class Invisible { };
3 
4 /*! Truncated class, inheritance relation is hidden */
5 class Truncated : public Invisible { };
6 
7 /* Class not documented with doxygen comments */
8 class Undocumented { };
9 
10 /*! Class that is inherited using public inheritance */
11 class PublicBase : public Truncated { };
12 
13 /*! A template class */
14 template<class T> class Templ { };
15 
16 /*! Class that is inherited using protected inheritance */
17 class ProtectedBase { };
18 
19 /*! Class that is inherited using private inheritance */
20 class PrivateBase { };
21 
22 /*! Class that is used by the Inherited class */
23 class Used { };
24 
25 /*! Super class that inherits a number of other classes */
26 class Inherited : public PublicBase,
27  protected ProtectedBase,
28  private PrivateBase,
29  public Undocumented,
30  public Templ<int>
31 {
32  private:
33  Used *m_usedClass;
34 };

This will result in the following graph:

+

Consider the following example:

/*! Invisible class because of truncation */
class Invisible { };
/*! Truncated class, inheritance relation is hidden */
class Truncated : public Invisible { };
/* Class not documented with doxygen comments */
class Undocumented { };
/*! Class that is inherited using public inheritance */
class PublicBase : public Truncated { };
/*! A template class */
template<class T> class Templ { };
/*! Class that is inherited using protected inheritance */
class ProtectedBase { };
/*! Class that is inherited using private inheritance */
class PrivateBase { };
/*! Class that is used by the Inherited class */
class Used { };
/*! Super class that inherits a number of other classes */
class Inherited : public PublicBase,
protected ProtectedBase,
private PrivateBase,
public Undocumented,
public Templ<int>
{
private:
Used *m_usedClass;
};

This will result in the following graph:

- +

The boxes in the above graph have the following meaning:

    @@ -105,16 +88,16 @@ A dark green arrow is used for protected inheritance.
  • A dark red arrow is used for private inheritance.
  • -A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible.
  • +A purple dashed arrow is used if a class is contained or used by another class. The arrow is labelled with the variable(s) through which the pointed class or struct is accessible.
  • -A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance.
  • +A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labelled with the template parameters of the instance.
diff --git a/graph_legend.png b/graph_legend.png index ab7a9c067f9b7025deeb24591b7aad5ae419e474..81788d8b778e11ebf43d6a041820fcaf7ec9a65e 100644 GIT binary patch literal 19465 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%0Av4SqcN@e|5`jp~UDrU|Bek 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 KD*5>B=l=mE-h(~> diff --git a/hexdump_8h.html b/hexdump_8h.html index 29838106..814544d8 100644 --- a/hexdump_8h.html +++ b/hexdump_8h.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: hexdump.h File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
 

Variable Documentation

- + +

◆ UsbDEBUGlvl

+
@@ -113,7 +92,7 @@ Variables
-

Definition at line 29 of file message.cpp.

+

Definition at line 29 of file message.cpp.

@@ -122,7 +101,7 @@ Variables diff --git a/hexdump_8h_source.html b/hexdump_8h_source.html index 13b381c5..074cd8ec 100644 --- a/hexdump_8h_source.html +++ b/hexdump_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: hexdump.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + + - + - - + + + +
- - - - + + + +
@@ -105,7 +82,7 @@ Include dependency graph for hidboot.cpp: diff --git a/hidboot_8cpp__incl.map b/hidboot_8cpp__incl.map index 92e244b0..7fbc3671 100644 --- a/hidboot_8cpp__incl.map +++ b/hidboot_8cpp__incl.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/hidboot_8cpp__incl.md5 b/hidboot_8cpp__incl.md5 index 8925fe78..de6cd8aa 100644 --- a/hidboot_8cpp__incl.md5 +++ b/hidboot_8cpp__incl.md5 @@ -1 +1 @@ -fd9ffd5fbb0339f5a30f2cdb6ce0f03f \ No newline at end of file +b569b0654ae2e389bfc498a0f61c5075 \ No newline at end of file diff --git a/hidboot_8cpp__incl.png b/hidboot_8cpp__incl.png index 1fb992f9d32137fccc6caa8b620f097fe509e256..5b3c55baa510024e59020e2de9bea13289248edf 100644 GIT binary patch literal 8903 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 diff --git a/hidboot_8cpp_source.html b/hidboot_8cpp_source.html index f253b4a7..9a74f2df 100644 --- a/hidboot_8cpp_source.html +++ b/hidboot_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: hidboot.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - + + +
@@ -105,11 +82,11 @@ This graph shows which files directly or indirectly include this file:
- - + + - - + +
@@ -158,7 +135,9 @@ Macros  

Macro Definition Documentation

- + +

◆ UHS_HID_BOOT_KEY_ZERO

+
@@ -168,11 +147,13 @@ Macros
-

Definition at line 22 of file hidboot.h.

+

Definition at line 22 of file hidboot.h.

- + +

◆ UHS_HID_BOOT_KEY_ENTER

+
@@ -182,11 +163,13 @@ Macros
-

Definition at line 23 of file hidboot.h.

+

Definition at line 23 of file hidboot.h.

- + +

◆ UHS_HID_BOOT_KEY_SPACE

+
@@ -196,11 +179,13 @@ Macros
-

Definition at line 24 of file hidboot.h.

+

Definition at line 24 of file hidboot.h.

- + +

◆ UHS_HID_BOOT_KEY_CAPS_LOCK

+
@@ -210,11 +195,13 @@ Macros
-

Definition at line 25 of file hidboot.h.

+

Definition at line 25 of file hidboot.h.

- + +

◆ UHS_HID_BOOT_KEY_SCROLL_LOCK

+
@@ -224,11 +211,13 @@ Macros
-

Definition at line 26 of file hidboot.h.

+

Definition at line 26 of file hidboot.h.

- + +

◆ UHS_HID_BOOT_KEY_NUM_LOCK

+
@@ -238,11 +227,13 @@ Macros
-

Definition at line 27 of file hidboot.h.

+

Definition at line 27 of file hidboot.h.

- + +

◆ UHS_HID_BOOT_KEY_ZERO2

+
@@ -252,11 +243,13 @@ Macros
-

Definition at line 28 of file hidboot.h.

+

Definition at line 28 of file hidboot.h.

- + +

◆ UHS_HID_BOOT_KEY_PERIOD

+
@@ -266,11 +259,13 @@ Macros
-

Definition at line 29 of file hidboot.h.

+

Definition at line 29 of file hidboot.h.

- + +

◆ bitsEndpoints

+
@@ -284,11 +279,13 @@ Macros
-

Definition at line 32 of file hidboot.h.

+

Definition at line 32 of file hidboot.h.

- + +

◆ totalEndpoints

+
@@ -302,11 +299,13 @@ Macros
-

Definition at line 33 of file hidboot.h.

+

Definition at line 33 of file hidboot.h.

- + +

◆ epMUL

+
@@ -320,7 +319,7 @@ Macros
-

Definition at line 34 of file hidboot.h.

+

Definition at line 34 of file hidboot.h.

@@ -329,7 +328,7 @@ Macros diff --git a/hidboot_8h__dep__incl.map b/hidboot_8h__dep__incl.map index 275e3a8c..0da36b67 100644 --- a/hidboot_8h__dep__incl.map +++ b/hidboot_8h__dep__incl.map @@ -1,7 +1,7 @@ - - + + - - + + diff --git a/hidboot_8h__dep__incl.md5 b/hidboot_8h__dep__incl.md5 index de59ebc7..ddc114e6 100644 --- a/hidboot_8h__dep__incl.md5 +++ b/hidboot_8h__dep__incl.md5 @@ -1 +1 @@ -0856b5f458a202d3086dc4dd47e4b019 \ No newline at end of file +54c9e9421628f4174d67f5e073203a7f \ No newline at end of file diff --git a/hidboot_8h__dep__incl.png b/hidboot_8h__dep__incl.png index 40d82dc3053ad7130cefe6cb1f824a8cf43ee5e2..d9e27040065ea826e9d3c69e8982a6883b59b269 100644 GIT binary patch literal 10116 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 U&Y2QitAjjK)KK^)XCC^005i*KcmMzZ literal 9325 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 - - - + + + diff --git a/hidboot_8h__incl.md5 b/hidboot_8h__incl.md5 index 0cf8d499..99907aea 100644 --- a/hidboot_8h__incl.md5 +++ b/hidboot_8h__incl.md5 @@ -1 +1 @@ -8dee61608a93687c155ca4b339d92198 \ No newline at end of file +83d1d2f9fe90e118568a3d6b3086c8da \ No newline at end of file diff --git a/hidboot_8h__incl.png b/hidboot_8h__incl.png index 62f0a421e4014f121f54a983f4de8048069f2c55..38450dd174cfa287079f849418b33012447c8367 100644 GIT binary patch literal 6961 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 diff --git a/hidboot_8h_source.html b/hidboot_8h_source.html index 83e8a8d5..88118e81 100644 --- a/hidboot_8h_source.html +++ b/hidboot_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: hidboot.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + +
hidboot.h
-Go to the documentation of this file.
1 /* Copyright (C) 2011 Circuits At Home, LTD. All rights reserved.
2 
3 This software may be distributed and modified under the terms of the GNU
4 General Public License version 2 (GPL2) as published by the Free Software
5 Foundation and appearing in the file GPL2.TXT included in the packaging of
6 this file. Please note that GPL2 Section 2[b] requires that all works based
7 on this software must also be made publicly available under the terms of
8 the GPL2 ("Copyleft").
9 
10 Contact information
11 -------------------
12 
13 Circuits At Home, LTD
14 Web : http://www.circuitsathome.com
15 e-mail : support@circuitsathome.com
16  */
17 #if !defined(__HIDBOOT_H__)
18 #define __HIDBOOT_H__
19 
20 #include "usbhid.h"
21 
22 #define UHS_HID_BOOT_KEY_ZERO 0x27
23 #define UHS_HID_BOOT_KEY_ENTER 0x28
24 #define UHS_HID_BOOT_KEY_SPACE 0x2c
25 #define UHS_HID_BOOT_KEY_CAPS_LOCK 0x39
26 #define UHS_HID_BOOT_KEY_SCROLL_LOCK 0x47
27 #define UHS_HID_BOOT_KEY_NUM_LOCK 0x53
28 #define UHS_HID_BOOT_KEY_ZERO2 0x62
29 #define UHS_HID_BOOT_KEY_PERIOD 0x63
30 
31 // Don't worry, GCC will optimize the result to a final value.
32 #define bitsEndpoints(p) ((((p) & USB_HID_PROTOCOL_KEYBOARD)? 2 : 0) | (((p) & USB_HID_PROTOCOL_MOUSE)? 1 : 0))
33 #define totalEndpoints(p) ((bitsEndpoints(p) == 3) ? 3 : 2)
34 #define epMUL(p) ((((p) & USB_HID_PROTOCOL_KEYBOARD)? 1 : 0) + (((p) & USB_HID_PROTOCOL_MOUSE)? 1 : 0))
35 
36 // Already defined in hid.h
37 // #define HID_MAX_HID_CLASS_DESCRIPTORS 5
38 
39 struct MOUSEINFO {
40 
41  struct {
42  uint8_t bmLeftButton : 1;
43  uint8_t bmRightButton : 1;
44  uint8_t bmMiddleButton : 1;
45  uint8_t bmDummy : 5;
46  };
47  int8_t dX;
48  int8_t dY;
49 };
50 
52 
53  union {
55  uint8_t bInfo[sizeof (MOUSEINFO)];
56  } prevState;
57 
58 public:
59  void Parse(USBHID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf);
60 
61 protected:
62 
63  virtual void OnMouseMove(MOUSEINFO *mi __attribute__((unused))) {
64  };
65 
66  virtual void OnLeftButtonUp(MOUSEINFO *mi __attribute__((unused))) {
67  };
68 
69  virtual void OnLeftButtonDown(MOUSEINFO *mi __attribute__((unused))) {
70  };
71 
72  virtual void OnRightButtonUp(MOUSEINFO *mi __attribute__((unused))) {
73  };
74 
75  virtual void OnRightButtonDown(MOUSEINFO *mi __attribute__((unused))) {
76  };
77 
78  virtual void OnMiddleButtonUp(MOUSEINFO *mi __attribute__((unused))) {
79  };
80 
81  virtual void OnMiddleButtonDown(MOUSEINFO *mi __attribute__((unused))) {
82  };
83 };
84 
85 struct MODIFIERKEYS {
86  uint8_t bmLeftCtrl : 1;
87  uint8_t bmLeftShift : 1;
88  uint8_t bmLeftAlt : 1;
89  uint8_t bmLeftGUI : 1;
90  uint8_t bmRightCtrl : 1;
91  uint8_t bmRightShift : 1;
92  uint8_t bmRightAlt : 1;
93  uint8_t bmRightGUI : 1;
94 };
95 
96 struct KBDINFO {
97 
98  struct {
99  uint8_t bmLeftCtrl : 1;
100  uint8_t bmLeftShift : 1;
101  uint8_t bmLeftAlt : 1;
102  uint8_t bmLeftGUI : 1;
103  uint8_t bmRightCtrl : 1;
104  uint8_t bmRightShift : 1;
105  uint8_t bmRightAlt : 1;
106  uint8_t bmRightGUI : 1;
107  };
108  uint8_t bReserved;
109  uint8_t Keys[6];
110 };
111 
112 struct KBDLEDS {
113  uint8_t bmNumLock : 1;
114  uint8_t bmCapsLock : 1;
115  uint8_t bmScrollLock : 1;
116  uint8_t bmCompose : 1;
117  uint8_t bmKana : 1;
118  uint8_t bmReserved : 3;
119 };
120 
122  static const uint8_t numKeys[10];
123  static const uint8_t symKeysUp[12];
124  static const uint8_t symKeysLo[12];
125  static const uint8_t padKeys[5];
126 
127 protected:
128 
129  union {
131  uint8_t bInfo[sizeof (KBDINFO)];
132  } prevState;
133 
134  union {
136  uint8_t bLeds;
137  } kbdLockingKeys;
138 
139  uint8_t OemToAscii(uint8_t mod, uint8_t key);
140 
141 public:
142 
144  kbdLockingKeys.bLeds = 0;
145  };
146 
147  void Parse(USBHID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf);
148 
149 protected:
150 
151  virtual uint8_t HandleLockingKeys(USBHID* hid, uint8_t key) {
152  uint8_t old_keys = kbdLockingKeys.bLeds;
153 
154  switch(key) {
156  kbdLockingKeys.kbdLeds.bmNumLock = ~kbdLockingKeys.kbdLeds.bmNumLock;
157  break;
159  kbdLockingKeys.kbdLeds.bmCapsLock = ~kbdLockingKeys.kbdLeds.bmCapsLock;
160  break;
162  kbdLockingKeys.kbdLeds.bmScrollLock = ~kbdLockingKeys.kbdLeds.bmScrollLock;
163  break;
164  }
165 
166  if(old_keys != kbdLockingKeys.bLeds && hid) {
167  uint8_t lockLeds = kbdLockingKeys.bLeds;
168  return (hid->SetReport(0, 0/*hid->GetIface()*/, 2, 0, 1, &lockLeds));
169  }
170 
171  return 0;
172  };
173 
174  virtual void OnControlKeysChanged(uint8_t before __attribute__((unused)), uint8_t after __attribute__((unused))) {
175  };
176 
177  virtual void OnKeyDown(uint8_t mod __attribute__((unused)), uint8_t key __attribute__((unused))) {
178  };
179 
180  virtual void OnKeyUp(uint8_t mod __attribute__((unused)), uint8_t key __attribute__((unused))) {
181  };
182 
183  virtual const uint8_t *getNumKeys() {
184  return numKeys;
185  };
186 
187  virtual const uint8_t *getSymKeysUp() {
188  return symKeysUp;
189  };
190 
191  virtual const uint8_t *getSymKeysLo() {
192  return symKeysLo;
193  };
194 
195  virtual const uint8_t *getPadKeys() {
196  return padKeys;
197  };
198 };
199 
200 template <const uint8_t BOOT_PROTOCOL>
201 class HIDBoot : public USBHID //public USBDeviceConfig, public UsbConfigXtracter
202 {
203  EpInfo epInfo[totalEndpoints(BOOT_PROTOCOL)];
204  HIDReportParser *pRptParser[epMUL(BOOT_PROTOCOL)];
205 
206  uint8_t bConfNum; // configuration number
207  uint8_t bIfaceNum; // Interface Number
208  uint8_t bNumIface; // number of interfaces in the configuration
209  uint8_t bNumEP; // total number of EP in the configuration
210  uint32_t qNextPollTime; // next poll time
211  bool bPollEnable; // poll enable flag
212  uint8_t bInterval; // largest interval
213  bool bRptProtoEnable; // Report Protocol enable flag
214 
215  void Initialize();
216 
217  virtual HIDReportParser* GetReportParser(uint8_t id) {
218  return pRptParser[id];
219  };
220 
221 public:
222  HIDBoot(USB *p, bool bRptProtoEnable = false);
223 
224  virtual bool SetReportParser(uint8_t id, HIDReportParser *prs) {
225  pRptParser[id] = prs;
226  return true;
227  };
228 
229  // USBDeviceConfig implementation
230  uint8_t Init(uint8_t parent, uint8_t port, bool lowspeed);
231  uint8_t Release();
232  uint8_t Poll();
233 
234  virtual uint8_t GetAddress() {
235  return bAddress;
236  };
237 
238  virtual bool isReady() {
239  return bPollEnable;
240  };
241 
242  // UsbConfigXtracter implementation
243  // Method should be defined here if virtual.
244  virtual void EndpointXtract(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t proto, const USB_ENDPOINT_DESCRIPTOR *ep);
245 
246  virtual bool DEVCLASSOK(uint8_t klass) {
247  return (klass == USB_CLASS_HID);
248  }
249 
250  virtual bool DEVSUBCLASSOK(uint8_t subklass) {
251  return (subklass == BOOT_PROTOCOL);
252  }
253 };
254 
255 template <const uint8_t BOOT_PROTOCOL>
256 HIDBoot<BOOT_PROTOCOL>::HIDBoot(USB *p, bool bRptProtoEnable/* = false*/) :
257 USBHID(p),
258 qNextPollTime(0),
259 bPollEnable(false),
260 bRptProtoEnable(bRptProtoEnable) {
261  Initialize();
262 
263  for(int i = 0; i < epMUL(BOOT_PROTOCOL); i++) {
264  pRptParser[i] = NULL;
265  }
266  if(pUsb)
267  pUsb->RegisterDeviceClass(this);
268 }
269 
270 template <const uint8_t BOOT_PROTOCOL>
272  for(int i = 0; i < totalEndpoints(BOOT_PROTOCOL); i++) {
273  epInfo[i].epAddr = 0;
274  epInfo[i].maxPktSize = (i) ? 0 : 8;
275  epInfo[i].bmSndToggle = 0;
276  epInfo[i].bmRcvToggle = 0;
277  epInfo[i].bmNakPower = (i) ? USB_NAK_NOWAIT : USB_NAK_MAX_POWER;
278  }
279  bNumEP = 1;
280  bNumIface = 0;
281  bConfNum = 0;
282 }
283 
284 template <const uint8_t BOOT_PROTOCOL>
285 uint8_t HIDBoot<BOOT_PROTOCOL>::Init(uint8_t parent, uint8_t port, bool lowspeed) {
286  const uint8_t constBufSize = sizeof (USB_DEVICE_DESCRIPTOR);
287 
288  uint8_t buf[constBufSize];
289  USB_DEVICE_DESCRIPTOR* device;
290  uint8_t rcode;
291  UsbDevice *p = NULL;
292  EpInfo *oldep_ptr = NULL;
293  uint8_t len = 0;
294  //uint16_t cd_len = 0;
295 
296  uint8_t num_of_conf; // number of configurations
297  //uint8_t num_of_intf; // number of interfaces
298 
299  AddressPool &addrPool = pUsb->GetAddressPool();
300 
301  USBTRACE("BM Init\r\n");
302  //USBTRACE2("totalEndpoints:", (uint8_t) (totalEndpoints(BOOT_PROTOCOL)));
303  //USBTRACE2("epMUL:", epMUL(BOOT_PROTOCOL));
304 
305  if(bAddress)
307 
308  bInterval = 0;
309  // Get pointer to pseudo device with address 0 assigned
310  p = addrPool.GetUsbDevicePtr(0);
311 
312  if(!p)
314 
315  if(!p->epinfo) {
316  USBTRACE("epinfo\r\n");
318  }
319 
320  // Save old pointer to EP_RECORD of address 0
321  oldep_ptr = p->epinfo;
322 
323  // Temporary assign new pointer to epInfo to p->epinfo in order to avoid toggle inconsistence
324  p->epinfo = epInfo;
325 
326  p->lowspeed = lowspeed;
327 
328  // Get device descriptor
329  rcode = pUsb->getDevDescr(0, 0, 8, (uint8_t*)buf);
330 
331  if(!rcode)
332  len = (buf[0] > constBufSize) ? constBufSize : buf[0];
333 
334  device = reinterpret_cast<USB_DEVICE_DESCRIPTOR*>(buf);
335 
336  if(rcode) {
337  // Restore p->epinfo
338  p->epinfo = oldep_ptr;
339 
340  goto FailGetDevDescr;
341  }
342 
343  // Restore p->epinfo
344  p->epinfo = oldep_ptr;
345 
346  // Allocate new address according to device class
347  bAddress = addrPool.AllocAddress(parent, false, port);
348 
349  if(!bAddress)
351 
352  // Extract Max Packet Size from the device descriptor
353  epInfo[0].maxPktSize = (uint8_t)(device->bMaxPacketSize0);
354 
355  // Assign new address to the device
356  rcode = pUsb->setAddr(0, 0, bAddress);
357 
358  if(rcode) {
359  p->lowspeed = false;
360  addrPool.FreeAddress(bAddress);
361  bAddress = 0;
362  USBTRACE2("setAddr:", rcode);
363  return rcode;
364  }
365  //delay(2); //per USB 2.0 sect.9.2.6.3
366 
367  USBTRACE2("Addr:", bAddress);
368 
369  p->lowspeed = false;
370 
371  p = addrPool.GetUsbDevicePtr(bAddress);
372 
373  if(!p)
375 
376  p->lowspeed = lowspeed;
377 
378  if(len)
379  rcode = pUsb->getDevDescr(bAddress, 0, len, (uint8_t*)buf);
380 
381  if(rcode)
382  goto FailGetDevDescr;
383 
384  num_of_conf = device->bNumConfigurations;
385 
386  USBTRACE2("NC:", num_of_conf);
387 
388  // GCC will optimize unused stuff away.
390  USBTRACE("HID_PROTOCOL_KEYBOARD AND MOUSE\r\n");
395  CP_MASK_COMPARE_ALL > confDescrParser(this);
396  confDescrParser.SetOR(); // Use the OR variant.
397  for(uint8_t i = 0; i < num_of_conf; i++) {
398  pUsb->getConfDescr(bAddress, 0, i, &confDescrParser);
399  if(bNumEP == (uint8_t)(totalEndpoints(BOOT_PROTOCOL)))
400  break;
401  }
402  } else {
403  // GCC will optimize unused stuff away.
404  if(BOOT_PROTOCOL & USB_HID_PROTOCOL_KEYBOARD) {
405  USBTRACE("HID_PROTOCOL_KEYBOARD\r\n");
406  for(uint8_t i = 0; i < num_of_conf; i++) {
411  CP_MASK_COMPARE_ALL> confDescrParserA(this);
412 
413  pUsb->getConfDescr(bAddress, 0, i, &confDescrParserA);
414  if(bNumEP == (uint8_t)(totalEndpoints(BOOT_PROTOCOL)))
415  break;
416  }
417  }
418 
419  // GCC will optimize unused stuff away.
420  if(BOOT_PROTOCOL & USB_HID_PROTOCOL_MOUSE) {
421  USBTRACE("HID_PROTOCOL_MOUSE\r\n");
422  for(uint8_t i = 0; i < num_of_conf; i++) {
427  CP_MASK_COMPARE_ALL> confDescrParserB(this);
428 
429  pUsb->getConfDescr(bAddress, 0, i, &confDescrParserB);
430  if(bNumEP == ((uint8_t)(totalEndpoints(BOOT_PROTOCOL))))
431  break;
432 
433  }
434  }
435  }
436  USBTRACE2("bNumEP:", bNumEP);
437 
438  if(bNumEP != (uint8_t)(totalEndpoints(BOOT_PROTOCOL))) {
440  goto Fail;
441  }
442 
443  // Assign epInfo to epinfo pointer
444  rcode = pUsb->setEpInfoEntry(bAddress, bNumEP, epInfo);
445  //USBTRACE2("setEpInfoEntry returned ", rcode);
446  USBTRACE2("Cnf:", bConfNum);
447 
448  delay(1000);
449 
450  // Set Configuration Value
451  rcode = pUsb->setConf(bAddress, 0, bConfNum);
452 
453  if(rcode)
454  goto FailSetConfDescr;
455 
456  delay(1000);
457 
458  USBTRACE2("bIfaceNum:", bIfaceNum);
459  USBTRACE2("bNumIface:", bNumIface);
460 
461  // Yes, mouse wants SetProtocol and SetIdle too!
462  for(uint8_t i = 0; i < epMUL(BOOT_PROTOCOL); i++) {
463  USBTRACE2("\r\nInterface:", i);
464  rcode = SetProtocol(i, bRptProtoEnable ? HID_RPT_PROTOCOL : USB_HID_BOOT_PROTOCOL);
465  if(rcode) goto FailSetProtocol;
466  USBTRACE2("PROTOCOL SET HID_BOOT rcode:", rcode);
467  rcode = SetIdle(i, 0, 0);
468  USBTRACE2("SET_IDLE rcode:", rcode);
469  // if(rcode) goto FailSetIdle; This can fail.
470  // Get the RPIPE and just throw it away.
472  rcode = GetReportDescr(i, &sink);
473  USBTRACE2("RPIPE rcode:", rcode);
474  }
475 
476  // Get RPIPE and throw it away.
477 
478  if(BOOT_PROTOCOL & USB_HID_PROTOCOL_KEYBOARD) {
479  // Wake keyboard interface by twinkling up to 5 LEDs that are in the spec.
480  // kana, compose, scroll, caps, num
481  rcode = 0x20; // Reuse rcode.
482  while(rcode) {
483  rcode >>= 1;
484  // Ignore any error returned, we don't care if LED is not supported
485  SetReport(0, 0, 2, 0, 1, &rcode); // Eventually becomes zero (All off)
486  delay(25);
487  }
488  }
489  USBTRACE("BM configured\r\n");
490 
491  bPollEnable = true;
492  return 0;
493 
494 FailGetDevDescr:
495 #ifdef DEBUG_USB_HOST
497  goto Fail;
498 #endif
499 
500  //FailSetDevTblEntry:
501  //#ifdef DEBUG_USB_HOST
502  // NotifyFailSetDevTblEntry();
503  // goto Fail;
504  //#endif
505 
506  //FailGetConfDescr:
507  //#ifdef DEBUG_USB_HOST
508  // NotifyFailGetConfDescr();
509  // goto Fail;
510  //#endif
511 
512 FailSetConfDescr:
513 #ifdef DEBUG_USB_HOST
515  goto Fail;
516 #endif
517 
518 FailSetProtocol:
519 #ifdef DEBUG_USB_HOST
520  USBTRACE("SetProto:");
521  goto Fail;
522 #endif
523 
524  //FailSetIdle:
525  //#ifdef DEBUG_USB_HOST
526  // USBTRACE("SetIdle:");
527  //#endif
528 
529 Fail:
530 #ifdef DEBUG_USB_HOST
531  NotifyFail(rcode);
532 #endif
533  Release();
534 
535  return rcode;
536 }
537 
538 template <const uint8_t BOOT_PROTOCOL>
539 void HIDBoot<BOOT_PROTOCOL>::EndpointXtract(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t proto, const USB_ENDPOINT_DESCRIPTOR *pep) {
540 
541  // If the first configuration satisfies, the others are not considered.
542  //if(bNumEP > 1 && conf != bConfNum)
543  if(bNumEP == totalEndpoints(BOOT_PROTOCOL))
544  return;
545 
546  bConfNum = conf;
547  bIfaceNum = iface;
548 
549  if((pep->bmAttributes & bmUSB_TRANSFER_TYPE) == USB_TRANSFER_TYPE_INTERRUPT && (pep->bEndpointAddress & 0x80) == 0x80) {
550  if(pep->bInterval > bInterval) bInterval = pep->bInterval;
551 
552  // Fill in the endpoint info structure
553  epInfo[bNumEP].epAddr = (pep->bEndpointAddress & 0x0F);
554  epInfo[bNumEP].maxPktSize = (uint8_t)pep->wMaxPacketSize;
555  epInfo[bNumEP].bmSndToggle = 0;
556  epInfo[bNumEP].bmRcvToggle = 0;
557  epInfo[bNumEP].bmNakPower = USB_NAK_NOWAIT;
558  bNumEP++;
559 
560  }
561 }
562 
563 template <const uint8_t BOOT_PROTOCOL>
566 
567  bConfNum = 0;
568  bIfaceNum = 0;
569  bNumEP = 1;
570  bAddress = 0;
571  qNextPollTime = 0;
572  bPollEnable = false;
573 
574  return 0;
575 }
576 
577 template <const uint8_t BOOT_PROTOCOL>
579  uint8_t rcode = 0;
580 
581  if(bPollEnable && ((int32_t)((uint32_t)millis() - qNextPollTime) >= 0L)) {
582 
583  // To-do: optimize manually, using the for loop only if needed.
584  for(int i = 0; i < epMUL(BOOT_PROTOCOL); i++) {
585  const uint16_t const_buff_len = 16;
586  uint8_t buf[const_buff_len];
587 
588  USBTRACE3("(hidboot.h) i=", i, 0x81);
589  USBTRACE3("(hidboot.h) epInfo[epInterruptInIndex + i].epAddr=", epInfo[epInterruptInIndex + i].epAddr, 0x81);
590  USBTRACE3("(hidboot.h) epInfo[epInterruptInIndex + i].maxPktSize=", epInfo[epInterruptInIndex + i].maxPktSize, 0x81);
591  uint16_t read = (uint16_t)epInfo[epInterruptInIndex + i].maxPktSize;
592 
593  rcode = pUsb->inTransfer(bAddress, epInfo[epInterruptInIndex + i].epAddr, &read, buf);
594  // SOME buggy dongles report extra keys (like sleep) using a 2 byte packet on the wrong endpoint.
595  // Since keyboard and mice must report at least 3 bytes, we ignore the extra data.
596  if(!rcode && read > 2) {
597  if(pRptParser[i])
598  pRptParser[i]->Parse((USBHID*)this, 0, (uint8_t)read, buf);
599 #ifdef DEBUG_USB_HOST
600  // We really don't care about errors and anomalies unless we are debugging.
601  } else {
602  if(rcode != hrNAK) {
603  USBTRACE3("(hidboot.h) Poll:", rcode, 0x81);
604  }
605  if(!rcode && read) {
606  USBTRACE3("(hidboot.h) Strange read count: ", read, 0x80);
607  USBTRACE3("(hidboot.h) Interface:", i, 0x80);
608  }
609  }
610 
611  if(!rcode && read && (UsbDEBUGlvl > 0x7f)) {
612  for(uint8_t i = 0; i < read; i++) {
613  PrintHex<uint8_t > (buf[i], 0x80);
614  USBTRACE1(" ", 0x80);
615  }
616  if(read)
617  USBTRACE1("\r\n", 0x80);
618 #endif
619  }
620 
621  }
622  qNextPollTime = (uint32_t)millis() + bInterval;
623  }
624  return rcode;
625 }
626 
627 #endif // __HIDBOOTMOUSE_H__
uint8_t getConfDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t conf, uint8_t *dataptr)
Definition: Usb.cpp:801
+Go to the documentation of this file.
1 /* Copyright (C) 2011 Circuits At Home, LTD. All rights reserved.
2 
3 This software may be distributed and modified under the terms of the GNU
4 General Public License version 2 (GPL2) as published by the Free Software
5 Foundation and appearing in the file GPL2.TXT included in the packaging of
6 this file. Please note that GPL2 Section 2[b] requires that all works based
7 on this software must also be made publicly available under the terms of
8 the GPL2 ("Copyleft").
9 
10 Contact information
11 -------------------
12 
13 Circuits At Home, LTD
14 Web : http://www.circuitsathome.com
15 e-mail : support@circuitsathome.com
16  */
17 #if !defined(__HIDBOOT_H__)
18 #define __HIDBOOT_H__
19 
20 #include "usbhid.h"
21 
22 #define UHS_HID_BOOT_KEY_ZERO 0x27
23 #define UHS_HID_BOOT_KEY_ENTER 0x28
24 #define UHS_HID_BOOT_KEY_SPACE 0x2c
25 #define UHS_HID_BOOT_KEY_CAPS_LOCK 0x39
26 #define UHS_HID_BOOT_KEY_SCROLL_LOCK 0x47
27 #define UHS_HID_BOOT_KEY_NUM_LOCK 0x53
28 #define UHS_HID_BOOT_KEY_ZERO2 0x62
29 #define UHS_HID_BOOT_KEY_PERIOD 0x63
30 
31 // Don't worry, GCC will optimize the result to a final value.
32 #define bitsEndpoints(p) ((((p) & USB_HID_PROTOCOL_KEYBOARD)? 2 : 0) | (((p) & USB_HID_PROTOCOL_MOUSE)? 1 : 0))
33 #define totalEndpoints(p) ((bitsEndpoints(p) == 3) ? 3 : 2)
34 #define epMUL(p) ((((p) & USB_HID_PROTOCOL_KEYBOARD)? 1 : 0) + (((p) & USB_HID_PROTOCOL_MOUSE)? 1 : 0))
35 
36 // Already defined in hid.h
37 // #define HID_MAX_HID_CLASS_DESCRIPTORS 5
38 
39 struct MOUSEINFO {
40 
41  struct {
42  uint8_t bmLeftButton : 1;
43  uint8_t bmRightButton : 1;
44  uint8_t bmMiddleButton : 1;
45  uint8_t bmDummy : 5;
46  };
47  int8_t dX;
48  int8_t dY;
49 };
50 
52 
53  union {
55  uint8_t bInfo[sizeof (MOUSEINFO)];
56  } prevState;
57 
58 public:
59  void Parse(USBHID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf);
60 
61 protected:
62 
63  virtual void OnMouseMove(MOUSEINFO *mi __attribute__((unused))) {
64  };
65 
66  virtual void OnLeftButtonUp(MOUSEINFO *mi __attribute__((unused))) {
67  };
68 
69  virtual void OnLeftButtonDown(MOUSEINFO *mi __attribute__((unused))) {
70  };
71 
72  virtual void OnRightButtonUp(MOUSEINFO *mi __attribute__((unused))) {
73  };
74 
75  virtual void OnRightButtonDown(MOUSEINFO *mi __attribute__((unused))) {
76  };
77 
78  virtual void OnMiddleButtonUp(MOUSEINFO *mi __attribute__((unused))) {
79  };
80 
81  virtual void OnMiddleButtonDown(MOUSEINFO *mi __attribute__((unused))) {
82  };
83 };
84 
85 struct MODIFIERKEYS {
86  uint8_t bmLeftCtrl : 1;
87  uint8_t bmLeftShift : 1;
88  uint8_t bmLeftAlt : 1;
89  uint8_t bmLeftGUI : 1;
90  uint8_t bmRightCtrl : 1;
91  uint8_t bmRightShift : 1;
92  uint8_t bmRightAlt : 1;
93  uint8_t bmRightGUI : 1;
94 };
95 
96 struct KBDINFO {
97 
98  struct {
99  uint8_t bmLeftCtrl : 1;
100  uint8_t bmLeftShift : 1;
101  uint8_t bmLeftAlt : 1;
102  uint8_t bmLeftGUI : 1;
103  uint8_t bmRightCtrl : 1;
104  uint8_t bmRightShift : 1;
105  uint8_t bmRightAlt : 1;
106  uint8_t bmRightGUI : 1;
107  };
108  uint8_t bReserved;
109  uint8_t Keys[6];
110 };
111 
112 struct KBDLEDS {
113  uint8_t bmNumLock : 1;
114  uint8_t bmCapsLock : 1;
115  uint8_t bmScrollLock : 1;
116  uint8_t bmCompose : 1;
117  uint8_t bmKana : 1;
118  uint8_t bmReserved : 3;
119 };
120 
122  static const uint8_t numKeys[10];
123  static const uint8_t symKeysUp[12];
124  static const uint8_t symKeysLo[12];
125  static const uint8_t padKeys[5];
126 
127 protected:
128 
129  union {
131  uint8_t bInfo[sizeof (KBDINFO)];
132  } prevState;
133 
134  union {
136  uint8_t bLeds;
137  } kbdLockingKeys;
138 
139  uint8_t OemToAscii(uint8_t mod, uint8_t key);
140 
141 public:
142 
144  kbdLockingKeys.bLeds = 0;
145  };
146 
147  void Parse(USBHID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf);
148 
149 protected:
150 
151  virtual uint8_t HandleLockingKeys(USBHID* hid, uint8_t key) {
152  uint8_t old_keys = kbdLockingKeys.bLeds;
153 
154  switch(key) {
156  kbdLockingKeys.kbdLeds.bmNumLock = ~kbdLockingKeys.kbdLeds.bmNumLock;
157  break;
159  kbdLockingKeys.kbdLeds.bmCapsLock = ~kbdLockingKeys.kbdLeds.bmCapsLock;
160  break;
162  kbdLockingKeys.kbdLeds.bmScrollLock = ~kbdLockingKeys.kbdLeds.bmScrollLock;
163  break;
164  }
165 
166  if(old_keys != kbdLockingKeys.bLeds && hid) {
167  uint8_t lockLeds = kbdLockingKeys.bLeds;
168  return (hid->SetReport(0, 0/*hid->GetIface()*/, 2, 0, 1, &lockLeds));
169  }
170 
171  return 0;
172  };
173 
174  virtual void OnControlKeysChanged(uint8_t before __attribute__((unused)), uint8_t after __attribute__((unused))) {
175  };
176 
177  virtual void OnKeyDown(uint8_t mod __attribute__((unused)), uint8_t key __attribute__((unused))) {
178  };
179 
180  virtual void OnKeyUp(uint8_t mod __attribute__((unused)), uint8_t key __attribute__((unused))) {
181  };
182 
183  virtual const uint8_t *getNumKeys() {
184  return numKeys;
185  };
186 
187  virtual const uint8_t *getSymKeysUp() {
188  return symKeysUp;
189  };
190 
191  virtual const uint8_t *getSymKeysLo() {
192  return symKeysLo;
193  };
194 
195  virtual const uint8_t *getPadKeys() {
196  return padKeys;
197  };
198 };
199 
200 template <const uint8_t BOOT_PROTOCOL>
201 class HIDBoot : public USBHID //public USBDeviceConfig, public UsbConfigXtracter
202 {
203  EpInfo epInfo[totalEndpoints(BOOT_PROTOCOL)];
204  HIDReportParser *pRptParser[epMUL(BOOT_PROTOCOL)];
205 
206  uint8_t bConfNum; // configuration number
207  uint8_t bIfaceNum; // Interface Number
208  uint8_t bNumIface; // number of interfaces in the configuration
209  uint8_t bNumEP; // total number of EP in the configuration
210  uint32_t qNextPollTime; // next poll time
211  bool bPollEnable; // poll enable flag
212  uint8_t bInterval; // largest interval
213  bool bRptProtoEnable; // Report Protocol enable flag
214 
215  void Initialize();
216 
217  virtual HIDReportParser* GetReportParser(uint8_t id) {
218  return pRptParser[id];
219  };
220 
221 public:
222  HIDBoot(USB *p, bool bRptProtoEnable = false);
223 
224  virtual bool SetReportParser(uint8_t id, HIDReportParser *prs) {
225  pRptParser[id] = prs;
226  return true;
227  };
228 
229  // USBDeviceConfig implementation
230  uint8_t Init(uint8_t parent, uint8_t port, bool lowspeed);
231  uint8_t Release();
232  uint8_t Poll();
233 
234  virtual uint8_t GetAddress() {
235  return bAddress;
236  };
237 
238  virtual bool isReady() {
239  return bPollEnable;
240  };
241 
242  // UsbConfigXtracter implementation
243  // Method should be defined here if virtual.
244  virtual void EndpointXtract(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t proto, const USB_ENDPOINT_DESCRIPTOR *ep);
245 
246  virtual bool DEVCLASSOK(uint8_t klass) {
247  return (klass == USB_CLASS_HID);
248  }
249 
250  virtual bool DEVSUBCLASSOK(uint8_t subklass) {
251  return (subklass == BOOT_PROTOCOL);
252  }
253 };
254 
255 template <const uint8_t BOOT_PROTOCOL>
256 HIDBoot<BOOT_PROTOCOL>::HIDBoot(USB *p, bool bRptProtoEnable/* = false*/) :
257 USBHID(p),
258 qNextPollTime(0),
259 bPollEnable(false),
260 bRptProtoEnable(bRptProtoEnable) {
261  Initialize();
262 
263  for(int i = 0; i < epMUL(BOOT_PROTOCOL); i++) {
264  pRptParser[i] = NULL;
265  }
266  if(pUsb)
267  pUsb->RegisterDeviceClass(this);
268 }
269 
270 template <const uint8_t BOOT_PROTOCOL>
272  for(int i = 0; i < totalEndpoints(BOOT_PROTOCOL); i++) {
273  epInfo[i].epAddr = 0;
274  epInfo[i].maxPktSize = (i) ? 0 : 8;
275  epInfo[i].bmSndToggle = 0;
276  epInfo[i].bmRcvToggle = 0;
277  epInfo[i].bmNakPower = (i) ? USB_NAK_NOWAIT : USB_NAK_MAX_POWER;
278  }
279  bNumEP = 1;
280  bNumIface = 0;
281  bConfNum = 0;
282 }
283 
284 template <const uint8_t BOOT_PROTOCOL>
285 uint8_t HIDBoot<BOOT_PROTOCOL>::Init(uint8_t parent, uint8_t port, bool lowspeed) {
286  const uint8_t constBufSize = sizeof (USB_DEVICE_DESCRIPTOR);
287 
288  uint8_t buf[constBufSize];
289  USB_DEVICE_DESCRIPTOR* device;
290  uint8_t rcode;
291  UsbDevice *p = NULL;
292  EpInfo *oldep_ptr = NULL;
293  uint8_t len = 0;
294  //uint16_t cd_len = 0;
295 
296  uint8_t num_of_conf; // number of configurations
297  //uint8_t num_of_intf; // number of interfaces
298 
299  AddressPool &addrPool = pUsb->GetAddressPool();
300 
301  USBTRACE("BM Init\r\n");
302  //USBTRACE2("totalEndpoints:", (uint8_t) (totalEndpoints(BOOT_PROTOCOL)));
303  //USBTRACE2("epMUL:", epMUL(BOOT_PROTOCOL));
304 
305  if(bAddress)
307 
308  bInterval = 0;
309  // Get pointer to pseudo device with address 0 assigned
310  p = addrPool.GetUsbDevicePtr(0);
311 
312  if(!p)
314 
315  if(!p->epinfo) {
316  USBTRACE("epinfo\r\n");
318  }
319 
320  // Save old pointer to EP_RECORD of address 0
321  oldep_ptr = p->epinfo;
322 
323  // Temporary assign new pointer to epInfo to p->epinfo in order to avoid toggle inconsistence
324  p->epinfo = epInfo;
325 
326  p->lowspeed = lowspeed;
327 
328  // Get device descriptor
329  rcode = pUsb->getDevDescr(0, 0, 8, (uint8_t*)buf);
330 
331  if(!rcode)
332  len = (buf[0] > constBufSize) ? constBufSize : buf[0];
333 
334  device = reinterpret_cast<USB_DEVICE_DESCRIPTOR*>(buf);
335 
336  if(rcode) {
337  // Restore p->epinfo
338  p->epinfo = oldep_ptr;
339 
340  goto FailGetDevDescr;
341  }
342 
343  // Restore p->epinfo
344  p->epinfo = oldep_ptr;
345 
346  // Allocate new address according to device class
347  bAddress = addrPool.AllocAddress(parent, false, port);
348 
349  if(!bAddress)
351 
352  // Extract Max Packet Size from the device descriptor
353  epInfo[0].maxPktSize = (uint8_t)(device->bMaxPacketSize0);
354 
355  // Assign new address to the device
356  rcode = pUsb->setAddr(0, 0, bAddress);
357 
358  if(rcode) {
359  p->lowspeed = false;
360  addrPool.FreeAddress(bAddress);
361  bAddress = 0;
362  USBTRACE2("setAddr:", rcode);
363  return rcode;
364  }
365  //delay(2); //per USB 2.0 sect.9.2.6.3
366 
367  USBTRACE2("Addr:", bAddress);
368 
369  p->lowspeed = false;
370 
371  p = addrPool.GetUsbDevicePtr(bAddress);
372 
373  if(!p)
375 
376  p->lowspeed = lowspeed;
377 
378  if(len)
379  rcode = pUsb->getDevDescr(bAddress, 0, len, (uint8_t*)buf);
380 
381  if(rcode)
382  goto FailGetDevDescr;
383 
384  num_of_conf = device->bNumConfigurations;
385 
386  USBTRACE2("NC:", num_of_conf);
387 
388  // GCC will optimize unused stuff away.
390  USBTRACE("HID_PROTOCOL_KEYBOARD AND MOUSE\r\n");
395  CP_MASK_COMPARE_ALL > confDescrParser(this);
396  confDescrParser.SetOR(); // Use the OR variant.
397  for(uint8_t i = 0; i < num_of_conf; i++) {
398  pUsb->getConfDescr(bAddress, 0, i, &confDescrParser);
399  if(bNumEP == (uint8_t)(totalEndpoints(BOOT_PROTOCOL)))
400  break;
401  }
402  } else {
403  // GCC will optimize unused stuff away.
404  if(BOOT_PROTOCOL & USB_HID_PROTOCOL_KEYBOARD) {
405  USBTRACE("HID_PROTOCOL_KEYBOARD\r\n");
406  for(uint8_t i = 0; i < num_of_conf; i++) {
411  CP_MASK_COMPARE_ALL> confDescrParserA(this);
412 
413  pUsb->getConfDescr(bAddress, 0, i, &confDescrParserA);
414  if(bNumEP == (uint8_t)(totalEndpoints(BOOT_PROTOCOL)))
415  break;
416  }
417  }
418 
419  // GCC will optimize unused stuff away.
420  if(BOOT_PROTOCOL & USB_HID_PROTOCOL_MOUSE) {
421  USBTRACE("HID_PROTOCOL_MOUSE\r\n");
422  for(uint8_t i = 0; i < num_of_conf; i++) {
427  CP_MASK_COMPARE_ALL> confDescrParserB(this);
428 
429  pUsb->getConfDescr(bAddress, 0, i, &confDescrParserB);
430  if(bNumEP == ((uint8_t)(totalEndpoints(BOOT_PROTOCOL))))
431  break;
432 
433  }
434  }
435  }
436  USBTRACE2("bNumEP:", bNumEP);
437 
438  if(bNumEP != (uint8_t)(totalEndpoints(BOOT_PROTOCOL))) {
440  goto Fail;
441  }
442 
443  // Assign epInfo to epinfo pointer
444  rcode = pUsb->setEpInfoEntry(bAddress, bNumEP, epInfo);
445  //USBTRACE2("setEpInfoEntry returned ", rcode);
446  USBTRACE2("Cnf:", bConfNum);
447 
448  delay(1000);
449 
450  // Set Configuration Value
451  rcode = pUsb->setConf(bAddress, 0, bConfNum);
452 
453  if(rcode)
454  goto FailSetConfDescr;
455 
456  delay(1000);
457 
458  USBTRACE2("bIfaceNum:", bIfaceNum);
459  USBTRACE2("bNumIface:", bNumIface);
460 
461  // Yes, mouse wants SetProtocol and SetIdle too!
462  for(uint8_t i = 0; i < epMUL(BOOT_PROTOCOL); i++) {
463  USBTRACE2("\r\nInterface:", i);
464  rcode = SetProtocol(i, bRptProtoEnable ? HID_RPT_PROTOCOL : USB_HID_BOOT_PROTOCOL);
465  if(rcode) goto FailSetProtocol;
466  USBTRACE2("PROTOCOL SET HID_BOOT rcode:", rcode);
467  rcode = SetIdle(i, 0, 0);
468  USBTRACE2("SET_IDLE rcode:", rcode);
469  // if(rcode) goto FailSetIdle; This can fail.
470  // Get the RPIPE and just throw it away.
472  rcode = GetReportDescr(i, &sink);
473  USBTRACE2("RPIPE rcode:", rcode);
474  }
475 
476  // Get RPIPE and throw it away.
477 
478  if(BOOT_PROTOCOL & USB_HID_PROTOCOL_KEYBOARD) {
479  // Wake keyboard interface by twinkling up to 5 LEDs that are in the spec.
480  // kana, compose, scroll, caps, num
481  rcode = 0x20; // Reuse rcode.
482  while(rcode) {
483  rcode >>= 1;
484  // Ignore any error returned, we don't care if LED is not supported
485  SetReport(0, 0, 2, 0, 1, &rcode); // Eventually becomes zero (All off)
486  delay(25);
487  }
488  }
489  USBTRACE("BM configured\r\n");
490 
491  bPollEnable = true;
492  return 0;
493 
494 FailGetDevDescr:
495 #ifdef DEBUG_USB_HOST
497  goto Fail;
498 #endif
499 
500  //FailSetDevTblEntry:
501  //#ifdef DEBUG_USB_HOST
502  // NotifyFailSetDevTblEntry();
503  // goto Fail;
504  //#endif
505 
506  //FailGetConfDescr:
507  //#ifdef DEBUG_USB_HOST
508  // NotifyFailGetConfDescr();
509  // goto Fail;
510  //#endif
511 
512 FailSetConfDescr:
513 #ifdef DEBUG_USB_HOST
515  goto Fail;
516 #endif
517 
518 FailSetProtocol:
519 #ifdef DEBUG_USB_HOST
520  USBTRACE("SetProto:");
521  goto Fail;
522 #endif
523 
524  //FailSetIdle:
525  //#ifdef DEBUG_USB_HOST
526  // USBTRACE("SetIdle:");
527  //#endif
528 
529 Fail:
530 #ifdef DEBUG_USB_HOST
531  NotifyFail(rcode);
532 #endif
533  Release();
534 
535  return rcode;
536 }
537 
538 template <const uint8_t BOOT_PROTOCOL>
539 void HIDBoot<BOOT_PROTOCOL>::EndpointXtract(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t proto, const USB_ENDPOINT_DESCRIPTOR *pep) {
540 
541  // If the first configuration satisfies, the others are not considered.
542  //if(bNumEP > 1 && conf != bConfNum)
543  if(bNumEP == totalEndpoints(BOOT_PROTOCOL))
544  return;
545 
546  bConfNum = conf;
547  bIfaceNum = iface;
548 
549  if((pep->bmAttributes & bmUSB_TRANSFER_TYPE) == USB_TRANSFER_TYPE_INTERRUPT && (pep->bEndpointAddress & 0x80) == 0x80) {
550  if(pep->bInterval > bInterval) bInterval = pep->bInterval;
551 
552  // Fill in the endpoint info structure
553  epInfo[bNumEP].epAddr = (pep->bEndpointAddress & 0x0F);
554  epInfo[bNumEP].maxPktSize = (uint8_t)pep->wMaxPacketSize;
555  epInfo[bNumEP].bmSndToggle = 0;
556  epInfo[bNumEP].bmRcvToggle = 0;
557  epInfo[bNumEP].bmNakPower = USB_NAK_NOWAIT;
558  bNumEP++;
559 
560  }
561 }
562 
563 template <const uint8_t BOOT_PROTOCOL>
566 
567  bConfNum = 0;
568  bIfaceNum = 0;
569  bNumEP = 1;
570  bAddress = 0;
571  qNextPollTime = 0;
572  bPollEnable = false;
573 
574  return 0;
575 }
576 
577 template <const uint8_t BOOT_PROTOCOL>
579  uint8_t rcode = 0;
580 
581  if(bPollEnable && ((int32_t)((uint32_t)millis() - qNextPollTime) >= 0L)) {
582 
583  // To-do: optimize manually, using the for loop only if needed.
584  for(int i = 0; i < epMUL(BOOT_PROTOCOL); i++) {
585  const uint16_t const_buff_len = 16;
586  uint8_t buf[const_buff_len];
587 
588  USBTRACE3("(hidboot.h) i=", i, 0x81);
589  USBTRACE3("(hidboot.h) epInfo[epInterruptInIndex + i].epAddr=", epInfo[epInterruptInIndex + i].epAddr, 0x81);
590  USBTRACE3("(hidboot.h) epInfo[epInterruptInIndex + i].maxPktSize=", epInfo[epInterruptInIndex + i].maxPktSize, 0x81);
591  uint16_t read = (uint16_t)epInfo[epInterruptInIndex + i].maxPktSize;
592 
593  rcode = pUsb->inTransfer(bAddress, epInfo[epInterruptInIndex + i].epAddr, &read, buf);
594  // SOME buggy dongles report extra keys (like sleep) using a 2 byte packet on the wrong endpoint.
595  // Since keyboard and mice must report at least 3 bytes, we ignore the extra data.
596  if(!rcode && read > 2) {
597  if(pRptParser[i])
598  pRptParser[i]->Parse((USBHID*)this, 0, (uint8_t)read, buf);
599 #ifdef DEBUG_USB_HOST
600  // We really don't care about errors and anomalies unless we are debugging.
601  } else {
602  if(rcode != hrNAK) {
603  USBTRACE3("(hidboot.h) Poll:", rcode, 0x81);
604  }
605  if(!rcode && read) {
606  USBTRACE3("(hidboot.h) Strange read count: ", read, 0x80);
607  USBTRACE3("(hidboot.h) Interface:", i, 0x80);
608  }
609  }
610 
611  if(!rcode && read && (UsbDEBUGlvl > 0x7f)) {
612  for(uint8_t i = 0; i < read; i++) {
613  PrintHex<uint8_t > (buf[i], 0x80);
614  USBTRACE1(" ", 0x80);
615  }
616  if(read)
617  USBTRACE1("\r\n", 0x80);
618 #endif
619  }
620 
621  }
622  qNextPollTime = (uint32_t)millis() + bInterval;
623  }
624  return rcode;
625 }
626 
627 #endif // __HIDBOOTMOUSE_H__
uint8_t getConfDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t conf, uint8_t *dataptr)
Definition: Usb.cpp:801
uint8_t bmRcvToggle
Definition: address.h:48
@@ -95,7 +72,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
#define CP_MASK_COMPARE_ALL
Definition: usbhid.h:143
USB * pUsb
Definition: usbhid.h:145
+
uint8_t bmLeftShift
Definition: hidboot.h:87
EpInfo * epinfo
Definition: address.h:83
+
uint8_t bmKana
Definition: hidboot.h:117
#define HID_BOOT_INTF_SUBCLASS
Definition: usbhid.h:89
uint8_t bmRightButton
Definition: hidboot.h:43
bool lowspeed
Definition: address.h:86
@@ -108,10 +87,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
uint8_t Poll()
Definition: hidboot.h:578
+
uint8_t bmLeftCtrl
Definition: hidboot.h:99
uint8_t bMaxPacketSize0
Definition: usb_ch9.h:112
+
uint8_t bmRightShift
Definition: hidboot.h:104
#define NotifyFail(...)
Definition: message.h:62
virtual void OnMiddleButtonUp(MOUSEINFO *mi)
Definition: hidboot.h:78
MOUSEINFO mouseInfo
Definition: hidboot.h:54
@@ -120,6 +101,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
virtual void EndpointXtract(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t proto, const USB_ENDPOINT_DESCRIPTOR *ep)
Definition: hidboot.h:539
virtual bool DEVCLASSOK(uint8_t klass)
Definition: hidboot.h:246
#define USB_TRANSFER_TYPE_INTERRUPT
Definition: usb_ch9.h:93
+
uint8_t bmCapsLock
Definition: hidboot.h:114
+
uint8_t bmNumLock
Definition: hidboot.h:113
#define UHS_HID_BOOT_KEY_SCROLL_LOCK
Definition: hidboot.h:26
#define NotifyFailGetDevDescr(...)
Definition: message.h:57
uint8_t setEpInfoEntry(uint8_t addr, uint8_t epcount, EpInfo *eprecord_ptr)
Definition: Usb.cpp:64
@@ -127,11 +110,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
virtual bool SetReportParser(uint8_t id, HIDReportParser *prs)
Definition: hidboot.h:224
virtual void OnKeyUp(uint8_t mod, uint8_t key)
Definition: hidboot.h:180
int UsbDEBUGlvl
Definition: message.cpp:29
+
uint8_t bmLeftGUI
Definition: hidboot.h:102
#define USB_CLASS_HID
Definition: UsbCore.h:72
virtual void FreeAddress(uint8_t addr)=0
virtual UsbDevice * GetUsbDevicePtr(uint8_t addr)=0
uint8_t SetIdle(uint8_t iface, uint8_t reportID, uint8_t duration)
Definition: usbhid.cpp:62
+
uint8_t bmReserved
Definition: hidboot.h:118
virtual const uint8_t * getSymKeysUp()
Definition: hidboot.h:187
#define USBTRACE2(s, r)
Definition: macros.h:84
@@ -141,31 +126,39 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
uint8_t epAddr
Definition: address.h:40
uint8_t bmDummy
Definition: hidboot.h:45
+
uint8_t bmLeftAlt
Definition: hidboot.h:88
virtual uint8_t GetAddress()
Definition: hidboot.h:234
#define USB_NAK_MAX_POWER
Definition: address.h:34
HIDBoot(USB *p, bool bRptProtoEnable=false)
Definition: hidboot.h:256
+
uint8_t bmRightCtrl
Definition: hidboot.h:103
virtual uint8_t HandleLockingKeys(USBHID *hid, uint8_t key)
Definition: hidboot.h:151
#define epMUL(p)
Definition: hidboot.h:34
Definition: address.h:39
virtual void OnMouseMove(MOUSEINFO *mi)
Definition: hidboot.h:63
#define hrNAK
Definition: max3421e.h:218
virtual void OnRightButtonUp(MOUSEINFO *mi)
Definition: hidboot.h:72
+
uint8_t bmLeftGUI
Definition: hidboot.h:89
uint8_t bAddress
Definition: usbhid.h:146
uint16_t wMaxPacketSize
Definition: usb_ch9.h:153
#define bmUSB_TRANSFER_TYPE
Definition: usb_ch9.h:94
virtual void OnMiddleButtonDown(MOUSEINFO *mi)
Definition: hidboot.h:81
+
uint8_t bmRightCtrl
Definition: hidboot.h:90
static const uint8_t epInterruptInIndex
Definition: usbhid.h:149
virtual uint8_t AllocAddress(uint8_t parent, bool is_hub=false, uint8_t port=0)=0
uint8_t bEndpointAddress
Definition: usb_ch9.h:151
+
uint8_t bmRightGUI
Definition: hidboot.h:93
#define UHS_HID_BOOT_KEY_NUM_LOCK
Definition: hidboot.h:27
uint8_t bmSndToggle
Definition: address.h:47
+
uint8_t bmScrollLock
Definition: hidboot.h:115
#define USB_ERROR_CLASS_INSTANCE_ALREADY_IN_USE
Definition: UsbCore.h:98
#define USB_HID_PROTOCOL_KEYBOARD
Definition: usbhid.h:93
#define totalEndpoints(p)
Definition: hidboot.h:33
+
uint8_t bmLeftShift
Definition: hidboot.h:100
#define USBTRACE1(s, l)
Definition: macros.h:83
+
uint8_t bmRightShift
Definition: hidboot.h:91
#define USB_NAK_NOWAIT
Definition: address.h:36
uint8_t SetProtocol(uint8_t iface, uint8_t protocol)
Definition: usbhid.cpp:66
#define USB_ERROR_ADDRESS_NOT_FOUND_IN_POOL
Definition: UsbCore.h:95
@@ -175,6 +168,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
static const uint8_t totalEndpoints
Definition: usbhid.h:154
uint8_t Release()
Definition: hidboot.h:564
+
uint8_t bmRightGUI
Definition: hidboot.h:106
virtual void OnLeftButtonDown(MOUSEINFO *mi)
Definition: hidboot.h:69
uint8_t inTransfer(uint8_t addr, uint8_t ep, uint16_t *nbytesptr, uint8_t *data, uint8_t bInterval=0)
Definition: Usb.cpp:209
@@ -183,21 +177,26 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
virtual const uint8_t * getNumKeys()
Definition: hidboot.h:183
uint8_t bNumConfigurations
Definition: usb_ch9.h:119
#define USB_ERROR_OUT_OF_ADDRESS_SPACE_IN_POOL
Definition: UsbCore.h:93
+
uint8_t bmLeftCtrl
Definition: hidboot.h:86
virtual bool isReady()
Definition: hidboot.h:238
#define USB_HID_BOOT_PROTOCOL
Definition: usbhid.h:82
virtual const uint8_t * getPadKeys()
Definition: hidboot.h:195
uint8_t maxPktSize
Definition: address.h:41
AddressPool & GetAddressPool()
Definition: UsbCore.h:226
+
uint8_t bmRightAlt
Definition: hidboot.h:92
int8_t dY
Definition: hidboot.h:48
Definition: UsbCore.h:210
+
uint8_t bmRightAlt
Definition: hidboot.h:105
virtual bool DEVSUBCLASSOK(uint8_t subklass)
Definition: hidboot.h:250
#define USB_HID_PROTOCOL_MOUSE
Definition: usbhid.h:94
#define USBTRACE3(s, r, l)
Definition: macros.h:85
uint8_t RegisterDeviceClass(USBDeviceConfig *pdev)
Definition: UsbCore.h:230
#define NotifyFailSetConfDescr(...)
Definition: message.h:60
virtual void Parse(USBHID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf)=0
+
uint8_t bmCompose
Definition: hidboot.h:116
uint8_t bmLeftButton
Definition: hidboot.h:42
+
uint8_t bmLeftAlt
Definition: hidboot.h:101
uint8_t bReserved
Definition: hidboot.h:108
#define HID_RPT_PROTOCOL
Definition: usbhid.h:83
@@ -210,7 +209,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/hidcomposite_8cpp.html b/hidcomposite_8cpp.html index 8e5a65c5..b8933785 100644 --- a/hidcomposite_8cpp.html +++ b/hidcomposite_8cpp.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: hidcomposite.cpp File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- - - - + + + +
@@ -105,7 +82,7 @@ Include dependency graph for hidcomposite.cpp:
diff --git a/hidcomposite_8cpp__incl.map b/hidcomposite_8cpp__incl.map index 393fd223..40dad17a 100644 --- a/hidcomposite_8cpp__incl.map +++ b/hidcomposite_8cpp__incl.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/hidcomposite_8cpp__incl.md5 b/hidcomposite_8cpp__incl.md5 index 26f07e87..d41de51b 100644 --- a/hidcomposite_8cpp__incl.md5 +++ b/hidcomposite_8cpp__incl.md5 @@ -1 +1 @@ -5165af043119ae7e1520852120f4b3a4 \ No newline at end of file +cfde20a929775a9aa01710373822c470 \ No newline at end of file diff --git a/hidcomposite_8cpp__incl.png b/hidcomposite_8cpp__incl.png index 765a5ae12cdddce4da929269a7b0d8a006bbf483..58884815ef757320914f5e47dfc84d8c3cb9ea82 100644 GIT binary patch literal 11009 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

UYb?!Xi&2@#+;i@F41- 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 IapS=M0)DPXFaQ7m literal 10276 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 diff --git a/hidcomposite_8cpp_source.html b/hidcomposite_8cpp_source.html index f234883b..3887c9a2 100644 --- a/hidcomposite_8cpp_source.html +++ b/hidcomposite_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: hidcomposite.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@

- + - - + + + + - + - - + + + +
- - - + + +
@@ -104,7 +81,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -120,7 +97,7 @@ Classes diff --git a/hidcomposite_8h__dep__incl.map b/hidcomposite_8h__dep__incl.map index 68b4ce9c..5c9b0b00 100644 --- a/hidcomposite_8h__dep__incl.map +++ b/hidcomposite_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/hidcomposite_8h__dep__incl.md5 b/hidcomposite_8h__dep__incl.md5 index fa654d6e..3a8e4864 100644 --- a/hidcomposite_8h__dep__incl.md5 +++ b/hidcomposite_8h__dep__incl.md5 @@ -1 +1 @@ -e5cefe8e10450dabf59c09b38501c8d9 \ No newline at end of file +dad990da35aed65ee7e44e6b13e7614e \ No newline at end of file diff --git a/hidcomposite_8h__dep__incl.png b/hidcomposite_8h__dep__incl.png index 1450219885b4c088dedf9dedeb1485463815c4ea..4cf57d84fce8e3e0b415bddc14bccb401fecc3ee 100644 GIT binary patch literal 3600 zcmcJSi93|t|Hp4TV<)mqrY0c|3X`p(EMrYY_AMc882boAwlNtZBxENfVEcm1y4_Ye49bDg=b`*ZH=zR&rb&w0Pzhj7JIpBp9ygCL08&_LG= zT=Ae`*jd3p3gc1+F040<^>v~BgI{iAaWZ(a%~1E^HS9Cmx6musrX<*wPSwiti9VEJ zgo%$YDHZ-S(LwD+GCkcCC~4-(JvtR0eU+O}?^2(MlIu_Iek7xjqfxDF$#F}p#Y5)E zg`Tdsh0n+k z!v+QQ)Sm7o-??*#PfY9u1p|err5*lzV8Fdz%>DY_-k!1}KF1ehat;m`k>XBB*btFIrj(M?^;Q3k%1LjoFXA z4diWpPux)eG(HoM$V)y1E)mAY3#sV1HFr6-~P( zUQkmbTv=H;T1SQt+^BtdI z*2e5?crSjf=KMw3*KF_T7@S`3*GDiwrrGCCzD`X|%_}Zu(|;tP2R?3VYa6Am)v5Uz z59Wi#s>#X8k#W2Cp>TTzs|BslE!4!%pOqjWXY-1=si~>u*ydQBZ)|*gbX*+g`x}a8 z=H^ryjr;mU#jlCBxM50|mgP%phDvMV`QSD7uttdNJ7a2XYm1bTVTbsHg;|Y_jqiPZ z%>jLGsRXl8)6f8G%JfNV|D1w-ZLU98su7E?udmD@n6-_K^T6{HvKfhACNiD^1&J1d92>SiJK`T8uIr*y^h%Sg& zT3U8~`0(ySvb6W&u;NR{MzN%%BxK{%MvZcs4Eiok}>f=YFESHh5Unj=jMQYEY z(P+#}?~&;hU(tu##0jJ|sAL~sU+<}pLR?&2xuAqtSXiL&+}xv+GczCqOb!kXpls1j zPKa;<1s4_;HaR(&TT#KAm6atUBXi;U^>L=bq~v5Kf^I|(Zi@r7lZ=dvehEq7)ARFp zz3a`9(xx3kxNQ2?;k^W4L1JQ>R$%YG!d(gUm~R6+%bT9u?Hrvp|^n&lGO^_~mgbv@~dS z>57b$DSCgk!jg+Se%`tjwSj|z>2z%+o-x6L;CljkXOktfu1>T!dpD^vX72PH#z2xn z)!LtnFe;MZDSCXx@%#1M7eu@vzTnl0*mTdp&bR_Um9kGmySq~uUMNXO9Z6VOVU?aafi-0V$M;6g(CF$RU3k1nnAGh}7$ z)_NBN@{}nlNQoc3h5AA!Q&je^iXOxB?VU1vUT!4AA|2~Dy`l?4>YN^w9i^!0>3!!` z*2~py{%o_^n zJ3KGq`BYb$xt<=&>e`x_g@us1x;j6!H6F>^+0lUqZUf|v5E2@CQeE9<7`GUAy!hNuxt-tY zyoFC-VDXkL!V(`G=3g@lFw-r4+p+tpRq1DEXeBP~7M@N6KxkWTjm zhAiKIVF=9par@qYN|=ZLLdJmKt)PZ3cX{}kGiP*l3o|y(oWFDTuKB35goK12KvebW z!?-vOC!zDR6IX`~*ke8Iik3>H1nkqCa^^0*?oge)C<%{%K1&Q?h%-x|| zi&`GPzgWJhX`1_6IKd{^)*FL?py`oqz;I&q-7hby&o93hgu+QAh1$A04jLFBI}Z;l z1P}nIURz%e+XZ-@otx_yv6B?I6cnZu7#K*cDK3`2fB*jLgvwj}$j?JV6LYC~4n~)&yO?UU=J{$$6S;I_E|%*_=#GAK3m#RKbB-6MMB zs3>MhX=xy#%85or8(Rw%(aCKNZv&12;`Q|O-16|y)7Fk4SLq`8f!$eN={i+VRV64d zFOOX)f5Rsvw0gl`Qc5Zx_=NcQcURen*?QeR?o^M#a@lnb({`4kFbdV1QLeEnU@ zXj<1)3k?|U!otE_u(Qj{%ZD3+lz9-ETo9mnb6;O#@8;dIV2#kQ4_w)iPnSA=Z{_^D zjFYe|z2-OB$-naFPocgx&pS2V1^Mn*>mfD1aQp^-7^Q-{v_I$crj>EN5e z)0mUEcf`cMWg{@RoIdh&;Muc8A6`T<$HC!&4}tKSRk~?n_iZaXxxGT?`##snWkfuR z!&bs;Zy^yb{=Wy518M9IyTs1TozSjN l@(vq6<)*Ik|73rUR|cKR*BBdp4;=9zLp@VnlJ@n8{{iNQ?eG8q literal 2862 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 KXi2@`oA@8oz<@0P diff --git a/hidcomposite_8h__incl.map b/hidcomposite_8h__incl.map index 71782bd9..5b368371 100644 --- a/hidcomposite_8h__incl.map +++ b/hidcomposite_8h__incl.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/hidcomposite_8h__incl.md5 b/hidcomposite_8h__incl.md5 index a69ff5ec..7ee388ff 100644 --- a/hidcomposite_8h__incl.md5 +++ b/hidcomposite_8h__incl.md5 @@ -1 +1 @@ -dbac9dbca596a8ac61230cf0b5b0afd8 \ No newline at end of file +87d62da96e30b2fb1795d9cd42c0eb09 \ No newline at end of file diff --git a/hidcomposite_8h__incl.png b/hidcomposite_8h__incl.png index fe23c57a7f5a3bfe63c2978a32b790e7fa878e56..af03dcdc48b4888ca04aed05883b78a3fdcc2d61 100644 GIT binary patch literal 8069 zcmcI}Wmr|u*Y>76LbIzPSvuE$MX07|aSGbyr904vRE(AdY3i8q#pwEUN6bx)s@a-3# zPdw-_%@pONq1(To?AClRLMNyoEura|zMEldcvok!LRI_BC{{$eql`_>Nv3i^Gh06r z;V{C%RdDKFsBOUMR2vv^U7}k1R=-A^BU@Vy`B67grj(6zl%1ZPS%95_M1oizKh|=A z$oyCho0y>wHhj9$Y4LhJ;D%RcJ>4{sml+!Yq4+Z}Wk5mR4CpJ=lH9|8JG(_9OH0eE z-}`dx_pX;WHhy=Jo6x6qilGbe^JhMDvFeVxFK-#lYG-dBr-Bmbk1!=6A>qr!B$Vj0 zV!ni@OJR3Ed-HF{bcdRl_{-YstKsF>jVLH6Xo`gVbPr|IN4{uv;}*>XpPrtQ!*sLX ztJ%q9TD!Qo*x0ar-?BlSz~<-UGpsZVc`jLa&nuG{-ObgNJ|miiB4?@DW1mZ}YIP+> zY`DK4)h|^P8*y}eY;JBYcDeaURqRhqULGbyAK&MHxs|`Uxmi(BvASxJqlS%j2RFp$ z_Z|TO!Mliv=ZcDVBfFqL&=&o#9A~O5b8>Q6Rni+?uk|A^@YV-Y;!{!{mKU_N2=nvv z!(gxn4={|Mn-+Zk{@rpQ(eHdY437-P#>KUlwvqb89)gyamz`NO3i(7tMA+Hw_I@-z zeE5(g++rF$BonEjwzm7p=IBtG!0q`;Oh!h=(FJHTGc#GfM+zz`!#}$s$HvA`AnW1u z##bxd3#~rC_ZJtZr<3F3(a2R46l`s6FK({(fA7uvT%GN{$X7ugD=I1y(TTQz-JYDB z*iV&NT3D1Aw+adgH5V7-aXEtxeE$4-b#=ABzdxQ;l^uU#em)~PnSzY$?07`%k$%l) z+RL`Bt*y8Xuhrf=(3hEN>*bhy)hs7FJ3-%b=jYG+gRzK~Y7z`BKk!N-M@L6zXJ>D2 zZXhT~oIWey=K4abSo`AYDlIitB~$pm6VW5%mIj9z9xN;@miR`?0Wu;YA}COko%7*C zy?UpNgoJzXeTGf04_o370ntkt6Zg{p`lq$0Tw)<_W7ql;yymjn(Vc8b)g$`)6+FIHDAWe zyQ5GbHMS4_W3L??9oI(n_4P?ZzfVjkD=UkD`yQ_J0F#-UnX#y(Kb_tNQwFodOm5Uo zOiV7cWS=pS3Qv3M>*-a_>;T&#>8L0vA;`+gN|<&8i9~_EEIaoP41n26N=j^`xJd(+ z+!PSRm4w%<8Jd^J!V-_8nhZP*e`0QKZfvaD?Uyz-qRhCp$#yIcfj}TpQ&UoQ=jw@W z!m&d->gxE{bndSeoJ-5;>gww2&z2h0&(6)gTx`pTi$j612?KuZu)<1syI8|;^Y&SsPh5dU8iH(B; z%+wQ2vvPbvNJuzW|I(z{-4Q&lhlhuup`nMz-x~vi;*cA+`}^71Z5L@37iikS;cz9T zsQ0z#7#NPTH44lmeg{Y_JaR5giiqdA-CbS4qj%=&N4mRNL`98(yVD}U+3W0N5*BVL zD8Pm)oR>Syd!kE?nzdnMsu_ZA6Gd83px@P*aw?yKj*d=kntW&M<$_j9S{fA%jo<0E z7W!REO0FcTyLW@v@z7`*y{yiK& zxVc&A`@`#FB{J=bx*K6m$G#tp@v$oCXvBX12HF3&=KmLY|BnXM589Vf2@~QYz5m}$48F?R%wt75@lVs3m!hoB9 zdK2O$LA<$}fPei-O@4V<^vyi-OSk*s;j4-&9_{l4T^Iqu>7=tL1u7Lnfmy?|f#{v= z{qux(@A|%myQiw+aKNRwA$r)L0W9$>P2rRJ$4|E*qxBDMFbA>SU8>z(Yc}&WV2LE3 zEC~p#(9s}9Ccmpzlb)`w?=v$bg}&Sgua`WdxaOf*&J~*S*jn6sXriLmGWl zl!&MsJ?8!=F)toGhy?o9Lq~MUC5ifs;x0b)Hp-U>vbl7%=HRV93eH z6!K?FS`CxhCXuSDYRD;J-BV);@d{0L3`jWOhWciD zex8#gysE0|+}Gd1!NJ)XY!vHS%g;|lSY1b_2hP2;h5W&tG6+D?fY{{tI2-J2uOMW! z0M5k31c_^FYwPGtA%n5jj)M`1*RNlLRqX9KQk3$>whpe}Q3yOEv(P;CG@vbp zCnWxT2c58IW|D`&yq+m`4W6jaS#(OuLXE9TKdJkxO2Zl(I}Hs}>wNk7a8ryLJTA5d zD#~r;T=q0;!ygVQ__OV|Rr=K(#06x&`wP5;8zJv^d86Xu_ST2!EUgwi&nxu&!cDO? z@kBlLqJuk=>uGwqSh`w;vLA)v~M1Z^2_bRaTKEFe4+Q zW!Fz2m929y->iCmJ^ai?mWMbjCPvD$VPwi=quqbL_~>f|hBt;uljiOcHvlqr7LohY zk9FubZ*HzgCagl9sd0K*G(U=JY(!dTVbF*g9_`F1-upYw-cXl#wW{!IXXdW#U5l=W z`*n3J;o%!v3HQh(3YQd;zu$&!nuxt9TJ$BSJXRNvUnXKUs5+xI_SUu>A_)pLFOD*fo$1)>Pm40{}B zZz~QA2cV%EYEir}NIRR*Ves-w2)Ma0xfj}nUU1jYc=%4ZcfP8Jw&QectO8i(`gH2T zuO}*iTs#9fK5b)@zMcVxzv6crc_n(_OOWTyc5L&u7YbOx0LyL=a`tY zX#xSR*XKjC`ems_;#4+wuct?1a!Zw8nA}rWzfFBQ>NHnZz1g0j`5;>!9I)J6H(slP zT(m?fmiV(BobnO}HdsskWP}=O1bX$%quJRvMS?+3&@(gLhBq^<8cl?FA{y(GGW>qAI$X@us+fER(j*!Jh^Tw2ZnO%=QKAjO||RAR!fKd-jm zI*y9FVIvrk2?+#kZA$O7>Rq>7$p%n=*P~_2IQulmcG`l3`c3zpCi}C;k4qZPk^Aja zb|o4^!DL{HDg^DfZe;g8|MMpU5R?XUIscdC(($KuB&0Z2m9VIHZchwfnwf1zl4por zI~#SL+TovIPugI?dS+)mhf;~!uF8^oetq-ZrG)Mwy3Dp(ecn+zWv%&MZYlBd{+Vya zyHjX1pDpQZM5D^QeR^a@uhE=H_JqOI*#Bm}s_NFqq^DS?{Dnruoj$o*a2Ws)b^PzT zs>IoY^r~6V(Hoo={k0hZ6jXCREA5N-2sj>kKrL)t@>4=rwmTRL06}|Pj6M?sNy*K@ zl*OGHm*vY-xfr_RrOJciqSWg@3EpSawb^Dw{s&8qVPOPS&nPHtt}c0EXj}D7Mw0sI zu@N?Wc3N6YReJAeS23iBH4O$P1|QmlyzTmaaw3+etXNcF6G%@V*V1UK$P&LS&V8iJ zmvmKB{bF^Uzat-8u8%H2c%kJ&>BWn=FKLILHD)q|RPXdX520_z0(OQV6&3S4g&8XO zb+rWEkz{{oRvW}$6j1YFucxJMrzCGOXk2}G7~TG-ZggSc!*ea?dw7WK)Kr!s>s-lL z^1a!q8xwfj7&n2FWsU{|aktuq$5DE#s zuo#Oy?ql7zw!W1!NMnClmX!X20A*@y1RX)UsIp}1{z{gdWC6W+;ApuW~dh;#`0Bv&wFDFjB;|K;^76GMxH9_$Gf^O2z$Hwsm4$gqAx@Qr4cT( zT&@k2JvI*|kAj(+F39I|zb0M?HZZ`D^7w-O3EdR=$bn|qVg35DGIkTo2R(y>uxHQoXyW8zlvwN?9Ve8G&hHp%X#8AXw{mc3 zaoJG$mj5vHf59fyTZe)x6>?HirDSdi0KP^?AG5MzWu|0h?Qd-r78eh|xiwzASWW>P zd!;8vfR7I!8@s`I8I@XsG0tJJZGL!oczoP-ceb{*wH4RAqkN#cs_OleKcFdCSYc@b zF9};Um{5?n{Zy3tB_;ftT2Ba#@Y!B{M1zP)NEnH+0hq&rY#bdet7i^oX@otUccv?W zq%brz1Yp8}t?)%XF?wG<1}aL1imIaG%AsdUN(vvPG8?J8yZd*Wnzex>F~H)#hTnw( z0pp_!xE`IHJUdz&C@n1oOzqX{*9azNR#rJ_X+C~_0BittehE05>0nUpNT$fu$rb>J z@XZ8D_jtk|+VZ$%#VdMxjs>M_ghomVNWcxl=;c}BkvFSUqZ1RS=Z7mt?}6A6jI+17 z`E7DiMOpbCZU`|t4mxUz(&XIS)#fOZCt=I)>KO-B)e!(-`^_^2-EgCqc6J6=4wq88 zy1MSNs%TQUz;`DmCi+Xpzfnmn*Gb+W+KVdc>M$XEVM+h9ote)H@vC$|e!03Acq7_r zZDRunvc9@H63%Tkl&Yntr@$Cz!#4|@a$_iMV`C!;Fy^FH=cm9rNpj8}9$~DMR8*Xt zoPdaiOXK3=dS9Ltb|j<4d$?%{^G(A!a)sq_wRhV&f@REkQh+>@6i`xF7^kY3s{wsE z-gwFN+ug$>Qu<>_2~0GLj*5zkn)(NjP3GpP$jItUJ3|4k>hVZ_M&82`IDrbOENrypzWr~EJ0lG?A2@UlkQeJ_px zw1yx62cf`{k`e%l0ov}z!@|H=TU|Z4xCQ_m5cmAC5Xl^Q=8qbMjB#wDqO{PriHTaL z`KE@3hJX1z2;wZv%wHlO=~mElag_nx3&8Q=^k>eiL64U^fMMZv_wV1&$Y7_L@}9Ob z@*AHzE-m37pA@BQqEIU%O57J*%JQpFVi9uPj0MypGc&Wi{E_cxTnRNvNkm*+Tx6u8 zx_X?iQ2NtXh&~HDTU#$r&vdZ>+RT*nbO5XeEqG#RgzDf(M5TF;B=LvDM4;qY!QsRd z6uN3^a0?4`2{oV@gc48zSg)+4lnB#9rQ;)rdKf2veSLj$dYU6D2L+e*e%Y#@1-|Eh z^m(G+uCvu=B$O*J3Qpj%+!68*L?!0o0X8#!=tXP-9zY@v}m@KQ4hc_1A|(L+fg4o<4p0_3KyP!!B}p)?5l^ z40~I3TfPYKKoKMy1ic^vW4uRn=x>zqE{uEl+M+iC(;;tu2UT0W~$Tbfs1n^gpoX=F)8K$7n@Ysw$_6spA-0BZMpCCyWcc8!oQI7`jjPL?DWt-rnq&b7&7byGnbyCXWW=B1f{? zB_|$)iTH4V6gMJ@Cn%ZF{7=J=5N%0AX!MjOB%Nch75T za{YiEN^jE>?P6>kb#d$$J1p~rJ|I?xCEm~wMkg%Z^-CPUT9+&L&JaARile~U3Xsmx zpq3U2k9|=IK|Ffm6Xpj-x((l6erNXi?4o|ZfOuzjsG!hmVV+Z#{~a0@7dW;nKSd?^ z2__J@NKsKjvr5vLS4JT2^6)r0EL`6irj?fqfn#{fbg(m1tI5vpf5?u``D6}B37ol<)DHjokN z?+;^7@I7WR;GOt$zCyr%CF6T7Jfs;$%0^OBUcR;l)C*weWFHQm91FO-tHnLg?G(}b*ip4k(}fqBUSVxQVqdo7+;H1(T3%+0?+3Y+L`~@6m@WFm6lx_MAflDAJT zm4JUi^wK7}8)AOG)X_ny%&<_)Yqd#m;c!Ku-Z3qByx8Fmirc@Ksr|Oh8+mw$0et-S zSS((P_Wn?|x-&fc>d)0XPEI5CC_P=z{TQ)r_dR^7^Y?Jy;O^Sf-yV6RY&zwl8d_iW zoDTQqL*nB0l{1A^v>sOi0`_bB`=4vwKl-+Rd1&N-#h;ijFJ6?_)Z^7V{n34LVT${~ zm<12tb+Ng=pk7DA=+E`fE*}hxfUPat`G!iZ6w8$rypxm7EI%^z7|Mf_tpO&v=XDM# zyzV7AsnxPfHl(n42`ej1v&!)Sj+|B_`A_O!%?gi*E)xY-5*GdN=yRA>+QqaYtfbeHld|Buc)YUUrbV?5Fhd7;`n!- z(o9C?4c7ITSH5^0obuiKltx1n6U7|!2XoWg+j&8eip&~8*&DygkC_+=f7??y6aDo$ z;Q7%s21N%P53ZJkJTlod<#XRFDWCpa*=V)Tc--`lSDO1Bc7>t+29*Q;ohq|R&1Gjg zP4+G%^7?4)ou@aKrh*zP1yo@w1zzs(AKJSbc|-ur5d83aNP1LbTM|hw0IDzrJc?0) zvPcV_t*d=%2ynn8sGh=TVO{5NHH$*J;`Qa-+)|9NPh85y}oj6q4MpF9{RX7eE} zEpprdZ5(&@3jR!L4g-qn=88r}!4Yv1|CR|scKAp5#23kbL``TtE!PtoeXtjZi$vcJ z1_CKJeM5FOyyFcHs1-#=M?ZV^?C643HPfO}myC?eezN3FxHK9$?BT;#KnOEup zl?~J;wa@)KmDBhE@DB+MMTLx8z2!{IBFT{7=%8UNubQ2MW36XI zMdf7~W>ZrWzW|44ZDMWh6KIL%evv7+8bdM?{-u;_5CBJ8zSN8i8YsKD*?^e@RAvt^ zuBWG`mzI{IqXniuZ2wxsU;9_2#0>T8ndkuQ+`(a|$?X@HamzWVzPx|`J_M9jj9Zdb z0**Uova_>+SS*^gI6Dh!Y-`5?PCt5=oxyJEfj((7$_R-AjA_jpx_DYlHa^?Q;T8KJ zPX26nZex2JmySK)bV8@xq&+df=jT@(miWTl+_mN9S2x#Q*odWhkw=eWy39b)1zgdV zpO1C9ft-bp1qV$9!%mG4VxpqZDHC%0Qa#Q)^U z+WLA?bK)rPCDqAj_$)?JQqszizj;aa0gte!jEZ!b HBpmTS*7$jv literal 7737 zcmch6by!r<*Y24?Y6ul!M5IK-Aw(plQ|U(OknW*729X$P5$W#ku0bj3E@`A23F&+M zJ>UJld!PIN-SfwsIp@q?=d8WgTJQTVw331(5sU%`005D+l!OZST?haWY& zCJ&y{(Nb>&KEHz}fz4& zeBThvblIOTb{EEbrW+P zV0E5nC9q-(k}*f9jGr~`y=1)$ESw*!y|IJI{F5Ui%ZrO;?te`A`S}6NM{I(~5NU>J zDt;FhX66uu+{??$%=+IB=kXk7w)0KX^Yhf?7CnhG=uC=W$FBkn1@aa=lR#x|_!`-_P2M2b1 z$@3A@-@ku<@LXYRVuFI4{0WU6GLyhUdg9oMht*j*IwSnYDpKA|> zXx{EhzlVXExB?!>8ymx!v8=iYTvqP~=lk2++to|;lKGsOo;+Dv`VnOA<=}7>{akT* zd3hk2|M@+

{4VF7Ua*@$TI_G#YJw(bUv5H8sVoUgGBAVf(9Q_vZTY)vH(k=HxI_ zm=q&`!FAWQUH=f8g!Q&fB@AkbuGXk=tWf0)egI&=(Pt0^lpV2^KUY1!S~P2{#= z=i!m$P8IYFWDxHGC;1#4T<5&~{?^ojGeHSqZD9ev#dL*<>}`#O=+^ zfPjG2-@gf0tVIUc_Mw4+fl?xplDUBGrnZrswQT1^bcrTEL{mf zO3m*=7^dIkX7A-CkUHplwl_B@d>bm^;pTRAJgNxw6QRBL?|_<`TKq+cm1asx%5~yg zEmGgc=EV_C(>hmiX{o-pc8D#jZUZMbcTG*rdxmImf9%dRKAg+u8Vs|{$C@b8bljOL zPfMev2&*yd_`KkIONG`iH+&;0*%e6ixZTj+z<`$I5jlAr7z-pMP(Y*1pbgxXfm%t0 zg;sWUWjd^`uC9`x?@m`Dgl~Q=+)PYOnOj*k8g+%+=DaV~BD;Tocw!=u6UW=j3qjfg z`th$3+PP21mjw+b-XlXbY6I4bdJy`j zpZ+VuNMVB^?(wOjvXW~Lr+nj7fyC&mZuifhqIxAOc(4G`%uS=+j>z(=Dz)!zG#7Uc zyH|VPq^IX@Z?BZO+$oLR1v12$P#cjj+W%O{|Nr>Yzn53ybVqvqk9L%uY)D>#%;Hv$ z=$X&WdDS!79HW&-#BI|>qIi=ff=h>54V`0?53gTJE!l-iVG~m8%wu0&n+9uL%+RnjQROnaD|Z+vqUbRWM1MPdqBWSwzz1pykS1!7;uj-8GdhQp+S^h z5WE`zZf-d8#`Xq!jbTWnncP*|OSgBZ+S(AY^bHE}Y?U0j@`~~gMyn(WZG})4mQG&& zUn==Dws+K+Iu?9!0$G|Q_ld*Sn`_&+BBfJOi2{z##GrgC#rj^QpbYg;W8{xap`7-Vnn zL09;$iLToh2zahDbXc>>oSha4c`91nOJ?p92BV^S{2-bZ_9inxOH(udwCO|eXGO}? z!PuY14_S4Til;@(G>o3DuB~-;SPXuITh=>WU0scRfRlWEO{qM5_pdE(WGLl-RjD>V zs7E-~hOm#6OQ5C1CB_dL2s_Uu#($xP`c^$Y9tLMZ8A};tqHM{y8sg*QHc8W1=Ukv8{L@u-h2{rYAX=Q(3A2Ai* zSS&{~#S>z?afqLvAHU0v+n+Ug1qB5?J!%Ty%hO%3I6PNO`5GHb^V$vw8|?1x9vFbb z0`&Cs($mxDiop0&S5p&kKgvo=TkH&b>`gY)dVg24I=PRLko}f(Hl$URY^Cff&}eZ{Pe`Iz~oF`oYql4{fc!Z%w+m zwMFsxF*6Ceps-L}Ol;_H472*Tm>B776+mQi5JLC#sk;DmL{~^?s7|xT39YPVwIx}C z{Yqz;u4|Mx4vo^Tyh-F)H(2SWE6q6K<+Qbbt#n0XYJQ21el8b>F=kIrPOhw|h?D{_ zZT`6Oa&m-(grIBN4PQ|#j59Q#ali~_Zk`7&0U9kWCnq;~EcoE8f%l71JHZqJm^7b$ z^?jU#epujN#`%BqLFTvN<(r$EEj9xDm-;R3GuZDk46*x?csXckMOgPu5}vVI%gJfhWx0J0qAKJ&-@Rl_ zEhqEQztRPhEgN81?!>l$=6fCIby;jC*B6#Rk&Z+8c=vXH#J4(y7yJLMTgVQa@p@OHvO~J7kUC6V@^A4M+5OIWtQVR z`>m~0vjQS7p^&y9s9uw~$8ny=fej{QXXYdzoY-igrI+bgh946I{Sy7BsEBZ_-;uHg zTTpPV&EF?KAKP_bNHyI^3m_&)XjK?rxGw0LTWzbwAphMF z8Lc`$G}K@n4|`9H4%cIa%lcj&&UDLL5WQBybcA4+l+@^y{Op#0L=isU?78WC^Jj7C zM?sYKD6xUMh-V}H(@f)YhZyaayB`suhvHP z+0i``H!{0(hv7WsV{8J3f>J!bWRKrcBBG-G)0OpG%-9Z#?=UCZ5f53fqD%G=)!*1H zzPyp@zG}U_mhl!84T=;gKz)NN`}mCO-(;Y({kf5P)}}eF&V_4}5-6w?ncen##u%A* z+b;lt=eKfOezn*xIRm*)Ciqx9OcwR5MuIBo@YHBhMV65d`FDaJv{p2$ZxBvzK0ST z%Cit;{+l-`*(Q*O-j2SmQStcDey(PB`B&|o1a%TVY(z{?qid?Whh-I1WV#j^ufrM< z-tt*`GY&|GrU+;tQCs4?ou#S`#E=wa= z(76Ri8Cn*!8g;GX zh&_{wUq^bdC>jtQ9iN{sG!YKK0vt9XeQk;l{vNUbC^e?rE@4~Wi_Ny7p;3*-97E0q z<1^In)pz|VbL%SiC^|a>smQ7k3~M;CR+Ntul{Kg7W0|+M^a$?khlZV$ohq1!sNq)C z%F4*PSDH?L*zLxhD7l_$mw3r}EcY%(gjJn3>ik^mq!=OrL$DM@$*gjiVlq%ccMIXH z0%Jo%1xg5$inC$}Uvhy747I@;nW}GM)yvI86IA^)ty#CiY%n`3ONS}uquvFcO1{AJ zTuSDyF^Gh-h>y=nU;L?tCjtB*Q@Kt3Jt!<@Q>Ili1m~iR$%w{l9M#<%XHsg68 zeAY&Rk(TPCC1^<+rm%lM2}(bT+dN5j3x z8sgG(yTGbh>UrumYCcxNhhSc@=;tIYOFI1WMLqiYT^B}ac@SH-Tx>;;jUhY3jD|Nk z=~YF=!GhbRsN&JrwcjM$(V=vFob?Zci1{>8rwzm4#k{P7swOd+#;^xL;MoCbK zq@x-dCbOVrP#88|z&_`#Hy%Fp6c#D7YGaekl=Q+nkKi65m!LpiyW{Hmr&Q~blR6ObEx5?i_@&gEcXA$&#s;DJAdGJ^E-Y`?a$l7o|z5C$Vb zOL#w$tN=+7=gR;wbVx{LO-+tURQ4D+iN zDY<;MzW{P4Z5{BDHR9sq(G;UlJ=q&wE3e~#`nxk6+(M?Hi zV^`q`l&11qav5r-)$V`F24 zH&U1B>%8qP#7YI}ejt?$yyN8T%+J@Lh}*VuxU;)(SK8T*{4Z9_{{j3Ys|FAV#KFM< z8z(17YcDP?yo6}brKP2{m7c;g_g`QGO4{1nzkh!k+XW}wfUY%D?4!fN`q{#r*bGVm ziZB=;g8SPFkd^H%C^$o&F*7p{yD>yh&)@jmvlAD`qS#+v{_^b`!#zCk^NzfgFXG6>!B7kEe*#D-bF=4{X>c?HnVm2!(5%6!@|PI&=TY0<4>MEF~91GVeake$x>ki0GklB zL`FGCK&b^AYHCimOI!C6UNbQjfD%JXix3kNEbJ};0Rb_w&&6@R1RWzQ>)Qp#Q_I=z z?hVk<-sh!;T!e1xN<3%#v5ARDiHm>>vx8lf9?vjJgN2xgh>MMl?bRz#V-Z~m2?;S9 zOzAgfx3RH_pb-x5eE$5oVjP>_Ph&oQelru3CsC6nx`}Kbp#E)T<>lyz2+0SoPEKCe zCzHX4&7NoM@T20?5qFOkN%W zi9{C7Jpy(lgEuyxz=poGO#%RM5QkAGAzGrsX>;WI^2}&=0KlXHa3HN%-g65@^qAXv zstjWF5{KZ_6(T4|h2wvEQH^IMi3dA{f%xq0TMv18WVy?yG;kjPC^R}nqAKO(;pu?LxovZhytKHyI~Mu zeEj3h^RH`muYLb65$ z)s{6bSJwauHdtDinSb=iP$CQlQ=FJ$Dje6>HTW~w)9MHS05q^vibXBpmXe@lcl0~< z;-UeZlRYgD3!o+)nrEG^cxLkRi-n#Zh3*~sIj}w*uE;YpQINshgtvmjTR^XuBWXzQ zK4rQC$CgVpz1~Z%D}aqyE}kt|DW=}E()b)qH&Dia1&fdGI3t6vh-woXEm31J z>dwQ1tG^IYcKYT7lL6rPb6b4DPJ#u8G=fUkws_FhhmCMG-ZBILuz5H1uXGJDE^dxq ztaMen?EIabc+bCHhmwMf=1hP6deBg^?a%8_Psg-%HJ1N=d!oN%=Aknr3Yw!>ySMW- zCYFaVNllfW-dNbXN7(B%@N0a33?>1yvtt_{HTphEnpXmE@0<_)to3`tJh1wuXRFjZZ@=N^UnwiY2A!iv3rf|CD-m4_t+$l_)ZWFN>Di{HhxYam zLL4G1{V@U^SRDUkd3kwtMFqY#55;5c%*@ijK-M_EaSClkP5`{j-LIt>fp+IAv-$Og z+fz<$jLv#)h|rD^rI0(2(%<2-dIq9I?OK_;)W;_5?|6&xt1w{Jz|7XK&Ic%HlnX7ph!?9LR4xXRTSv^Rc7F-~$a0cHDL@nyOglS0 z?ot~Jk#_g7fWY?ZP;#N%NHgIj6?2*@5Fi#Wys$Y@tU?rfxtHv=J)uTJGx;Wj!K%*O z+D`!jpuppYq-s`w`71y`{aJ%$t`hfj@cJEbC@fBR0o|5nVsgS872fl+zgWPN+x6Cm z=IPUFMI_;4HYO2u*Rdw|aR2kqQqQF5D{OwL%*`b?fx3<=of-(80Zi(x!1;XhQ8+Og zr-#pJ!&F>+yUqWG0zn`~`wo-wCYql=o5GC_!CZK|E?nulr(^iR@4DbD4#R1RyzWVw0`Ok z5ECQktIW)VRim##asm<`@3Z7se}8nsXAJfM6Xv_&Z0I8wkOghAl_(*2Y-H^1*ocU4 z)TmDF?=*oO3pdY3W8<&E5(TN22g0}RAR~7C9ejEhcyurCpG-8Gt#ZEmi^c;~B{sXY zaRl^wBZT!rf)93l8=xP7YAA@!2NT!hzP-l-5HFEa^?xRRM&H(0sn0})Ufp>1uk|yA zh0&N6Tnvf2fie)<63P(!WszfcpP)CQIGJUp)e3tgau3W^m~iusz&)XZ;Nq?C-^ti z*B6)UaRGp4e@@o#7!`a%BIi{H?1~zE{7^Gd`Yjej9?os!M&qk2-n>6YOpUfZ#;|%F z`@eRb-vi2@J)0sF|42kmhFMKW5;!-B$Ud3p$O`&#b;ZQj-1sCw?0or6X6$5CR@UqX z{(P=~n*^1+o<-w(yj@-CBK4ARf1z}vnob$<6&9evu}}R3R|Ry;`%)KzyRQ4^KXWu# zsImfTksTnTJPpkq&6i_XiPgWk7+06rzjud?834+>FU@+t)w@_#{4|E4CAi~u&d*~6 zCpPYIQiSz#)jOK?>ff-xd*`!Ekw+$yt`ts*AIB9EQX~~LGQpjf1CoL9JZ0Z*sdQAf zY_5JQ_0J{p{1IgVtZGnpB*fWWxFxQr<=L9?6YlO@1R0sRjcBIwrqj$_VHSQDYod@h zC5|_cDKY>U8a2wv`UDd9w^kq9#voKwUq(he==%(Yrgny7S&MJC3KhpT5JI4c2LRwM zSRV-3*cgfoOqb%civ@Wv(b483FmCx>yi{T>mI%%{Li- zsmqZqw6K7qex5zEK_5Zeq|-jELM?<07t8e=bN+wEQ_hjGEN$fvY!)h&=}W-4hy~;2 zT%)pr!i$woB1bBIiZGW&41|2GQk^-W5KBc>)zMLM2G`7RM98@SgE3fiK_%-JhRBYV z-TD9+uqQ$z za4;S^>r7|`>^9lGri6!pV(5F7jPy;$MO-r&9wFf@2!_B$iv!p-IyxHq3*y^{aJUet zEjBe>Vf?U~*ZTi&`7y!ak;m7B?}Psa5@X!l@ae6Vwl;`UCdbE}e`#xJef}gXBU7hi zTMGZ{B}4*8OR&JL*it|dlrWBPUql_3jXZQ-t|frUl>D`YjWL3;20{ri-ZUidj0xuBC9!z(LqmUq!Y1`gc6JA_s+tR&lk?IJd2@kSG^enz(f!Zb`d}&+ z&>2C~YSR0y+G>){6YQC7t*oeOYx9F#r@dW*Gd3tF2!wuWOhkBie{U}L%k8OB&22vg zx3&rcfIc!vRYm1qZ8iDE9+aLU@P9fN|5o{bw@Nu@o*o~q_D1<~ie+eV<^s&jg=1rC zl+I;Cn@*07jz!H%{0Z9+==~m4P>DGG*ADsj-*aD^YkoI - + + USB Host Shield 2.0: hidcomposite.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + -

- + + + + - + - - + + + +
- - - - + + + +
@@ -105,7 +82,7 @@ Include dependency graph for hidescriptorparser.cpp: diff --git a/hidescriptorparser_8cpp__incl.map b/hidescriptorparser_8cpp__incl.map index 2af760a8..d7af03a4 100644 --- a/hidescriptorparser_8cpp__incl.map +++ b/hidescriptorparser_8cpp__incl.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/hidescriptorparser_8cpp__incl.md5 b/hidescriptorparser_8cpp__incl.md5 index d9090345..5f7a7e19 100644 --- a/hidescriptorparser_8cpp__incl.md5 +++ b/hidescriptorparser_8cpp__incl.md5 @@ -1 +1 @@ -ae4f9bfa13694d05aed5bfbb544f5ac5 \ No newline at end of file +d1d45d08b037bd2134a3e6ccd1c08310 \ No newline at end of file diff --git a/hidescriptorparser_8cpp__incl.png b/hidescriptorparser_8cpp__incl.png index 852671a80ba28a1d1cbaf7c4939eac19ee9d7dcc..eb04e6a64d546e55abd69e652b861907f6745bee 100644 GIT binary patch literal 10342 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 w6dWEt;Y3g%952l9ZDu5!3hiUnZiqumAu6 literal 9693 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 Zy`$q`HJpPdgL*B9vVyvNiR^3t{{g;j*H8ce diff --git a/hidescriptorparser_8cpp_source.html b/hidescriptorparser_8cpp_source.html index 3835cbf2..645eca73 100644 --- a/hidescriptorparser_8cpp_source.html +++ b/hidescriptorparser_8cpp_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: hidescriptorparser.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + +
hidescriptorparser.cpp
-Go to the documentation of this file.
1 /* Copyright (C) 2011 Circuits At Home, LTD. All rights reserved.
2 
3 This software may be distributed and modified under the terms of the GNU
4 General Public License version 2 (GPL2) as published by the Free Software
5 Foundation and appearing in the file GPL2.TXT included in the packaging of
6 this file. Please note that GPL2 Section 2[b] requires that all works based
7 on this software must also be made publicly available under the terms of
8 the GPL2 ("Copyleft").
9 
10 Contact information
11 -------------------
12 
13 Circuits At Home, LTD
14 Web : http://www.circuitsathome.com
15 e-mail : support@circuitsathome.com
16  */
17 
18 #include "hidescriptorparser.h"
19 
20 const char * const ReportDescParserBase::usagePageTitles0[] PROGMEM = {
36 };
37 
38 const char * const ReportDescParserBase::usagePageTitles1[] PROGMEM = {
45 };
46 const char * const ReportDescParserBase::genDesktopTitles0[] PROGMEM = {
55 
56 };
57 const char * const ReportDescParserBase::genDesktopTitles1[] PROGMEM = {
58  pstrUsageX,
59  pstrUsageY,
60  pstrUsageZ,
83 };
84 const char * const ReportDescParserBase::genDesktopTitles2[] PROGMEM = {
105 };
106 const char * const ReportDescParserBase::genDesktopTitles3[] PROGMEM = {
116 };
117 const char * const ReportDescParserBase::genDesktopTitles4[] PROGMEM = {
126 };
127 const char * const ReportDescParserBase::simuTitles0[] PROGMEM = {
140 };
141 const char * const ReportDescParserBase::simuTitles1[] PROGMEM = {
148 };
149 const char * const ReportDescParserBase::simuTitles2[] PROGMEM = {
183 };
184 const char * const ReportDescParserBase::vrTitles0[] PROGMEM = {
195 };
196 const char * const ReportDescParserBase::vrTitles1[] PROGMEM = {
199 };
200 const char * const ReportDescParserBase::sportsCtrlTitles0[] PROGMEM = {
205 };
206 const char * const ReportDescParserBase::sportsCtrlTitles1[] PROGMEM = {
207  pstrUsageOar,
217 };
218 const char * const ReportDescParserBase::sportsCtrlTitles2[] PROGMEM = {
239 };
240 const char * const ReportDescParserBase::gameTitles0[] PROGMEM = {
244 };
245 const char * const ReportDescParserBase::gameTitles1[] PROGMEM = {
271 };
272 const char * const ReportDescParserBase::genDevCtrlTitles[] PROGMEM = {
280 };
281 const char * const ReportDescParserBase::ledTitles[] PROGMEM = {
301  pstrUsageCAV,
302  pstrUsageCLV,
359 };
360 const char * const ReportDescParserBase::telTitles0 [] PROGMEM = {
368 };
369 const char * const ReportDescParserBase::telTitles1 [] PROGMEM = {
388 };
389 const char * const ReportDescParserBase::telTitles2 [] PROGMEM = {
394 };
395 const char * const ReportDescParserBase::telTitles3 [] PROGMEM = {
401 };
402 const char * const ReportDescParserBase::telTitles4 [] PROGMEM = {
418 };
419 const char * const ReportDescParserBase::telTitles5 [] PROGMEM = {
436 };
437 const char * const ReportDescParserBase::consTitles0[] PROGMEM = {
444 };
445 const char * const ReportDescParserBase::consTitles1[] PROGMEM = {
449 };
450 const char * const ReportDescParserBase::consTitles2[] PROGMEM = {
458 
459 };
460 const char * const ReportDescParserBase::consTitles3[] PROGMEM = {
470 };
471 const char * const ReportDescParserBase::consTitles4[] PROGMEM = {
479 };
480 const char * const ReportDescParserBase::consTitles5[] PROGMEM = {
518 };
519 const char * const ReportDescParserBase::consTitles6[] PROGMEM = {
551 };
552 const char * const ReportDescParserBase::consTitles7[] PROGMEM = {
561  pstrUsageMPX,
564 };
565 const char * const ReportDescParserBase::consTitles8[] PROGMEM = {
572 };
573 const char * const ReportDescParserBase::consTitles9[] PROGMEM = {
588 };
589 const char * const ReportDescParserBase::consTitlesA[] PROGMEM = {
596 };
597 const char * const ReportDescParserBase::consTitlesB[] PROGMEM = {
609 };
610 const char * const ReportDescParserBase::consTitlesC[] PROGMEM = {
616 };
617 const char * const ReportDescParserBase::consTitlesD[] PROGMEM = {
690 };
691 const char * const ReportDescParserBase::consTitlesE[] PROGMEM = {
833 };
834 const char * const ReportDescParserBase::digitTitles0[] PROGMEM = {
836  pstrUsagePen,
848 };
849 const char * const ReportDescParserBase::digitTitles1[] PROGMEM = {
853 
854 };
855 const char * const ReportDescParserBase::digitTitles2[] PROGMEM = {
861  pstrUsageTap,
879 };
880 const char * const ReportDescParserBase::aplphanumTitles0[] PROGMEM = {
883 };
884 const char * const ReportDescParserBase::aplphanumTitles1[] PROGMEM = {
904  pstrUsageRow,
931 };
932 const char * const ReportDescParserBase::aplphanumTitles2[] PROGMEM = {
954 };
955 const char * const ReportDescParserBase::medInstrTitles0[] PROGMEM = {
964 };
965 const char * const ReportDescParserBase::medInstrTitles1[] PROGMEM = {
971 };
972 const char * const ReportDescParserBase::medInstrTitles2[] PROGMEM = {
975 };
976 const char * const ReportDescParserBase::medInstrTitles3[] PROGMEM = {
987 };
988 const char * const ReportDescParserBase::medInstrTitles4[] PROGMEM = {
991 };
992 
993 void ReportDescParserBase::Parse(const uint16_t len, const uint8_t *pbuf, const uint16_t &offset __attribute__((unused))) {
994  uint16_t cntdn = (uint16_t)len;
995  uint8_t *p = (uint8_t*)pbuf;
996 
997 
998  totalSize = 0;
999 
1000  while(cntdn) {
1001  //USB_HOST_SERIAL.println("");
1002  //PrintHex<uint16_t>(offset + len - cntdn);
1003  //USB_HOST_SERIAL.print(":");
1004 
1005  ParseItem(&p, &cntdn);
1006 
1007  //if (ParseItem(&p, &cntdn))
1008  // return;
1009  }
1010  //USBTRACE2("Total:", totalSize);
1011 }
1012 
1013 void ReportDescParserBase::PrintValue(uint8_t *p, uint8_t len) {
1014  E_Notify(PSTR("("), 0x80);
1015  for(; len; p++, len--)
1016  PrintHex<uint8_t > (*p, 0x80);
1017  E_Notify(PSTR(")"), 0x80);
1018 }
1019 
1021  E_Notify(PSTR("("), 0x80);
1022  PrintHex<uint8_t > (data, 0x80);
1023  E_Notify(PSTR(")"), 0x80);
1024 }
1025 
1027  switch(prefix & (TYPE_MASK | TAG_MASK)) {
1028  case (TYPE_GLOBAL | TAG_GLOBAL_PUSH):
1029  E_Notify(PSTR("\r\nPush"), 0x80);
1030  break;
1031  case (TYPE_GLOBAL | TAG_GLOBAL_POP):
1032  E_Notify(PSTR("\r\nPop"), 0x80);
1033  break;
1035  E_Notify(PSTR("\r\nUsage Page"), 0x80);
1036  break;
1038  E_Notify(PSTR("\r\nLogical Min"), 0x80);
1039  break;
1041  E_Notify(PSTR("\r\nLogical Max"), 0x80);
1042  break;
1044  E_Notify(PSTR("\r\nPhysical Min"), 0x80);
1045  break;
1047  E_Notify(PSTR("\r\nPhysical Max"), 0x80);
1048  break;
1050  E_Notify(PSTR("\r\nUnit Exp"), 0x80);
1051  break;
1052  case (TYPE_GLOBAL | TAG_GLOBAL_UNIT):
1053  E_Notify(PSTR("\r\nUnit"), 0x80);
1054  break;
1056  E_Notify(PSTR("\r\nReport Size"), 0x80);
1057  break;
1059  E_Notify(PSTR("\r\nReport Count"), 0x80);
1060  break;
1062  E_Notify(PSTR("\r\nReport Id"), 0x80);
1063  break;
1064  case (TYPE_LOCAL | TAG_LOCAL_USAGE):
1065  E_Notify(PSTR("\r\nUsage"), 0x80);
1066  break;
1067  case (TYPE_LOCAL | TAG_LOCAL_USAGEMIN):
1068  E_Notify(PSTR("\r\nUsage Min"), 0x80);
1069  break;
1070  case (TYPE_LOCAL | TAG_LOCAL_USAGEMAX):
1071  E_Notify(PSTR("\r\nUsage Max"), 0x80);
1072  break;
1073  case (TYPE_MAIN | TAG_MAIN_COLLECTION):
1074  E_Notify(PSTR("\r\nCollection"), 0x80);
1075  break;
1077  E_Notify(PSTR("\r\nEnd Collection"), 0x80);
1078  break;
1079  case (TYPE_MAIN | TAG_MAIN_INPUT):
1080  E_Notify(PSTR("\r\nInput"), 0x80);
1081  break;
1082  case (TYPE_MAIN | TAG_MAIN_OUTPUT):
1083  E_Notify(PSTR("\r\nOutput"), 0x80);
1084  break;
1085  case (TYPE_MAIN | TAG_MAIN_FEATURE):
1086  E_Notify(PSTR("\r\nFeature"), 0x80);
1087  break;
1088  } // switch (**pp & (TYPE_MASK | TAG_MASK))
1089 }
1090 
1091 uint8_t ReportDescParserBase::ParseItem(uint8_t **pp, uint16_t *pcntdn) {
1092  //uint8_t ret = enErrorSuccess;
1093  //reinterpret_cast<>(varBuffer);
1094  switch(itemParseState) {
1095  case 0:
1096  if(**pp == HID_LONG_ITEM_PREFIX)
1097  USBTRACE("\r\nLONG\r\n");
1098  else {
1099  uint8_t size = ((**pp) & DATA_SIZE_MASK);
1100 
1101  itemPrefix = (**pp);
1102  itemSize = 1 + ((size == DATA_SIZE_4) ? 4 : size);
1103 
1105  }
1106  (*pp)++;
1107  (*pcntdn)--;
1108  itemSize--;
1109  itemParseState = 1;
1110 
1111  if(!itemSize)
1112  break;
1113 
1114  if(!pcntdn)
1115  return enErrorIncomplete;
1116  // fall through
1117  case 1:
1118  //USBTRACE2("\r\niSz:",itemSize);
1119 
1122  itemParseState = 2;
1123  // fall through
1124  case 2:
1125  if(!valParser.Parse(pp, pcntdn))
1126  return enErrorIncomplete;
1127  itemParseState = 3;
1128  // fall through
1129  case 3:
1130  {
1131  uint8_t data = *((uint8_t*)varBuffer);
1132 
1133  switch(itemPrefix & (TYPE_MASK | TAG_MASK)) {
1134  case (TYPE_LOCAL | TAG_LOCAL_USAGE):
1135  if(pfUsage) {
1136  if(theBuffer.valueSize > 1) {
1137  uint16_t* ui16 = reinterpret_cast<uint16_t *>(varBuffer);
1138  pfUsage(*ui16);
1139  } else
1140  pfUsage(data);
1141  }
1142  break;
1144  rptSize = data;
1145  PrintByteValue(data);
1146  break;
1148  rptCount = data;
1149  PrintByteValue(data);
1150  break;
1156  case (TYPE_LOCAL | TAG_LOCAL_USAGEMIN):
1157  case (TYPE_LOCAL | TAG_LOCAL_USAGEMAX):
1159  case (TYPE_GLOBAL | TAG_GLOBAL_UNIT):
1161  break;
1162  case (TYPE_GLOBAL | TAG_GLOBAL_PUSH):
1163  case (TYPE_GLOBAL | TAG_GLOBAL_POP):
1164  break;
1166  SetUsagePage(data);
1167  PrintUsagePage(data);
1168  PrintByteValue(data);
1169  break;
1170  case (TYPE_MAIN | TAG_MAIN_COLLECTION):
1172  switch(data) {
1173  case 0x00:
1174  E_Notify(PSTR(" Physical"), 0x80);
1175  break;
1176  case 0x01:
1177  E_Notify(PSTR(" Application"), 0x80);
1178  break;
1179  case 0x02:
1180  E_Notify(PSTR(" Logical"), 0x80);
1181  break;
1182  case 0x03:
1183  E_Notify(PSTR(" Report"), 0x80);
1184  break;
1185  case 0x04:
1186  E_Notify(PSTR(" Named Array"), 0x80);
1187  break;
1188  case 0x05:
1189  E_Notify(PSTR(" Usage Switch"), 0x80);
1190  break;
1191  case 0x06:
1192  E_Notify(PSTR(" Usage Modifier"), 0x80);
1193  break;
1194  default:
1195  E_Notify(PSTR(" Vendor Defined("), 0x80);
1196  PrintHex<uint8_t > (data, 0x80);
1197  E_Notify(PSTR(")"), 0x80);
1198  }
1199  break;
1200  case (TYPE_MAIN | TAG_MAIN_INPUT):
1201  case (TYPE_MAIN | TAG_MAIN_OUTPUT):
1202  case (TYPE_MAIN | TAG_MAIN_FEATURE):
1203  totalSize += (uint16_t)rptSize * (uint16_t)rptCount;
1204  rptSize = 0;
1205  rptCount = 0;
1206  E_Notify(PSTR("("), 0x80);
1207  PrintBin<uint8_t > (data, 0x80);
1208  E_Notify(PSTR(")"), 0x80);
1209  break;
1210  } // switch (**pp & (TYPE_MASK | TAG_MASK))
1211  }
1212  } // switch (itemParseState)
1213  itemParseState = 0;
1214  return enErrorSuccess;
1215 }
1216 
1224  NULL, // Keyboard/Keypad
1231  NULL, // Reserved
1232  NULL, // PID
1233  NULL // Unicode
1234 };
1235 
1237  pfUsage = NULL;
1238 
1239  if(VALUE_BETWEEN(page, 0x00, 0x11)) {
1240  pfUsage = (usagePageFunctions[page - 1]);
1241 
1242  } else {
1243  switch(page) {
1244  case 0x14:
1246  break;
1247  case 0x40:
1249  break;
1250  }
1251  }
1252 }
1253 
1255  const char * const * w;
1256  E_Notify(pstrSpace, 0x80);
1257 
1258  output_if_between(page, 0x00, 0x11, w, E_Notify, usagePageTitles0, 0x80)
1259  else output_if_between(page, 0x8b, 0x92, w, E_Notify, usagePageTitles1, 0x80)
1260  else if(VALUE_BETWEEN(page, 0x7f, 0x84))
1262  else if(VALUE_BETWEEN(page, 0x83, 0x8c))
1264  else if(page > 0xfeff /* && page <= 0xffff */)
1266  else
1267  switch(page) {
1268  case 0x14:
1270  break;
1271  case 0x40:
1273  break;
1274  default:
1276  }
1277 }
1278 
1280  E_Notify(pstrSpace, 0x80);
1281  E_Notify(PSTR("Btn"), 0x80);
1282  PrintHex<uint16_t > (usage, 0x80);
1283  E_Notify(PSTR("\r\n"), 0x80);
1284  //USB_HOST_SERIAL.print(usage, HEX);
1285 }
1286 
1288  E_Notify(pstrSpace, 0x80);
1289  E_Notify(PSTR("Inst"), 0x80);
1290  // Sorry, HEX for now...
1291  PrintHex<uint16_t > (usage, 0x80);
1292  E_Notify(PSTR("\r\n"), 0x80);
1293  //USB_HOST_SERIAL.print(usage, DEC);
1294 }
1295 
1297  const char * const * w;
1298  E_Notify(pstrSpace, 0x80);
1299 
1300  output_if_between(usage, 0x00, 0x0a, w, E_Notify, genDesktopTitles0, 0x80)
1301  else output_if_between(usage, 0x2f, 0x49, w, E_Notify, genDesktopTitles1, 0x80)
1302  else output_if_between(usage, 0x7f, 0x94, w, E_Notify, genDesktopTitles2, 0x80)
1303  else output_if_between(usage, 0x9f, 0xa9, w, E_Notify, genDesktopTitles3, 0x80)
1304  else output_if_between(usage, 0xaf, 0xb8, w, E_Notify, genDesktopTitles4, 0x80)
1305  else E_Notify(pstrUsagePageUndefined, 0x80);
1306 }
1307 
1309  const char * const * w;
1310  E_Notify(pstrSpace, 0x80);
1311 
1312  output_if_between(usage, 0x00, 0x0d, w, E_Notify, simuTitles0, 0x80)
1313  else output_if_between(usage, 0x1f, 0x26, w, E_Notify, simuTitles1, 0x80)
1314  else output_if_between(usage, 0xaf, 0xd1, w, E_Notify, simuTitles2, 0x80)
1315  else E_Notify(pstrUsagePageUndefined, 0x80);
1316 }
1317 
1319  const char * const * w;
1320  E_Notify(pstrSpace, 0x80);
1321 
1322  output_if_between(usage, 0x00, 0x0b, w, E_Notify, vrTitles0, 0x80)
1323  else output_if_between(usage, 0x1f, 0x22, w, E_Notify, vrTitles1, 0x80)
1324  else E_Notify(pstrUsagePageUndefined, 0x80);
1325 }
1326 
1328  const char * const * w;
1329  E_Notify(pstrSpace, 0x80);
1330 
1331  output_if_between(usage, 0x00, 0x05, w, E_Notify, sportsCtrlTitles0, 0x80)
1332  else output_if_between(usage, 0x2f, 0x3a, w, E_Notify, sportsCtrlTitles1, 0x80)
1333  else output_if_between(usage, 0x4f, 0x64, w, E_Notify, sportsCtrlTitles2, 0x80)
1334  else E_Notify(pstrUsagePageUndefined, 0x80);
1335 }
1336 
1338  const char * const * w;
1339  E_Notify(pstrSpace, 0x80);
1340 
1341  output_if_between(usage, 0x00, 0x04, w, E_Notify, gameTitles0, 0x80)
1342  else output_if_between(usage, 0x1f, 0x3a, w, E_Notify, gameTitles1, 0x80)
1343  else E_Notify(pstrUsagePageUndefined, 0x80);
1344 }
1345 
1347  const char * const * w;
1348  E_Notify(pstrSpace, 0x80);
1349 
1350  output_if_between(usage, 0x1f, 0x27, w, E_Notify, genDevCtrlTitles, 0x80)
1351  else E_Notify(pstrUsagePageUndefined, 0x80);
1352 }
1353 
1355  const char * const * w;
1356  E_Notify(pstrSpace, 0x80);
1357 
1358  output_if_between(usage, 0x00, 0x4e, w, E_Notify, ledTitles, 0x80)
1359  else E_Notify(pstrUsagePageUndefined, 0x80);
1360 }
1361 
1363  const char * const * w;
1364  E_Notify(pstrSpace, 0x80);
1365 
1366  output_if_between(usage, 0x00, 0x08, w, E_Notify, telTitles0, 0x80)
1367  else output_if_between(usage, 0x1f, 0x32, w, E_Notify, telTitles1, 0x80)
1368  else output_if_between(usage, 0x4f, 0x54, w, E_Notify, telTitles2, 0x80)
1369  else output_if_between(usage, 0x6f, 0x75, w, E_Notify, telTitles3, 0x80)
1370  else output_if_between(usage, 0x8f, 0x9f, w, E_Notify, telTitles4, 0x80)
1371  else output_if_between(usage, 0xaf, 0xc0, w, E_Notify, telTitles5, 0x80)
1372  else E_Notify(pstrUsagePageUndefined, 0x80);
1373 }
1374 
1376  const char * const * w;
1377  E_Notify(pstrSpace, 0x80);
1378 
1379  output_if_between(usage, 0x00, 0x07, w, E_Notify, consTitles0, 0x80)
1380  else output_if_between(usage, 0x1f, 0x23, w, E_Notify, consTitles1, 0x80)
1381  else output_if_between(usage, 0x2f, 0x37, w, E_Notify, consTitles2, 0x80)
1382  else output_if_between(usage, 0x3f, 0x49, w, E_Notify, consTitles3, 0x80)
1383  else output_if_between(usage, 0x5f, 0x67, w, E_Notify, consTitles4, 0x80)
1384  else output_if_between(usage, 0x7f, 0xa5, w, E_Notify, consTitles5, 0x80)
1385  else output_if_between(usage, 0xaf, 0xcf, w, E_Notify, consTitles6, 0x80)
1386  else output_if_between(usage, 0xdf, 0xeb, w, E_Notify, consTitles7, 0x80)
1387  else output_if_between(usage, 0xef, 0xf6, w, E_Notify, consTitles8, 0x80)
1388  else output_if_between(usage, 0xff, 0x10e, w, E_Notify, consTitles9, 0x80)
1389  else output_if_between(usage, 0x14f, 0x156, w, E_Notify, consTitlesA, 0x80)
1390  else output_if_between(usage, 0x15f, 0x16b, w, E_Notify, consTitlesB, 0x80)
1391  else output_if_between(usage, 0x16f, 0x175, w, E_Notify, consTitlesC, 0x80)
1392  else output_if_between(usage, 0x17f, 0x1c8, w, E_Notify, consTitlesD, 0x80)
1393  else output_if_between(usage, 0x1ff, 0x29d, w, E_Notify, consTitlesE, 0x80)
1394  else E_Notify(pstrUsagePageUndefined, 0x80);
1395 }
1396 
1398  const char * const * w;
1399  E_Notify(pstrSpace, 0x80);
1400 
1401  output_if_between(usage, 0x00, 0x0e, w, E_Notify, digitTitles0, 0x80)
1402  else output_if_between(usage, 0x1f, 0x23, w, E_Notify, digitTitles1, 0x80)
1403  else output_if_between(usage, 0x2f, 0x47, w, E_Notify, digitTitles2, 0x80)
1404  else E_Notify(pstrUsagePageUndefined, 0x80);
1405 }
1406 
1408  const char * const * w;
1409  E_Notify(pstrSpace, 0x80);
1410 
1411  output_if_between(usage, 0x00, 0x03, w, E_Notify, aplphanumTitles0, 0x80)
1412  else output_if_between(usage, 0x1f, 0x4e, w, E_Notify, aplphanumTitles1, 0x80)
1413  else output_if_between(usage, 0x7f, 0x96, w, E_Notify, digitTitles2, 0x80)
1414  else E_Notify(pstrUsagePageUndefined, 0x80);
1415 }
1416 
1418  const char * const * w;
1419  E_Notify(pstrSpace, 0x80);
1420 
1421  if(usage == 1) E_Notify(pstrUsageMedicalUltrasound, 0x80);
1422  else if(usage == 0x70)
1424  else output_if_between(usage, 0x1f, 0x28, w, E_Notify, medInstrTitles0, 0x80)
1425  else output_if_between(usage, 0x3f, 0x45, w, E_Notify, medInstrTitles1, 0x80)
1426  else output_if_between(usage, 0x5f, 0x62, w, E_Notify, medInstrTitles2, 0x80)
1427  else output_if_between(usage, 0x7f, 0x8a, w, E_Notify, medInstrTitles3, 0x80)
1428  else output_if_between(usage, 0x9f, 0xa2, w, E_Notify, medInstrTitles4, 0x80)
1429  else E_Notify(pstrUsagePageUndefined, 0x80);
1430 }
1431 
1432 uint8_t ReportDescParser2::ParseItem(uint8_t **pp, uint16_t *pcntdn) {
1433  //uint8_t ret = enErrorSuccess;
1434 
1435  switch(itemParseState) {
1436  case 0:
1437  if(**pp == HID_LONG_ITEM_PREFIX)
1438  USBTRACE("\r\nLONG\r\n");
1439  else {
1440  uint8_t size = ((**pp) & DATA_SIZE_MASK);
1441  itemPrefix = (**pp);
1442  itemSize = 1 + ((size == DATA_SIZE_4) ? 4 : size);
1443  }
1444  (*pp)++;
1445  (*pcntdn)--;
1446  itemSize--;
1447  itemParseState = 1;
1448 
1449  if(!itemSize)
1450  break;
1451 
1452  if(!pcntdn)
1453  return enErrorIncomplete;
1454  // fall through
1455  case 1:
1458  itemParseState = 2;
1459  // fall through
1460  case 2:
1461  if(!valParser.Parse(pp, pcntdn))
1462  return enErrorIncomplete;
1463  itemParseState = 3;
1464  // fall through
1465  case 3:
1466  {
1467  uint8_t data = *((uint8_t*)varBuffer);
1468 
1469  switch(itemPrefix & (TYPE_MASK | TAG_MASK)) {
1470  case (TYPE_LOCAL | TAG_LOCAL_USAGE):
1471  if(pfUsage) {
1472  if(theBuffer.valueSize > 1) {
1473  uint16_t* ui16 = reinterpret_cast<uint16_t *>(varBuffer);
1474  pfUsage(*ui16);
1475  } else
1476  pfUsage(data);
1477  }
1478  break;
1480  rptSize = data;
1481  break;
1483  rptCount = data;
1484  break;
1486  rptId = data;
1487  break;
1488  case (TYPE_LOCAL | TAG_LOCAL_USAGEMIN):
1489  useMin = data;
1490  break;
1491  case (TYPE_LOCAL | TAG_LOCAL_USAGEMAX):
1492  useMax = data;
1493  break;
1495  SetUsagePage(data);
1496  break;
1497  case (TYPE_MAIN | TAG_MAIN_OUTPUT):
1498  case (TYPE_MAIN | TAG_MAIN_FEATURE):
1499  rptSize = 0;
1500  rptCount = 0;
1501  useMin = 0;
1502  useMax = 0;
1503  break;
1504  case (TYPE_MAIN | TAG_MAIN_INPUT):
1505  OnInputItem(data);
1506 
1507  totalSize += (uint16_t)rptSize * (uint16_t)rptCount;
1508 
1509  rptSize = 0;
1510  rptCount = 0;
1511  useMin = 0;
1512  useMax = 0;
1513  break;
1514  } // switch (**pp & (TYPE_MASK | TAG_MASK))
1515  }
1516  } // switch (itemParseState)
1517  itemParseState = 0;
1518  return enErrorSuccess;
1519 }
1520 
1521 void ReportDescParser2::OnInputItem(uint8_t itm) {
1522  uint8_t byte_offset = (totalSize >> 3); // calculate offset to the next unhandled byte i = (int)(totalCount / 8);
1523  uint32_t tmp = (byte_offset << 3);
1524  uint8_t bit_offset = totalSize - tmp; // number of bits in the current byte already handled
1525  uint8_t *p = pBuf + byte_offset; // current byte pointer
1526 
1527  if(bit_offset)
1528  *p >>= bit_offset;
1529 
1530  uint8_t usage = useMin;
1531 
1532  bool print_usemin_usemax = ((useMin < useMax) && ((itm & 3) == 2) && pfUsage) ? true : false;
1533 
1534  uint8_t bits_of_byte = 8;
1535 
1536  // for each field in field array defined by rptCount
1537  for(uint8_t field = 0; field < rptCount; field++, usage++) {
1538 
1539  union {
1540  uint8_t bResult[4];
1541  uint16_t wResult[2];
1542  uint32_t dwResult;
1543  } result;
1544 
1545  result.dwResult = 0;
1546  uint8_t mask = 0;
1547 
1548  if(print_usemin_usemax)
1549  pfUsage(usage);
1550 
1551  // bits_left - number of bits in the field(array of fields, depending on Report Count) left to process
1552  // bits_of_byte - number of bits in current byte left to process
1553  // bits_to_copy - number of bits to copy to result buffer
1554 
1555  // for each bit in a field
1556  for(uint8_t bits_left = rptSize, bits_to_copy = 0; bits_left;
1557  bits_left -= bits_to_copy) {
1558  bits_to_copy = (bits_left > bits_of_byte) ? bits_of_byte : bits_left;
1559 
1560  result.dwResult <<= bits_to_copy; // Result buffer is shifted by the number of bits to be copied into it
1561 
1562  uint8_t val = *p;
1563 
1564  val >>= (8 - bits_of_byte); // Shift by the number of bits already processed
1565 
1566  mask = 0;
1567 
1568  for(uint8_t j = bits_to_copy; j; j--) {
1569  mask <<= 1;
1570  mask |= 1;
1571  }
1572 
1573  result.bResult[0] = (result.bResult[0] | (val & mask));
1574 
1575  bits_of_byte -= bits_to_copy;
1576 
1577  if(bits_of_byte < 1) {
1578  bits_of_byte = 8;
1579  p++;
1580  }
1581  }
1582  PrintByteValue(result.dwResult);
1583  }
1584  E_Notify(PSTR("\r\n"), 0x80);
1585 }
1586 
1587 void UniversalReportParser::Parse(USBHID *hid, bool is_rpt_id __attribute__((unused)), uint8_t len, uint8_t *buf) {
1588  ReportDescParser2 prs(len, buf);
1589 
1590  uint8_t ret = hid->GetReportDescr(0, &prs);
1591 
1592  if(ret)
1593  ErrorMessage<uint8_t > (PSTR("GetReportDescr-2"), ret);
1594 }
const char pstrUsageYTilt[]
Definition: hidusagestr.h:814
+Go to the documentation of this file.
1 /* Copyright (C) 2011 Circuits At Home, LTD. All rights reserved.
2 
3 This software may be distributed and modified under the terms of the GNU
4 General Public License version 2 (GPL2) as published by the Free Software
5 Foundation and appearing in the file GPL2.TXT included in the packaging of
6 this file. Please note that GPL2 Section 2[b] requires that all works based
7 on this software must also be made publicly available under the terms of
8 the GPL2 ("Copyleft").
9 
10 Contact information
11 -------------------
12 
13 Circuits At Home, LTD
14 Web : http://www.circuitsathome.com
15 e-mail : support@circuitsathome.com
16  */
17 
18 #include "hidescriptorparser.h"
19 
20 const char * const ReportDescParserBase::usagePageTitles0[] PROGMEM = {
36 };
37 
38 const char * const ReportDescParserBase::usagePageTitles1[] PROGMEM = {
45 };
46 const char * const ReportDescParserBase::genDesktopTitles0[] PROGMEM = {
55 
56 };
57 const char * const ReportDescParserBase::genDesktopTitles1[] PROGMEM = {
58  pstrUsageX,
59  pstrUsageY,
60  pstrUsageZ,
83 };
84 const char * const ReportDescParserBase::genDesktopTitles2[] PROGMEM = {
105 };
106 const char * const ReportDescParserBase::genDesktopTitles3[] PROGMEM = {
116 };
117 const char * const ReportDescParserBase::genDesktopTitles4[] PROGMEM = {
126 };
127 const char * const ReportDescParserBase::simuTitles0[] PROGMEM = {
140 };
141 const char * const ReportDescParserBase::simuTitles1[] PROGMEM = {
148 };
149 const char * const ReportDescParserBase::simuTitles2[] PROGMEM = {
183 };
184 const char * const ReportDescParserBase::vrTitles0[] PROGMEM = {
195 };
196 const char * const ReportDescParserBase::vrTitles1[] PROGMEM = {
199 };
200 const char * const ReportDescParserBase::sportsCtrlTitles0[] PROGMEM = {
205 };
206 const char * const ReportDescParserBase::sportsCtrlTitles1[] PROGMEM = {
207  pstrUsageOar,
217 };
218 const char * const ReportDescParserBase::sportsCtrlTitles2[] PROGMEM = {
239 };
240 const char * const ReportDescParserBase::gameTitles0[] PROGMEM = {
244 };
245 const char * const ReportDescParserBase::gameTitles1[] PROGMEM = {
271 };
272 const char * const ReportDescParserBase::genDevCtrlTitles[] PROGMEM = {
280 };
281 const char * const ReportDescParserBase::ledTitles[] PROGMEM = {
301  pstrUsageCAV,
302  pstrUsageCLV,
359 };
360 const char * const ReportDescParserBase::telTitles0 [] PROGMEM = {
368 };
369 const char * const ReportDescParserBase::telTitles1 [] PROGMEM = {
388 };
389 const char * const ReportDescParserBase::telTitles2 [] PROGMEM = {
394 };
395 const char * const ReportDescParserBase::telTitles3 [] PROGMEM = {
401 };
402 const char * const ReportDescParserBase::telTitles4 [] PROGMEM = {
418 };
419 const char * const ReportDescParserBase::telTitles5 [] PROGMEM = {
436 };
437 const char * const ReportDescParserBase::consTitles0[] PROGMEM = {
444 };
445 const char * const ReportDescParserBase::consTitles1[] PROGMEM = {
449 };
450 const char * const ReportDescParserBase::consTitles2[] PROGMEM = {
458 
459 };
460 const char * const ReportDescParserBase::consTitles3[] PROGMEM = {
470 };
471 const char * const ReportDescParserBase::consTitles4[] PROGMEM = {
479 };
480 const char * const ReportDescParserBase::consTitles5[] PROGMEM = {
518 };
519 const char * const ReportDescParserBase::consTitles6[] PROGMEM = {
551 };
552 const char * const ReportDescParserBase::consTitles7[] PROGMEM = {
561  pstrUsageMPX,
564 };
565 const char * const ReportDescParserBase::consTitles8[] PROGMEM = {
572 };
573 const char * const ReportDescParserBase::consTitles9[] PROGMEM = {
588 };
589 const char * const ReportDescParserBase::consTitlesA[] PROGMEM = {
596 };
597 const char * const ReportDescParserBase::consTitlesB[] PROGMEM = {
609 };
610 const char * const ReportDescParserBase::consTitlesC[] PROGMEM = {
616 };
617 const char * const ReportDescParserBase::consTitlesD[] PROGMEM = {
690 };
691 const char * const ReportDescParserBase::consTitlesE[] PROGMEM = {
833 };
834 const char * const ReportDescParserBase::digitTitles0[] PROGMEM = {
836  pstrUsagePen,
848 };
849 const char * const ReportDescParserBase::digitTitles1[] PROGMEM = {
853 
854 };
855 const char * const ReportDescParserBase::digitTitles2[] PROGMEM = {
861  pstrUsageTap,
879 };
880 const char * const ReportDescParserBase::aplphanumTitles0[] PROGMEM = {
883 };
884 const char * const ReportDescParserBase::aplphanumTitles1[] PROGMEM = {
904  pstrUsageRow,
931 };
932 const char * const ReportDescParserBase::aplphanumTitles2[] PROGMEM = {
954 };
955 const char * const ReportDescParserBase::medInstrTitles0[] PROGMEM = {
964 };
965 const char * const ReportDescParserBase::medInstrTitles1[] PROGMEM = {
971 };
972 const char * const ReportDescParserBase::medInstrTitles2[] PROGMEM = {
975 };
976 const char * const ReportDescParserBase::medInstrTitles3[] PROGMEM = {
987 };
988 const char * const ReportDescParserBase::medInstrTitles4[] PROGMEM = {
991 };
992 
993 void ReportDescParserBase::Parse(const uint16_t len, const uint8_t *pbuf, const uint16_t &offset __attribute__((unused))) {
994  uint16_t cntdn = (uint16_t)len;
995  uint8_t *p = (uint8_t*)pbuf;
996 
997 
998  totalSize = 0;
999 
1000  while(cntdn) {
1001  //USB_HOST_SERIAL.println("");
1002  //PrintHex<uint16_t>(offset + len - cntdn);
1003  //USB_HOST_SERIAL.print(":");
1004 
1005  ParseItem(&p, &cntdn);
1006 
1007  //if (ParseItem(&p, &cntdn))
1008  // return;
1009  }
1010  //USBTRACE2("Total:", totalSize);
1011 }
1012 
1013 void ReportDescParserBase::PrintValue(uint8_t *p, uint8_t len) {
1014  E_Notify(PSTR("("), 0x80);
1015  for(; len; p++, len--)
1016  PrintHex<uint8_t > (*p, 0x80);
1017  E_Notify(PSTR(")"), 0x80);
1018 }
1019 
1021  E_Notify(PSTR("("), 0x80);
1022  PrintHex<uint8_t > (data, 0x80);
1023  E_Notify(PSTR(")"), 0x80);
1024 }
1025 
1027  switch(prefix & (TYPE_MASK | TAG_MASK)) {
1028  case (TYPE_GLOBAL | TAG_GLOBAL_PUSH):
1029  E_Notify(PSTR("\r\nPush"), 0x80);
1030  break;
1031  case (TYPE_GLOBAL | TAG_GLOBAL_POP):
1032  E_Notify(PSTR("\r\nPop"), 0x80);
1033  break;
1035  E_Notify(PSTR("\r\nUsage Page"), 0x80);
1036  break;
1038  E_Notify(PSTR("\r\nLogical Min"), 0x80);
1039  break;
1041  E_Notify(PSTR("\r\nLogical Max"), 0x80);
1042  break;
1044  E_Notify(PSTR("\r\nPhysical Min"), 0x80);
1045  break;
1047  E_Notify(PSTR("\r\nPhysical Max"), 0x80);
1048  break;
1050  E_Notify(PSTR("\r\nUnit Exp"), 0x80);
1051  break;
1052  case (TYPE_GLOBAL | TAG_GLOBAL_UNIT):
1053  E_Notify(PSTR("\r\nUnit"), 0x80);
1054  break;
1056  E_Notify(PSTR("\r\nReport Size"), 0x80);
1057  break;
1059  E_Notify(PSTR("\r\nReport Count"), 0x80);
1060  break;
1062  E_Notify(PSTR("\r\nReport Id"), 0x80);
1063  break;
1064  case (TYPE_LOCAL | TAG_LOCAL_USAGE):
1065  E_Notify(PSTR("\r\nUsage"), 0x80);
1066  break;
1067  case (TYPE_LOCAL | TAG_LOCAL_USAGEMIN):
1068  E_Notify(PSTR("\r\nUsage Min"), 0x80);
1069  break;
1070  case (TYPE_LOCAL | TAG_LOCAL_USAGEMAX):
1071  E_Notify(PSTR("\r\nUsage Max"), 0x80);
1072  break;
1073  case (TYPE_MAIN | TAG_MAIN_COLLECTION):
1074  E_Notify(PSTR("\r\nCollection"), 0x80);
1075  break;
1077  E_Notify(PSTR("\r\nEnd Collection"), 0x80);
1078  break;
1079  case (TYPE_MAIN | TAG_MAIN_INPUT):
1080  E_Notify(PSTR("\r\nInput"), 0x80);
1081  break;
1082  case (TYPE_MAIN | TAG_MAIN_OUTPUT):
1083  E_Notify(PSTR("\r\nOutput"), 0x80);
1084  break;
1085  case (TYPE_MAIN | TAG_MAIN_FEATURE):
1086  E_Notify(PSTR("\r\nFeature"), 0x80);
1087  break;
1088  } // switch (**pp & (TYPE_MASK | TAG_MASK))
1089 }
1090 
1091 uint8_t ReportDescParserBase::ParseItem(uint8_t **pp, uint16_t *pcntdn) {
1092  //uint8_t ret = enErrorSuccess;
1093  //reinterpret_cast<>(varBuffer);
1094  switch(itemParseState) {
1095  case 0:
1096  if(**pp == HID_LONG_ITEM_PREFIX)
1097  USBTRACE("\r\nLONG\r\n");
1098  else {
1099  uint8_t size = ((**pp) & DATA_SIZE_MASK);
1100 
1101  itemPrefix = (**pp);
1102  itemSize = 1 + ((size == DATA_SIZE_4) ? 4 : size);
1103 
1105  }
1106  (*pp)++;
1107  (*pcntdn)--;
1108  itemSize--;
1109  itemParseState = 1;
1110 
1111  if(!itemSize)
1112  break;
1113 
1114  if(!pcntdn)
1115  return enErrorIncomplete;
1116  // fall through
1117  case 1:
1118  //USBTRACE2("\r\niSz:",itemSize);
1119 
1122  itemParseState = 2;
1123  // fall through
1124  case 2:
1125  if(!valParser.Parse(pp, pcntdn))
1126  return enErrorIncomplete;
1127  itemParseState = 3;
1128  // fall through
1129  case 3:
1130  {
1131  uint8_t data = *((uint8_t*)varBuffer);
1132 
1133  switch(itemPrefix & (TYPE_MASK | TAG_MASK)) {
1134  case (TYPE_LOCAL | TAG_LOCAL_USAGE):
1135  if(pfUsage) {
1136  if(theBuffer.valueSize > 1) {
1137  uint16_t* ui16 = reinterpret_cast<uint16_t *>(varBuffer);
1138  pfUsage(*ui16);
1139  } else
1140  pfUsage(data);
1141  }
1142  break;
1144  rptSize = data;
1145  PrintByteValue(data);
1146  break;
1148  rptCount = data;
1149  PrintByteValue(data);
1150  break;
1156  case (TYPE_LOCAL | TAG_LOCAL_USAGEMIN):
1157  case (TYPE_LOCAL | TAG_LOCAL_USAGEMAX):
1159  case (TYPE_GLOBAL | TAG_GLOBAL_UNIT):
1161  break;
1162  case (TYPE_GLOBAL | TAG_GLOBAL_PUSH):
1163  case (TYPE_GLOBAL | TAG_GLOBAL_POP):
1164  break;
1166  SetUsagePage(data);
1167  PrintUsagePage(data);
1168  PrintByteValue(data);
1169  break;
1170  case (TYPE_MAIN | TAG_MAIN_COLLECTION):
1172  switch(data) {
1173  case 0x00:
1174  E_Notify(PSTR(" Physical"), 0x80);
1175  break;
1176  case 0x01:
1177  E_Notify(PSTR(" Application"), 0x80);
1178  break;
1179  case 0x02:
1180  E_Notify(PSTR(" Logical"), 0x80);
1181  break;
1182  case 0x03:
1183  E_Notify(PSTR(" Report"), 0x80);
1184  break;
1185  case 0x04:
1186  E_Notify(PSTR(" Named Array"), 0x80);
1187  break;
1188  case 0x05:
1189  E_Notify(PSTR(" Usage Switch"), 0x80);
1190  break;
1191  case 0x06:
1192  E_Notify(PSTR(" Usage Modifier"), 0x80);
1193  break;
1194  default:
1195  E_Notify(PSTR(" Vendor Defined("), 0x80);
1196  PrintHex<uint8_t > (data, 0x80);
1197  E_Notify(PSTR(")"), 0x80);
1198  }
1199  break;
1200  case (TYPE_MAIN | TAG_MAIN_INPUT):
1201  case (TYPE_MAIN | TAG_MAIN_OUTPUT):
1202  case (TYPE_MAIN | TAG_MAIN_FEATURE):
1203  totalSize += (uint16_t)rptSize * (uint16_t)rptCount;
1204  rptSize = 0;
1205  rptCount = 0;
1206  E_Notify(PSTR("("), 0x80);
1207  PrintBin<uint8_t > (data, 0x80);
1208  E_Notify(PSTR(")"), 0x80);
1209  break;
1210  } // switch (**pp & (TYPE_MASK | TAG_MASK))
1211  }
1212  } // switch (itemParseState)
1213  itemParseState = 0;
1214  return enErrorSuccess;
1215 }
1216 
1224  NULL, // Keyboard/Keypad
1231  NULL, // Reserved
1232  NULL, // PID
1233  NULL // Unicode
1234 };
1235 
1237  pfUsage = NULL;
1238 
1239  if(VALUE_BETWEEN(page, 0x00, 0x11)) {
1240  pfUsage = (usagePageFunctions[page - 1]);
1241 
1242  } else {
1243  switch(page) {
1244  case 0x14:
1246  break;
1247  case 0x40:
1249  break;
1250  }
1251  }
1252 }
1253 
1255  const char * const * w;
1256  E_Notify(pstrSpace, 0x80);
1257 
1258  output_if_between(page, 0x00, 0x11, w, E_Notify, usagePageTitles0, 0x80)
1259  else output_if_between(page, 0x8b, 0x92, w, E_Notify, usagePageTitles1, 0x80)
1260  else if(VALUE_BETWEEN(page, 0x7f, 0x84))
1262  else if(VALUE_BETWEEN(page, 0x83, 0x8c))
1264  else if(page > 0xfeff /* && page <= 0xffff */)
1266  else
1267  switch(page) {
1268  case 0x14:
1270  break;
1271  case 0x40:
1273  break;
1274  default:
1276  }
1277 }
1278 
1280  E_Notify(pstrSpace, 0x80);
1281  E_Notify(PSTR("Btn"), 0x80);
1282  PrintHex<uint16_t > (usage, 0x80);
1283  E_Notify(PSTR("\r\n"), 0x80);
1284  //USB_HOST_SERIAL.print(usage, HEX);
1285 }
1286 
1288  E_Notify(pstrSpace, 0x80);
1289  E_Notify(PSTR("Inst"), 0x80);
1290  // Sorry, HEX for now...
1291  PrintHex<uint16_t > (usage, 0x80);
1292  E_Notify(PSTR("\r\n"), 0x80);
1293  //USB_HOST_SERIAL.print(usage, DEC);
1294 }
1295 
1297  const char * const * w;
1298  E_Notify(pstrSpace, 0x80);
1299 
1300  output_if_between(usage, 0x00, 0x0a, w, E_Notify, genDesktopTitles0, 0x80)
1301  else output_if_between(usage, 0x2f, 0x49, w, E_Notify, genDesktopTitles1, 0x80)
1302  else output_if_between(usage, 0x7f, 0x94, w, E_Notify, genDesktopTitles2, 0x80)
1303  else output_if_between(usage, 0x9f, 0xa9, w, E_Notify, genDesktopTitles3, 0x80)
1304  else output_if_between(usage, 0xaf, 0xb8, w, E_Notify, genDesktopTitles4, 0x80)
1305  else E_Notify(pstrUsagePageUndefined, 0x80);
1306 }
1307 
1309  const char * const * w;
1310  E_Notify(pstrSpace, 0x80);
1311 
1312  output_if_between(usage, 0x00, 0x0d, w, E_Notify, simuTitles0, 0x80)
1313  else output_if_between(usage, 0x1f, 0x26, w, E_Notify, simuTitles1, 0x80)
1314  else output_if_between(usage, 0xaf, 0xd1, w, E_Notify, simuTitles2, 0x80)
1315  else E_Notify(pstrUsagePageUndefined, 0x80);
1316 }
1317 
1319  const char * const * w;
1320  E_Notify(pstrSpace, 0x80);
1321 
1322  output_if_between(usage, 0x00, 0x0b, w, E_Notify, vrTitles0, 0x80)
1323  else output_if_between(usage, 0x1f, 0x22, w, E_Notify, vrTitles1, 0x80)
1324  else E_Notify(pstrUsagePageUndefined, 0x80);
1325 }
1326 
1328  const char * const * w;
1329  E_Notify(pstrSpace, 0x80);
1330 
1331  output_if_between(usage, 0x00, 0x05, w, E_Notify, sportsCtrlTitles0, 0x80)
1332  else output_if_between(usage, 0x2f, 0x3a, w, E_Notify, sportsCtrlTitles1, 0x80)
1333  else output_if_between(usage, 0x4f, 0x64, w, E_Notify, sportsCtrlTitles2, 0x80)
1334  else E_Notify(pstrUsagePageUndefined, 0x80);
1335 }
1336 
1338  const char * const * w;
1339  E_Notify(pstrSpace, 0x80);
1340 
1341  output_if_between(usage, 0x00, 0x04, w, E_Notify, gameTitles0, 0x80)
1342  else output_if_between(usage, 0x1f, 0x3a, w, E_Notify, gameTitles1, 0x80)
1343  else E_Notify(pstrUsagePageUndefined, 0x80);
1344 }
1345 
1347  const char * const * w;
1348  E_Notify(pstrSpace, 0x80);
1349 
1350  output_if_between(usage, 0x1f, 0x27, w, E_Notify, genDevCtrlTitles, 0x80)
1351  else E_Notify(pstrUsagePageUndefined, 0x80);
1352 }
1353 
1355  const char * const * w;
1356  E_Notify(pstrSpace, 0x80);
1357 
1358  output_if_between(usage, 0x00, 0x4e, w, E_Notify, ledTitles, 0x80)
1359  else E_Notify(pstrUsagePageUndefined, 0x80);
1360 }
1361 
1363  const char * const * w;
1364  E_Notify(pstrSpace, 0x80);
1365 
1366  output_if_between(usage, 0x00, 0x08, w, E_Notify, telTitles0, 0x80)
1367  else output_if_between(usage, 0x1f, 0x32, w, E_Notify, telTitles1, 0x80)
1368  else output_if_between(usage, 0x4f, 0x54, w, E_Notify, telTitles2, 0x80)
1369  else output_if_between(usage, 0x6f, 0x75, w, E_Notify, telTitles3, 0x80)
1370  else output_if_between(usage, 0x8f, 0x9f, w, E_Notify, telTitles4, 0x80)
1371  else output_if_between(usage, 0xaf, 0xc0, w, E_Notify, telTitles5, 0x80)
1372  else E_Notify(pstrUsagePageUndefined, 0x80);
1373 }
1374 
1376  const char * const * w;
1377  E_Notify(pstrSpace, 0x80);
1378 
1379  output_if_between(usage, 0x00, 0x07, w, E_Notify, consTitles0, 0x80)
1380  else output_if_between(usage, 0x1f, 0x23, w, E_Notify, consTitles1, 0x80)
1381  else output_if_between(usage, 0x2f, 0x37, w, E_Notify, consTitles2, 0x80)
1382  else output_if_between(usage, 0x3f, 0x49, w, E_Notify, consTitles3, 0x80)
1383  else output_if_between(usage, 0x5f, 0x67, w, E_Notify, consTitles4, 0x80)
1384  else output_if_between(usage, 0x7f, 0xa5, w, E_Notify, consTitles5, 0x80)
1385  else output_if_between(usage, 0xaf, 0xcf, w, E_Notify, consTitles6, 0x80)
1386  else output_if_between(usage, 0xdf, 0xeb, w, E_Notify, consTitles7, 0x80)
1387  else output_if_between(usage, 0xef, 0xf6, w, E_Notify, consTitles8, 0x80)
1388  else output_if_between(usage, 0xff, 0x10e, w, E_Notify, consTitles9, 0x80)
1389  else output_if_between(usage, 0x14f, 0x156, w, E_Notify, consTitlesA, 0x80)
1390  else output_if_between(usage, 0x15f, 0x16b, w, E_Notify, consTitlesB, 0x80)
1391  else output_if_between(usage, 0x16f, 0x175, w, E_Notify, consTitlesC, 0x80)
1392  else output_if_between(usage, 0x17f, 0x1c8, w, E_Notify, consTitlesD, 0x80)
1393  else output_if_between(usage, 0x1ff, 0x29d, w, E_Notify, consTitlesE, 0x80)
1394  else E_Notify(pstrUsagePageUndefined, 0x80);
1395 }
1396 
1398  const char * const * w;
1399  E_Notify(pstrSpace, 0x80);
1400 
1401  output_if_between(usage, 0x00, 0x0e, w, E_Notify, digitTitles0, 0x80)
1402  else output_if_between(usage, 0x1f, 0x23, w, E_Notify, digitTitles1, 0x80)
1403  else output_if_between(usage, 0x2f, 0x47, w, E_Notify, digitTitles2, 0x80)
1404  else E_Notify(pstrUsagePageUndefined, 0x80);
1405 }
1406 
1408  const char * const * w;
1409  E_Notify(pstrSpace, 0x80);
1410 
1411  output_if_between(usage, 0x00, 0x03, w, E_Notify, aplphanumTitles0, 0x80)
1412  else output_if_between(usage, 0x1f, 0x4e, w, E_Notify, aplphanumTitles1, 0x80)
1413  else output_if_between(usage, 0x7f, 0x96, w, E_Notify, digitTitles2, 0x80)
1414  else E_Notify(pstrUsagePageUndefined, 0x80);
1415 }
1416 
1418  const char * const * w;
1419  E_Notify(pstrSpace, 0x80);
1420 
1421  if(usage == 1) E_Notify(pstrUsageMedicalUltrasound, 0x80);
1422  else if(usage == 0x70)
1424  else output_if_between(usage, 0x1f, 0x28, w, E_Notify, medInstrTitles0, 0x80)
1425  else output_if_between(usage, 0x3f, 0x45, w, E_Notify, medInstrTitles1, 0x80)
1426  else output_if_between(usage, 0x5f, 0x62, w, E_Notify, medInstrTitles2, 0x80)
1427  else output_if_between(usage, 0x7f, 0x8a, w, E_Notify, medInstrTitles3, 0x80)
1428  else output_if_between(usage, 0x9f, 0xa2, w, E_Notify, medInstrTitles4, 0x80)
1429  else E_Notify(pstrUsagePageUndefined, 0x80);
1430 }
1431 
1432 uint8_t ReportDescParser2::ParseItem(uint8_t **pp, uint16_t *pcntdn) {
1433  //uint8_t ret = enErrorSuccess;
1434 
1435  switch(itemParseState) {
1436  case 0:
1437  if(**pp == HID_LONG_ITEM_PREFIX)
1438  USBTRACE("\r\nLONG\r\n");
1439  else {
1440  uint8_t size = ((**pp) & DATA_SIZE_MASK);
1441  itemPrefix = (**pp);
1442  itemSize = 1 + ((size == DATA_SIZE_4) ? 4 : size);
1443  }
1444  (*pp)++;
1445  (*pcntdn)--;
1446  itemSize--;
1447  itemParseState = 1;
1448 
1449  if(!itemSize)
1450  break;
1451 
1452  if(!pcntdn)
1453  return enErrorIncomplete;
1454  // fall through
1455  case 1:
1458  itemParseState = 2;
1459  // fall through
1460  case 2:
1461  if(!valParser.Parse(pp, pcntdn))
1462  return enErrorIncomplete;
1463  itemParseState = 3;
1464  // fall through
1465  case 3:
1466  {
1467  uint8_t data = *((uint8_t*)varBuffer);
1468 
1469  switch(itemPrefix & (TYPE_MASK | TAG_MASK)) {
1470  case (TYPE_LOCAL | TAG_LOCAL_USAGE):
1471  if(pfUsage) {
1472  if(theBuffer.valueSize > 1) {
1473  uint16_t* ui16 = reinterpret_cast<uint16_t *>(varBuffer);
1474  pfUsage(*ui16);
1475  } else
1476  pfUsage(data);
1477  }
1478  break;
1480  rptSize = data;
1481  break;
1483  rptCount = data;
1484  break;
1486  rptId = data;
1487  break;
1488  case (TYPE_LOCAL | TAG_LOCAL_USAGEMIN):
1489  useMin = data;
1490  break;
1491  case (TYPE_LOCAL | TAG_LOCAL_USAGEMAX):
1492  useMax = data;
1493  break;
1495  SetUsagePage(data);
1496  break;
1497  case (TYPE_MAIN | TAG_MAIN_OUTPUT):
1498  case (TYPE_MAIN | TAG_MAIN_FEATURE):
1499  rptSize = 0;
1500  rptCount = 0;
1501  useMin = 0;
1502  useMax = 0;
1503  break;
1504  case (TYPE_MAIN | TAG_MAIN_INPUT):
1505  OnInputItem(data);
1506 
1507  totalSize += (uint16_t)rptSize * (uint16_t)rptCount;
1508 
1509  rptSize = 0;
1510  rptCount = 0;
1511  useMin = 0;
1512  useMax = 0;
1513  break;
1514  } // switch (**pp & (TYPE_MASK | TAG_MASK))
1515  }
1516  } // switch (itemParseState)
1517  itemParseState = 0;
1518  return enErrorSuccess;
1519 }
1520 
1521 void ReportDescParser2::OnInputItem(uint8_t itm) {
1522  uint8_t byte_offset = (totalSize >> 3); // calculate offset to the next unhandled byte i = (int)(totalCount / 8);
1523  uint32_t tmp = (byte_offset << 3);
1524  uint8_t bit_offset = totalSize - tmp; // number of bits in the current byte already handled
1525  uint8_t *p = pBuf + byte_offset; // current byte pointer
1526 
1527  if(bit_offset)
1528  *p >>= bit_offset;
1529 
1530  uint8_t usage = useMin;
1531 
1532  bool print_usemin_usemax = ((useMin < useMax) && ((itm & 3) == 2) && pfUsage) ? true : false;
1533 
1534  uint8_t bits_of_byte = 8;
1535 
1536  // for each field in field array defined by rptCount
1537  for(uint8_t field = 0; field < rptCount; field++, usage++) {
1538 
1539  union {
1540  uint8_t bResult[4];
1541  uint16_t wResult[2];
1542  uint32_t dwResult;
1543  } result;
1544 
1545  result.dwResult = 0;
1546  uint8_t mask = 0;
1547 
1548  if(print_usemin_usemax)
1549  pfUsage(usage);
1550 
1551  // bits_left - number of bits in the field(array of fields, depending on Report Count) left to process
1552  // bits_of_byte - number of bits in current byte left to process
1553  // bits_to_copy - number of bits to copy to result buffer
1554 
1555  // for each bit in a field
1556  for(uint8_t bits_left = rptSize, bits_to_copy = 0; bits_left;
1557  bits_left -= bits_to_copy) {
1558  bits_to_copy = (bits_left > bits_of_byte) ? bits_of_byte : bits_left;
1559 
1560  result.dwResult <<= bits_to_copy; // Result buffer is shifted by the number of bits to be copied into it
1561 
1562  uint8_t val = *p;
1563 
1564  val >>= (8 - bits_of_byte); // Shift by the number of bits already processed
1565 
1566  mask = 0;
1567 
1568  for(uint8_t j = bits_to_copy; j; j--) {
1569  mask <<= 1;
1570  mask |= 1;
1571  }
1572 
1573  result.bResult[0] = (result.bResult[0] | (val & mask));
1574 
1575  bits_of_byte -= bits_to_copy;
1576 
1577  if(bits_of_byte < 1) {
1578  bits_of_byte = 8;
1579  p++;
1580  }
1581  }
1582  PrintByteValue(result.dwResult);
1583  }
1584  E_Notify(PSTR("\r\n"), 0x80);
1585 }
1586 
1587 void UniversalReportParser::Parse(USBHID *hid, bool is_rpt_id __attribute__((unused)), uint8_t len, uint8_t *buf) {
1588  ReportDescParser2 prs(len, buf);
1589 
1590  uint8_t ret = hid->GetReportDescr(0, &prs);
1591 
1592  if(ret)
1593  ErrorMessage<uint8_t > (PSTR("GetReportDescr-2"), ret);
1594 }
const char pstrUsageYTilt[]
Definition: hidusagestr.h:814
const char pstrUsageRewind[]
Definition: hidusagestr.h:323
static const char *const medInstrTitles0[]
static const char *const usagePageTitles0[]
@@ -1074,7 +1051,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/hidescriptorparser_8h.html b/hidescriptorparser_8h.html index 83773e59..8ae4168f 100644 --- a/hidescriptorparser_8h.html +++ b/hidescriptorparser_8h.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: hidescriptorparser.h File Reference @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- - - + + +
@@ -104,7 +81,7 @@ This graph shows which files directly or indirectly include this file:
- +
@@ -126,7 +103,7 @@ Classes diff --git a/hidescriptorparser_8h__dep__incl.map b/hidescriptorparser_8h__dep__incl.map index 5e966f16..ca645a3a 100644 --- a/hidescriptorparser_8h__dep__incl.map +++ b/hidescriptorparser_8h__dep__incl.map @@ -1,3 +1,3 @@ - + diff --git a/hidescriptorparser_8h__dep__incl.md5 b/hidescriptorparser_8h__dep__incl.md5 index e086c781..a1421715 100644 --- a/hidescriptorparser_8h__dep__incl.md5 +++ b/hidescriptorparser_8h__dep__incl.md5 @@ -1 +1 @@ -f9ba94ed99ad5905f056e92fce988411 \ No newline at end of file +ef699e62c545d11d2c79ea503d951f57 \ No newline at end of file diff --git a/hidescriptorparser_8h__dep__incl.png b/hidescriptorparser_8h__dep__incl.png index 475e2acef8b8f57c047271518ba86b60fe29f319..7cb6c2f159601fe96fbeb72c34be0ccce3378737 100644 GIT binary patch literal 3584 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 diff --git a/hidescriptorparser_8h__incl.map b/hidescriptorparser_8h__incl.map index 7559fe1b..e6ba6475 100644 --- a/hidescriptorparser_8h__incl.map +++ b/hidescriptorparser_8h__incl.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/hidescriptorparser_8h__incl.md5 b/hidescriptorparser_8h__incl.md5 index bfc34772..f713943a 100644 --- a/hidescriptorparser_8h__incl.md5 +++ b/hidescriptorparser_8h__incl.md5 @@ -1 +1 @@ -fe5843698cf13b222c52c15fd3ff6cda \ No newline at end of file +81e0e69900d2442c43e8471fdfc78594 \ No newline at end of file diff --git a/hidescriptorparser_8h__incl.png b/hidescriptorparser_8h__incl.png index 8836b9d12137a613aaabfa5ba6120ed59043d86b..75bb32bfd06c098fa0a9840edcd65a53be42715e 100644 GIT binary patch literal 9171 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 a_~P`^D-J(bG5~MsK;)#9B`YP2zx*!&yU~pR literal 7951 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 - + + USB Host Shield 2.0: hidescriptorparser.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@
- + - - + + + +
- + - - + + + +
- - - - + + + +
@@ -105,7 +82,7 @@ Include dependency graph for hiduniversal.cpp: diff --git a/hiduniversal_8cpp__incl.map b/hiduniversal_8cpp__incl.map index 1478dbe7..80db73d7 100644 --- a/hiduniversal_8cpp__incl.map +++ b/hiduniversal_8cpp__incl.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/hiduniversal_8cpp__incl.md5 b/hiduniversal_8cpp__incl.md5 index c3ad3b07..52c67d09 100644 --- a/hiduniversal_8cpp__incl.md5 +++ b/hiduniversal_8cpp__incl.md5 @@ -1 +1 @@ -1e66e5231753075199ca54c70eb24f20 \ No newline at end of file +61bccc66dff51679312c2d4713fe6ee2 \ No newline at end of file diff --git a/hiduniversal_8cpp__incl.png b/hiduniversal_8cpp__incl.png index 0cdf0ede9f635a3787713f8cc587c71d63301ec6..01aedb2b3e35879d21c381922179ec2f07764a55 100644 GIT binary patch literal 10919 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 literal 9343 zcmc(FbyQVf+wB1M>~msSU#BLcYpt~nhW9}5L$?Wv;+*1wwwN5oKUXC*ZS!v6qI^3Qc`gge4HRm zQ{GVi=k&A;a;6J%{%@YKNqzo)FkW!vEJN7IEt@m)nh|v?6oZL9hW7bG0vyL8R{l;p zgdf8_r)IH+T9S9ZDCYT%L6^71MMdS8F2`yHV+IDwF}UIiXjqyP;ph+&;ChCNiX|Xu|g!_LVY_#@!pik zBO2KoR*e87pBs2cbrQkG&G(Fl^F( z^=f~mJB*2mDF~lNMMZ@;tQ(y0y>GtJZ9mn%rMI^i1+p_&Yri{NO-4o*5)zV-kRb2( z_dYK#4eK1}I5>WEb*-)S#(n5=y}iB|9UcAn@gt4Tb!BriRX-;bD)jznZF8)Ef`TG0 zE-q+*MSub3hg{Xs)_#^e(AL%_7e#$~#V0I$1@4CT`Sa(zyf-IfujF)=wQfV z86JhK6=Zs^IMzda!^6W13k&Z*X8ygoX**x{oRbrOZtd@he0;K_Jmh6LIja}P8|LQb zdNno@T&-7o!dhBdwzjqg1`APQw+II#pWBO#*1Mbi$1EyfCc?tQcjiLDkU~Ow^OaL? zPb++IlV3Tk=_54J7#J8Bv&+gBz&-5GMMg$~PH8O_75mjREx-k>ty7bdHrCf&j(`2I z9LrBmPDX*u&d%OmPPM-2W+lWpFVx6s;Zivo`yhDQd28EIXKEP zGN?h%khX7chX^a4(b6tm?YEvC9W^*_s>5J}v6klM#3Uqdjg1doFIse!GDP0*FE(=} zmu6+rK7G13nx_cy74`U2s#iNWHl_ilg_ZzBGR|m2axz)wP;GVfZc@~)iK1c{n2YEO zG&!bLT4GK^&y(LHVDO;j$VI)mz{A5UDk_r9{*srsKAbHTswLp`OUX~%;o``QIE?rG zktw6oL^1sE@bL8X^i5@5e!lrohNxrhLZh3#mzSuccRS%j>;NGlAtmN-Wn~;MUKs8L zP8Ygf9Ib;Vz`?;`U|;~2BClrF{)?xEO^6;(|D0GuV-R>CNN^uK$QiNl^YiQO?w0p< zc6Rpk^mKImnw@Rz;BWxKEgO-Jf`Sr+M->_t*6DbCbMu6-Z!le0Pgi%^##LMU(>(6o zQBv#9bY)Ii*^lqvnVFd}dgmKlwx^7Inmx|!7#MOuFt)6Q*WSm$+1cA$Yb(5?a-DCo zWZ4k}h>-jKsQgk`IYVM{9A-PZasX-K`CD)efmsU4Qni4=gq2Iuz$23Is}p=946}_ zg-#xUJ%q>LdjdVbY4-4#>~K z9;{8!JsR4HD3$8sHI^Eova0cVpWBxyq&n-;&Dq-}3VekTG$I@v=S7bpKiQm73y^ry zaBy7?BZK2D{IMavzP`y^$x6)kO0*hRsUGOi9f}6GurH%`9_hwzDnmyE zB2hylu2_nU2?HYx0%>TNMPPEFX=-XlL_{Fu=r9B9)HPTMsiQVFH;V#&c~SxDvM@3d zIKA=x%z}lFkN-5OWK{J#YF9i&LMkvKdgR_e>GGw<@~&`qA4e2}qZE_cHTLHtLy65G zrQ=%+G>LU6tJi?inuI`+p9wlvC>LD7`&uBV)3{PQBO_ydef@7{JNxrTR#ujrfJ)U@B2>>WE{4+5wgD&u3+(65)|?y@v@1o!_##O# za63CYIk}+PS~qEF=~nx*-8n5d9ImUY3xmZcCkv)vM}&u?qN29k{Ly3In6q!iy?_5X z508lBnmjlW&oI!k|*oYiWNlM%4#dx4D=XXB~JUgQd|2)?3dcwio!ziQ8P0$ zZSPjn%U}5F%Yb>5m6gfR$0#vB4w0tBD`;skWR4RQ6cj}qK%UIZ&RUt6e6WRUX$4hx zn16fx_%Q`JImT>y5~q=_j!tic!@&Ut3okFc-K5+*zQ}(*O54BJ)YZ+6VRLWKP6kFQ z@^fxZn2AY-IWAqy=LI7pTCZuPwwFwSdeO8d7*a`DUETE5)YSAe;%KdRs=`Q)Yk$7} zo5QlCl$4aI9(e>ae{6dv1!bYX(jW5*-!z>Vp158@EHwFsygZqAL|?yt6%iFR<4O(+ zLINm`QIeBGf@DS4DHZ)P59D-WVq)!&3JMBnga1^l|GFG~Nmh#y0UaHk2zAuZ z#_`2i7DF2KrgP-y6@Njd70W3f2@9Ps05&5K)9})4R(geA<=#YhN#x>I$$5I5d($pkQWQdV} z^!RalT3S_gb$WU_$k^+XfQr1AlaphP+uYhpiHrMSYS`%dV`LI!i|U`lE(Y5#wK>%T-AqzTCtxK?PW zm6ul(y}j3a3TQ$~MvLVyB|Tm_8AJJbHf_CB$g^N1m$midQyD35`BMMn=GjghBP1XQ?U>Jr6eF+Fwn{!}2Eh zgSy|a>+%r&d*|?Ee(T*W4#vHOhZrAf-gM(I$NAaAOh2ALA&~3qc^Uc>O1ei1H`hxu z#*6@lkADe<(^P!O#l`vLv?25lX#aLD&dj9vAYt;%;`Vm$##>dKP+BT7rJ^ELp7CJ_ zqqnym0x79U=uXpxRajEe=(G_T3iY8#Rx*E`g$^k!s@Krd%dK&J`y-`$*GX^cE0LN1$!$Fvke zCiM{lh(UhT7Q5dlDW2!^6XXQ<88Rt^v^B*f6=6nVE6hUj(en>-=E(_U5Ycy0o+u zAa`UWp1u8kaB#49H4tAF#l^*dh=P^R&Fz#Wi&-IktTqBydYaU~?ij>A$qCtENd2Lr zq-0}Z@%zkHMg~3hDJN%bZ7uQ$Ft2|w^~UNO*ulrn#unE&bq~&kg}uk1Lu*kH4Kh$% z-0IfW*3#1O+1>QuAfCeX+}!bnC;QKi4pfETzkfTso%u)!W)30w(s(RK#Ut`iy5&LJ)q6O^GL$hy0yt?>#XxGTU%! zFC?V}Q*`4ZJccMeLlOKEhh`qKXXi(E{IuiMXbLQ0XhSAW8WGVYHP zkiMtO!>+a05_2CXeza2b`XXIe>p5vvvqwcS5A>_lOQP5~`^Gx$SDEF%$BDeWe)-*- zA0O|SpT~sahL1y%-+uK}Y8#s}Yiyw@hMGD&T&S^z|#V8G1fhv_io4l%j`6cZp_%t6)p( zjcs`<1&ff74C828LcA<~GOP|!X|de#L{_#Tr!?qg9;FcB`T4uK-Z=h*N1x2a$%$rX z4R3F+7|fclx)&GOp;ngq`oC6@uj19SF~HHM22g7L$a>RW9y2&8S$)sQ$eXzu9-@U* zCMr|)b|g|pQPHwiebd=WQqn<9ZK2+&HUZ93L>GjOPgAql`m^-pG_^n_z0Ui_e|kDI zCDn+v)|^WckEq=6W^7*H=Z}qW-c*xWzvF`kA8hA%){JXM#PNu@xb`m2>(q<-GN}vl zWbTk+b%KKUqhtHfW=BT}R3a!_DvhWWMf(j4`r%0xKJMxD{@v|cIV2kquLQPyR!0Jx zk4l=r;t$(3lGGqZW^-V9oM+xCXc;{23POWkpJ?6sv zNPqRYP}a8ws6q(T~Hm=+0~VVaQrW~zflefbazK6tsH)z zoF`r>j!x2Iiu1cTrkeQ46Cf$*K$}%la|2cx+-Dmhp-*JD==po4H{l(qZ2U=g`iIWmzUN?F>ZM$X7bw`9@getTbRtSBMSV0!s@-X#Wh# z2iY9z7nCsF+4y+p2gqmR7!vTFA6{7%Lyqq%+xf$vXfS&p^>*Cd{0zUmEI60_jDb}w zX}H+={+RN&^L6LyVWO@MneEI`=96e!+w@GI3|)QwAZz_T%sZ1CzBiRTVy*6rBA8A0 zP#_Qvj>~K*iCTNH7DS~yb6j37;Xr!h9g^mlQ(txYNU|=g7#$%iWyW+jQ9_N6zy8XI zf^2V(Z+r5_3>n$KF}O}blpVGBYhAR1ADSoCWtg3nWqyrFSBM)p#6y#TCd|yHw0JM* zsjG9wp{z-(8U4&Q{+1D3C~0iGyEEfj{Ha#}mHLIv&C-XD28~a{x?{abXn1#)J?V?V z`WE)6;aF6IK*Sx7cDuvy6O;H`y)6Ay3Vv-^k6RaF@oN?qS=w7~r*R{x_r<}_SP2#K zxUgjgnV4hbkLK*jdCUA9nmf{ktCg5dzT>d{9jZn| zvI0ae6)6f{)v6yyY)WW1A*}57CZA}qFShj1CHQxA=<0t~NB^ji-IONgbt&DHgSe-t z*jb{LQ#U_Dh>h-hhhtt{Wr2>K!tKbIh^=0yxahDd;dScRylNy2Ol41M$ZG!#NG*nv^&UN=9~OoE-Lum6IF93VI9 zzBq>IrE~wz4#$4;hOhpgX!%@nCvJajC`|K+vWx z_-RiOQHxl>a}|RlBkim@e7vfQG?MYDNizhU^1dAKELP%BkVn+`+}*ZtTG47&sA^3a zzkMrYS_wS8@3Pkg3{fM1sGnko;ItE(&N13(@< zdTG(qgShhJ21h`oEi5!sM&4ia3s=L+Ma{gUguFK6?P|=Th57@}w)Re0>Er;c{% z@E?mP@1u5~ux{ppy*g55<<~nXC+&w&iu?HwT z2Rl0+wMek-#JI=apLThaKf4{yDPkUmzP ze{e4>9~auUC{ut9vxsf7l&q zVfVk)ES;sWaO2h4KEq~cD0b;17M21`d}`Xw$w^HLic|@xk8o^5gHZRGv%}(xK(s9) zkjEV}b!xtd@7rwti_c|#?AbWp-5D;hV^$`2kH|bZIY~>S1coGFW2Gcdpitc^3oz)1 z0g}(3J+rX1lsHOFO|`WhQJB+agZN%vy0fsbzR+f#OJTUxeWVIp*%0S%?c zC<^+K8aGugnk}!8rCmXL#t=QlM!TWK_`{S79Tg>3_O{AvJLZ3DUZ(%5dAqUk$Jqpg zgn+4mN9fer2kb*y51zFQyumqSw0JXWglwGr_?aRnBjZQp>fwdwi%c3KqJZ_r#zrI( z`2fuy2x?pkzSkG+?d`xIr;ovc_~Oo^q58G7w3L_Id3oJjo^D?e10xj>c+kMc_alD0 zc~WX>@4MR@5EDS9XJutcK>43PuLtW-{E+RgAph@>Z0AN%Q6r)1k63fG2(SY{>;wh| z0+0LMyLZ~&IyykrW5)GXRaOeR?vN(>{13YKO#rxKptz%8EpLaYF+TXMDKf@(bxDIs z1>p>6DtH_cP%-DM@B}#@DV}WJZLEmp9_$lr!SpgOAZ3x%ztd{ z?iy5E!EJ2V7ngCsq8*-k>*8t^iJc1Kwdp3 z;{AJUCb_28&BYb_^fVcPN|7+#@7f~T*;Ph?xVT8~lLCqrMRRxB z&nfmv;GM`~B`fZmqBe61Zc-lqOopyEmd?(7;bc3*!)}L>GRXwnXc7e)Gd4L}R+1$L zKllalsjE!i`lv*onkS%Fx}!td;-5TbgPtSgp40O3?%uzDcX@rh9>?<7?7o$mgaDDg z{xlO4E^r!YieP_c-ac`4&8OgFZxbe7ml7aae2;9XJ~h*$c$mbc@ba>`u5RyOnRcc0 zS+O)$K}R^54K%@VpPKF|{b^qH>AK&&sTUWf%i&~O2(5-ox-{&|OC>$MvDil)MF-s^ zBmmJ7O=bwp&(Pr02dM4c-6w~($TUe|tq@*u~KtAygEl-xo z)!~!;*=wF1W0mT=wSlq>C&p?IKQ6u{k7z&~!cGf^$4^9_K6N_&#WYqBcREw6 zCTT$gf%GQ|l8{UlEh}7=>5VZfJ)5qwtSqLWXP4G8zV(y?)G>mh_=YMbMfX$E*}-r& zEpA3K7o)V6gq)l;5J+0(@rC6fVCA~*w;UZJ_kX0Al{9Du@m{(hi{G35J53w0@upZe&!uvT`}Ad!o~~F@*l)33`PguDwoc?Y_~Pm8a!Gb4Apu>>Dg3L za@7+KOowV}iXELB_6sS%+X_GXnVH@2r5Ak!&dOnXy&N=`^pxoIPiPEf zj64n`YoxGKJ-e<>g*_1z?W3s$V{dNGS|0?gOixerMSZFwa4#hwNva2$qN++VTa_`P z@3KWDSTY+6ty7yoNUW9I;}@Jh=7rBw#EmZE;5DO7-b{0n`ns7eNBdNc^!lu=*GrfFVgR5SobXX~AX{qrl z3gOH7#L!S>Z!aw-sPGAa0Xjrny30T6Maq=Ddom0P_biRhy!+JtyR`rYO?a7ifKVLD zz?~XnxSaL1^8MXPOW?Zy$JWj}Cfy)1ecz00c&6z01ERb0)pxCK6VFL`h!wYi>v|x> zfN>w7A|&CZpewuccN}Y>8!@(@tmiMuLZo$7Rp-v8Fw<3B9G(pg-cq^`lQlEiw^P4&bG7KlJ)Xp z<~mbtHzK&Wm0paHaC~QHD276f zpk8&nH4r8Bhnww$b1Z$U~B17{;uV~M>h{_1z!RK2+$V?Cnu9iZA!e2@gfavZ+-nVKyfQ84?!{A z-DBM-@x_0uHCgF)eISfh|DUbMb-Pr+p;A-lMn;x*cc~se%r1}a^^G-p2Hs!s9UmX3 z>&J=h{ZEe* zCT$^hm+?-a`0!&i>6`z&TJwJtj$aH(AP@*px8SW6<^ol~ - + + USB Host Shield 2.0: hiduniversal.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - - + + +
@@ -104,10 +81,10 @@ This graph shows which files directly or indirectly include this file:
- - - - + + + +
@@ -123,7 +100,7 @@ Classes diff --git a/hiduniversal_8h__dep__incl.map b/hiduniversal_8h__dep__incl.map index cc31424c..0862c3a8 100644 --- a/hiduniversal_8h__dep__incl.map +++ b/hiduniversal_8h__dep__incl.map @@ -1,6 +1,6 @@ - - - - + + + + diff --git a/hiduniversal_8h__dep__incl.md5 b/hiduniversal_8h__dep__incl.md5 index 8b07bcbb..9c8e9ff2 100644 --- a/hiduniversal_8h__dep__incl.md5 +++ b/hiduniversal_8h__dep__incl.md5 @@ -1 +1 @@ -6079ba5023de3a9bc19938f024e95433 \ No newline at end of file +1a6e99a32a72ade5845249f3b21766ae \ No newline at end of file diff --git a/hiduniversal_8h__dep__incl.png b/hiduniversal_8h__dep__incl.png index 00e1012adb7505049be5e8e9cd09e334f7b3a5fa..4988bc375372f2ee14cde2d5dc59e0e43d091def 100644 GIT binary patch literal 9529 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 diff --git a/hiduniversal_8h__incl.map b/hiduniversal_8h__incl.map index 630ff149..76fb2a84 100644 --- a/hiduniversal_8h__incl.map +++ b/hiduniversal_8h__incl.map @@ -1,5 +1,5 @@ - - - + + + diff --git a/hiduniversal_8h__incl.md5 b/hiduniversal_8h__incl.md5 index 649b21d3..1ef6962c 100644 --- a/hiduniversal_8h__incl.md5 +++ b/hiduniversal_8h__incl.md5 @@ -1 +1 @@ -f268788864ba2a6e059e34b990a9ae71 \ No newline at end of file +d068f50cb7c808f3f0e52a5289e1b776 \ No newline at end of file diff --git a/hiduniversal_8h__incl.png b/hiduniversal_8h__incl.png index 0fb7eb207773e2428ab4e6588ce1f16a4ed18454..52fbee7b933e447d236803bd15eb7ddc7a266cce 100644 GIT binary patch literal 7861 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 mq^>Mu6f52X}WVlu{gu6)Ro{S~Mjo?yf1?;%)`* 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 XUkklAC&7#Z?hJY@uO?R`V;=q=K$% - + + USB Host Shield 2.0: hiduniversal.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- +
@@ -102,38 +79,38 @@ This graph shows which files directly or indirectly include this file:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
@@ -1861,7 +1838,9 @@ Variables  

Variable Documentation

- + +

◆ pstrSpace

+
@@ -1871,11 +1850,13 @@ Variables
-

Definition at line 22 of file hidusagestr.h.

+

Definition at line 22 of file hidusagestr.h.

- + +

◆ pstrCRLF

+
@@ -1885,11 +1866,13 @@ Variables
-

Definition at line 23 of file hidusagestr.h.

+

Definition at line 23 of file hidusagestr.h.

- + +

◆ pstrSingleTab

+
@@ -1899,11 +1882,13 @@ Variables
-

Definition at line 24 of file hidusagestr.h.

+

Definition at line 24 of file hidusagestr.h.

- + +

◆ pstrDoubleTab

+
@@ -1913,11 +1898,13 @@ Variables
-

Definition at line 25 of file hidusagestr.h.

+

Definition at line 25 of file hidusagestr.h.

- + +

◆ pstrTripleTab

+
@@ -1927,11 +1914,13 @@ Variables
-

Definition at line 26 of file hidusagestr.h.

+

Definition at line 26 of file hidusagestr.h.

- + +

◆ pstrUsagePageUndefined

+
@@ -1941,11 +1930,13 @@ Variables
-

Definition at line 29 of file hidusagestr.h.

+

Definition at line 29 of file hidusagestr.h.

- + +

◆ pstrUsagePageGenericDesktopControls

+
@@ -1955,11 +1946,13 @@ Variables
-

Definition at line 30 of file hidusagestr.h.

+

Definition at line 30 of file hidusagestr.h.

- + +

◆ pstrUsagePageSimulationControls

+
@@ -1969,11 +1962,13 @@ Variables
-

Definition at line 31 of file hidusagestr.h.

+

Definition at line 31 of file hidusagestr.h.

- + +

◆ pstrUsagePageVRControls

+
@@ -1983,11 +1978,13 @@ Variables
-

Definition at line 32 of file hidusagestr.h.

+

Definition at line 32 of file hidusagestr.h.

- + +

◆ pstrUsagePageSportControls

+
@@ -1997,11 +1994,13 @@ Variables
-

Definition at line 33 of file hidusagestr.h.

+

Definition at line 33 of file hidusagestr.h.

- + +

◆ pstrUsagePageGameControls

+
@@ -2011,11 +2010,13 @@ Variables
-

Definition at line 34 of file hidusagestr.h.

+

Definition at line 34 of file hidusagestr.h.

- + +

◆ pstrUsagePageGenericDeviceControls

+
@@ -2025,11 +2026,13 @@ Variables
-

Definition at line 35 of file hidusagestr.h.

+

Definition at line 35 of file hidusagestr.h.

- + +

◆ pstrUsagePageKeyboardKeypad

+
@@ -2039,11 +2042,13 @@ Variables
-

Definition at line 36 of file hidusagestr.h.

+

Definition at line 36 of file hidusagestr.h.

- + +

◆ pstrUsagePageLEDs

+
@@ -2053,11 +2058,13 @@ Variables
-

Definition at line 37 of file hidusagestr.h.

+

Definition at line 37 of file hidusagestr.h.

- + +

◆ pstrUsagePageButton

+
@@ -2067,11 +2074,13 @@ Variables
-

Definition at line 38 of file hidusagestr.h.

+

Definition at line 38 of file hidusagestr.h.

- + +

◆ pstrUsagePageOrdinal

+
@@ -2081,11 +2090,13 @@ Variables
-

Definition at line 39 of file hidusagestr.h.

+

Definition at line 39 of file hidusagestr.h.

- + +

◆ pstrUsagePageTelephone

+
@@ -2095,11 +2106,13 @@ Variables
-

Definition at line 40 of file hidusagestr.h.

+

Definition at line 40 of file hidusagestr.h.

- + +

◆ pstrUsagePageConsumer

+
@@ -2109,11 +2122,13 @@ Variables
-

Definition at line 41 of file hidusagestr.h.

+

Definition at line 41 of file hidusagestr.h.

- + +

◆ pstrUsagePageDigitizer

+
@@ -2123,11 +2138,13 @@ Variables
-

Definition at line 42 of file hidusagestr.h.

+

Definition at line 42 of file hidusagestr.h.

- + +

◆ pstrUsagePagePID

+
@@ -2137,11 +2154,13 @@ Variables
-

Definition at line 43 of file hidusagestr.h.

+

Definition at line 43 of file hidusagestr.h.

- + +

◆ pstrUsagePageUnicode

+
@@ -2151,11 +2170,13 @@ Variables
-

Definition at line 44 of file hidusagestr.h.

+

Definition at line 44 of file hidusagestr.h.

- + +

◆ pstrUsagePageAlphaNumericDisplay

+
@@ -2165,11 +2186,13 @@ Variables
-

Definition at line 45 of file hidusagestr.h.

+

Definition at line 45 of file hidusagestr.h.

- + +

◆ pstrUsagePageMedicalInstruments

+
@@ -2179,11 +2202,13 @@ Variables
-

Definition at line 46 of file hidusagestr.h.

+

Definition at line 46 of file hidusagestr.h.

- + +

◆ pstrUsagePageMonitor

+
@@ -2193,11 +2218,13 @@ Variables
-

Definition at line 47 of file hidusagestr.h.

+

Definition at line 47 of file hidusagestr.h.

- + +

◆ pstrUsagePagePower

+
@@ -2207,11 +2234,13 @@ Variables
-

Definition at line 48 of file hidusagestr.h.

+

Definition at line 48 of file hidusagestr.h.

- + +

◆ pstrUsagePageBarCodeScanner

+
@@ -2221,11 +2250,13 @@ Variables
-

Definition at line 49 of file hidusagestr.h.

+

Definition at line 49 of file hidusagestr.h.

- + +

◆ pstrUsagePageScale

+
@@ -2235,11 +2266,13 @@ Variables
-

Definition at line 50 of file hidusagestr.h.

+

Definition at line 50 of file hidusagestr.h.

- + +

◆ pstrUsagePageMSRDevices

+
@@ -2249,11 +2282,13 @@ Variables
-

Definition at line 51 of file hidusagestr.h.

+

Definition at line 51 of file hidusagestr.h.

- + +

◆ pstrUsagePagePointOfSale

+
@@ -2263,11 +2298,13 @@ Variables
-

Definition at line 52 of file hidusagestr.h.

+

Definition at line 52 of file hidusagestr.h.

- + +

◆ pstrUsagePageCameraControl

+
@@ -2277,11 +2314,13 @@ Variables
-

Definition at line 53 of file hidusagestr.h.

+

Definition at line 53 of file hidusagestr.h.

- + +

◆ pstrUsagePageArcade

+
@@ -2291,11 +2330,13 @@ Variables
-

Definition at line 54 of file hidusagestr.h.

+

Definition at line 54 of file hidusagestr.h.

- + +

◆ pstrUsagePageReserved

+
@@ -2305,11 +2346,13 @@ Variables
-

Definition at line 55 of file hidusagestr.h.

+

Definition at line 55 of file hidusagestr.h.

- + +

◆ pstrUsagePageVendorDefined

+
@@ -2319,11 +2362,13 @@ Variables
-

Definition at line 56 of file hidusagestr.h.

+

Definition at line 56 of file hidusagestr.h.

- + +

◆ pstrUsagePointer

+
@@ -2333,11 +2378,13 @@ Variables
-

Definition at line 59 of file hidusagestr.h.

+

Definition at line 59 of file hidusagestr.h.

- + +

◆ pstrUsageMouse

+
@@ -2347,11 +2394,13 @@ Variables
-

Definition at line 60 of file hidusagestr.h.

+

Definition at line 60 of file hidusagestr.h.

- + +

◆ pstrUsageJoystick

+
@@ -2361,11 +2410,13 @@ Variables
-

Definition at line 61 of file hidusagestr.h.

+

Definition at line 61 of file hidusagestr.h.

- + +

◆ pstrUsageGamePad

+
@@ -2375,11 +2426,13 @@ Variables
-

Definition at line 62 of file hidusagestr.h.

+

Definition at line 62 of file hidusagestr.h.

- + +

◆ pstrUsageKeyboard

+
@@ -2389,11 +2442,13 @@ Variables
-

Definition at line 63 of file hidusagestr.h.

+

Definition at line 63 of file hidusagestr.h.

- + +

◆ pstrUsageKeypad

+
@@ -2403,11 +2458,13 @@ Variables
-

Definition at line 64 of file hidusagestr.h.

+

Definition at line 64 of file hidusagestr.h.

- + +

◆ pstrUsageMultiAxisController

+
@@ -2417,11 +2474,13 @@ Variables
-

Definition at line 65 of file hidusagestr.h.

+

Definition at line 65 of file hidusagestr.h.

- + +

◆ pstrUsageTabletPCSystemControls

+
@@ -2431,11 +2490,13 @@ Variables
-

Definition at line 66 of file hidusagestr.h.

+

Definition at line 66 of file hidusagestr.h.

- + +

◆ pstrUsageX

+
@@ -2445,11 +2506,13 @@ Variables
-

Definition at line 67 of file hidusagestr.h.

+

Definition at line 67 of file hidusagestr.h.

- + +

◆ pstrUsageY

+
@@ -2459,11 +2522,13 @@ Variables
-

Definition at line 68 of file hidusagestr.h.

+

Definition at line 68 of file hidusagestr.h.

- + +

◆ pstrUsageZ

+
@@ -2473,11 +2538,13 @@ Variables
-

Definition at line 69 of file hidusagestr.h.

+

Definition at line 69 of file hidusagestr.h.

- + +

◆ pstrUsageRx

+
@@ -2487,11 +2554,13 @@ Variables
-

Definition at line 70 of file hidusagestr.h.

+

Definition at line 70 of file hidusagestr.h.

- + +

◆ pstrUsageRy

+
@@ -2501,11 +2570,13 @@ Variables
-

Definition at line 71 of file hidusagestr.h.

+

Definition at line 71 of file hidusagestr.h.

- + +

◆ pstrUsageRz

+
@@ -2515,11 +2586,13 @@ Variables
-

Definition at line 72 of file hidusagestr.h.

+

Definition at line 72 of file hidusagestr.h.

- + +

◆ pstrUsageSlider

+
@@ -2529,11 +2602,13 @@ Variables
-

Definition at line 73 of file hidusagestr.h.

+

Definition at line 73 of file hidusagestr.h.

- + +

◆ pstrUsageDial

+
@@ -2543,11 +2618,13 @@ Variables
-

Definition at line 74 of file hidusagestr.h.

+

Definition at line 74 of file hidusagestr.h.

- + +

◆ pstrUsageWheel

+
@@ -2557,11 +2634,13 @@ Variables
-

Definition at line 75 of file hidusagestr.h.

+

Definition at line 75 of file hidusagestr.h.

- + +

◆ pstrUsageHatSwitch

+
@@ -2571,11 +2650,13 @@ Variables
-

Definition at line 76 of file hidusagestr.h.

+

Definition at line 76 of file hidusagestr.h.

- + +

◆ pstrUsageCountedBuffer

+
@@ -2585,11 +2666,13 @@ Variables
-

Definition at line 77 of file hidusagestr.h.

+

Definition at line 77 of file hidusagestr.h.

- + +

◆ pstrUsageByteCount

+
@@ -2599,11 +2682,13 @@ Variables
-

Definition at line 78 of file hidusagestr.h.

+

Definition at line 78 of file hidusagestr.h.

- + +

◆ pstrUsageMotionWakeup

+
@@ -2613,11 +2698,13 @@ Variables
-

Definition at line 79 of file hidusagestr.h.

+

Definition at line 79 of file hidusagestr.h.

- + +

◆ pstrUsageStart

+
@@ -2627,11 +2714,13 @@ Variables
-

Definition at line 80 of file hidusagestr.h.

+

Definition at line 80 of file hidusagestr.h.

- + +

◆ pstrUsageSelect

+
@@ -2641,11 +2730,13 @@ Variables
-

Definition at line 81 of file hidusagestr.h.

+

Definition at line 81 of file hidusagestr.h.

- + +

◆ pstrUsageVx

+
@@ -2655,11 +2746,13 @@ Variables
-

Definition at line 82 of file hidusagestr.h.

+

Definition at line 82 of file hidusagestr.h.

- + +

◆ pstrUsageVy

+
@@ -2669,11 +2762,13 @@ Variables
-

Definition at line 83 of file hidusagestr.h.

+

Definition at line 83 of file hidusagestr.h.

- + +

◆ pstrUsageVz

+
@@ -2683,11 +2778,13 @@ Variables
-

Definition at line 84 of file hidusagestr.h.

+

Definition at line 84 of file hidusagestr.h.

- + +

◆ pstrUsageVbrx

+
@@ -2697,11 +2794,13 @@ Variables
-

Definition at line 85 of file hidusagestr.h.

+

Definition at line 85 of file hidusagestr.h.

- + +

◆ pstrUsageVbry

+
@@ -2711,11 +2810,13 @@ Variables
-

Definition at line 86 of file hidusagestr.h.

+

Definition at line 86 of file hidusagestr.h.

- + +

◆ pstrUsageVbrz

+
@@ -2725,11 +2826,13 @@ Variables
-

Definition at line 87 of file hidusagestr.h.

+

Definition at line 87 of file hidusagestr.h.

- + +

◆ pstrUsageVno

+
@@ -2739,11 +2842,13 @@ Variables
-

Definition at line 88 of file hidusagestr.h.

+

Definition at line 88 of file hidusagestr.h.

- + +

◆ pstrUsageFeatureNotification

+
@@ -2753,11 +2858,13 @@ Variables
-

Definition at line 89 of file hidusagestr.h.

+

Definition at line 89 of file hidusagestr.h.

- + +

◆ pstrUsageResolutionMultiplier

+
@@ -2767,11 +2874,13 @@ Variables
-

Definition at line 90 of file hidusagestr.h.

+

Definition at line 90 of file hidusagestr.h.

- + +

◆ pstrUsageSystemControl

+
@@ -2781,11 +2890,13 @@ Variables
-

Definition at line 91 of file hidusagestr.h.

+

Definition at line 91 of file hidusagestr.h.

- + +

◆ pstrUsageSystemPowerDown

+
@@ -2795,11 +2906,13 @@ Variables
-

Definition at line 92 of file hidusagestr.h.

+

Definition at line 92 of file hidusagestr.h.

- + +

◆ pstrUsageSystemSleep

+
@@ -2809,11 +2922,13 @@ Variables
-

Definition at line 93 of file hidusagestr.h.

+

Definition at line 93 of file hidusagestr.h.

- + +

◆ pstrUsageSystemWakeup

+
@@ -2823,11 +2938,13 @@ Variables
-

Definition at line 94 of file hidusagestr.h.

+

Definition at line 94 of file hidusagestr.h.

- + +

◆ pstrUsageSystemContextMenu

+
@@ -2837,11 +2954,13 @@ Variables
-

Definition at line 95 of file hidusagestr.h.

+

Definition at line 95 of file hidusagestr.h.

- + +

◆ pstrUsageSystemMainMenu

+
@@ -2851,11 +2970,13 @@ Variables
-

Definition at line 96 of file hidusagestr.h.

+

Definition at line 96 of file hidusagestr.h.

- + +

◆ pstrUsageSystemAppMenu

+
@@ -2865,11 +2986,13 @@ Variables
-

Definition at line 97 of file hidusagestr.h.

+

Definition at line 97 of file hidusagestr.h.

- + +

◆ pstrUsageSystemMenuHelp

+
@@ -2879,11 +3002,13 @@ Variables
-

Definition at line 98 of file hidusagestr.h.

+

Definition at line 98 of file hidusagestr.h.

- + +

◆ pstrUsageSystemMenuExit

+
@@ -2893,11 +3018,13 @@ Variables
-

Definition at line 99 of file hidusagestr.h.

+

Definition at line 99 of file hidusagestr.h.

- + +

◆ pstrUsageSystemMenuSelect

+
@@ -2907,11 +3034,13 @@ Variables
-

Definition at line 100 of file hidusagestr.h.

+

Definition at line 100 of file hidusagestr.h.

- + +

◆ pstrUsageSystemMenuRight

+
@@ -2921,11 +3050,13 @@ Variables
-

Definition at line 101 of file hidusagestr.h.

+

Definition at line 101 of file hidusagestr.h.

- + +

◆ pstrUsageSystemMenuLeft

+
@@ -2935,11 +3066,13 @@ Variables
-

Definition at line 102 of file hidusagestr.h.

+

Definition at line 102 of file hidusagestr.h.

- + +

◆ pstrUsageSystemMenuUp

+
@@ -2949,11 +3082,13 @@ Variables
-

Definition at line 103 of file hidusagestr.h.

+

Definition at line 103 of file hidusagestr.h.

- + +

◆ pstrUsageSystemMenuDown

+
@@ -2963,11 +3098,13 @@ Variables
-

Definition at line 104 of file hidusagestr.h.

+

Definition at line 104 of file hidusagestr.h.

- + +

◆ pstrUsageSystemColdRestart

+
@@ -2977,11 +3114,13 @@ Variables
-

Definition at line 105 of file hidusagestr.h.

+

Definition at line 105 of file hidusagestr.h.

- + +

◆ pstrUsageSystemWarmRestart

+
@@ -2991,11 +3130,13 @@ Variables
-

Definition at line 106 of file hidusagestr.h.

+

Definition at line 106 of file hidusagestr.h.

- + +

◆ pstrUsageDPadUp

+
@@ -3005,11 +3146,13 @@ Variables
-

Definition at line 107 of file hidusagestr.h.

+

Definition at line 107 of file hidusagestr.h.

- + +

◆ pstrUsageDPadDown

+
@@ -3019,11 +3162,13 @@ Variables
-

Definition at line 108 of file hidusagestr.h.

+

Definition at line 108 of file hidusagestr.h.

- + +

◆ pstrUsageDPadRight

+
@@ -3033,11 +3178,13 @@ Variables
-

Definition at line 109 of file hidusagestr.h.

+

Definition at line 109 of file hidusagestr.h.

- + +

◆ pstrUsageDPadLeft

+
@@ -3047,11 +3194,13 @@ Variables
-

Definition at line 110 of file hidusagestr.h.

+

Definition at line 110 of file hidusagestr.h.

- + +

◆ pstrUsageSystemDock

+
@@ -3061,11 +3210,13 @@ Variables
-

Definition at line 111 of file hidusagestr.h.

+

Definition at line 111 of file hidusagestr.h.

- + +

◆ pstrUsageSystemUndock

+
@@ -3075,11 +3226,13 @@ Variables
-

Definition at line 112 of file hidusagestr.h.

+

Definition at line 112 of file hidusagestr.h.

- + +

◆ pstrUsageSystemSetup

+
@@ -3089,11 +3242,13 @@ Variables
-

Definition at line 113 of file hidusagestr.h.

+

Definition at line 113 of file hidusagestr.h.

- + +

◆ pstrUsageSystemBreak

+
@@ -3103,11 +3258,13 @@ Variables
-

Definition at line 114 of file hidusagestr.h.

+

Definition at line 114 of file hidusagestr.h.

- + +

◆ pstrUsageSystemDebuggerBreak

+
@@ -3117,11 +3274,13 @@ Variables
-

Definition at line 115 of file hidusagestr.h.

+

Definition at line 115 of file hidusagestr.h.

- + +

◆ pstrUsageApplicationBreak

+
@@ -3131,11 +3290,13 @@ Variables
-

Definition at line 116 of file hidusagestr.h.

+

Definition at line 116 of file hidusagestr.h.

- + +

◆ pstrUsageApplicationDebuggerBreak

+
@@ -3145,11 +3306,13 @@ Variables
-

Definition at line 117 of file hidusagestr.h.

+

Definition at line 117 of file hidusagestr.h.

- + +

◆ pstrUsageSystemSpeakerMute

+
@@ -3159,11 +3322,13 @@ Variables
-

Definition at line 118 of file hidusagestr.h.

+

Definition at line 118 of file hidusagestr.h.

- + +

◆ pstrUsageSystemHibernate

+
@@ -3173,11 +3338,13 @@ Variables
-

Definition at line 119 of file hidusagestr.h.

+

Definition at line 119 of file hidusagestr.h.

- + +

◆ pstrUsageSystemDisplayInvert

+
@@ -3187,11 +3354,13 @@ Variables
-

Definition at line 120 of file hidusagestr.h.

+

Definition at line 120 of file hidusagestr.h.

- + +

◆ pstrUsageSystemDisplayInternal

+
@@ -3201,11 +3370,13 @@ Variables
-

Definition at line 121 of file hidusagestr.h.

+

Definition at line 121 of file hidusagestr.h.

- + +

◆ pstrUsageSystemDisplayExternal

+
@@ -3215,11 +3386,13 @@ Variables
-

Definition at line 122 of file hidusagestr.h.

+

Definition at line 122 of file hidusagestr.h.

- + +

◆ pstrUsageSystemDisplayBoth

+
@@ -3229,11 +3402,13 @@ Variables
-

Definition at line 123 of file hidusagestr.h.

+

Definition at line 123 of file hidusagestr.h.

- + +

◆ pstrUsageSystemDisplayDual

+
@@ -3243,11 +3418,13 @@ Variables
-

Definition at line 124 of file hidusagestr.h.

+

Definition at line 124 of file hidusagestr.h.

- + +

◆ pstrUsageSystemDisplayToggleIntExt

+
@@ -3257,11 +3434,13 @@ Variables
-

Definition at line 125 of file hidusagestr.h.

+

Definition at line 125 of file hidusagestr.h.

- + +

◆ pstrUsageSystemDisplaySwapPriSec

+
@@ -3271,11 +3450,13 @@ Variables
-

Definition at line 126 of file hidusagestr.h.

+

Definition at line 126 of file hidusagestr.h.

- + +

◆ pstrUsageSystemDisplayLCDAutoscale

+
@@ -3285,11 +3466,13 @@ Variables
-

Definition at line 127 of file hidusagestr.h.

+

Definition at line 127 of file hidusagestr.h.

- + +

◆ pstrUsageFlightSimulationDevice

+
@@ -3299,11 +3482,13 @@ Variables
-

Definition at line 130 of file hidusagestr.h.

+

Definition at line 130 of file hidusagestr.h.

- + +

◆ pstrUsageAutomobileSimulationDevice

+
@@ -3313,11 +3498,13 @@ Variables
-

Definition at line 131 of file hidusagestr.h.

+

Definition at line 131 of file hidusagestr.h.

- + +

◆ pstrUsageTankSimulationDevice

+
@@ -3327,11 +3514,13 @@ Variables
-

Definition at line 132 of file hidusagestr.h.

+

Definition at line 132 of file hidusagestr.h.

- + +

◆ pstrUsageSpaceshipSimulationDevice

+
@@ -3341,11 +3530,13 @@ Variables
-

Definition at line 133 of file hidusagestr.h.

+

Definition at line 133 of file hidusagestr.h.

- + +

◆ pstrUsageSubmarineSimulationDevice

+
@@ -3355,11 +3546,13 @@ Variables
-

Definition at line 134 of file hidusagestr.h.

+

Definition at line 134 of file hidusagestr.h.

- + +

◆ pstrUsageSailingSimulationDevice

+
@@ -3369,11 +3562,13 @@ Variables
-

Definition at line 135 of file hidusagestr.h.

+

Definition at line 135 of file hidusagestr.h.

- + +

◆ pstrUsageMotocicleSimulationDevice

+
@@ -3383,11 +3578,13 @@ Variables
-

Definition at line 136 of file hidusagestr.h.

+

Definition at line 136 of file hidusagestr.h.

- + +

◆ pstrUsageSportsSimulationDevice

+
@@ -3397,11 +3594,13 @@ Variables
-

Definition at line 137 of file hidusagestr.h.

+

Definition at line 137 of file hidusagestr.h.

- + +

◆ pstrUsageAirplaneSimulationDevice

+
@@ -3411,11 +3610,13 @@ Variables
-

Definition at line 138 of file hidusagestr.h.

+

Definition at line 138 of file hidusagestr.h.

- + +

◆ pstrUsageHelicopterSimulationDevice

+
@@ -3425,11 +3626,13 @@ Variables
-

Definition at line 139 of file hidusagestr.h.

+

Definition at line 139 of file hidusagestr.h.

- + +

◆ pstrUsageMagicCarpetSimulationDevice

+
@@ -3439,11 +3642,13 @@ Variables
-

Definition at line 140 of file hidusagestr.h.

+

Definition at line 140 of file hidusagestr.h.

- + +

◆ pstrUsageBicycleSimulationDevice

+
@@ -3453,11 +3658,13 @@ Variables
-

Definition at line 141 of file hidusagestr.h.

+

Definition at line 141 of file hidusagestr.h.

- + +

◆ pstrUsageFlightControlStick

+
@@ -3467,11 +3674,13 @@ Variables
-

Definition at line 142 of file hidusagestr.h.

+

Definition at line 142 of file hidusagestr.h.

- + +

◆ pstrUsageFlightStick

+
@@ -3481,11 +3690,13 @@ Variables
-

Definition at line 143 of file hidusagestr.h.

+

Definition at line 143 of file hidusagestr.h.

- + +

◆ pstrUsageCyclicControl

+
@@ -3495,11 +3706,13 @@ Variables
-

Definition at line 144 of file hidusagestr.h.

+

Definition at line 144 of file hidusagestr.h.

- + +

◆ pstrUsageCyclicTrim

+
@@ -3509,11 +3722,13 @@ Variables
-

Definition at line 145 of file hidusagestr.h.

+

Definition at line 145 of file hidusagestr.h.

- + +

◆ pstrUsageFlightYoke

+
@@ -3523,11 +3738,13 @@ Variables
-

Definition at line 146 of file hidusagestr.h.

+

Definition at line 146 of file hidusagestr.h.

- + +

◆ pstrUsageTrackControl

+
@@ -3537,11 +3754,13 @@ Variables
-

Definition at line 147 of file hidusagestr.h.

+

Definition at line 147 of file hidusagestr.h.

- + +

◆ pstrUsageAileron

+
@@ -3551,11 +3770,13 @@ Variables
-

Definition at line 148 of file hidusagestr.h.

+

Definition at line 148 of file hidusagestr.h.

- + +

◆ pstrUsageAileronTrim

+
@@ -3565,11 +3786,13 @@ Variables
-

Definition at line 149 of file hidusagestr.h.

+

Definition at line 149 of file hidusagestr.h.

- + +

◆ pstrUsageAntiTorqueControl

+
@@ -3579,11 +3802,13 @@ Variables
-

Definition at line 150 of file hidusagestr.h.

+

Definition at line 150 of file hidusagestr.h.

- + +

◆ pstrUsageAutopilotEnable

+
@@ -3593,11 +3818,13 @@ Variables
-

Definition at line 151 of file hidusagestr.h.

+

Definition at line 151 of file hidusagestr.h.

- + +

◆ pstrUsageChaffRelease

+
@@ -3607,11 +3834,13 @@ Variables
-

Definition at line 152 of file hidusagestr.h.

+

Definition at line 152 of file hidusagestr.h.

- + +

◆ pstrUsageCollectiveControl

+
@@ -3621,11 +3850,13 @@ Variables
-

Definition at line 153 of file hidusagestr.h.

+

Definition at line 153 of file hidusagestr.h.

- + +

◆ pstrUsageDiveBrake

+
@@ -3635,11 +3866,13 @@ Variables
-

Definition at line 154 of file hidusagestr.h.

+

Definition at line 154 of file hidusagestr.h.

- + +

◆ pstrUsageElectronicCountermeasures

+
@@ -3649,11 +3882,13 @@ Variables
-

Definition at line 155 of file hidusagestr.h.

+

Definition at line 155 of file hidusagestr.h.

- + +

◆ pstrUsageElevator

+
@@ -3663,11 +3898,13 @@ Variables
-

Definition at line 156 of file hidusagestr.h.

+

Definition at line 156 of file hidusagestr.h.

- + +

◆ pstrUsageElevatorTrim

+
@@ -3677,11 +3914,13 @@ Variables
-

Definition at line 157 of file hidusagestr.h.

+

Definition at line 157 of file hidusagestr.h.

- + +

◆ pstrUsageRudder

+
@@ -3691,11 +3930,13 @@ Variables
-

Definition at line 158 of file hidusagestr.h.

+

Definition at line 158 of file hidusagestr.h.

- + +

◆ pstrUsageThrottle

+
@@ -3705,11 +3946,13 @@ Variables
-

Definition at line 159 of file hidusagestr.h.

+

Definition at line 159 of file hidusagestr.h.

- + +

◆ pstrUsageFlightCommunications

+
@@ -3719,11 +3962,13 @@ Variables
-

Definition at line 160 of file hidusagestr.h.

+

Definition at line 160 of file hidusagestr.h.

- + +

◆ pstrUsageFlareRelease

+
@@ -3733,11 +3978,13 @@ Variables
-

Definition at line 161 of file hidusagestr.h.

+

Definition at line 161 of file hidusagestr.h.

- + +

◆ pstrUsageLandingGear

+
@@ -3747,11 +3994,13 @@ Variables
-

Definition at line 162 of file hidusagestr.h.

+

Definition at line 162 of file hidusagestr.h.

- + +

◆ pstrUsageToeBrake

+
@@ -3761,11 +4010,13 @@ Variables
-

Definition at line 163 of file hidusagestr.h.

+

Definition at line 163 of file hidusagestr.h.

- + +

◆ pstrUsageTrigger

+
@@ -3775,11 +4026,13 @@ Variables
-

Definition at line 164 of file hidusagestr.h.

+

Definition at line 164 of file hidusagestr.h.

- + +

◆ pstrUsageWeaponsArm

+
@@ -3789,11 +4042,13 @@ Variables
-

Definition at line 165 of file hidusagestr.h.

+

Definition at line 165 of file hidusagestr.h.

- + +

◆ pstrUsageWeaponsSelect

+
@@ -3803,11 +4058,13 @@ Variables
-

Definition at line 166 of file hidusagestr.h.

+

Definition at line 166 of file hidusagestr.h.

- + +

◆ pstrUsageWingFlaps

+
@@ -3817,11 +4074,13 @@ Variables
-

Definition at line 167 of file hidusagestr.h.

+

Definition at line 167 of file hidusagestr.h.

- + +

◆ pstrUsageAccelerator

+
@@ -3831,11 +4090,13 @@ Variables
-

Definition at line 168 of file hidusagestr.h.

+

Definition at line 168 of file hidusagestr.h.

- + +

◆ pstrUsageBrake

+
@@ -3845,11 +4106,13 @@ Variables
-

Definition at line 169 of file hidusagestr.h.

+

Definition at line 169 of file hidusagestr.h.

- + +

◆ pstrUsageClutch

+
@@ -3859,11 +4122,13 @@ Variables
-

Definition at line 170 of file hidusagestr.h.

+

Definition at line 170 of file hidusagestr.h.

- + +

◆ pstrUsageShifter

+
@@ -3873,11 +4138,13 @@ Variables
-

Definition at line 171 of file hidusagestr.h.

+

Definition at line 171 of file hidusagestr.h.

- + +

◆ pstrUsageSteering

+
@@ -3887,11 +4154,13 @@ Variables
-

Definition at line 172 of file hidusagestr.h.

+

Definition at line 172 of file hidusagestr.h.

- + +

◆ pstrUsageTurretDirection

+
@@ -3901,11 +4170,13 @@ Variables
-

Definition at line 173 of file hidusagestr.h.

+

Definition at line 173 of file hidusagestr.h.

- + +

◆ pstrUsageBarrelElevation

+
@@ -3915,11 +4186,13 @@ Variables
-

Definition at line 174 of file hidusagestr.h.

+

Definition at line 174 of file hidusagestr.h.

- + +

◆ pstrUsageDivePlane

+
@@ -3929,11 +4202,13 @@ Variables
-

Definition at line 175 of file hidusagestr.h.

+

Definition at line 175 of file hidusagestr.h.

- + +

◆ pstrUsageBallast

+
@@ -3943,11 +4218,13 @@ Variables
-

Definition at line 176 of file hidusagestr.h.

+

Definition at line 176 of file hidusagestr.h.

- + +

◆ pstrUsageBicycleCrank

+
@@ -3957,11 +4234,13 @@ Variables
-

Definition at line 177 of file hidusagestr.h.

+

Definition at line 177 of file hidusagestr.h.

- + +

◆ pstrUsageHandleBars

+
@@ -3971,11 +4250,13 @@ Variables
-

Definition at line 178 of file hidusagestr.h.

+

Definition at line 178 of file hidusagestr.h.

- + +

◆ pstrUsageFrontBrake

+
@@ -3985,11 +4266,13 @@ Variables
-

Definition at line 179 of file hidusagestr.h.

+

Definition at line 179 of file hidusagestr.h.

- + +

◆ pstrUsageRearBrake

+
@@ -3999,11 +4282,13 @@ Variables
-

Definition at line 180 of file hidusagestr.h.

+

Definition at line 180 of file hidusagestr.h.

- + +

◆ pstrUsageBelt

+
@@ -4013,11 +4298,13 @@ Variables
-

Definition at line 183 of file hidusagestr.h.

+

Definition at line 183 of file hidusagestr.h.

- + +

◆ pstrUsageBodySuit

+
@@ -4027,11 +4314,13 @@ Variables
-

Definition at line 184 of file hidusagestr.h.

+

Definition at line 184 of file hidusagestr.h.

- + +

◆ pstrUsageFlexor

+
@@ -4041,11 +4330,13 @@ Variables
-

Definition at line 185 of file hidusagestr.h.

+

Definition at line 185 of file hidusagestr.h.

- + +

◆ pstrUsageGlove

+
@@ -4055,11 +4346,13 @@ Variables
-

Definition at line 186 of file hidusagestr.h.

+

Definition at line 186 of file hidusagestr.h.

- + +

◆ pstrUsageHeadTracker

+
@@ -4069,11 +4362,13 @@ Variables
-

Definition at line 187 of file hidusagestr.h.

+

Definition at line 187 of file hidusagestr.h.

- + +

◆ pstrUsageHeadMountedDisplay

+
@@ -4083,11 +4378,13 @@ Variables
-

Definition at line 188 of file hidusagestr.h.

+

Definition at line 188 of file hidusagestr.h.

- + +

◆ pstrUsageHandTracker

+
@@ -4097,11 +4394,13 @@ Variables
-

Definition at line 189 of file hidusagestr.h.

+

Definition at line 189 of file hidusagestr.h.

- + +

◆ pstrUsageOculometer

+
@@ -4111,11 +4410,13 @@ Variables
-

Definition at line 190 of file hidusagestr.h.

+

Definition at line 190 of file hidusagestr.h.

- + +

◆ pstrUsageVest

+
@@ -4125,11 +4426,13 @@ Variables
-

Definition at line 191 of file hidusagestr.h.

+

Definition at line 191 of file hidusagestr.h.

- + +

◆ pstrUsageAnimatronicDevice

+
@@ -4139,11 +4442,13 @@ Variables
-

Definition at line 192 of file hidusagestr.h.

+

Definition at line 192 of file hidusagestr.h.

- + +

◆ pstrUsageStereoEnable

+
@@ -4153,11 +4458,13 @@ Variables
-

Definition at line 193 of file hidusagestr.h.

+

Definition at line 193 of file hidusagestr.h.

- + +

◆ pstrUsageDisplayEnable

+
@@ -4167,11 +4474,13 @@ Variables
-

Definition at line 194 of file hidusagestr.h.

+

Definition at line 194 of file hidusagestr.h.

- + +

◆ pstrUsageBaseballBat

+
@@ -4181,11 +4490,13 @@ Variables
-

Definition at line 197 of file hidusagestr.h.

+

Definition at line 197 of file hidusagestr.h.

- + +

◆ pstrUsageGolfClub

+
@@ -4195,11 +4506,13 @@ Variables
-

Definition at line 198 of file hidusagestr.h.

+

Definition at line 198 of file hidusagestr.h.

- + +

◆ pstrUsageRowingMachine

+
@@ -4209,11 +4522,13 @@ Variables
-

Definition at line 199 of file hidusagestr.h.

+

Definition at line 199 of file hidusagestr.h.

- + +

◆ pstrUsageTreadmill

+
@@ -4223,11 +4538,13 @@ Variables
-

Definition at line 200 of file hidusagestr.h.

+

Definition at line 200 of file hidusagestr.h.

- + +

◆ pstrUsageOar

+
@@ -4237,11 +4554,13 @@ Variables
-

Definition at line 201 of file hidusagestr.h.

+

Definition at line 201 of file hidusagestr.h.

- + +

◆ pstrUsageSlope

+
@@ -4251,11 +4570,13 @@ Variables
-

Definition at line 202 of file hidusagestr.h.

+

Definition at line 202 of file hidusagestr.h.

- + +

◆ pstrUsageRate

+
@@ -4265,11 +4586,13 @@ Variables
-

Definition at line 203 of file hidusagestr.h.

+

Definition at line 203 of file hidusagestr.h.

- + +

◆ pstrUsageStickSpeed

+
@@ -4279,11 +4602,13 @@ Variables
-

Definition at line 204 of file hidusagestr.h.

+

Definition at line 204 of file hidusagestr.h.

- + +

◆ pstrUsageStickFaceAngle

+
@@ -4293,11 +4618,13 @@ Variables
-

Definition at line 205 of file hidusagestr.h.

+

Definition at line 205 of file hidusagestr.h.

- + +

◆ pstrUsageStickHeelToe

+
@@ -4307,11 +4634,13 @@ Variables
-

Definition at line 206 of file hidusagestr.h.

+

Definition at line 206 of file hidusagestr.h.

- + +

◆ pstrUsageStickFollowThough

+
@@ -4321,11 +4650,13 @@ Variables
-

Definition at line 207 of file hidusagestr.h.

+

Definition at line 207 of file hidusagestr.h.

- + +

◆ pstrUsageStickTempo

+
@@ -4335,11 +4666,13 @@ Variables
-

Definition at line 208 of file hidusagestr.h.

+

Definition at line 208 of file hidusagestr.h.

- + +

◆ pstrUsageStickType

+
@@ -4349,11 +4682,13 @@ Variables
-

Definition at line 209 of file hidusagestr.h.

+

Definition at line 209 of file hidusagestr.h.

- + +

◆ pstrUsageStickHeight

+
@@ -4363,11 +4698,13 @@ Variables
-

Definition at line 210 of file hidusagestr.h.

+

Definition at line 210 of file hidusagestr.h.

- + +

◆ pstrUsagePutter

+
@@ -4377,11 +4714,13 @@ Variables
-

Definition at line 211 of file hidusagestr.h.

+

Definition at line 211 of file hidusagestr.h.

- + +

◆ pstrUsage1Iron

+
@@ -4391,11 +4730,13 @@ Variables
-

Definition at line 212 of file hidusagestr.h.

+

Definition at line 212 of file hidusagestr.h.

- + +

◆ pstrUsage2Iron

+
@@ -4405,11 +4746,13 @@ Variables
-

Definition at line 213 of file hidusagestr.h.

+

Definition at line 213 of file hidusagestr.h.

- + +

◆ pstrUsage3Iron

+
@@ -4419,11 +4762,13 @@ Variables
-

Definition at line 214 of file hidusagestr.h.

+

Definition at line 214 of file hidusagestr.h.

- + +

◆ pstrUsage4Iron

+
@@ -4433,11 +4778,13 @@ Variables
-

Definition at line 215 of file hidusagestr.h.

+

Definition at line 215 of file hidusagestr.h.

- + +

◆ pstrUsage5Iron

+
@@ -4447,11 +4794,13 @@ Variables
-

Definition at line 216 of file hidusagestr.h.

+

Definition at line 216 of file hidusagestr.h.

- + +

◆ pstrUsage6Iron

+
@@ -4461,11 +4810,13 @@ Variables
-

Definition at line 217 of file hidusagestr.h.

+

Definition at line 217 of file hidusagestr.h.

- + +

◆ pstrUsage7Iron

+
@@ -4475,11 +4826,13 @@ Variables
-

Definition at line 218 of file hidusagestr.h.

+

Definition at line 218 of file hidusagestr.h.

- + +

◆ pstrUsage8Iron

+
@@ -4489,11 +4842,13 @@ Variables
-

Definition at line 219 of file hidusagestr.h.

+

Definition at line 219 of file hidusagestr.h.

- + +

◆ pstrUsage9Iron

+
@@ -4503,11 +4858,13 @@ Variables
-

Definition at line 220 of file hidusagestr.h.

+

Definition at line 220 of file hidusagestr.h.

- + +

◆ pstrUsage10Iron

+
@@ -4517,11 +4874,13 @@ Variables
-

Definition at line 221 of file hidusagestr.h.

+

Definition at line 221 of file hidusagestr.h.

- + +

◆ pstrUsage11Iron

+
@@ -4531,11 +4890,13 @@ Variables
-

Definition at line 222 of file hidusagestr.h.

+

Definition at line 222 of file hidusagestr.h.

- + +

◆ pstrUsageSandWedge

+
@@ -4545,11 +4906,13 @@ Variables
-

Definition at line 223 of file hidusagestr.h.

+

Definition at line 223 of file hidusagestr.h.

- + +

◆ pstrUsageLoftWedge

+
@@ -4559,11 +4922,13 @@ Variables
-

Definition at line 224 of file hidusagestr.h.

+

Definition at line 224 of file hidusagestr.h.

- + +

◆ pstrUsagePowerWedge

+
@@ -4573,11 +4938,13 @@ Variables
-

Definition at line 225 of file hidusagestr.h.

+

Definition at line 225 of file hidusagestr.h.

- + +

◆ pstrUsage1Wood

+
@@ -4587,11 +4954,13 @@ Variables
-

Definition at line 226 of file hidusagestr.h.

+

Definition at line 226 of file hidusagestr.h.

- + +

◆ pstrUsage3Wood

+
@@ -4601,11 +4970,13 @@ Variables
-

Definition at line 227 of file hidusagestr.h.

+

Definition at line 227 of file hidusagestr.h.

- + +

◆ pstrUsage5Wood

+
@@ -4615,11 +4986,13 @@ Variables
-

Definition at line 228 of file hidusagestr.h.

+

Definition at line 228 of file hidusagestr.h.

- + +

◆ pstrUsage7Wood

+
@@ -4629,11 +5002,13 @@ Variables
-

Definition at line 229 of file hidusagestr.h.

+

Definition at line 229 of file hidusagestr.h.

- + +

◆ pstrUsage9Wood

+
@@ -4643,11 +5018,13 @@ Variables
-

Definition at line 230 of file hidusagestr.h.

+

Definition at line 230 of file hidusagestr.h.

- + +

◆ pstrUsage3DGameController

+
@@ -4657,11 +5034,13 @@ Variables
-

Definition at line 233 of file hidusagestr.h.

+

Definition at line 233 of file hidusagestr.h.

- + +

◆ pstrUsagePinballDevice

+
@@ -4671,11 +5050,13 @@ Variables
-

Definition at line 234 of file hidusagestr.h.

+

Definition at line 234 of file hidusagestr.h.

- + +

◆ pstrUsageGunDevice

+
@@ -4685,11 +5066,13 @@ Variables
-

Definition at line 235 of file hidusagestr.h.

+

Definition at line 235 of file hidusagestr.h.

- + +

◆ pstrUsagePointOfView

+
@@ -4699,11 +5082,13 @@ Variables
-

Definition at line 236 of file hidusagestr.h.

+

Definition at line 236 of file hidusagestr.h.

- + +

◆ pstrUsageTurnRightLeft

+
@@ -4713,11 +5098,13 @@ Variables
-

Definition at line 237 of file hidusagestr.h.

+

Definition at line 237 of file hidusagestr.h.

- + +

◆ pstrUsagePitchForwardBackward

+
@@ -4727,11 +5114,13 @@ Variables
-

Definition at line 238 of file hidusagestr.h.

+

Definition at line 238 of file hidusagestr.h.

- + +

◆ pstrUsageRollRightLeft

+
@@ -4741,11 +5130,13 @@ Variables
-

Definition at line 239 of file hidusagestr.h.

+

Definition at line 239 of file hidusagestr.h.

- + +

◆ pstrUsageMoveRightLeft

+
@@ -4755,11 +5146,13 @@ Variables
-

Definition at line 240 of file hidusagestr.h.

+

Definition at line 240 of file hidusagestr.h.

- + +

◆ pstrUsageMoveForwardBackward

+
@@ -4769,11 +5162,13 @@ Variables
-

Definition at line 241 of file hidusagestr.h.

+

Definition at line 241 of file hidusagestr.h.

- + +

◆ pstrUsageMoveUpDown

+
@@ -4783,11 +5178,13 @@ Variables
-

Definition at line 242 of file hidusagestr.h.

+

Definition at line 242 of file hidusagestr.h.

- + +

◆ pstrUsageLeanRightLeft

+
@@ -4797,11 +5194,13 @@ Variables
-

Definition at line 243 of file hidusagestr.h.

+

Definition at line 243 of file hidusagestr.h.

- + +

◆ pstrUsageLeanForwardBackward

+
@@ -4811,11 +5210,13 @@ Variables
-

Definition at line 244 of file hidusagestr.h.

+

Definition at line 244 of file hidusagestr.h.

- + +

◆ pstrUsageHeightOfPOV

+
@@ -4825,11 +5226,13 @@ Variables
-

Definition at line 245 of file hidusagestr.h.

+

Definition at line 245 of file hidusagestr.h.

- + +

◆ pstrUsageFlipper

+
@@ -4839,11 +5242,13 @@ Variables
-

Definition at line 246 of file hidusagestr.h.

+

Definition at line 246 of file hidusagestr.h.

- + +

◆ pstrUsageSecondaryFlipper

+
@@ -4853,11 +5258,13 @@ Variables
-

Definition at line 247 of file hidusagestr.h.

+

Definition at line 247 of file hidusagestr.h.

- + +

◆ pstrUsageBump

+
@@ -4867,11 +5274,13 @@ Variables
-

Definition at line 248 of file hidusagestr.h.

+

Definition at line 248 of file hidusagestr.h.

- + +

◆ pstrUsageNewGame

+
@@ -4881,11 +5290,13 @@ Variables
-

Definition at line 249 of file hidusagestr.h.

+

Definition at line 249 of file hidusagestr.h.

- + +

◆ pstrUsageShootBall

+
@@ -4895,11 +5306,13 @@ Variables
-

Definition at line 250 of file hidusagestr.h.

+

Definition at line 250 of file hidusagestr.h.

- + +

◆ pstrUsagePlayer

+
@@ -4909,11 +5322,13 @@ Variables
-

Definition at line 251 of file hidusagestr.h.

+

Definition at line 251 of file hidusagestr.h.

- + +

◆ pstrUsageGunBolt

+
@@ -4923,11 +5338,13 @@ Variables
-

Definition at line 252 of file hidusagestr.h.

+

Definition at line 252 of file hidusagestr.h.

- + +

◆ pstrUsageGunClip

+
@@ -4937,11 +5354,13 @@ Variables
-

Definition at line 253 of file hidusagestr.h.

+

Definition at line 253 of file hidusagestr.h.

- + +

◆ pstrUsageGunSelector

+
@@ -4951,11 +5370,13 @@ Variables
-

Definition at line 254 of file hidusagestr.h.

+

Definition at line 254 of file hidusagestr.h.

- + +

◆ pstrUsageGunSingleShot

+
@@ -4965,11 +5386,13 @@ Variables
-

Definition at line 255 of file hidusagestr.h.

+

Definition at line 255 of file hidusagestr.h.

- + +

◆ pstrUsageGunBurst

+
@@ -4979,11 +5402,13 @@ Variables
-

Definition at line 256 of file hidusagestr.h.

+

Definition at line 256 of file hidusagestr.h.

- + +

◆ pstrUsageGunAutomatic

+
@@ -4993,11 +5418,13 @@ Variables
-

Definition at line 257 of file hidusagestr.h.

+

Definition at line 257 of file hidusagestr.h.

- + +

◆ pstrUsageGunSafety

+
@@ -5007,11 +5434,13 @@ Variables
-

Definition at line 258 of file hidusagestr.h.

+

Definition at line 258 of file hidusagestr.h.

- + +

◆ pstrUsageGamepadFireJump

+
@@ -5021,11 +5450,13 @@ Variables
-

Definition at line 259 of file hidusagestr.h.

+

Definition at line 259 of file hidusagestr.h.

- + +

◆ pstrUsageGamepadTrigger

+
@@ -5035,11 +5466,13 @@ Variables
-

Definition at line 260 of file hidusagestr.h.

+

Definition at line 260 of file hidusagestr.h.

- + +

◆ pstrUsageBatteryStrength

+
@@ -5049,11 +5482,13 @@ Variables
-

Definition at line 263 of file hidusagestr.h.

+

Definition at line 263 of file hidusagestr.h.

- + +

◆ pstrUsageWirelessChannel

+
@@ -5063,11 +5498,13 @@ Variables
-

Definition at line 264 of file hidusagestr.h.

+

Definition at line 264 of file hidusagestr.h.

- + +

◆ pstrUsageWirelessID

+
@@ -5077,11 +5514,13 @@ Variables
-

Definition at line 265 of file hidusagestr.h.

+

Definition at line 265 of file hidusagestr.h.

- + +

◆ pstrUsageDiscoverWirelessControl

+
@@ -5091,11 +5530,13 @@ Variables
-

Definition at line 266 of file hidusagestr.h.

+

Definition at line 266 of file hidusagestr.h.

- + +

◆ pstrUsageSecurityCodeCharEntered

+
@@ -5105,11 +5546,13 @@ Variables
-

Definition at line 267 of file hidusagestr.h.

+

Definition at line 267 of file hidusagestr.h.

- + +

◆ pstrUsageSecurityCodeCharErased

+
@@ -5119,11 +5562,13 @@ Variables
-

Definition at line 268 of file hidusagestr.h.

+

Definition at line 268 of file hidusagestr.h.

- + +

◆ pstrUsageSecurityCodeCleared

+
@@ -5133,11 +5578,13 @@ Variables
-

Definition at line 269 of file hidusagestr.h.

+

Definition at line 269 of file hidusagestr.h.

- + +

◆ pstrUsageNumLock

+
@@ -5147,11 +5594,13 @@ Variables
-

Definition at line 272 of file hidusagestr.h.

+

Definition at line 272 of file hidusagestr.h.

- + +

◆ pstrUsageCapsLock

+
@@ -5161,11 +5610,13 @@ Variables
-

Definition at line 273 of file hidusagestr.h.

+

Definition at line 273 of file hidusagestr.h.

- + +

◆ pstrUsageScrollLock

+
@@ -5175,11 +5626,13 @@ Variables
-

Definition at line 274 of file hidusagestr.h.

+

Definition at line 274 of file hidusagestr.h.

- + +

◆ pstrUsageCompose

+
@@ -5189,11 +5642,13 @@ Variables
-

Definition at line 275 of file hidusagestr.h.

+

Definition at line 275 of file hidusagestr.h.

- + +

◆ pstrUsageKana

+
@@ -5203,11 +5658,13 @@ Variables
-

Definition at line 276 of file hidusagestr.h.

+

Definition at line 276 of file hidusagestr.h.

- + +

◆ pstrUsagePower

+
@@ -5217,11 +5674,13 @@ Variables
-

Definition at line 277 of file hidusagestr.h.

+

Definition at line 277 of file hidusagestr.h.

- + +

◆ pstrUsageShift

+
@@ -5231,11 +5690,13 @@ Variables
-

Definition at line 278 of file hidusagestr.h.

+

Definition at line 278 of file hidusagestr.h.

- + +

◆ pstrUsageDoNotDisturb

+
@@ -5245,11 +5706,13 @@ Variables
-

Definition at line 279 of file hidusagestr.h.

+

Definition at line 279 of file hidusagestr.h.

- + +

◆ pstrUsageMute

+
@@ -5259,11 +5722,13 @@ Variables
-

Definition at line 280 of file hidusagestr.h.

+

Definition at line 280 of file hidusagestr.h.

- + +

◆ pstrUsageToneEnable

+
@@ -5273,11 +5738,13 @@ Variables
-

Definition at line 281 of file hidusagestr.h.

+

Definition at line 281 of file hidusagestr.h.

- + +

◆ pstrUsageHighCutFilter

+
@@ -5287,11 +5754,13 @@ Variables
-

Definition at line 282 of file hidusagestr.h.

+

Definition at line 282 of file hidusagestr.h.

- + +

◆ pstrUsageLowCutFilter

+
@@ -5301,11 +5770,13 @@ Variables
-

Definition at line 283 of file hidusagestr.h.

+

Definition at line 283 of file hidusagestr.h.

- + +

◆ pstrUsageEqualizerEnable

+
@@ -5315,11 +5786,13 @@ Variables
-

Definition at line 284 of file hidusagestr.h.

+

Definition at line 284 of file hidusagestr.h.

- + +

◆ pstrUsageSoundFieldOn

+
@@ -5329,11 +5802,13 @@ Variables
-

Definition at line 285 of file hidusagestr.h.

+

Definition at line 285 of file hidusagestr.h.

- + +

◆ pstrUsageSurroundOn

+
@@ -5343,11 +5818,13 @@ Variables
-

Definition at line 286 of file hidusagestr.h.

+

Definition at line 286 of file hidusagestr.h.

- + +

◆ pstrUsageRepeat

+
@@ -5357,11 +5834,13 @@ Variables
-

Definition at line 287 of file hidusagestr.h.

+

Definition at line 287 of file hidusagestr.h.

- + +

◆ pstrUsageStereo

+
@@ -5371,11 +5850,13 @@ Variables
-

Definition at line 288 of file hidusagestr.h.

+

Definition at line 288 of file hidusagestr.h.

- + +

◆ pstrUsageSamplingRateDetect

+
@@ -5385,11 +5866,13 @@ Variables
-

Definition at line 289 of file hidusagestr.h.

+

Definition at line 289 of file hidusagestr.h.

- + +

◆ pstrUsageSpinning

+
@@ -5399,11 +5882,13 @@ Variables
-

Definition at line 290 of file hidusagestr.h.

+

Definition at line 290 of file hidusagestr.h.

- + +

◆ pstrUsageCAV

+
@@ -5413,11 +5898,13 @@ Variables
-

Definition at line 291 of file hidusagestr.h.

+

Definition at line 291 of file hidusagestr.h.

- + +

◆ pstrUsageCLV

+
@@ -5427,11 +5914,13 @@ Variables
-

Definition at line 292 of file hidusagestr.h.

+

Definition at line 292 of file hidusagestr.h.

- + +

◆ pstrUsageRecordingFormatDetect

+
@@ -5441,11 +5930,13 @@ Variables
-

Definition at line 293 of file hidusagestr.h.

+

Definition at line 293 of file hidusagestr.h.

- + +

◆ pstrUsageOffHook

+
@@ -5455,11 +5946,13 @@ Variables
-

Definition at line 294 of file hidusagestr.h.

+

Definition at line 294 of file hidusagestr.h.

- + +

◆ pstrUsageRing

+
@@ -5469,11 +5962,13 @@ Variables
-

Definition at line 295 of file hidusagestr.h.

+

Definition at line 295 of file hidusagestr.h.

- + +

◆ pstrUsageMessageWaiting

+
@@ -5483,11 +5978,13 @@ Variables
-

Definition at line 296 of file hidusagestr.h.

+

Definition at line 296 of file hidusagestr.h.

- + +

◆ pstrUsageDataMode

+
@@ -5497,11 +5994,13 @@ Variables
-

Definition at line 297 of file hidusagestr.h.

+

Definition at line 297 of file hidusagestr.h.

- + +

◆ pstrUsageBatteryOperation

+
@@ -5511,11 +6010,13 @@ Variables
-

Definition at line 298 of file hidusagestr.h.

+

Definition at line 298 of file hidusagestr.h.

- + +

◆ pstrUsageBatteryOK

+
@@ -5525,11 +6026,13 @@ Variables
-

Definition at line 299 of file hidusagestr.h.

+

Definition at line 299 of file hidusagestr.h.

- + +

◆ pstrUsageBatteryLow

+
@@ -5539,11 +6042,13 @@ Variables
-

Definition at line 300 of file hidusagestr.h.

+

Definition at line 300 of file hidusagestr.h.

- + +

◆ pstrUsageSpeaker

+
@@ -5553,11 +6058,13 @@ Variables
-

Definition at line 301 of file hidusagestr.h.

+

Definition at line 301 of file hidusagestr.h.

- + +

◆ pstrUsageHeadSet

+
@@ -5567,11 +6074,13 @@ Variables
-

Definition at line 302 of file hidusagestr.h.

+

Definition at line 302 of file hidusagestr.h.

- + +

◆ pstrUsageHold

+
@@ -5581,11 +6090,13 @@ Variables
-

Definition at line 303 of file hidusagestr.h.

+

Definition at line 303 of file hidusagestr.h.

- + +

◆ pstrUsageMicrophone

+
@@ -5595,11 +6106,13 @@ Variables
-

Definition at line 304 of file hidusagestr.h.

+

Definition at line 304 of file hidusagestr.h.

- + +

◆ pstrUsageCoverage

+
@@ -5609,11 +6122,13 @@ Variables
-

Definition at line 305 of file hidusagestr.h.

+

Definition at line 305 of file hidusagestr.h.

- + +

◆ pstrUsageNightMode

+
@@ -5623,11 +6138,13 @@ Variables
-

Definition at line 306 of file hidusagestr.h.

+

Definition at line 306 of file hidusagestr.h.

- + +

◆ pstrUsageSendCalls

+
@@ -5637,11 +6154,13 @@ Variables
-

Definition at line 307 of file hidusagestr.h.

+

Definition at line 307 of file hidusagestr.h.

- + +

◆ pstrUsageCallPickup

+
@@ -5651,11 +6170,13 @@ Variables
-

Definition at line 308 of file hidusagestr.h.

+

Definition at line 308 of file hidusagestr.h.

- + +

◆ pstrUsageConference

+
@@ -5665,11 +6186,13 @@ Variables
-

Definition at line 309 of file hidusagestr.h.

+

Definition at line 309 of file hidusagestr.h.

- + +

◆ pstrUsageStandBy

+
@@ -5679,11 +6202,13 @@ Variables
-

Definition at line 310 of file hidusagestr.h.

+

Definition at line 310 of file hidusagestr.h.

- + +

◆ pstrUsageCameraOn

+
@@ -5693,11 +6218,13 @@ Variables
-

Definition at line 311 of file hidusagestr.h.

+

Definition at line 311 of file hidusagestr.h.

- + +

◆ pstrUsageCameraOff

+
@@ -5707,11 +6234,13 @@ Variables
-

Definition at line 312 of file hidusagestr.h.

+

Definition at line 312 of file hidusagestr.h.

- + +

◆ pstrUsageOnLine

+
@@ -5721,11 +6250,13 @@ Variables
-

Definition at line 313 of file hidusagestr.h.

+

Definition at line 313 of file hidusagestr.h.

- + +

◆ pstrUsageOffLine

+
@@ -5735,11 +6266,13 @@ Variables
-

Definition at line 314 of file hidusagestr.h.

+

Definition at line 314 of file hidusagestr.h.

- + +

◆ pstrUsageBusy

+
@@ -5749,11 +6282,13 @@ Variables
-

Definition at line 315 of file hidusagestr.h.

+

Definition at line 315 of file hidusagestr.h.

- + +

◆ pstrUsageReady

+
@@ -5763,11 +6298,13 @@ Variables
-

Definition at line 316 of file hidusagestr.h.

+

Definition at line 316 of file hidusagestr.h.

- + +

◆ pstrUsagePaperOut

+
@@ -5777,11 +6314,13 @@ Variables
-

Definition at line 317 of file hidusagestr.h.

+

Definition at line 317 of file hidusagestr.h.

- + +

◆ pstrUsagePaperJam

+
@@ -5791,11 +6330,13 @@ Variables
-

Definition at line 318 of file hidusagestr.h.

+

Definition at line 318 of file hidusagestr.h.

- + +

◆ pstrUsageRemote

+
@@ -5805,11 +6346,13 @@ Variables
-

Definition at line 319 of file hidusagestr.h.

+

Definition at line 319 of file hidusagestr.h.

- + +

◆ pstrUsageForward

+
@@ -5819,11 +6362,13 @@ Variables
-

Definition at line 320 of file hidusagestr.h.

+

Definition at line 320 of file hidusagestr.h.

- + +

◆ pstrUsageReverse

+
@@ -5833,11 +6378,13 @@ Variables
-

Definition at line 321 of file hidusagestr.h.

+

Definition at line 321 of file hidusagestr.h.

- + +

◆ pstrUsageStop

+
@@ -5847,11 +6394,13 @@ Variables
-

Definition at line 322 of file hidusagestr.h.

+

Definition at line 322 of file hidusagestr.h.

- + +

◆ pstrUsageRewind

+
@@ -5861,11 +6410,13 @@ Variables
-

Definition at line 323 of file hidusagestr.h.

+

Definition at line 323 of file hidusagestr.h.

- + +

◆ pstrUsageFastForward

+
@@ -5875,11 +6426,13 @@ Variables
-

Definition at line 324 of file hidusagestr.h.

+

Definition at line 324 of file hidusagestr.h.

- + +

◆ pstrUsagePlay

+
@@ -5889,11 +6442,13 @@ Variables
-

Definition at line 325 of file hidusagestr.h.

+

Definition at line 325 of file hidusagestr.h.

- + +

◆ pstrUsagePause

+
@@ -5903,11 +6458,13 @@ Variables
-

Definition at line 326 of file hidusagestr.h.

+

Definition at line 326 of file hidusagestr.h.

- + +

◆ pstrUsageRecord

+
@@ -5917,11 +6474,13 @@ Variables
-

Definition at line 327 of file hidusagestr.h.

+

Definition at line 327 of file hidusagestr.h.

- + +

◆ pstrUsageError

+
@@ -5931,11 +6490,13 @@ Variables
-

Definition at line 328 of file hidusagestr.h.

+

Definition at line 328 of file hidusagestr.h.

- + +

◆ pstrUsageSelectedIndicator

+
@@ -5945,11 +6506,13 @@ Variables
-

Definition at line 329 of file hidusagestr.h.

+

Definition at line 329 of file hidusagestr.h.

- + +

◆ pstrUsageInUseIndicator

+
@@ -5959,11 +6522,13 @@ Variables
-

Definition at line 330 of file hidusagestr.h.

+

Definition at line 330 of file hidusagestr.h.

- + +

◆ pstrUsageMultiModeIndicator

+
@@ -5973,11 +6538,13 @@ Variables
-

Definition at line 331 of file hidusagestr.h.

+

Definition at line 331 of file hidusagestr.h.

- + +

◆ pstrUsageIndicatorOn

+
@@ -5987,11 +6554,13 @@ Variables
-

Definition at line 332 of file hidusagestr.h.

+

Definition at line 332 of file hidusagestr.h.

- + +

◆ pstrUsageIndicatorFlash

+
@@ -6001,11 +6570,13 @@ Variables
-

Definition at line 333 of file hidusagestr.h.

+

Definition at line 333 of file hidusagestr.h.

- + +

◆ pstrUsageIndicatorSlowBlink

+
@@ -6015,11 +6586,13 @@ Variables
-

Definition at line 334 of file hidusagestr.h.

+

Definition at line 334 of file hidusagestr.h.

- + +

◆ pstrUsageIndicatorFastBlink

+
@@ -6029,11 +6602,13 @@ Variables
-

Definition at line 335 of file hidusagestr.h.

+

Definition at line 335 of file hidusagestr.h.

- + +

◆ pstrUsageIndicatorOff

+
@@ -6043,11 +6618,13 @@ Variables
-

Definition at line 336 of file hidusagestr.h.

+

Definition at line 336 of file hidusagestr.h.

- + +

◆ pstrUsageFlashOnTime

+
@@ -6057,11 +6634,13 @@ Variables
-

Definition at line 337 of file hidusagestr.h.

+

Definition at line 337 of file hidusagestr.h.

- + +

◆ pstrUsageSlowBlinkOnTime

+
@@ -6071,11 +6650,13 @@ Variables
-

Definition at line 338 of file hidusagestr.h.

+

Definition at line 338 of file hidusagestr.h.

- + +

◆ pstrUsageSlowBlinkOffTime

+
@@ -6085,11 +6666,13 @@ Variables
-

Definition at line 339 of file hidusagestr.h.

+

Definition at line 339 of file hidusagestr.h.

- + +

◆ pstrUsageFastBlinkOnTime

+
@@ -6099,11 +6682,13 @@ Variables
-

Definition at line 340 of file hidusagestr.h.

+

Definition at line 340 of file hidusagestr.h.

- + +

◆ pstrUsageFastBlinkOffTime

+
@@ -6113,11 +6698,13 @@ Variables
-

Definition at line 341 of file hidusagestr.h.

+

Definition at line 341 of file hidusagestr.h.

- + +

◆ pstrUsageIndicatorColor

+
@@ -6127,11 +6714,13 @@ Variables
-

Definition at line 342 of file hidusagestr.h.

+

Definition at line 342 of file hidusagestr.h.

- + +

◆ pstrUsageIndicatorRed

+
@@ -6141,11 +6730,13 @@ Variables
-

Definition at line 343 of file hidusagestr.h.

+

Definition at line 343 of file hidusagestr.h.

- + +

◆ pstrUsageIndicatorGreen

+
@@ -6155,11 +6746,13 @@ Variables
-

Definition at line 344 of file hidusagestr.h.

+

Definition at line 344 of file hidusagestr.h.

- + +

◆ pstrUsageIndicatorAmber

+
@@ -6169,11 +6762,13 @@ Variables
-

Definition at line 345 of file hidusagestr.h.

+

Definition at line 345 of file hidusagestr.h.

- + +

◆ pstrUsageGenericIndicator

+
@@ -6183,11 +6778,13 @@ Variables
-

Definition at line 346 of file hidusagestr.h.

+

Definition at line 346 of file hidusagestr.h.

- + +

◆ pstrUsageSystemSuspend

+
@@ -6197,11 +6794,13 @@ Variables
-

Definition at line 347 of file hidusagestr.h.

+

Definition at line 347 of file hidusagestr.h.

- + +

◆ pstrUsageExternalPowerConnected

+
@@ -6211,11 +6810,13 @@ Variables
-

Definition at line 348 of file hidusagestr.h.

+

Definition at line 348 of file hidusagestr.h.

- + +

◆ pstrUsagePhone

+
@@ -6225,11 +6826,13 @@ Variables
-

Definition at line 351 of file hidusagestr.h.

+

Definition at line 351 of file hidusagestr.h.

- + +

◆ pstrUsageAnsweringMachine

+
@@ -6239,11 +6842,13 @@ Variables
-

Definition at line 352 of file hidusagestr.h.

+

Definition at line 352 of file hidusagestr.h.

- + +

◆ pstrUsageMessageControls

+
@@ -6253,11 +6858,13 @@ Variables
-

Definition at line 353 of file hidusagestr.h.

+

Definition at line 353 of file hidusagestr.h.

- + +

◆ pstrUsageHandset

+
@@ -6267,11 +6874,13 @@ Variables
-

Definition at line 354 of file hidusagestr.h.

+

Definition at line 354 of file hidusagestr.h.

- + +

◆ pstrUsageHeadset

+
@@ -6281,11 +6890,13 @@ Variables
-

Definition at line 355 of file hidusagestr.h.

+

Definition at line 355 of file hidusagestr.h.

- + +

◆ pstrUsageTelephonyKeyPad

+
@@ -6295,11 +6906,13 @@ Variables
-

Definition at line 356 of file hidusagestr.h.

+

Definition at line 356 of file hidusagestr.h.

- + +

◆ pstrUsageProgrammableButton

+
@@ -6309,11 +6922,13 @@ Variables
-

Definition at line 357 of file hidusagestr.h.

+

Definition at line 357 of file hidusagestr.h.

- + +

◆ pstrUsageHookSwitch

+
@@ -6323,11 +6938,13 @@ Variables
-

Definition at line 358 of file hidusagestr.h.

+

Definition at line 358 of file hidusagestr.h.

- + +

◆ pstrUsageFlash

+
@@ -6337,11 +6954,13 @@ Variables
-

Definition at line 359 of file hidusagestr.h.

+

Definition at line 359 of file hidusagestr.h.

- + +

◆ pstrUsageFeature

+
@@ -6351,11 +6970,13 @@ Variables
-

Definition at line 360 of file hidusagestr.h.

+

Definition at line 360 of file hidusagestr.h.

- + +

◆ pstrUsageRedial

+
@@ -6365,11 +6986,13 @@ Variables
-

Definition at line 362 of file hidusagestr.h.

+

Definition at line 362 of file hidusagestr.h.

- + +

◆ pstrUsageTransfer

+
@@ -6379,11 +7002,13 @@ Variables
-

Definition at line 363 of file hidusagestr.h.

+

Definition at line 363 of file hidusagestr.h.

- + +

◆ pstrUsageDrop

+
@@ -6393,11 +7018,13 @@ Variables
-

Definition at line 364 of file hidusagestr.h.

+

Definition at line 364 of file hidusagestr.h.

- + +

◆ pstrUsagePark

+
@@ -6407,11 +7034,13 @@ Variables
-

Definition at line 365 of file hidusagestr.h.

+

Definition at line 365 of file hidusagestr.h.

- + +

◆ pstrUsageForwardCalls

+
@@ -6421,11 +7050,13 @@ Variables
-

Definition at line 366 of file hidusagestr.h.

+

Definition at line 366 of file hidusagestr.h.

- + +

◆ pstrUsageAlternateFunction

+
@@ -6435,11 +7066,13 @@ Variables
-

Definition at line 367 of file hidusagestr.h.

+

Definition at line 367 of file hidusagestr.h.

- + +

◆ pstrUsageLine

+
@@ -6449,11 +7082,13 @@ Variables
-

Definition at line 368 of file hidusagestr.h.

+

Definition at line 368 of file hidusagestr.h.

- + +

◆ pstrUsageSpeakerPhone

+
@@ -6463,11 +7098,13 @@ Variables
-

Definition at line 369 of file hidusagestr.h.

+

Definition at line 369 of file hidusagestr.h.

- + +

◆ pstrUsageRingEnable

+
@@ -6477,11 +7114,13 @@ Variables
-

Definition at line 371 of file hidusagestr.h.

+

Definition at line 371 of file hidusagestr.h.

- + +

◆ pstrUsageRingSelect

+
@@ -6491,11 +7130,13 @@ Variables
-

Definition at line 372 of file hidusagestr.h.

+

Definition at line 372 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneMute

+
@@ -6505,11 +7146,13 @@ Variables
-

Definition at line 373 of file hidusagestr.h.

+

Definition at line 373 of file hidusagestr.h.

- + +

◆ pstrUsageCallerID

+
@@ -6519,11 +7162,13 @@ Variables
-

Definition at line 374 of file hidusagestr.h.

+

Definition at line 374 of file hidusagestr.h.

- + +

◆ pstrUsageSend

+
@@ -6533,11 +7178,13 @@ Variables
-

Definition at line 375 of file hidusagestr.h.

+

Definition at line 375 of file hidusagestr.h.

- + +

◆ pstrUsageSpeedDial

+
@@ -6547,11 +7194,13 @@ Variables
-

Definition at line 376 of file hidusagestr.h.

+

Definition at line 376 of file hidusagestr.h.

- + +

◆ pstrUsageStoreNumber

+
@@ -6561,11 +7210,13 @@ Variables
-

Definition at line 377 of file hidusagestr.h.

+

Definition at line 377 of file hidusagestr.h.

- + +

◆ pstrUsageRecallNumber

+
@@ -6575,11 +7226,13 @@ Variables
-

Definition at line 378 of file hidusagestr.h.

+

Definition at line 378 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneDirectory

+
@@ -6589,11 +7242,13 @@ Variables
-

Definition at line 379 of file hidusagestr.h.

+

Definition at line 379 of file hidusagestr.h.

- + +

◆ pstrUsageVoiceMail

+
@@ -6603,11 +7258,13 @@ Variables
-

Definition at line 380 of file hidusagestr.h.

+

Definition at line 380 of file hidusagestr.h.

- + +

◆ pstrUsageScreenCalls

+
@@ -6617,11 +7274,13 @@ Variables
-

Definition at line 381 of file hidusagestr.h.

+

Definition at line 381 of file hidusagestr.h.

- + +

◆ pstrUsageMessage

+
@@ -6631,11 +7290,13 @@ Variables
-

Definition at line 383 of file hidusagestr.h.

+

Definition at line 383 of file hidusagestr.h.

- + +

◆ pstrUsageAnswerOnOff

+
@@ -6645,11 +7306,13 @@ Variables
-

Definition at line 384 of file hidusagestr.h.

+

Definition at line 384 of file hidusagestr.h.

- + +

◆ pstrUsageInsideDialTone

+
@@ -6659,11 +7322,13 @@ Variables
-

Definition at line 385 of file hidusagestr.h.

+

Definition at line 385 of file hidusagestr.h.

- + +

◆ pstrUsageOutsideDialTone

+
@@ -6673,11 +7338,13 @@ Variables
-

Definition at line 386 of file hidusagestr.h.

+

Definition at line 386 of file hidusagestr.h.

- + +

◆ pstrUsageInsideRingTone

+
@@ -6687,11 +7354,13 @@ Variables
-

Definition at line 387 of file hidusagestr.h.

+

Definition at line 387 of file hidusagestr.h.

- + +

◆ pstrUsageOutsideRingTone

+
@@ -6701,11 +7370,13 @@ Variables
-

Definition at line 388 of file hidusagestr.h.

+

Definition at line 388 of file hidusagestr.h.

- + +

◆ pstrUsagePriorityRingTone

+
@@ -6715,11 +7386,13 @@ Variables
-

Definition at line 389 of file hidusagestr.h.

+

Definition at line 389 of file hidusagestr.h.

- + +

◆ pstrUsageInsideRingback

+
@@ -6729,11 +7402,13 @@ Variables
-

Definition at line 390 of file hidusagestr.h.

+

Definition at line 390 of file hidusagestr.h.

- + +

◆ pstrUsagePriorityRingback

+
@@ -6743,11 +7418,13 @@ Variables
-

Definition at line 391 of file hidusagestr.h.

+

Definition at line 391 of file hidusagestr.h.

- + +

◆ pstrUsageLineBusyTone

+
@@ -6757,11 +7434,13 @@ Variables
-

Definition at line 392 of file hidusagestr.h.

+

Definition at line 392 of file hidusagestr.h.

- + +

◆ pstrUsageReorderTone

+
@@ -6771,11 +7450,13 @@ Variables
-

Definition at line 393 of file hidusagestr.h.

+

Definition at line 393 of file hidusagestr.h.

- + +

◆ pstrUsageCallWaitingTone

+
@@ -6785,11 +7466,13 @@ Variables
-

Definition at line 394 of file hidusagestr.h.

+

Definition at line 394 of file hidusagestr.h.

- + +

◆ pstrUsageConfirmationTone1

+
@@ -6799,11 +7482,13 @@ Variables
-

Definition at line 395 of file hidusagestr.h.

+

Definition at line 395 of file hidusagestr.h.

- + +

◆ pstrUsageConfirmationTone2

+
@@ -6813,11 +7498,13 @@ Variables
-

Definition at line 396 of file hidusagestr.h.

+

Definition at line 396 of file hidusagestr.h.

- + +

◆ pstrUsageTonesOff

+
@@ -6827,11 +7514,13 @@ Variables
-

Definition at line 397 of file hidusagestr.h.

+

Definition at line 397 of file hidusagestr.h.

- + +

◆ pstrUsageOutsideRingback

+
@@ -6841,11 +7530,13 @@ Variables
-

Definition at line 398 of file hidusagestr.h.

+

Definition at line 398 of file hidusagestr.h.

- + +

◆ pstrUsageRinger

+
@@ -6855,11 +7546,13 @@ Variables
-

Definition at line 399 of file hidusagestr.h.

+

Definition at line 399 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKey0

+
@@ -6869,11 +7562,13 @@ Variables
-

Definition at line 400 of file hidusagestr.h.

+

Definition at line 400 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKey1

+
@@ -6883,11 +7578,13 @@ Variables
-

Definition at line 401 of file hidusagestr.h.

+

Definition at line 401 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKey2

+
@@ -6897,11 +7594,13 @@ Variables
-

Definition at line 402 of file hidusagestr.h.

+

Definition at line 402 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKey3

+
@@ -6911,11 +7610,13 @@ Variables
-

Definition at line 403 of file hidusagestr.h.

+

Definition at line 403 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKey4

+
@@ -6925,11 +7626,13 @@ Variables
-

Definition at line 404 of file hidusagestr.h.

+

Definition at line 404 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKey5

+
@@ -6939,11 +7642,13 @@ Variables
-

Definition at line 405 of file hidusagestr.h.

+

Definition at line 405 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKey6

+
@@ -6953,11 +7658,13 @@ Variables
-

Definition at line 406 of file hidusagestr.h.

+

Definition at line 406 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKey7

+
@@ -6967,11 +7674,13 @@ Variables
-

Definition at line 407 of file hidusagestr.h.

+

Definition at line 407 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKey8

+
@@ -6981,11 +7690,13 @@ Variables
-

Definition at line 408 of file hidusagestr.h.

+

Definition at line 408 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKey9

+
@@ -6995,11 +7706,13 @@ Variables
-

Definition at line 409 of file hidusagestr.h.

+

Definition at line 409 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKeyStar

+
@@ -7009,11 +7722,13 @@ Variables
-

Definition at line 410 of file hidusagestr.h.

+

Definition at line 410 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKeyPound

+
@@ -7023,11 +7738,13 @@ Variables
-

Definition at line 411 of file hidusagestr.h.

+

Definition at line 411 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKeyA

+
@@ -7037,11 +7754,13 @@ Variables
-

Definition at line 412 of file hidusagestr.h.

+

Definition at line 412 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKeyB

+
@@ -7051,11 +7770,13 @@ Variables
-

Definition at line 413 of file hidusagestr.h.

+

Definition at line 413 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKeyC

+
@@ -7065,11 +7786,13 @@ Variables
-

Definition at line 414 of file hidusagestr.h.

+

Definition at line 414 of file hidusagestr.h.

- + +

◆ pstrUsagePhoneKeyD

+
@@ -7079,11 +7802,13 @@ Variables
-

Definition at line 415 of file hidusagestr.h.

+

Definition at line 415 of file hidusagestr.h.

- + +

◆ pstrUsageConsumerControl

+
@@ -7093,11 +7818,13 @@ Variables
-

Definition at line 418 of file hidusagestr.h.

+

Definition at line 418 of file hidusagestr.h.

- + +

◆ pstrUsageNumericKeyPad

+
@@ -7107,11 +7834,13 @@ Variables
-

Definition at line 419 of file hidusagestr.h.

+

Definition at line 419 of file hidusagestr.h.

- + +

◆ pstrUsageHeadphone

+
@@ -7121,11 +7850,13 @@ Variables
-

Definition at line 422 of file hidusagestr.h.

+

Definition at line 422 of file hidusagestr.h.

- + +

◆ pstrUsageGraphicEqualizer

+
@@ -7135,11 +7866,13 @@ Variables
-

Definition at line 423 of file hidusagestr.h.

+

Definition at line 423 of file hidusagestr.h.

- + +

◆ pstrUsagePlus10

+
@@ -7149,11 +7882,13 @@ Variables
-

Definition at line 424 of file hidusagestr.h.

+

Definition at line 424 of file hidusagestr.h.

- + +

◆ pstrUsagePlus100

+
@@ -7163,11 +7898,13 @@ Variables
-

Definition at line 425 of file hidusagestr.h.

+

Definition at line 425 of file hidusagestr.h.

- + +

◆ pstrUsageAMPM

+
@@ -7177,11 +7914,13 @@ Variables
-

Definition at line 426 of file hidusagestr.h.

+

Definition at line 426 of file hidusagestr.h.

- + +

◆ pstrUsageReset

+
@@ -7191,11 +7930,13 @@ Variables
-

Definition at line 428 of file hidusagestr.h.

+

Definition at line 428 of file hidusagestr.h.

- + +

◆ pstrUsageSleep

+
@@ -7205,11 +7946,13 @@ Variables
-

Definition at line 429 of file hidusagestr.h.

+

Definition at line 429 of file hidusagestr.h.

- + +

◆ pstrUsageSleepAfter

+
@@ -7219,11 +7962,13 @@ Variables
-

Definition at line 430 of file hidusagestr.h.

+

Definition at line 430 of file hidusagestr.h.

- + +

◆ pstrUsageSleepMode

+
@@ -7233,11 +7978,13 @@ Variables
-

Definition at line 431 of file hidusagestr.h.

+

Definition at line 431 of file hidusagestr.h.

- + +

◆ pstrUsageIllumination

+
@@ -7247,11 +7994,13 @@ Variables
-

Definition at line 432 of file hidusagestr.h.

+

Definition at line 432 of file hidusagestr.h.

- + +

◆ pstrUsageFunctionButtons

+
@@ -7261,11 +8010,13 @@ Variables
-

Definition at line 433 of file hidusagestr.h.

+

Definition at line 433 of file hidusagestr.h.

- + +

◆ pstrUsageMenu

+
@@ -7275,11 +8026,13 @@ Variables
-

Definition at line 434 of file hidusagestr.h.

+

Definition at line 434 of file hidusagestr.h.

- + +

◆ pstrUsageMenuPick

+
@@ -7289,11 +8042,13 @@ Variables
-

Definition at line 435 of file hidusagestr.h.

+

Definition at line 435 of file hidusagestr.h.

- + +

◆ pstrUsageMenuUp

+
@@ -7303,11 +8058,13 @@ Variables
-

Definition at line 436 of file hidusagestr.h.

+

Definition at line 436 of file hidusagestr.h.

- + +

◆ pstrUsageMenuDown

+
@@ -7317,11 +8074,13 @@ Variables
-

Definition at line 437 of file hidusagestr.h.

+

Definition at line 437 of file hidusagestr.h.

- + +

◆ pstrUsageMenuLeft

+
@@ -7331,11 +8090,13 @@ Variables
-

Definition at line 438 of file hidusagestr.h.

+

Definition at line 438 of file hidusagestr.h.

- + +

◆ pstrUsageMenuRight

+
@@ -7345,11 +8106,13 @@ Variables
-

Definition at line 439 of file hidusagestr.h.

+

Definition at line 439 of file hidusagestr.h.

- + +

◆ pstrUsageMenuEscape

+
@@ -7359,11 +8122,13 @@ Variables
-

Definition at line 440 of file hidusagestr.h.

+

Definition at line 440 of file hidusagestr.h.

- + +

◆ pstrUsageMenuValueIncrease

+
@@ -7373,11 +8138,13 @@ Variables
-

Definition at line 441 of file hidusagestr.h.

+

Definition at line 441 of file hidusagestr.h.

- + +

◆ pstrUsageMenuValueDecrease

+
@@ -7387,11 +8154,13 @@ Variables
-

Definition at line 442 of file hidusagestr.h.

+

Definition at line 442 of file hidusagestr.h.

- + +

◆ pstrUsageDataOnScreen

+
@@ -7401,11 +8170,13 @@ Variables
-

Definition at line 443 of file hidusagestr.h.

+

Definition at line 443 of file hidusagestr.h.

- + +

◆ pstrUsageClosedCaption

+
@@ -7415,11 +8186,13 @@ Variables
-

Definition at line 444 of file hidusagestr.h.

+

Definition at line 444 of file hidusagestr.h.

- + +

◆ pstrUsageClosedCaptionSelect

+
@@ -7429,11 +8202,13 @@ Variables
-

Definition at line 445 of file hidusagestr.h.

+

Definition at line 445 of file hidusagestr.h.

- + +

◆ pstrUsageVCRTV

+
@@ -7443,11 +8218,13 @@ Variables
-

Definition at line 446 of file hidusagestr.h.

+

Definition at line 446 of file hidusagestr.h.

- + +

◆ pstrUsageBroadcastMode

+
@@ -7457,11 +8234,13 @@ Variables
-

Definition at line 447 of file hidusagestr.h.

+

Definition at line 447 of file hidusagestr.h.

- + +

◆ pstrUsageSnapshot

+
@@ -7471,11 +8250,13 @@ Variables
-

Definition at line 448 of file hidusagestr.h.

+

Definition at line 448 of file hidusagestr.h.

- + +

◆ pstrUsageStill

+
@@ -7485,11 +8266,13 @@ Variables
-

Definition at line 449 of file hidusagestr.h.

+

Definition at line 449 of file hidusagestr.h.

- + +

◆ pstrUsageSelection

+
@@ -7499,11 +8282,13 @@ Variables
-

Definition at line 450 of file hidusagestr.h.

+

Definition at line 450 of file hidusagestr.h.

- + +

◆ pstrUsageAssignSelection

+
@@ -7513,11 +8298,13 @@ Variables
-

Definition at line 451 of file hidusagestr.h.

+

Definition at line 451 of file hidusagestr.h.

- + +

◆ pstrUsageModeStep

+
@@ -7527,11 +8314,13 @@ Variables
-

Definition at line 452 of file hidusagestr.h.

+

Definition at line 452 of file hidusagestr.h.

- + +

◆ pstrUsageRecallLast

+
@@ -7541,11 +8330,13 @@ Variables
-

Definition at line 453 of file hidusagestr.h.

+

Definition at line 453 of file hidusagestr.h.

- + +

◆ pstrUsageEnterChannel

+
@@ -7555,11 +8346,13 @@ Variables
-

Definition at line 454 of file hidusagestr.h.

+

Definition at line 454 of file hidusagestr.h.

- + +

◆ pstrUsageOrderMovie

+
@@ -7569,11 +8362,13 @@ Variables
-

Definition at line 455 of file hidusagestr.h.

+

Definition at line 455 of file hidusagestr.h.

- + +

◆ pstrUsageChannel

+
@@ -7583,11 +8378,13 @@ Variables
-

Definition at line 456 of file hidusagestr.h.

+

Definition at line 456 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelection

+
@@ -7597,11 +8394,13 @@ Variables
-

Definition at line 457 of file hidusagestr.h.

+

Definition at line 457 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectComputer

+
@@ -7611,11 +8410,13 @@ Variables
-

Definition at line 458 of file hidusagestr.h.

+

Definition at line 458 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectTV

+
@@ -7625,11 +8426,13 @@ Variables
-

Definition at line 459 of file hidusagestr.h.

+

Definition at line 459 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectWWW

+
@@ -7639,11 +8442,13 @@ Variables
-

Definition at line 460 of file hidusagestr.h.

+

Definition at line 460 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectDVD

+
@@ -7653,11 +8458,13 @@ Variables
-

Definition at line 461 of file hidusagestr.h.

+

Definition at line 461 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectTelephone

+
@@ -7667,11 +8474,13 @@ Variables
-

Definition at line 462 of file hidusagestr.h.

+

Definition at line 462 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectProgramGuide

+
@@ -7681,11 +8490,13 @@ Variables
-

Definition at line 463 of file hidusagestr.h.

+

Definition at line 463 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectVideoPhone

+
@@ -7695,11 +8506,13 @@ Variables
-

Definition at line 464 of file hidusagestr.h.

+

Definition at line 464 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectGames

+
@@ -7709,11 +8522,13 @@ Variables
-

Definition at line 465 of file hidusagestr.h.

+

Definition at line 465 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectMessages

+
@@ -7723,11 +8538,13 @@ Variables
-

Definition at line 466 of file hidusagestr.h.

+

Definition at line 466 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectCD

+
@@ -7737,11 +8554,13 @@ Variables
-

Definition at line 467 of file hidusagestr.h.

+

Definition at line 467 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectVCR

+
@@ -7751,11 +8570,13 @@ Variables
-

Definition at line 468 of file hidusagestr.h.

+

Definition at line 468 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectTuner

+
@@ -7765,11 +8586,13 @@ Variables
-

Definition at line 469 of file hidusagestr.h.

+

Definition at line 469 of file hidusagestr.h.

- + +

◆ pstrUsageQuit

+
@@ -7779,11 +8602,13 @@ Variables
-

Definition at line 470 of file hidusagestr.h.

+

Definition at line 470 of file hidusagestr.h.

- + +

◆ pstrUsageHelp

+
@@ -7793,11 +8618,13 @@ Variables
-

Definition at line 471 of file hidusagestr.h.

+

Definition at line 471 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectTape

+
@@ -7807,11 +8634,13 @@ Variables
-

Definition at line 472 of file hidusagestr.h.

+

Definition at line 472 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectCable

+
@@ -7821,11 +8650,13 @@ Variables
-

Definition at line 473 of file hidusagestr.h.

+

Definition at line 473 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectSatellite

+
@@ -7835,11 +8666,13 @@ Variables
-

Definition at line 474 of file hidusagestr.h.

+

Definition at line 474 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectSecurity

+
@@ -7849,11 +8682,13 @@ Variables
-

Definition at line 475 of file hidusagestr.h.

+

Definition at line 475 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectHome

+
@@ -7863,11 +8698,13 @@ Variables
-

Definition at line 476 of file hidusagestr.h.

+

Definition at line 476 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectCall

+
@@ -7877,11 +8714,13 @@ Variables
-

Definition at line 477 of file hidusagestr.h.

+

Definition at line 477 of file hidusagestr.h.

- + +

◆ pstrUsageChannelIncrement

+
@@ -7891,11 +8730,13 @@ Variables
-

Definition at line 478 of file hidusagestr.h.

+

Definition at line 478 of file hidusagestr.h.

- + +

◆ pstrUsageChannelDecrement

+
@@ -7905,11 +8746,13 @@ Variables
-

Definition at line 479 of file hidusagestr.h.

+

Definition at line 479 of file hidusagestr.h.

- + +

◆ pstrUsageMediaSelectSAP

+
@@ -7919,11 +8762,13 @@ Variables
-

Definition at line 480 of file hidusagestr.h.

+

Definition at line 480 of file hidusagestr.h.

- + +

◆ pstrUsageVCRPlus

+
@@ -7933,11 +8778,13 @@ Variables
-

Definition at line 481 of file hidusagestr.h.

+

Definition at line 481 of file hidusagestr.h.

- + +

◆ pstrUsageOnce

+
@@ -7947,11 +8794,13 @@ Variables
-

Definition at line 482 of file hidusagestr.h.

+

Definition at line 482 of file hidusagestr.h.

- + +

◆ pstrUsageDaily

+
@@ -7961,11 +8810,13 @@ Variables
-

Definition at line 483 of file hidusagestr.h.

+

Definition at line 483 of file hidusagestr.h.

- + +

◆ pstrUsageWeekly

+
@@ -7975,11 +8826,13 @@ Variables
-

Definition at line 484 of file hidusagestr.h.

+

Definition at line 484 of file hidusagestr.h.

- + +

◆ pstrUsageMonthly

+
@@ -7989,11 +8842,13 @@ Variables
-

Definition at line 485 of file hidusagestr.h.

+

Definition at line 485 of file hidusagestr.h.

- + +

◆ pstrUsageScanNextTrack

+
@@ -8003,11 +8858,13 @@ Variables
-

Definition at line 491 of file hidusagestr.h.

+

Definition at line 491 of file hidusagestr.h.

- + +

◆ pstrUsageScanPreviousTrack

+
@@ -8017,11 +8874,13 @@ Variables
-

Definition at line 492 of file hidusagestr.h.

+

Definition at line 492 of file hidusagestr.h.

- + +

◆ pstrUsageEject

+
@@ -8031,11 +8890,13 @@ Variables
-

Definition at line 494 of file hidusagestr.h.

+

Definition at line 494 of file hidusagestr.h.

- + +

◆ pstrUsageRandomPlay

+
@@ -8045,11 +8906,13 @@ Variables
-

Definition at line 495 of file hidusagestr.h.

+

Definition at line 495 of file hidusagestr.h.

- + +

◆ pstrUsageSelectDisk

+
@@ -8059,11 +8922,13 @@ Variables
-

Definition at line 496 of file hidusagestr.h.

+

Definition at line 496 of file hidusagestr.h.

- + +

◆ pstrUsageEnterDisk

+
@@ -8073,11 +8938,13 @@ Variables
-

Definition at line 497 of file hidusagestr.h.

+

Definition at line 497 of file hidusagestr.h.

- + +

◆ pstrUsageTracking

+
@@ -8087,11 +8954,13 @@ Variables
-

Definition at line 499 of file hidusagestr.h.

+

Definition at line 499 of file hidusagestr.h.

- + +

◆ pstrUsageTrackNormal

+
@@ -8101,11 +8970,13 @@ Variables
-

Definition at line 500 of file hidusagestr.h.

+

Definition at line 500 of file hidusagestr.h.

- + +

◆ pstrUsageSlowTracking

+
@@ -8115,11 +8986,13 @@ Variables
-

Definition at line 501 of file hidusagestr.h.

+

Definition at line 501 of file hidusagestr.h.

- + +

◆ pstrUsageFrameForward

+
@@ -8129,11 +9002,13 @@ Variables
-

Definition at line 502 of file hidusagestr.h.

+

Definition at line 502 of file hidusagestr.h.

- + +

◆ pstrUsageFrameBackwards

+
@@ -8143,11 +9018,13 @@ Variables
-

Definition at line 503 of file hidusagestr.h.

+

Definition at line 503 of file hidusagestr.h.

- + +

◆ pstrUsageMark

+
@@ -8157,11 +9034,13 @@ Variables
-

Definition at line 504 of file hidusagestr.h.

+

Definition at line 504 of file hidusagestr.h.

- + +

◆ pstrUsageClearMark

+
@@ -8171,11 +9050,13 @@ Variables
-

Definition at line 505 of file hidusagestr.h.

+

Definition at line 505 of file hidusagestr.h.

- + +

◆ pstrUsageRepeatFromMark

+
@@ -8185,11 +9066,13 @@ Variables
-

Definition at line 506 of file hidusagestr.h.

+

Definition at line 506 of file hidusagestr.h.

- + +

◆ pstrUsageReturnToMark

+
@@ -8199,11 +9082,13 @@ Variables
-

Definition at line 507 of file hidusagestr.h.

+

Definition at line 507 of file hidusagestr.h.

- + +

◆ pstrUsageSearchMarkForward

+
@@ -8213,11 +9098,13 @@ Variables
-

Definition at line 508 of file hidusagestr.h.

+

Definition at line 508 of file hidusagestr.h.

- + +

◆ pstrUsageSearchMarkBackwards

+
@@ -8227,11 +9114,13 @@ Variables
-

Definition at line 509 of file hidusagestr.h.

+

Definition at line 509 of file hidusagestr.h.

- + +

◆ pstrUsageCounterReset

+
@@ -8241,11 +9130,13 @@ Variables
-

Definition at line 510 of file hidusagestr.h.

+

Definition at line 510 of file hidusagestr.h.

- + +

◆ pstrUsageShowCounter

+
@@ -8255,11 +9146,13 @@ Variables
-

Definition at line 511 of file hidusagestr.h.

+

Definition at line 511 of file hidusagestr.h.

- + +

◆ pstrUsageTrackingIncrement

+
@@ -8269,11 +9162,13 @@ Variables
-

Definition at line 512 of file hidusagestr.h.

+

Definition at line 512 of file hidusagestr.h.

- + +

◆ pstrUsageTrackingDecrement

+
@@ -8283,11 +9178,13 @@ Variables
-

Definition at line 513 of file hidusagestr.h.

+

Definition at line 513 of file hidusagestr.h.

- + +

◆ pstrUsageStopEject

+
@@ -8297,11 +9194,13 @@ Variables
-

Definition at line 514 of file hidusagestr.h.

+

Definition at line 514 of file hidusagestr.h.

- + +

◆ pstrUsagePlayPause

+
@@ -8311,11 +9210,13 @@ Variables
-

Definition at line 515 of file hidusagestr.h.

+

Definition at line 515 of file hidusagestr.h.

- + +

◆ pstrUsagePlaySkip

+
@@ -8325,11 +9226,13 @@ Variables
-

Definition at line 516 of file hidusagestr.h.

+

Definition at line 516 of file hidusagestr.h.

- + +

◆ pstrUsageVolume

+
@@ -8339,11 +9242,13 @@ Variables
-

Definition at line 517 of file hidusagestr.h.

+

Definition at line 517 of file hidusagestr.h.

- + +

◆ pstrUsageBalance

+
@@ -8353,11 +9258,13 @@ Variables
-

Definition at line 518 of file hidusagestr.h.

+

Definition at line 518 of file hidusagestr.h.

- + +

◆ pstrUsageBass

+
@@ -8367,11 +9274,13 @@ Variables
-

Definition at line 520 of file hidusagestr.h.

+

Definition at line 520 of file hidusagestr.h.

- + +

◆ pstrUsageTreble

+
@@ -8381,11 +9290,13 @@ Variables
-

Definition at line 521 of file hidusagestr.h.

+

Definition at line 521 of file hidusagestr.h.

- + +

◆ pstrUsageBassBoost

+
@@ -8395,11 +9306,13 @@ Variables
-

Definition at line 522 of file hidusagestr.h.

+

Definition at line 522 of file hidusagestr.h.

- + +

◆ pstrUsageSurroundMode

+
@@ -8409,11 +9322,13 @@ Variables
-

Definition at line 523 of file hidusagestr.h.

+

Definition at line 523 of file hidusagestr.h.

- + +

◆ pstrUsageLoudness

+
@@ -8423,11 +9338,13 @@ Variables
-

Definition at line 524 of file hidusagestr.h.

+

Definition at line 524 of file hidusagestr.h.

- + +

◆ pstrUsageMPX

+
@@ -8437,11 +9354,13 @@ Variables
-

Definition at line 525 of file hidusagestr.h.

+

Definition at line 525 of file hidusagestr.h.

- + +

◆ pstrUsageVolumeIncrement

+
@@ -8451,11 +9370,13 @@ Variables
-

Definition at line 526 of file hidusagestr.h.

+

Definition at line 526 of file hidusagestr.h.

- + +

◆ pstrUsageVolumeDecrement

+
@@ -8465,11 +9386,13 @@ Variables
-

Definition at line 527 of file hidusagestr.h.

+

Definition at line 527 of file hidusagestr.h.

- + +

◆ pstrUsageSpeedSelect

+
@@ -8479,11 +9402,13 @@ Variables
-

Definition at line 528 of file hidusagestr.h.

+

Definition at line 528 of file hidusagestr.h.

- + +

◆ pstrUsagePlaybackSpeed

+
@@ -8493,11 +9418,13 @@ Variables
-

Definition at line 529 of file hidusagestr.h.

+

Definition at line 529 of file hidusagestr.h.

- + +

◆ pstrUsageStandardPlay

+
@@ -8507,11 +9434,13 @@ Variables
-

Definition at line 530 of file hidusagestr.h.

+

Definition at line 530 of file hidusagestr.h.

- + +

◆ pstrUsageLongPlay

+
@@ -8521,11 +9450,13 @@ Variables
-

Definition at line 531 of file hidusagestr.h.

+

Definition at line 531 of file hidusagestr.h.

- + +

◆ pstrUsageExtendedPlay

+
@@ -8535,11 +9466,13 @@ Variables
-

Definition at line 532 of file hidusagestr.h.

+

Definition at line 532 of file hidusagestr.h.

- + +

◆ pstrUsageSlow

+
@@ -8549,11 +9482,13 @@ Variables
-

Definition at line 533 of file hidusagestr.h.

+

Definition at line 533 of file hidusagestr.h.

- + +

◆ pstrUsageFanEnable

+
@@ -8563,11 +9498,13 @@ Variables
-

Definition at line 534 of file hidusagestr.h.

+

Definition at line 534 of file hidusagestr.h.

- + +

◆ pstrUsageFanSpeed

+
@@ -8577,11 +9514,13 @@ Variables
-

Definition at line 535 of file hidusagestr.h.

+

Definition at line 535 of file hidusagestr.h.

- + +

◆ pstrUsageLightEnable

+
@@ -8591,11 +9530,13 @@ Variables
-

Definition at line 536 of file hidusagestr.h.

+

Definition at line 536 of file hidusagestr.h.

- + +

◆ pstrUsageLightIlluminationLevel

+
@@ -8605,11 +9546,13 @@ Variables
-

Definition at line 537 of file hidusagestr.h.

+

Definition at line 537 of file hidusagestr.h.

- + +

◆ pstrUsageClimateControlEnable

+
@@ -8619,11 +9562,13 @@ Variables
-

Definition at line 538 of file hidusagestr.h.

+

Definition at line 538 of file hidusagestr.h.

- + +

◆ pstrUsageRoomTemperature

+
@@ -8633,11 +9578,13 @@ Variables
-

Definition at line 539 of file hidusagestr.h.

+

Definition at line 539 of file hidusagestr.h.

- + +

◆ pstrUsageSecurityEnable

+
@@ -8647,11 +9594,13 @@ Variables
-

Definition at line 540 of file hidusagestr.h.

+

Definition at line 540 of file hidusagestr.h.

- + +

◆ pstrUsageFireAlarm

+
@@ -8661,11 +9610,13 @@ Variables
-

Definition at line 541 of file hidusagestr.h.

+

Definition at line 541 of file hidusagestr.h.

- + +

◆ pstrUsagePoliceAlarm

+
@@ -8675,11 +9626,13 @@ Variables
-

Definition at line 542 of file hidusagestr.h.

+

Definition at line 542 of file hidusagestr.h.

- + +

◆ pstrUsageProximity

+
@@ -8689,11 +9642,13 @@ Variables
-

Definition at line 543 of file hidusagestr.h.

+

Definition at line 543 of file hidusagestr.h.

- + +

◆ pstrUsageMotion

+
@@ -8703,11 +9658,13 @@ Variables
-

Definition at line 544 of file hidusagestr.h.

+

Definition at line 544 of file hidusagestr.h.

- + +

◆ pstrUsageDuresAlarm

+
@@ -8717,11 +9674,13 @@ Variables
-

Definition at line 545 of file hidusagestr.h.

+

Definition at line 545 of file hidusagestr.h.

- + +

◆ pstrUsageHoldupAlarm

+
@@ -8731,11 +9690,13 @@ Variables
-

Definition at line 546 of file hidusagestr.h.

+

Definition at line 546 of file hidusagestr.h.

- + +

◆ pstrUsageMedicalAlarm

+
@@ -8745,11 +9706,13 @@ Variables
-

Definition at line 547 of file hidusagestr.h.

+

Definition at line 547 of file hidusagestr.h.

- + +

◆ pstrUsageBalanceRight

+
@@ -8759,11 +9722,13 @@ Variables
-

Definition at line 548 of file hidusagestr.h.

+

Definition at line 548 of file hidusagestr.h.

- + +

◆ pstrUsageBalanceLeft

+
@@ -8773,11 +9738,13 @@ Variables
-

Definition at line 549 of file hidusagestr.h.

+

Definition at line 549 of file hidusagestr.h.

- + +

◆ pstrUsageBassIncrement

+
@@ -8787,11 +9754,13 @@ Variables
-

Definition at line 550 of file hidusagestr.h.

+

Definition at line 550 of file hidusagestr.h.

- + +

◆ pstrUsageBassDecrement

+
@@ -8801,11 +9770,13 @@ Variables
-

Definition at line 551 of file hidusagestr.h.

+

Definition at line 551 of file hidusagestr.h.

- + +

◆ pstrUsageTrebleIncrement

+
@@ -8815,11 +9786,13 @@ Variables
-

Definition at line 552 of file hidusagestr.h.

+

Definition at line 552 of file hidusagestr.h.

- + +

◆ pstrUsageTrebleDecrement

+
@@ -8829,11 +9802,13 @@ Variables
-

Definition at line 553 of file hidusagestr.h.

+

Definition at line 553 of file hidusagestr.h.

- + +

◆ pstrUsageSpeakerSystem

+
@@ -8843,11 +9818,13 @@ Variables
-

Definition at line 554 of file hidusagestr.h.

+

Definition at line 554 of file hidusagestr.h.

- + +

◆ pstrUsageChannelLeft

+
@@ -8857,11 +9834,13 @@ Variables
-

Definition at line 555 of file hidusagestr.h.

+

Definition at line 555 of file hidusagestr.h.

- + +

◆ pstrUsageChannelRight

+
@@ -8871,11 +9850,13 @@ Variables
-

Definition at line 556 of file hidusagestr.h.

+

Definition at line 556 of file hidusagestr.h.

- + +

◆ pstrUsageChannelCenter

+
@@ -8885,11 +9866,13 @@ Variables
-

Definition at line 557 of file hidusagestr.h.

+

Definition at line 557 of file hidusagestr.h.

- + +

◆ pstrUsageChannelFront

+
@@ -8899,11 +9882,13 @@ Variables
-

Definition at line 558 of file hidusagestr.h.

+

Definition at line 558 of file hidusagestr.h.

- + +

◆ pstrUsageChannelCenterFront

+
@@ -8913,11 +9898,13 @@ Variables
-

Definition at line 559 of file hidusagestr.h.

+

Definition at line 559 of file hidusagestr.h.

- + +

◆ pstrUsageChannelSide

+
@@ -8927,11 +9914,13 @@ Variables
-

Definition at line 560 of file hidusagestr.h.

+

Definition at line 560 of file hidusagestr.h.

- + +

◆ pstrUsageChannelSurround

+
@@ -8941,11 +9930,13 @@ Variables
-

Definition at line 561 of file hidusagestr.h.

+

Definition at line 561 of file hidusagestr.h.

- + +

◆ pstrUsageChannelLowFreqEnhancement

+
@@ -8955,11 +9946,13 @@ Variables
-

Definition at line 562 of file hidusagestr.h.

+

Definition at line 562 of file hidusagestr.h.

- + +

◆ pstrUsageChannelTop

+
@@ -8969,11 +9962,13 @@ Variables
-

Definition at line 563 of file hidusagestr.h.

+

Definition at line 563 of file hidusagestr.h.

- + +

◆ pstrUsageChannelUnknown

+
@@ -8983,11 +9978,13 @@ Variables
-

Definition at line 564 of file hidusagestr.h.

+

Definition at line 564 of file hidusagestr.h.

- + +

◆ pstrUsageSubChannel

+
@@ -8997,11 +9994,13 @@ Variables
-

Definition at line 565 of file hidusagestr.h.

+

Definition at line 565 of file hidusagestr.h.

- + +

◆ pstrUsageSubChannelIncrement

+
@@ -9011,11 +10010,13 @@ Variables
-

Definition at line 566 of file hidusagestr.h.

+

Definition at line 566 of file hidusagestr.h.

- + +

◆ pstrUsageSubChannelDecrement

+
@@ -9025,11 +10026,13 @@ Variables
-

Definition at line 567 of file hidusagestr.h.

+

Definition at line 567 of file hidusagestr.h.

- + +

◆ pstrUsageAlternateAudioIncrement

+
@@ -9039,11 +10042,13 @@ Variables
-

Definition at line 568 of file hidusagestr.h.

+

Definition at line 568 of file hidusagestr.h.

- + +

◆ pstrUsageAlternateAudioDecrement

+
@@ -9053,11 +10058,13 @@ Variables
-

Definition at line 569 of file hidusagestr.h.

+

Definition at line 569 of file hidusagestr.h.

- + +

◆ pstrUsageApplicationLaunchButtons

+
@@ -9067,11 +10074,13 @@ Variables
-

Definition at line 570 of file hidusagestr.h.

+

Definition at line 570 of file hidusagestr.h.

- + +

◆ pstrUsageALLaunchButtonConfigTool

+
@@ -9081,11 +10090,13 @@ Variables
-

Definition at line 571 of file hidusagestr.h.

+

Definition at line 571 of file hidusagestr.h.

- + +

◆ pstrUsageALProgrammableButton

+
@@ -9095,11 +10106,13 @@ Variables
-

Definition at line 572 of file hidusagestr.h.

+

Definition at line 572 of file hidusagestr.h.

- + +

◆ pstrUsageALConsumerControlConfig

+
@@ -9109,11 +10122,13 @@ Variables
-

Definition at line 573 of file hidusagestr.h.

+

Definition at line 573 of file hidusagestr.h.

- + +

◆ pstrUsageALWordProcessor

+
@@ -9123,11 +10138,13 @@ Variables
-

Definition at line 574 of file hidusagestr.h.

+

Definition at line 574 of file hidusagestr.h.

- + +

◆ pstrUsageALTextEditor

+
@@ -9137,11 +10154,13 @@ Variables
-

Definition at line 575 of file hidusagestr.h.

+

Definition at line 575 of file hidusagestr.h.

- + +

◆ pstrUsageALSpreadsheet

+
@@ -9151,11 +10170,13 @@ Variables
-

Definition at line 576 of file hidusagestr.h.

+

Definition at line 576 of file hidusagestr.h.

- + +

◆ pstrUsageALGraphicsEditor

+
@@ -9165,11 +10186,13 @@ Variables
-

Definition at line 577 of file hidusagestr.h.

+

Definition at line 577 of file hidusagestr.h.

- + +

◆ pstrUsageALPresentationApp

+
@@ -9179,11 +10202,13 @@ Variables
-

Definition at line 578 of file hidusagestr.h.

+

Definition at line 578 of file hidusagestr.h.

- + +

◆ pstrUsageALDatabaseApp

+
@@ -9193,11 +10218,13 @@ Variables
-

Definition at line 579 of file hidusagestr.h.

+

Definition at line 579 of file hidusagestr.h.

- + +

◆ pstrUsageALEmailReader

+
@@ -9207,11 +10234,13 @@ Variables
-

Definition at line 580 of file hidusagestr.h.

+

Definition at line 580 of file hidusagestr.h.

- + +

◆ pstrUsageALNewsreader

+
@@ -9221,11 +10250,13 @@ Variables
-

Definition at line 581 of file hidusagestr.h.

+

Definition at line 581 of file hidusagestr.h.

- + +

◆ pstrUsageALVoicemail

+
@@ -9235,11 +10266,13 @@ Variables
-

Definition at line 582 of file hidusagestr.h.

+

Definition at line 582 of file hidusagestr.h.

- + +

◆ pstrUsageALContactsAddressBook

+
@@ -9249,11 +10282,13 @@ Variables
-

Definition at line 583 of file hidusagestr.h.

+

Definition at line 583 of file hidusagestr.h.

- + +

◆ pstrUsageALCalendarSchedule

+
@@ -9263,11 +10298,13 @@ Variables
-

Definition at line 584 of file hidusagestr.h.

+

Definition at line 584 of file hidusagestr.h.

- + +

◆ pstrUsageALTaskProjectManager

+
@@ -9277,11 +10314,13 @@ Variables
-

Definition at line 585 of file hidusagestr.h.

+

Definition at line 585 of file hidusagestr.h.

- + +

◆ pstrUsageALLogJournalTimecard

+
@@ -9291,11 +10330,13 @@ Variables
-

Definition at line 586 of file hidusagestr.h.

+

Definition at line 586 of file hidusagestr.h.

- + +

◆ pstrUsageALCheckbookFinance

+
@@ -9305,11 +10346,13 @@ Variables
-

Definition at line 587 of file hidusagestr.h.

+

Definition at line 587 of file hidusagestr.h.

- + +

◆ pstrUsageALCalculator

+
@@ -9319,11 +10362,13 @@ Variables
-

Definition at line 588 of file hidusagestr.h.

+

Definition at line 588 of file hidusagestr.h.

- + +

◆ pstrUsageALAVCapturePlayback

+
@@ -9333,11 +10378,13 @@ Variables
-

Definition at line 589 of file hidusagestr.h.

+

Definition at line 589 of file hidusagestr.h.

- + +

◆ pstrUsageALLocalMachineBrowser

+
@@ -9347,11 +10394,13 @@ Variables
-

Definition at line 590 of file hidusagestr.h.

+

Definition at line 590 of file hidusagestr.h.

- + +

◆ pstrUsageALLANWANBrow

+
@@ -9361,11 +10410,13 @@ Variables
-

Definition at line 591 of file hidusagestr.h.

+

Definition at line 591 of file hidusagestr.h.

- + +

◆ pstrUsageALInternetBrowser

+
@@ -9375,11 +10426,13 @@ Variables
-

Definition at line 592 of file hidusagestr.h.

+

Definition at line 592 of file hidusagestr.h.

- + +

◆ pstrUsageALRemoteNetISPConnect

+
@@ -9389,11 +10442,13 @@ Variables
-

Definition at line 593 of file hidusagestr.h.

+

Definition at line 593 of file hidusagestr.h.

- + +

◆ pstrUsageALNetworkConference

+
@@ -9403,11 +10458,13 @@ Variables
-

Definition at line 594 of file hidusagestr.h.

+

Definition at line 594 of file hidusagestr.h.

- + +

◆ pstrUsageALNetworkChat

+
@@ -9417,11 +10474,13 @@ Variables
-

Definition at line 595 of file hidusagestr.h.

+

Definition at line 595 of file hidusagestr.h.

- + +

◆ pstrUsageALTelephonyDialer

+
@@ -9431,11 +10490,13 @@ Variables
-

Definition at line 596 of file hidusagestr.h.

+

Definition at line 596 of file hidusagestr.h.

- + +

◆ pstrUsageALLogon

+
@@ -9445,11 +10506,13 @@ Variables
-

Definition at line 597 of file hidusagestr.h.

+

Definition at line 597 of file hidusagestr.h.

- + +

◆ pstrUsageALLogoff

+
@@ -9459,11 +10522,13 @@ Variables
-

Definition at line 598 of file hidusagestr.h.

+

Definition at line 598 of file hidusagestr.h.

- + +

◆ pstrUsageALLogonLogoff

+
@@ -9473,11 +10538,13 @@ Variables
-

Definition at line 599 of file hidusagestr.h.

+

Definition at line 599 of file hidusagestr.h.

- + +

◆ pstrUsageALTermLockScrSav

+
@@ -9487,11 +10554,13 @@ Variables
-

Definition at line 600 of file hidusagestr.h.

+

Definition at line 600 of file hidusagestr.h.

- + +

◆ pstrUsageALControlPannel

+
@@ -9501,11 +10570,13 @@ Variables
-

Definition at line 601 of file hidusagestr.h.

+

Definition at line 601 of file hidusagestr.h.

- + +

◆ pstrUsageALCommandLineProcessorRun

+
@@ -9515,11 +10586,13 @@ Variables
-

Definition at line 602 of file hidusagestr.h.

+

Definition at line 602 of file hidusagestr.h.

- + +

◆ pstrUsageALProcessTaskManager

+
@@ -9529,11 +10602,13 @@ Variables
-

Definition at line 603 of file hidusagestr.h.

+

Definition at line 603 of file hidusagestr.h.

- + +

◆ pstrUsageALSelectTaskApplication

+
@@ -9543,11 +10618,13 @@ Variables
-

Definition at line 604 of file hidusagestr.h.

+

Definition at line 604 of file hidusagestr.h.

- + +

◆ pstrUsageALNextTaskApplication

+
@@ -9557,11 +10634,13 @@ Variables
-

Definition at line 605 of file hidusagestr.h.

+

Definition at line 605 of file hidusagestr.h.

- + +

◆ pstrUsageALPreviousTaskApplication

+
@@ -9571,11 +10650,13 @@ Variables
-

Definition at line 606 of file hidusagestr.h.

+

Definition at line 606 of file hidusagestr.h.

- + +

◆ pstrUsageALPreemptiveHaltTaskApp

+
@@ -9585,11 +10666,13 @@ Variables
-

Definition at line 607 of file hidusagestr.h.

+

Definition at line 607 of file hidusagestr.h.

- + +

◆ pstrUsageALIntegratedHelpCenter

+
@@ -9599,11 +10682,13 @@ Variables
-

Definition at line 608 of file hidusagestr.h.

+

Definition at line 608 of file hidusagestr.h.

- + +

◆ pstrUsageALDocuments

+
@@ -9613,11 +10698,13 @@ Variables
-

Definition at line 609 of file hidusagestr.h.

+

Definition at line 609 of file hidusagestr.h.

- + +

◆ pstrUsageALThesaurus

+
@@ -9627,11 +10714,13 @@ Variables
-

Definition at line 610 of file hidusagestr.h.

+

Definition at line 610 of file hidusagestr.h.

- + +

◆ pstrUsageALDictionary

+
@@ -9641,11 +10730,13 @@ Variables
-

Definition at line 611 of file hidusagestr.h.

+

Definition at line 611 of file hidusagestr.h.

- + +

◆ pstrUsageALDesktop

+
@@ -9655,11 +10746,13 @@ Variables
-

Definition at line 612 of file hidusagestr.h.

+

Definition at line 612 of file hidusagestr.h.

- + +

◆ pstrUsageALSpellCheck

+
@@ -9669,11 +10762,13 @@ Variables
-

Definition at line 613 of file hidusagestr.h.

+

Definition at line 613 of file hidusagestr.h.

- + +

◆ pstrUsageALGrammarCheck

+
@@ -9683,11 +10778,13 @@ Variables
-

Definition at line 614 of file hidusagestr.h.

+

Definition at line 614 of file hidusagestr.h.

- + +

◆ pstrUsageALWirelessStatus

+
@@ -9697,11 +10794,13 @@ Variables
-

Definition at line 615 of file hidusagestr.h.

+

Definition at line 615 of file hidusagestr.h.

- + +

◆ pstrUsageALKeyboardLayout

+
@@ -9711,11 +10810,13 @@ Variables
-

Definition at line 616 of file hidusagestr.h.

+

Definition at line 616 of file hidusagestr.h.

- + +

◆ pstrUsageALVirusProtection

+
@@ -9725,11 +10826,13 @@ Variables
-

Definition at line 617 of file hidusagestr.h.

+

Definition at line 617 of file hidusagestr.h.

- + +

◆ pstrUsageALEncryption

+
@@ -9739,11 +10842,13 @@ Variables
-

Definition at line 618 of file hidusagestr.h.

+

Definition at line 618 of file hidusagestr.h.

- + +

◆ pstrUsageALScreenSaver

+
@@ -9753,11 +10858,13 @@ Variables
-

Definition at line 619 of file hidusagestr.h.

+

Definition at line 619 of file hidusagestr.h.

- + +

◆ pstrUsageALAlarms

+
@@ -9767,11 +10874,13 @@ Variables
-

Definition at line 620 of file hidusagestr.h.

+

Definition at line 620 of file hidusagestr.h.

- + +

◆ pstrUsageALClock

+
@@ -9781,11 +10890,13 @@ Variables
-

Definition at line 621 of file hidusagestr.h.

+

Definition at line 621 of file hidusagestr.h.

- + +

◆ pstrUsageALFileBrowser

+
@@ -9795,11 +10906,13 @@ Variables
-

Definition at line 622 of file hidusagestr.h.

+

Definition at line 622 of file hidusagestr.h.

- + +

◆ pstrUsageALPowerStatus

+
@@ -9809,11 +10922,13 @@ Variables
-

Definition at line 623 of file hidusagestr.h.

+

Definition at line 623 of file hidusagestr.h.

- + +

◆ pstrUsageALImageBrowser

+
@@ -9823,11 +10938,13 @@ Variables
-

Definition at line 624 of file hidusagestr.h.

+

Definition at line 624 of file hidusagestr.h.

- + +

◆ pstrUsageALAudioBrowser

+
@@ -9837,11 +10954,13 @@ Variables
-

Definition at line 625 of file hidusagestr.h.

+

Definition at line 625 of file hidusagestr.h.

- + +

◆ pstrUsageALMovieBrowser

+
@@ -9851,11 +10970,13 @@ Variables
-

Definition at line 626 of file hidusagestr.h.

+

Definition at line 626 of file hidusagestr.h.

- + +

◆ pstrUsageALDigitalRightsManager

+
@@ -9865,11 +10986,13 @@ Variables
-

Definition at line 627 of file hidusagestr.h.

+

Definition at line 627 of file hidusagestr.h.

- + +

◆ pstrUsageALDigitalWallet

+
@@ -9879,11 +11002,13 @@ Variables
-

Definition at line 628 of file hidusagestr.h.

+

Definition at line 628 of file hidusagestr.h.

- + +

◆ pstrUsageALInstantMessaging

+
@@ -9893,11 +11018,13 @@ Variables
-

Definition at line 629 of file hidusagestr.h.

+

Definition at line 629 of file hidusagestr.h.

- + +

◆ pstrUsageALOEMFeaturesBrowser

+
@@ -9907,11 +11034,13 @@ Variables
-

Definition at line 630 of file hidusagestr.h.

+

Definition at line 630 of file hidusagestr.h.

- + +

◆ pstrUsageALOEMHelp

+
@@ -9921,11 +11050,13 @@ Variables
-

Definition at line 631 of file hidusagestr.h.

+

Definition at line 631 of file hidusagestr.h.

- + +

◆ pstrUsageALOnlineCommunity

+
@@ -9935,11 +11066,13 @@ Variables
-

Definition at line 632 of file hidusagestr.h.

+

Definition at line 632 of file hidusagestr.h.

- + +

◆ pstrUsageALEntertainmentContentBrow

+
@@ -9949,11 +11082,13 @@ Variables
-

Definition at line 633 of file hidusagestr.h.

+

Definition at line 633 of file hidusagestr.h.

- + +

◆ pstrUsageALOnlineShoppingBrowser

+
@@ -9963,11 +11098,13 @@ Variables
-

Definition at line 634 of file hidusagestr.h.

+

Definition at line 634 of file hidusagestr.h.

- + +

◆ pstrUsageALSmartCardInfoHelp

+
@@ -9977,11 +11114,13 @@ Variables
-

Definition at line 635 of file hidusagestr.h.

+

Definition at line 635 of file hidusagestr.h.

- + +

◆ pstrUsageALMarketMonitorFinBrowser

+
@@ -9991,11 +11130,13 @@ Variables
-

Definition at line 636 of file hidusagestr.h.

+

Definition at line 636 of file hidusagestr.h.

- + +

◆ pstrUsageALCustomCorpNewsBrowser

+
@@ -10005,11 +11146,13 @@ Variables
-

Definition at line 637 of file hidusagestr.h.

+

Definition at line 637 of file hidusagestr.h.

- + +

◆ pstrUsageALOnlineActivityBrowser

+
@@ -10019,11 +11162,13 @@ Variables
-

Definition at line 638 of file hidusagestr.h.

+

Definition at line 638 of file hidusagestr.h.

- + +

◆ pstrUsageALResearchSearchBrowser

+
@@ -10033,11 +11178,13 @@ Variables
-

Definition at line 639 of file hidusagestr.h.

+

Definition at line 639 of file hidusagestr.h.

- + +

◆ pstrUsageALAudioPlayer

+
@@ -10047,11 +11194,13 @@ Variables
-

Definition at line 640 of file hidusagestr.h.

+

Definition at line 640 of file hidusagestr.h.

- + +

◆ pstrUsageGenericGUIAppControls

+
@@ -10061,11 +11210,13 @@ Variables
-

Definition at line 641 of file hidusagestr.h.

+

Definition at line 641 of file hidusagestr.h.

- + +

◆ pstrUsageACNew

+
@@ -10075,11 +11226,13 @@ Variables
-

Definition at line 642 of file hidusagestr.h.

+

Definition at line 642 of file hidusagestr.h.

- + +

◆ pstrUsageACOpen

+
@@ -10089,11 +11242,13 @@ Variables
-

Definition at line 643 of file hidusagestr.h.

+

Definition at line 643 of file hidusagestr.h.

- + +

◆ pstrUsageACClose

+
@@ -10103,11 +11258,13 @@ Variables
-

Definition at line 644 of file hidusagestr.h.

+

Definition at line 644 of file hidusagestr.h.

- + +

◆ pstrUsageACExit

+
@@ -10117,11 +11274,13 @@ Variables
-

Definition at line 645 of file hidusagestr.h.

+

Definition at line 645 of file hidusagestr.h.

- + +

◆ pstrUsageACMaximize

+
@@ -10131,11 +11290,13 @@ Variables
-

Definition at line 646 of file hidusagestr.h.

+

Definition at line 646 of file hidusagestr.h.

- + +

◆ pstrUsageACMinimize

+
@@ -10145,11 +11306,13 @@ Variables
-

Definition at line 647 of file hidusagestr.h.

+

Definition at line 647 of file hidusagestr.h.

- + +

◆ pstrUsageACSave

+
@@ -10159,11 +11322,13 @@ Variables
-

Definition at line 648 of file hidusagestr.h.

+

Definition at line 648 of file hidusagestr.h.

- + +

◆ pstrUsageACPrint

+
@@ -10173,11 +11338,13 @@ Variables
-

Definition at line 649 of file hidusagestr.h.

+

Definition at line 649 of file hidusagestr.h.

- + +

◆ pstrUsageACProperties

+
@@ -10187,11 +11354,13 @@ Variables
-

Definition at line 650 of file hidusagestr.h.

+

Definition at line 650 of file hidusagestr.h.

- + +

◆ pstrUsageACUndo

+
@@ -10201,11 +11370,13 @@ Variables
-

Definition at line 651 of file hidusagestr.h.

+

Definition at line 651 of file hidusagestr.h.

- + +

◆ pstrUsageACCopy

+
@@ -10215,11 +11386,13 @@ Variables
-

Definition at line 652 of file hidusagestr.h.

+

Definition at line 652 of file hidusagestr.h.

- + +

◆ pstrUsageACCut

+
@@ -10229,11 +11402,13 @@ Variables
-

Definition at line 653 of file hidusagestr.h.

+

Definition at line 653 of file hidusagestr.h.

- + +

◆ pstrUsageACPaste

+
@@ -10243,11 +11418,13 @@ Variables
-

Definition at line 654 of file hidusagestr.h.

+

Definition at line 654 of file hidusagestr.h.

- + +

◆ pstrUsageACSelectAll

+
@@ -10257,11 +11434,13 @@ Variables
-

Definition at line 655 of file hidusagestr.h.

+

Definition at line 655 of file hidusagestr.h.

- + +

◆ pstrUsageACFind

+
@@ -10271,11 +11450,13 @@ Variables
-

Definition at line 656 of file hidusagestr.h.

+

Definition at line 656 of file hidusagestr.h.

- + +

◆ pstrUsageACFindAndReplace

+
@@ -10285,11 +11466,13 @@ Variables
-

Definition at line 657 of file hidusagestr.h.

+

Definition at line 657 of file hidusagestr.h.

- + +

◆ pstrUsageACSearch

+
@@ -10299,11 +11482,13 @@ Variables
-

Definition at line 658 of file hidusagestr.h.

+

Definition at line 658 of file hidusagestr.h.

- + +

◆ pstrUsageACGoto

+
@@ -10313,11 +11498,13 @@ Variables
-

Definition at line 659 of file hidusagestr.h.

+

Definition at line 659 of file hidusagestr.h.

- + +

◆ pstrUsageACHome

+
@@ -10327,11 +11514,13 @@ Variables
-

Definition at line 660 of file hidusagestr.h.

+

Definition at line 660 of file hidusagestr.h.

- + +

◆ pstrUsageACBack

+
@@ -10341,11 +11530,13 @@ Variables
-

Definition at line 661 of file hidusagestr.h.

+

Definition at line 661 of file hidusagestr.h.

- + +

◆ pstrUsageACForward

+
@@ -10355,11 +11546,13 @@ Variables
-

Definition at line 662 of file hidusagestr.h.

+

Definition at line 662 of file hidusagestr.h.

- + +

◆ pstrUsageACStop

+
@@ -10369,11 +11562,13 @@ Variables
-

Definition at line 663 of file hidusagestr.h.

+

Definition at line 663 of file hidusagestr.h.

- + +

◆ pstrUsageACRefresh

+
@@ -10383,11 +11578,13 @@ Variables
-

Definition at line 664 of file hidusagestr.h.

+

Definition at line 664 of file hidusagestr.h.

- + +

◆ pstrUsageACPreviousLink

+
@@ -10397,11 +11594,13 @@ Variables
-

Definition at line 665 of file hidusagestr.h.

+

Definition at line 665 of file hidusagestr.h.

- + +

◆ pstrUsageACNextLink

+
@@ -10411,11 +11610,13 @@ Variables
-

Definition at line 666 of file hidusagestr.h.

+

Definition at line 666 of file hidusagestr.h.

- + +

◆ pstrUsageACBookmarks

+
@@ -10425,11 +11626,13 @@ Variables
-

Definition at line 667 of file hidusagestr.h.

+

Definition at line 667 of file hidusagestr.h.

- + +

◆ pstrUsageACHistory

+
@@ -10439,11 +11642,13 @@ Variables
-

Definition at line 668 of file hidusagestr.h.

+

Definition at line 668 of file hidusagestr.h.

- + +

◆ pstrUsageACSubscriptions

+
@@ -10453,11 +11658,13 @@ Variables
-

Definition at line 669 of file hidusagestr.h.

+

Definition at line 669 of file hidusagestr.h.

- + +

◆ pstrUsageACZoomIn

+
@@ -10467,11 +11674,13 @@ Variables
-

Definition at line 670 of file hidusagestr.h.

+

Definition at line 670 of file hidusagestr.h.

- + +

◆ pstrUsageACZoomOut

+
@@ -10481,11 +11690,13 @@ Variables
-

Definition at line 671 of file hidusagestr.h.

+

Definition at line 671 of file hidusagestr.h.

- + +

◆ pstrUsageACZoom

+
@@ -10495,11 +11706,13 @@ Variables
-

Definition at line 672 of file hidusagestr.h.

+

Definition at line 672 of file hidusagestr.h.

- + +

◆ pstrUsageACFullScreenView

+
@@ -10509,11 +11722,13 @@ Variables
-

Definition at line 673 of file hidusagestr.h.

+

Definition at line 673 of file hidusagestr.h.

- + +

◆ pstrUsageACNormalView

+
@@ -10523,11 +11738,13 @@ Variables
-

Definition at line 674 of file hidusagestr.h.

+

Definition at line 674 of file hidusagestr.h.

- + +

◆ pstrUsageACViewToggle

+
@@ -10537,11 +11754,13 @@ Variables
-

Definition at line 675 of file hidusagestr.h.

+

Definition at line 675 of file hidusagestr.h.

- + +

◆ pstrUsageACScrollUp

+
@@ -10551,11 +11770,13 @@ Variables
-

Definition at line 676 of file hidusagestr.h.

+

Definition at line 676 of file hidusagestr.h.

- + +

◆ pstrUsageACScrollDown

+
@@ -10565,11 +11786,13 @@ Variables
-

Definition at line 677 of file hidusagestr.h.

+

Definition at line 677 of file hidusagestr.h.

- + +

◆ pstrUsageACScroll

+
@@ -10579,11 +11802,13 @@ Variables
-

Definition at line 678 of file hidusagestr.h.

+

Definition at line 678 of file hidusagestr.h.

- + +

◆ pstrUsageACPanLeft

+
@@ -10593,11 +11818,13 @@ Variables
-

Definition at line 679 of file hidusagestr.h.

+

Definition at line 679 of file hidusagestr.h.

- + +

◆ pstrUsageACPanRight

+
@@ -10607,11 +11834,13 @@ Variables
-

Definition at line 680 of file hidusagestr.h.

+

Definition at line 680 of file hidusagestr.h.

- + +

◆ pstrUsageACPan

+
@@ -10621,11 +11850,13 @@ Variables
-

Definition at line 681 of file hidusagestr.h.

+

Definition at line 681 of file hidusagestr.h.

- + +

◆ pstrUsageACNewWindow

+
@@ -10635,11 +11866,13 @@ Variables
-

Definition at line 682 of file hidusagestr.h.

+

Definition at line 682 of file hidusagestr.h.

- + +

◆ pstrUsageACTileHoriz

+
@@ -10649,11 +11882,13 @@ Variables
-

Definition at line 683 of file hidusagestr.h.

+

Definition at line 683 of file hidusagestr.h.

- + +

◆ pstrUsageACTileVert

+
@@ -10663,11 +11898,13 @@ Variables
-

Definition at line 684 of file hidusagestr.h.

+

Definition at line 684 of file hidusagestr.h.

- + +

◆ pstrUsageACFormat

+
@@ -10677,11 +11914,13 @@ Variables
-

Definition at line 685 of file hidusagestr.h.

+

Definition at line 685 of file hidusagestr.h.

- + +

◆ pstrUsageACEdit

+
@@ -10691,11 +11930,13 @@ Variables
-

Definition at line 686 of file hidusagestr.h.

+

Definition at line 686 of file hidusagestr.h.

- + +

◆ pstrUsageACBold

+
@@ -10705,11 +11946,13 @@ Variables
-

Definition at line 687 of file hidusagestr.h.

+

Definition at line 687 of file hidusagestr.h.

- + +

◆ pstrUsageACItalics

+
@@ -10719,11 +11962,13 @@ Variables
-

Definition at line 688 of file hidusagestr.h.

+

Definition at line 688 of file hidusagestr.h.

- + +

◆ pstrUsageACUnderline

+
@@ -10733,11 +11978,13 @@ Variables
-

Definition at line 689 of file hidusagestr.h.

+

Definition at line 689 of file hidusagestr.h.

- + +

◆ pstrUsageACStrikethrough

+
@@ -10747,11 +11994,13 @@ Variables
-

Definition at line 690 of file hidusagestr.h.

+

Definition at line 690 of file hidusagestr.h.

- + +

◆ pstrUsageACSubscript

+
@@ -10761,11 +12010,13 @@ Variables
-

Definition at line 691 of file hidusagestr.h.

+

Definition at line 691 of file hidusagestr.h.

- + +

◆ pstrUsageACSuperscript

+
@@ -10775,11 +12026,13 @@ Variables
-

Definition at line 692 of file hidusagestr.h.

+

Definition at line 692 of file hidusagestr.h.

- + +

◆ pstrUsageACAllCaps

+
@@ -10789,11 +12042,13 @@ Variables
-

Definition at line 693 of file hidusagestr.h.

+

Definition at line 693 of file hidusagestr.h.

- + +

◆ pstrUsageACRotate

+
@@ -10803,11 +12058,13 @@ Variables
-

Definition at line 694 of file hidusagestr.h.

+

Definition at line 694 of file hidusagestr.h.

- + +

◆ pstrUsageACResize

+
@@ -10817,11 +12074,13 @@ Variables
-

Definition at line 695 of file hidusagestr.h.

+

Definition at line 695 of file hidusagestr.h.

- + +

◆ pstrUsageACFlipHorizontal

+
@@ -10831,11 +12090,13 @@ Variables
-

Definition at line 696 of file hidusagestr.h.

+

Definition at line 696 of file hidusagestr.h.

- + +

◆ pstrUsageACFlipVertical

+
@@ -10845,11 +12106,13 @@ Variables
-

Definition at line 697 of file hidusagestr.h.

+

Definition at line 697 of file hidusagestr.h.

- + +

◆ pstrUsageACMirrorHorizontal

+
@@ -10859,11 +12122,13 @@ Variables
-

Definition at line 698 of file hidusagestr.h.

+

Definition at line 698 of file hidusagestr.h.

- + +

◆ pstrUsageACMirrorVertical

+
@@ -10873,11 +12138,13 @@ Variables
-

Definition at line 699 of file hidusagestr.h.

+

Definition at line 699 of file hidusagestr.h.

- + +

◆ pstrUsageACFontSelect

+
@@ -10887,11 +12154,13 @@ Variables
-

Definition at line 700 of file hidusagestr.h.

+

Definition at line 700 of file hidusagestr.h.

- + +

◆ pstrUsageACFontColor

+
@@ -10901,11 +12170,13 @@ Variables
-

Definition at line 701 of file hidusagestr.h.

+

Definition at line 701 of file hidusagestr.h.

- + +

◆ pstrUsageACFontSize

+
@@ -10915,11 +12186,13 @@ Variables
-

Definition at line 702 of file hidusagestr.h.

+

Definition at line 702 of file hidusagestr.h.

- + +

◆ pstrUsageACJustifyLeft

+
@@ -10929,11 +12202,13 @@ Variables
-

Definition at line 703 of file hidusagestr.h.

+

Definition at line 703 of file hidusagestr.h.

- + +

◆ pstrUsageACJustifyCenterH

+
@@ -10943,11 +12218,13 @@ Variables
-

Definition at line 704 of file hidusagestr.h.

+

Definition at line 704 of file hidusagestr.h.

- + +

◆ pstrUsageACJustifyRight

+
@@ -10957,11 +12234,13 @@ Variables
-

Definition at line 705 of file hidusagestr.h.

+

Definition at line 705 of file hidusagestr.h.

- + +

◆ pstrUsageACJustifyBlockH

+
@@ -10971,11 +12250,13 @@ Variables
-

Definition at line 706 of file hidusagestr.h.

+

Definition at line 706 of file hidusagestr.h.

- + +

◆ pstrUsageACJustifyTop

+
@@ -10985,11 +12266,13 @@ Variables
-

Definition at line 707 of file hidusagestr.h.

+

Definition at line 707 of file hidusagestr.h.

- + +

◆ pstrUsageACJustifyCenterV

+
@@ -10999,11 +12282,13 @@ Variables
-

Definition at line 708 of file hidusagestr.h.

+

Definition at line 708 of file hidusagestr.h.

- + +

◆ pstrUsageACJustifyBottom

+
@@ -11013,11 +12298,13 @@ Variables
-

Definition at line 709 of file hidusagestr.h.

+

Definition at line 709 of file hidusagestr.h.

- + +

◆ pstrUsageACJustifyBlockV

+
@@ -11027,11 +12314,13 @@ Variables
-

Definition at line 710 of file hidusagestr.h.

+

Definition at line 710 of file hidusagestr.h.

- + +

◆ pstrUsageACIndentDecrease

+
@@ -11041,11 +12330,13 @@ Variables
-

Definition at line 711 of file hidusagestr.h.

+

Definition at line 711 of file hidusagestr.h.

- + +

◆ pstrUsageACIndentIncrease

+
@@ -11055,11 +12346,13 @@ Variables
-

Definition at line 712 of file hidusagestr.h.

+

Definition at line 712 of file hidusagestr.h.

- + +

◆ pstrUsageACNumberedList

+
@@ -11069,11 +12362,13 @@ Variables
-

Definition at line 713 of file hidusagestr.h.

+

Definition at line 713 of file hidusagestr.h.

- + +

◆ pstrUsageACRestartNumbering

+
@@ -11083,11 +12378,13 @@ Variables
-

Definition at line 714 of file hidusagestr.h.

+

Definition at line 714 of file hidusagestr.h.

- + +

◆ pstrUsageACBulletedList

+
@@ -11097,11 +12394,13 @@ Variables
-

Definition at line 715 of file hidusagestr.h.

+

Definition at line 715 of file hidusagestr.h.

- + +

◆ pstrUsageACPromote

+
@@ -11111,11 +12410,13 @@ Variables
-

Definition at line 716 of file hidusagestr.h.

+

Definition at line 716 of file hidusagestr.h.

- + +

◆ pstrUsageACDemote

+
@@ -11125,11 +12426,13 @@ Variables
-

Definition at line 717 of file hidusagestr.h.

+

Definition at line 717 of file hidusagestr.h.

- + +

◆ pstrUsageACYes

+
@@ -11139,11 +12442,13 @@ Variables
-

Definition at line 718 of file hidusagestr.h.

+

Definition at line 718 of file hidusagestr.h.

- + +

◆ pstrUsageACNo

+
@@ -11153,11 +12458,13 @@ Variables
-

Definition at line 719 of file hidusagestr.h.

+

Definition at line 719 of file hidusagestr.h.

- + +

◆ pstrUsageACCancel

+
@@ -11167,11 +12474,13 @@ Variables
-

Definition at line 720 of file hidusagestr.h.

+

Definition at line 720 of file hidusagestr.h.

- + +

◆ pstrUsageACCatalog

+
@@ -11181,11 +12490,13 @@ Variables
-

Definition at line 721 of file hidusagestr.h.

+

Definition at line 721 of file hidusagestr.h.

- + +

◆ pstrUsageACBuyChkout

+
@@ -11195,11 +12506,13 @@ Variables
-

Definition at line 722 of file hidusagestr.h.

+

Definition at line 722 of file hidusagestr.h.

- + +

◆ pstrUsageACAddToCart

+
@@ -11209,11 +12522,13 @@ Variables
-

Definition at line 723 of file hidusagestr.h.

+

Definition at line 723 of file hidusagestr.h.

- + +

◆ pstrUsageACExpand

+
@@ -11223,11 +12538,13 @@ Variables
-

Definition at line 724 of file hidusagestr.h.

+

Definition at line 724 of file hidusagestr.h.

- + +

◆ pstrUsageACExpandAll

+
@@ -11237,11 +12554,13 @@ Variables
-

Definition at line 725 of file hidusagestr.h.

+

Definition at line 725 of file hidusagestr.h.

- + +

◆ pstrUsageACCollapse

+
@@ -11251,11 +12570,13 @@ Variables
-

Definition at line 726 of file hidusagestr.h.

+

Definition at line 726 of file hidusagestr.h.

- + +

◆ pstrUsageACCollapseAll

+
@@ -11265,11 +12586,13 @@ Variables
-

Definition at line 727 of file hidusagestr.h.

+

Definition at line 727 of file hidusagestr.h.

- + +

◆ pstrUsageACPrintPreview

+
@@ -11279,11 +12602,13 @@ Variables
-

Definition at line 728 of file hidusagestr.h.

+

Definition at line 728 of file hidusagestr.h.

- + +

◆ pstrUsageACPasteSpecial

+
@@ -11293,11 +12618,13 @@ Variables
-

Definition at line 729 of file hidusagestr.h.

+

Definition at line 729 of file hidusagestr.h.

- + +

◆ pstrUsageACInsertMode

+
@@ -11307,11 +12634,13 @@ Variables
-

Definition at line 730 of file hidusagestr.h.

+

Definition at line 730 of file hidusagestr.h.

- + +

◆ pstrUsageACDelete

+
@@ -11321,11 +12650,13 @@ Variables
-

Definition at line 731 of file hidusagestr.h.

+

Definition at line 731 of file hidusagestr.h.

- + +

◆ pstrUsageACLock

+
@@ -11335,11 +12666,13 @@ Variables
-

Definition at line 732 of file hidusagestr.h.

+

Definition at line 732 of file hidusagestr.h.

- + +

◆ pstrUsageACUnlock

+
@@ -11349,11 +12682,13 @@ Variables
-

Definition at line 733 of file hidusagestr.h.

+

Definition at line 733 of file hidusagestr.h.

- + +

◆ pstrUsageACProtect

+
@@ -11363,11 +12698,13 @@ Variables
-

Definition at line 734 of file hidusagestr.h.

+

Definition at line 734 of file hidusagestr.h.

- + +

◆ pstrUsageACUnprotect

+
@@ -11377,11 +12714,13 @@ Variables
-

Definition at line 735 of file hidusagestr.h.

+

Definition at line 735 of file hidusagestr.h.

- + +

◆ pstrUsageACAttachComment

+
@@ -11391,11 +12730,13 @@ Variables
-

Definition at line 736 of file hidusagestr.h.

+

Definition at line 736 of file hidusagestr.h.

- + +

◆ pstrUsageACDeleteComment

+
@@ -11405,11 +12746,13 @@ Variables
-

Definition at line 737 of file hidusagestr.h.

+

Definition at line 737 of file hidusagestr.h.

- + +

◆ pstrUsageACViewComment

+
@@ -11419,11 +12762,13 @@ Variables
-

Definition at line 738 of file hidusagestr.h.

+

Definition at line 738 of file hidusagestr.h.

- + +

◆ pstrUsageACSelectWord

+
@@ -11433,11 +12778,13 @@ Variables
-

Definition at line 739 of file hidusagestr.h.

+

Definition at line 739 of file hidusagestr.h.

- + +

◆ pstrUsageACSelectSentence

+
@@ -11447,11 +12794,13 @@ Variables
-

Definition at line 740 of file hidusagestr.h.

+

Definition at line 740 of file hidusagestr.h.

- + +

◆ pstrUsageACSelectParagraph

+
@@ -11461,11 +12810,13 @@ Variables
-

Definition at line 741 of file hidusagestr.h.

+

Definition at line 741 of file hidusagestr.h.

- + +

◆ pstrUsageACSelectColumn

+
@@ -11475,11 +12826,13 @@ Variables
-

Definition at line 742 of file hidusagestr.h.

+

Definition at line 742 of file hidusagestr.h.

- + +

◆ pstrUsageACSelectRow

+
@@ -11489,11 +12842,13 @@ Variables
-

Definition at line 743 of file hidusagestr.h.

+

Definition at line 743 of file hidusagestr.h.

- + +

◆ pstrUsageACSelectTable

+
@@ -11503,11 +12858,13 @@ Variables
-

Definition at line 744 of file hidusagestr.h.

+

Definition at line 744 of file hidusagestr.h.

- + +

◆ pstrUsageACSelectObject

+
@@ -11517,11 +12874,13 @@ Variables
-

Definition at line 745 of file hidusagestr.h.

+

Definition at line 745 of file hidusagestr.h.

- + +

◆ pstrUsageACRedoRepeat

+
@@ -11531,11 +12890,13 @@ Variables
-

Definition at line 746 of file hidusagestr.h.

+

Definition at line 746 of file hidusagestr.h.

- + +

◆ pstrUsageACSort

+
@@ -11545,11 +12906,13 @@ Variables
-

Definition at line 747 of file hidusagestr.h.

+

Definition at line 747 of file hidusagestr.h.

- + +

◆ pstrUsageACSortAscending

+
@@ -11559,11 +12922,13 @@ Variables
-

Definition at line 748 of file hidusagestr.h.

+

Definition at line 748 of file hidusagestr.h.

- + +

◆ pstrUsageACSortDescending

+
@@ -11573,11 +12938,13 @@ Variables
-

Definition at line 749 of file hidusagestr.h.

+

Definition at line 749 of file hidusagestr.h.

- + +

◆ pstrUsageACFilter

+
@@ -11587,11 +12954,13 @@ Variables
-

Definition at line 750 of file hidusagestr.h.

+

Definition at line 750 of file hidusagestr.h.

- + +

◆ pstrUsageACSetClock

+
@@ -11601,11 +12970,13 @@ Variables
-

Definition at line 751 of file hidusagestr.h.

+

Definition at line 751 of file hidusagestr.h.

- + +

◆ pstrUsageACViewClock

+
@@ -11615,11 +12986,13 @@ Variables
-

Definition at line 752 of file hidusagestr.h.

+

Definition at line 752 of file hidusagestr.h.

- + +

◆ pstrUsageACSelectTimeZone

+
@@ -11629,11 +13002,13 @@ Variables
-

Definition at line 753 of file hidusagestr.h.

+

Definition at line 753 of file hidusagestr.h.

- + +

◆ pstrUsageACEditTimeZone

+
@@ -11643,11 +13018,13 @@ Variables
-

Definition at line 754 of file hidusagestr.h.

+

Definition at line 754 of file hidusagestr.h.

- + +

◆ pstrUsageACSetAlarm

+
@@ -11657,11 +13034,13 @@ Variables
-

Definition at line 755 of file hidusagestr.h.

+

Definition at line 755 of file hidusagestr.h.

- + +

◆ pstrUsageACClearAlarm

+
@@ -11671,11 +13050,13 @@ Variables
-

Definition at line 756 of file hidusagestr.h.

+

Definition at line 756 of file hidusagestr.h.

- + +

◆ pstrUsageACSnoozeAlarm

+
@@ -11685,11 +13066,13 @@ Variables
-

Definition at line 757 of file hidusagestr.h.

+

Definition at line 757 of file hidusagestr.h.

- + +

◆ pstrUsageACResetAlarm

+
@@ -11699,11 +13082,13 @@ Variables
-

Definition at line 758 of file hidusagestr.h.

+

Definition at line 758 of file hidusagestr.h.

- + +

◆ pstrUsageACSyncronize

+
@@ -11713,11 +13098,13 @@ Variables
-

Definition at line 759 of file hidusagestr.h.

+

Definition at line 759 of file hidusagestr.h.

- + +

◆ pstrUsageACSendReceive

+
@@ -11727,11 +13114,13 @@ Variables
-

Definition at line 760 of file hidusagestr.h.

+

Definition at line 760 of file hidusagestr.h.

- + +

◆ pstrUsageACSendTo

+
@@ -11741,11 +13130,13 @@ Variables
-

Definition at line 761 of file hidusagestr.h.

+

Definition at line 761 of file hidusagestr.h.

- + +

◆ pstrUsageACReply

+
@@ -11755,11 +13146,13 @@ Variables
-

Definition at line 762 of file hidusagestr.h.

+

Definition at line 762 of file hidusagestr.h.

- + +

◆ pstrUsageACReplyAll

+
@@ -11769,11 +13162,13 @@ Variables
-

Definition at line 763 of file hidusagestr.h.

+

Definition at line 763 of file hidusagestr.h.

- + +

◆ pstrUsageACForwardMessage

+
@@ -11783,11 +13178,13 @@ Variables
-

Definition at line 764 of file hidusagestr.h.

+

Definition at line 764 of file hidusagestr.h.

- + +

◆ pstrUsageACSend

+
@@ -11797,11 +13194,13 @@ Variables
-

Definition at line 765 of file hidusagestr.h.

+

Definition at line 765 of file hidusagestr.h.

- + +

◆ pstrUsageACAttachFile

+
@@ -11811,11 +13210,13 @@ Variables
-

Definition at line 766 of file hidusagestr.h.

+

Definition at line 766 of file hidusagestr.h.

- + +

◆ pstrUsageACUpload

+
@@ -11825,11 +13226,13 @@ Variables
-

Definition at line 767 of file hidusagestr.h.

+

Definition at line 767 of file hidusagestr.h.

- + +

◆ pstrUsageACDownload

+
@@ -11839,11 +13242,13 @@ Variables
-

Definition at line 768 of file hidusagestr.h.

+

Definition at line 768 of file hidusagestr.h.

- + +

◆ pstrUsageACSetBorders

+
@@ -11853,11 +13258,13 @@ Variables
-

Definition at line 769 of file hidusagestr.h.

+

Definition at line 769 of file hidusagestr.h.

- + +

◆ pstrUsageACInsertRow

+
@@ -11867,11 +13274,13 @@ Variables
-

Definition at line 770 of file hidusagestr.h.

+

Definition at line 770 of file hidusagestr.h.

- + +

◆ pstrUsageACInsertColumn

+
@@ -11881,11 +13290,13 @@ Variables
-

Definition at line 771 of file hidusagestr.h.

+

Definition at line 771 of file hidusagestr.h.

- + +

◆ pstrUsageACInsertFile

+
@@ -11895,11 +13306,13 @@ Variables
-

Definition at line 772 of file hidusagestr.h.

+

Definition at line 772 of file hidusagestr.h.

- + +

◆ pstrUsageACInsertPicture

+
@@ -11909,11 +13322,13 @@ Variables
-

Definition at line 773 of file hidusagestr.h.

+

Definition at line 773 of file hidusagestr.h.

- + +

◆ pstrUsageACInsertObject

+
@@ -11923,11 +13338,13 @@ Variables
-

Definition at line 774 of file hidusagestr.h.

+

Definition at line 774 of file hidusagestr.h.

- + +

◆ pstrUsageACInsertSymbol

+
@@ -11937,11 +13354,13 @@ Variables
-

Definition at line 775 of file hidusagestr.h.

+

Definition at line 775 of file hidusagestr.h.

- + +

◆ pstrUsageACSaveAndClose

+
@@ -11951,11 +13370,13 @@ Variables
-

Definition at line 776 of file hidusagestr.h.

+

Definition at line 776 of file hidusagestr.h.

- + +

◆ pstrUsageACRename

+
@@ -11965,11 +13386,13 @@ Variables
-

Definition at line 777 of file hidusagestr.h.

+

Definition at line 777 of file hidusagestr.h.

- + +

◆ pstrUsageACMerge

+
@@ -11979,11 +13402,13 @@ Variables
-

Definition at line 778 of file hidusagestr.h.

+

Definition at line 778 of file hidusagestr.h.

- + +

◆ pstrUsageACSplit

+
@@ -11993,11 +13418,13 @@ Variables
-

Definition at line 779 of file hidusagestr.h.

+

Definition at line 779 of file hidusagestr.h.

- + +

◆ pstrUsageACDistributeHorizontaly

+
@@ -12007,11 +13434,13 @@ Variables
-

Definition at line 780 of file hidusagestr.h.

+

Definition at line 780 of file hidusagestr.h.

- + +

◆ pstrUsageACDistributeVerticaly

+
@@ -12021,11 +13450,13 @@ Variables
-

Definition at line 781 of file hidusagestr.h.

+

Definition at line 781 of file hidusagestr.h.

- + +

◆ pstrUsageDigitizer

+
@@ -12035,11 +13466,13 @@ Variables
-

Definition at line 784 of file hidusagestr.h.

+

Definition at line 784 of file hidusagestr.h.

- + +

◆ pstrUsagePen

+
@@ -12049,11 +13482,13 @@ Variables
-

Definition at line 785 of file hidusagestr.h.

+

Definition at line 785 of file hidusagestr.h.

- + +

◆ pstrUsageLightPen

+
@@ -12063,11 +13498,13 @@ Variables
-

Definition at line 786 of file hidusagestr.h.

+

Definition at line 786 of file hidusagestr.h.

- + +

◆ pstrUsageTouchScreen

+
@@ -12077,11 +13514,13 @@ Variables
-

Definition at line 787 of file hidusagestr.h.

+

Definition at line 787 of file hidusagestr.h.

- + +

◆ pstrUsageTouchPad

+
@@ -12091,11 +13530,13 @@ Variables
-

Definition at line 788 of file hidusagestr.h.

+

Definition at line 788 of file hidusagestr.h.

- + +

◆ pstrUsageWhiteBoard

+
@@ -12105,11 +13546,13 @@ Variables
-

Definition at line 789 of file hidusagestr.h.

+

Definition at line 789 of file hidusagestr.h.

- + +

◆ pstrUsageCoordinateMeasuringMachine

+
@@ -12119,11 +13562,13 @@ Variables
-

Definition at line 790 of file hidusagestr.h.

+

Definition at line 790 of file hidusagestr.h.

- + +

◆ pstrUsage3DDigitizer

+
@@ -12133,11 +13578,13 @@ Variables
-

Definition at line 791 of file hidusagestr.h.

+

Definition at line 791 of file hidusagestr.h.

- + +

◆ pstrUsageStereoPlotter

+
@@ -12147,11 +13594,13 @@ Variables
-

Definition at line 792 of file hidusagestr.h.

+

Definition at line 792 of file hidusagestr.h.

- + +

◆ pstrUsageArticulatedArm

+
@@ -12161,11 +13610,13 @@ Variables
-

Definition at line 793 of file hidusagestr.h.

+

Definition at line 793 of file hidusagestr.h.

- + +

◆ pstrUsageArmature

+
@@ -12175,11 +13626,13 @@ Variables
-

Definition at line 794 of file hidusagestr.h.

+

Definition at line 794 of file hidusagestr.h.

- + +

◆ pstrUsageMultiplePointDigitizer

+
@@ -12189,11 +13642,13 @@ Variables
-

Definition at line 795 of file hidusagestr.h.

+

Definition at line 795 of file hidusagestr.h.

- + +

◆ pstrUsageFreeSpaceWand

+
@@ -12203,11 +13658,13 @@ Variables
-

Definition at line 796 of file hidusagestr.h.

+

Definition at line 796 of file hidusagestr.h.

- + +

◆ pstrUsageStylus

+
@@ -12217,11 +13674,13 @@ Variables
-

Definition at line 797 of file hidusagestr.h.

+

Definition at line 797 of file hidusagestr.h.

- + +

◆ pstrUsagePuck

+
@@ -12231,11 +13690,13 @@ Variables
-

Definition at line 798 of file hidusagestr.h.

+

Definition at line 798 of file hidusagestr.h.

- + +

◆ pstrUsageFinger

+
@@ -12245,11 +13706,13 @@ Variables
-

Definition at line 799 of file hidusagestr.h.

+

Definition at line 799 of file hidusagestr.h.

- + +

◆ pstrUsageTipPressure

+
@@ -12259,11 +13722,13 @@ Variables
-

Definition at line 800 of file hidusagestr.h.

+

Definition at line 800 of file hidusagestr.h.

- + +

◆ pstrUsageBarrelPressure

+
@@ -12273,11 +13738,13 @@ Variables
-

Definition at line 801 of file hidusagestr.h.

+

Definition at line 801 of file hidusagestr.h.

- + +

◆ pstrUsageInRange

+
@@ -12287,11 +13754,13 @@ Variables
-

Definition at line 802 of file hidusagestr.h.

+

Definition at line 802 of file hidusagestr.h.

- + +

◆ pstrUsageTouch

+
@@ -12301,11 +13770,13 @@ Variables
-

Definition at line 803 of file hidusagestr.h.

+

Definition at line 803 of file hidusagestr.h.

- + +

◆ pstrUsageUntouch

+
@@ -12315,11 +13786,13 @@ Variables
-

Definition at line 804 of file hidusagestr.h.

+

Definition at line 804 of file hidusagestr.h.

- + +

◆ pstrUsageTap

+
@@ -12329,11 +13802,13 @@ Variables
-

Definition at line 805 of file hidusagestr.h.

+

Definition at line 805 of file hidusagestr.h.

- + +

◆ pstrUsageQuality

+
@@ -12343,11 +13818,13 @@ Variables
-

Definition at line 806 of file hidusagestr.h.

+

Definition at line 806 of file hidusagestr.h.

- + +

◆ pstrUsageDataValid

+
@@ -12357,11 +13834,13 @@ Variables
-

Definition at line 807 of file hidusagestr.h.

+

Definition at line 807 of file hidusagestr.h.

- + +

◆ pstrUsageTransducerIndex

+
@@ -12371,11 +13850,13 @@ Variables
-

Definition at line 808 of file hidusagestr.h.

+

Definition at line 808 of file hidusagestr.h.

- + +

◆ pstrUsageTabletFunctionKeys

+
@@ -12385,11 +13866,13 @@ Variables
-

Definition at line 809 of file hidusagestr.h.

+

Definition at line 809 of file hidusagestr.h.

- + +

◆ pstrUsageProgramChangeKeys

+
@@ -12399,11 +13882,13 @@ Variables
-

Definition at line 810 of file hidusagestr.h.

+

Definition at line 810 of file hidusagestr.h.

- + +

◆ pstrUsageInvert

+
@@ -12413,11 +13898,13 @@ Variables
-

Definition at line 812 of file hidusagestr.h.

+

Definition at line 812 of file hidusagestr.h.

- + +

◆ pstrUsageXTilt

+
@@ -12427,11 +13914,13 @@ Variables
-

Definition at line 813 of file hidusagestr.h.

+

Definition at line 813 of file hidusagestr.h.

- + +

◆ pstrUsageYTilt

+
@@ -12441,11 +13930,13 @@ Variables
-

Definition at line 814 of file hidusagestr.h.

+

Definition at line 814 of file hidusagestr.h.

- + +

◆ pstrUsageAzimuth

+
@@ -12455,11 +13946,13 @@ Variables
-

Definition at line 815 of file hidusagestr.h.

+

Definition at line 815 of file hidusagestr.h.

- + +

◆ pstrUsageAltitude

+
@@ -12469,11 +13962,13 @@ Variables
-

Definition at line 816 of file hidusagestr.h.

+

Definition at line 816 of file hidusagestr.h.

- + +

◆ pstrUsageTwist

+
@@ -12483,11 +13978,13 @@ Variables
-

Definition at line 817 of file hidusagestr.h.

+

Definition at line 817 of file hidusagestr.h.

- + +

◆ pstrUsageTipSwitch

+
@@ -12497,11 +13994,13 @@ Variables
-

Definition at line 818 of file hidusagestr.h.

+

Definition at line 818 of file hidusagestr.h.

- + +

◆ pstrUsageSecondaryTipSwitch

+
@@ -12511,11 +14010,13 @@ Variables
-

Definition at line 819 of file hidusagestr.h.

+

Definition at line 819 of file hidusagestr.h.

- + +

◆ pstrUsageBarrelSwitch

+
@@ -12525,11 +14026,13 @@ Variables
-

Definition at line 820 of file hidusagestr.h.

+

Definition at line 820 of file hidusagestr.h.

- + +

◆ pstrUsageEraser

+
@@ -12539,11 +14042,13 @@ Variables
-

Definition at line 821 of file hidusagestr.h.

+

Definition at line 821 of file hidusagestr.h.

- + +

◆ pstrUsageTabletPick

+
@@ -12553,11 +14058,13 @@ Variables
-

Definition at line 822 of file hidusagestr.h.

+

Definition at line 822 of file hidusagestr.h.

- + +

◆ pstrUsageAlphanumericDisplay

+
@@ -12567,11 +14074,13 @@ Variables
-

Definition at line 825 of file hidusagestr.h.

+

Definition at line 825 of file hidusagestr.h.

- + +

◆ pstrUsageBitmappedDisplay

+
@@ -12581,11 +14090,13 @@ Variables
-

Definition at line 826 of file hidusagestr.h.

+

Definition at line 826 of file hidusagestr.h.

- + +

◆ pstrUsageDisplayAttributesReport

+
@@ -12595,11 +14106,13 @@ Variables
-

Definition at line 827 of file hidusagestr.h.

+

Definition at line 827 of file hidusagestr.h.

- + +

◆ pstrUsageASCIICharacterSet

+
@@ -12609,11 +14122,13 @@ Variables
-

Definition at line 828 of file hidusagestr.h.

+

Definition at line 828 of file hidusagestr.h.

- + +

◆ pstrUsageDataReadBack

+
@@ -12623,11 +14138,13 @@ Variables
-

Definition at line 829 of file hidusagestr.h.

+

Definition at line 829 of file hidusagestr.h.

- + +

◆ pstrUsageFontReadBack

+
@@ -12637,11 +14154,13 @@ Variables
-

Definition at line 830 of file hidusagestr.h.

+

Definition at line 830 of file hidusagestr.h.

- + +

◆ pstrUsageDisplayControlReport

+
@@ -12651,11 +14170,13 @@ Variables
-

Definition at line 831 of file hidusagestr.h.

+

Definition at line 831 of file hidusagestr.h.

- + +

◆ pstrUsageClearDisplay

+
@@ -12665,11 +14186,13 @@ Variables
-

Definition at line 832 of file hidusagestr.h.

+

Definition at line 832 of file hidusagestr.h.

- + +

◆ pstrUsageScreenSaverDelay

+
@@ -12679,11 +14202,13 @@ Variables
-

Definition at line 834 of file hidusagestr.h.

+

Definition at line 834 of file hidusagestr.h.

- + +

◆ pstrUsageScreenSaverEnable

+
@@ -12693,11 +14218,13 @@ Variables
-

Definition at line 835 of file hidusagestr.h.

+

Definition at line 835 of file hidusagestr.h.

- + +

◆ pstrUsageVerticalScroll

+
@@ -12707,11 +14234,13 @@ Variables
-

Definition at line 836 of file hidusagestr.h.

+

Definition at line 836 of file hidusagestr.h.

- + +

◆ pstrUsageHorizontalScroll

+
@@ -12721,11 +14250,13 @@ Variables
-

Definition at line 837 of file hidusagestr.h.

+

Definition at line 837 of file hidusagestr.h.

- + +

◆ pstrUsageCharacterReport

+
@@ -12735,11 +14266,13 @@ Variables
-

Definition at line 838 of file hidusagestr.h.

+

Definition at line 838 of file hidusagestr.h.

- + +

◆ pstrUsageDisplayData

+
@@ -12749,11 +14282,13 @@ Variables
-

Definition at line 839 of file hidusagestr.h.

+

Definition at line 839 of file hidusagestr.h.

- + +

◆ pstrUsageDisplayStatus

+
@@ -12763,11 +14298,13 @@ Variables
-

Definition at line 840 of file hidusagestr.h.

+

Definition at line 840 of file hidusagestr.h.

- + +

◆ pstrUsageStatusNotReady

+
@@ -12777,11 +14314,13 @@ Variables
-

Definition at line 841 of file hidusagestr.h.

+

Definition at line 841 of file hidusagestr.h.

- + +

◆ pstrUsageStatusReady

+
@@ -12791,11 +14330,13 @@ Variables
-

Definition at line 842 of file hidusagestr.h.

+

Definition at line 842 of file hidusagestr.h.

- + +

◆ pstrUsageErrorNotALoadableCharacter

+
@@ -12805,11 +14346,13 @@ Variables
-

Definition at line 843 of file hidusagestr.h.

+

Definition at line 843 of file hidusagestr.h.

- + +

◆ pstrUsageErrorFotDataCanNotBeRead

+
@@ -12819,11 +14362,13 @@ Variables
-

Definition at line 844 of file hidusagestr.h.

+

Definition at line 844 of file hidusagestr.h.

- + +

◆ pstrUsageCursorPositionReport

+
@@ -12833,11 +14378,13 @@ Variables
-

Definition at line 845 of file hidusagestr.h.

+

Definition at line 845 of file hidusagestr.h.

- + +

◆ pstrUsageRow

+
@@ -12847,11 +14394,13 @@ Variables
-

Definition at line 846 of file hidusagestr.h.

+

Definition at line 846 of file hidusagestr.h.

- + +

◆ pstrUsageColumn

+
@@ -12861,11 +14410,13 @@ Variables
-

Definition at line 847 of file hidusagestr.h.

+

Definition at line 847 of file hidusagestr.h.

- + +

◆ pstrUsageRows

+
@@ -12875,11 +14426,13 @@ Variables
-

Definition at line 848 of file hidusagestr.h.

+

Definition at line 848 of file hidusagestr.h.

- + +

◆ pstrUsageColumns

+
@@ -12889,11 +14442,13 @@ Variables
-

Definition at line 849 of file hidusagestr.h.

+

Definition at line 849 of file hidusagestr.h.

- + +

◆ pstrUsageCursorPixelPosition

+
@@ -12903,11 +14458,13 @@ Variables
-

Definition at line 850 of file hidusagestr.h.

+

Definition at line 850 of file hidusagestr.h.

- + +

◆ pstrUsageCursorMode

+
@@ -12917,11 +14474,13 @@ Variables
-

Definition at line 851 of file hidusagestr.h.

+

Definition at line 851 of file hidusagestr.h.

- + +

◆ pstrUsageCursorEnable

+
@@ -12931,11 +14490,13 @@ Variables
-

Definition at line 852 of file hidusagestr.h.

+

Definition at line 852 of file hidusagestr.h.

- + +

◆ pstrUsageCursorBlink

+
@@ -12945,11 +14506,13 @@ Variables
-

Definition at line 853 of file hidusagestr.h.

+

Definition at line 853 of file hidusagestr.h.

- + +

◆ pstrUsageFontReport

+
@@ -12959,11 +14522,13 @@ Variables
-

Definition at line 854 of file hidusagestr.h.

+

Definition at line 854 of file hidusagestr.h.

- + +

◆ pstrUsageFontData

+
@@ -12973,11 +14538,13 @@ Variables
-

Definition at line 855 of file hidusagestr.h.

+

Definition at line 855 of file hidusagestr.h.

- + +

◆ pstrUsageCharacterWidth

+
@@ -12987,11 +14554,13 @@ Variables
-

Definition at line 856 of file hidusagestr.h.

+

Definition at line 856 of file hidusagestr.h.

- + +

◆ pstrUsageCharacterHeight

+
@@ -13001,11 +14570,13 @@ Variables
-

Definition at line 857 of file hidusagestr.h.

+

Definition at line 857 of file hidusagestr.h.

- + +

◆ pstrUsageCharacterSpacingHorizontal

+
@@ -13015,11 +14586,13 @@ Variables
-

Definition at line 858 of file hidusagestr.h.

+

Definition at line 858 of file hidusagestr.h.

- + +

◆ pstrUsageCharacterSpacingVertical

+
@@ -13029,11 +14602,13 @@ Variables
-

Definition at line 859 of file hidusagestr.h.

+

Definition at line 859 of file hidusagestr.h.

- + +

◆ pstrUsageUnicodeCharset

+
@@ -13043,11 +14618,13 @@ Variables
-

Definition at line 860 of file hidusagestr.h.

+

Definition at line 860 of file hidusagestr.h.

- + +

◆ pstrUsageFont7Segment

+
@@ -13057,11 +14634,13 @@ Variables
-

Definition at line 861 of file hidusagestr.h.

+

Definition at line 861 of file hidusagestr.h.

- + +

◆ pstrUsage7SegmentDirectMap

+
@@ -13071,11 +14650,13 @@ Variables
-

Definition at line 862 of file hidusagestr.h.

+

Definition at line 862 of file hidusagestr.h.

- + +

◆ pstrUsageFont14Segment

+
@@ -13085,11 +14666,13 @@ Variables
-

Definition at line 863 of file hidusagestr.h.

+

Definition at line 863 of file hidusagestr.h.

- + +

◆ pstrUsage14SegmentDirectMap

+
@@ -13099,11 +14682,13 @@ Variables
-

Definition at line 864 of file hidusagestr.h.

+

Definition at line 864 of file hidusagestr.h.

- + +

◆ pstrUsageDisplayBrightness

+
@@ -13113,11 +14698,13 @@ Variables
-

Definition at line 865 of file hidusagestr.h.

+

Definition at line 865 of file hidusagestr.h.

- + +

◆ pstrUsageDisplayContrast

+
@@ -13127,11 +14714,13 @@ Variables
-

Definition at line 866 of file hidusagestr.h.

+

Definition at line 866 of file hidusagestr.h.

- + +

◆ pstrUsageCharacterAttribute

+
@@ -13141,11 +14730,13 @@ Variables
-

Definition at line 867 of file hidusagestr.h.

+

Definition at line 867 of file hidusagestr.h.

- + +

◆ pstrUsageAttributeReadback

+
@@ -13155,11 +14746,13 @@ Variables
-

Definition at line 868 of file hidusagestr.h.

+

Definition at line 868 of file hidusagestr.h.

- + +

◆ pstrUsageAttributeData

+
@@ -13169,11 +14762,13 @@ Variables
-

Definition at line 869 of file hidusagestr.h.

+

Definition at line 869 of file hidusagestr.h.

- + +

◆ pstrUsageCharAttributeEnhance

+
@@ -13183,11 +14778,13 @@ Variables
-

Definition at line 870 of file hidusagestr.h.

+

Definition at line 870 of file hidusagestr.h.

- + +

◆ pstrUsageCharAttributeUnderline

+
@@ -13197,11 +14794,13 @@ Variables
-

Definition at line 871 of file hidusagestr.h.

+

Definition at line 871 of file hidusagestr.h.

- + +

◆ pstrUsageCharAttributeBlink

+
@@ -13211,11 +14810,13 @@ Variables
-

Definition at line 872 of file hidusagestr.h.

+

Definition at line 872 of file hidusagestr.h.

- + +

◆ pstrUsageBitmapSizeX

+
@@ -13225,11 +14826,13 @@ Variables
-

Definition at line 873 of file hidusagestr.h.

+

Definition at line 873 of file hidusagestr.h.

- + +

◆ pstrUsageBitmapSizeY

+
@@ -13239,11 +14842,13 @@ Variables
-

Definition at line 874 of file hidusagestr.h.

+

Definition at line 874 of file hidusagestr.h.

- + +

◆ pstrUsageBitDepthFormat

+
@@ -13253,11 +14858,13 @@ Variables
-

Definition at line 875 of file hidusagestr.h.

+

Definition at line 875 of file hidusagestr.h.

- + +

◆ pstrUsageDisplayOrientation

+
@@ -13267,11 +14874,13 @@ Variables
-

Definition at line 876 of file hidusagestr.h.

+

Definition at line 876 of file hidusagestr.h.

- + +

◆ pstrUsagePaletteReport

+
@@ -13281,11 +14890,13 @@ Variables
-

Definition at line 877 of file hidusagestr.h.

+

Definition at line 877 of file hidusagestr.h.

- + +

◆ pstrUsagePaletteDataSize

+
@@ -13295,11 +14906,13 @@ Variables
-

Definition at line 878 of file hidusagestr.h.

+

Definition at line 878 of file hidusagestr.h.

- + +

◆ pstrUsagePaletteDataOffset

+
@@ -13309,11 +14922,13 @@ Variables
-

Definition at line 879 of file hidusagestr.h.

+

Definition at line 879 of file hidusagestr.h.

- + +

◆ pstrUsagePaletteData

+
@@ -13323,11 +14938,13 @@ Variables
-

Definition at line 880 of file hidusagestr.h.

+

Definition at line 880 of file hidusagestr.h.

- + +

◆ pstrUsageBlitReport

+
@@ -13337,11 +14954,13 @@ Variables
-

Definition at line 881 of file hidusagestr.h.

+

Definition at line 881 of file hidusagestr.h.

- + +

◆ pstrUsageBlitRectangleX1

+
@@ -13351,11 +14970,13 @@ Variables
-

Definition at line 882 of file hidusagestr.h.

+

Definition at line 882 of file hidusagestr.h.

- + +

◆ pstrUsageBlitRectangleY1

+
@@ -13365,11 +14986,13 @@ Variables
-

Definition at line 883 of file hidusagestr.h.

+

Definition at line 883 of file hidusagestr.h.

- + +

◆ pstrUsageBlitRectangleX2

+
@@ -13379,11 +15002,13 @@ Variables
-

Definition at line 884 of file hidusagestr.h.

+

Definition at line 884 of file hidusagestr.h.

- + +

◆ pstrUsageBlitRectangleY2

+
@@ -13393,11 +15018,13 @@ Variables
-

Definition at line 885 of file hidusagestr.h.

+

Definition at line 885 of file hidusagestr.h.

- + +

◆ pstrUsageBlitData

+
@@ -13407,11 +15034,13 @@ Variables
-

Definition at line 886 of file hidusagestr.h.

+

Definition at line 886 of file hidusagestr.h.

- + +

◆ pstrUsageSoftButton

+
@@ -13421,11 +15050,13 @@ Variables
-

Definition at line 887 of file hidusagestr.h.

+

Definition at line 887 of file hidusagestr.h.

- + +

◆ pstrUsageSoftButtonID

+
@@ -13435,11 +15066,13 @@ Variables
-

Definition at line 888 of file hidusagestr.h.

+

Definition at line 888 of file hidusagestr.h.

- + +

◆ pstrUsageSoftButtonSide

+
@@ -13449,11 +15082,13 @@ Variables
-

Definition at line 889 of file hidusagestr.h.

+

Definition at line 889 of file hidusagestr.h.

- + +

◆ pstrUsageSoftButtonOffset1

+
@@ -13463,11 +15098,13 @@ Variables
-

Definition at line 890 of file hidusagestr.h.

+

Definition at line 890 of file hidusagestr.h.

- + +

◆ pstrUsageSoftButtonOffset2

+
@@ -13477,11 +15114,13 @@ Variables
-

Definition at line 891 of file hidusagestr.h.

+

Definition at line 891 of file hidusagestr.h.

- + +

◆ pstrUsageSoftButtonReport

+
@@ -13491,11 +15130,13 @@ Variables
-

Definition at line 892 of file hidusagestr.h.

+

Definition at line 892 of file hidusagestr.h.

- + +

◆ pstrUsageMedicalUltrasound

+
@@ -13505,11 +15146,13 @@ Variables
-

Definition at line 895 of file hidusagestr.h.

+

Definition at line 895 of file hidusagestr.h.

- + +

◆ pstrUsageVCRAcquisition

+
@@ -13519,11 +15162,13 @@ Variables
-

Definition at line 896 of file hidusagestr.h.

+

Definition at line 896 of file hidusagestr.h.

- + +

◆ pstrUsageFreezeThaw

+
@@ -13533,11 +15178,13 @@ Variables
-

Definition at line 897 of file hidusagestr.h.

+

Definition at line 897 of file hidusagestr.h.

- + +

◆ pstrUsageClipStore

+
@@ -13547,11 +15194,13 @@ Variables
-

Definition at line 898 of file hidusagestr.h.

+

Definition at line 898 of file hidusagestr.h.

- + +

◆ pstrUsageUpdate

+
@@ -13561,11 +15210,13 @@ Variables
-

Definition at line 899 of file hidusagestr.h.

+

Definition at line 899 of file hidusagestr.h.

- + +

◆ pstrUsageNext

+
@@ -13575,11 +15226,13 @@ Variables
-

Definition at line 900 of file hidusagestr.h.

+

Definition at line 900 of file hidusagestr.h.

- + +

◆ pstrUsageSave

+
@@ -13589,11 +15242,13 @@ Variables
-

Definition at line 901 of file hidusagestr.h.

+

Definition at line 901 of file hidusagestr.h.

- + +

◆ pstrUsagePrint

+
@@ -13603,11 +15258,13 @@ Variables
-

Definition at line 902 of file hidusagestr.h.

+

Definition at line 902 of file hidusagestr.h.

- + +

◆ pstrUsageMicrophoneEnable

+
@@ -13617,11 +15274,13 @@ Variables
-

Definition at line 903 of file hidusagestr.h.

+

Definition at line 903 of file hidusagestr.h.

- + +

◆ pstrUsageCine

+
@@ -13631,11 +15290,13 @@ Variables
-

Definition at line 904 of file hidusagestr.h.

+

Definition at line 904 of file hidusagestr.h.

- + +

◆ pstrUsageTransmitPower

+
@@ -13645,11 +15306,13 @@ Variables
-

Definition at line 905 of file hidusagestr.h.

+

Definition at line 905 of file hidusagestr.h.

- + +

◆ pstrUsageFocus

+
@@ -13659,11 +15322,13 @@ Variables
-

Definition at line 907 of file hidusagestr.h.

+

Definition at line 907 of file hidusagestr.h.

- + +

◆ pstrUsageDepth

+
@@ -13673,11 +15338,13 @@ Variables
-

Definition at line 908 of file hidusagestr.h.

+

Definition at line 908 of file hidusagestr.h.

- + +

◆ pstrUsageSoftStepPrimary

+
@@ -13687,11 +15354,13 @@ Variables
-

Definition at line 909 of file hidusagestr.h.

+

Definition at line 909 of file hidusagestr.h.

- + +

◆ pstrUsageSoftStepSecondary

+
@@ -13701,11 +15370,13 @@ Variables
-

Definition at line 910 of file hidusagestr.h.

+

Definition at line 910 of file hidusagestr.h.

- + +

◆ pstrUsageDepthGainCompensation

+
@@ -13715,11 +15386,13 @@ Variables
-

Definition at line 911 of file hidusagestr.h.

+

Definition at line 911 of file hidusagestr.h.

- + +

◆ pstrUsageZoomSelect

+
@@ -13729,11 +15402,13 @@ Variables
-

Definition at line 912 of file hidusagestr.h.

+

Definition at line 912 of file hidusagestr.h.

- + +

◆ pstrUsageZoomAdjust

+
@@ -13743,11 +15418,13 @@ Variables
-

Definition at line 913 of file hidusagestr.h.

+

Definition at line 913 of file hidusagestr.h.

- + +

◆ pstrUsageSpectralDopplerModeSelect

+
@@ -13757,11 +15434,13 @@ Variables
-

Definition at line 914 of file hidusagestr.h.

+

Definition at line 914 of file hidusagestr.h.

- + +

◆ pstrUsageSpectralDopplerModeAdjust

+
@@ -13771,11 +15450,13 @@ Variables
-

Definition at line 915 of file hidusagestr.h.

+

Definition at line 915 of file hidusagestr.h.

- + +

◆ pstrUsageColorDopplerModeSelect

+
@@ -13785,11 +15466,13 @@ Variables
-

Definition at line 916 of file hidusagestr.h.

+

Definition at line 916 of file hidusagestr.h.

- + +

◆ pstrUsageColorDopplerModeAdjust

+
@@ -13799,11 +15482,13 @@ Variables
-

Definition at line 917 of file hidusagestr.h.

+

Definition at line 917 of file hidusagestr.h.

- + +

◆ pstrUsageMotionModeSelect

+
@@ -13813,11 +15498,13 @@ Variables
-

Definition at line 918 of file hidusagestr.h.

+

Definition at line 918 of file hidusagestr.h.

- + +

◆ pstrUsageMotionModeAdjust

+
@@ -13827,11 +15514,13 @@ Variables
-

Definition at line 919 of file hidusagestr.h.

+

Definition at line 919 of file hidusagestr.h.

- + +

◆ pstrUsage2DModeSelect

+
@@ -13841,11 +15530,13 @@ Variables
-

Definition at line 920 of file hidusagestr.h.

+

Definition at line 920 of file hidusagestr.h.

- + +

◆ pstrUsage2DModeAdjust

+
@@ -13855,11 +15546,13 @@ Variables
-

Definition at line 921 of file hidusagestr.h.

+

Definition at line 921 of file hidusagestr.h.

- + +

◆ pstrUsageSoftControlSelect

+
@@ -13869,11 +15562,13 @@ Variables
-

Definition at line 922 of file hidusagestr.h.

+

Definition at line 922 of file hidusagestr.h.

- + +

◆ pstrUsageSoftControlAdjust

+
@@ -13883,7 +15578,7 @@ Variables
-

Definition at line 923 of file hidusagestr.h.

+

Definition at line 923 of file hidusagestr.h.

@@ -13892,7 +15587,7 @@ Variables diff --git a/hidusagestr_8h__dep__incl.map b/hidusagestr_8h__dep__incl.map index 6f4881b6..10a88ddc 100644 --- a/hidusagestr_8h__dep__incl.map +++ b/hidusagestr_8h__dep__incl.map @@ -1,34 +1,34 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/hidusagestr_8h__dep__incl.md5 b/hidusagestr_8h__dep__incl.md5 index f03c365e..07029779 100644 --- a/hidusagestr_8h__dep__incl.md5 +++ b/hidusagestr_8h__dep__incl.md5 @@ -1 +1 @@ -458cdc5a16353bd037883f3fc8526b3c \ No newline at end of file +33375ae6c48dbe16014389193cfb26c6 \ No newline at end of file diff --git a/hidusagestr_8h__dep__incl.png b/hidusagestr_8h__dep__incl.png index 76630d6c62690f469296b72e5baae92811372100..1d8a64e9b73896f0288d958a60c705a12c40ec57 100644 GIT binary patch literal 64775 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 literal 54252 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�-W5aHp0<&*1if!gSGESn*Wa;K)Gu(Gmd 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 - + diff --git a/hidusagestr_8h__incl.md5 b/hidusagestr_8h__incl.md5 index bc04b8cf..3d407f20 100644 --- a/hidusagestr_8h__incl.md5 +++ b/hidusagestr_8h__incl.md5 @@ -1 +1 @@ -794eccf037bd4feb00fd840fe0fc37b3 \ No newline at end of file +74eae8cd2429afa36b202f9e3b7f9c92 \ No newline at end of file diff --git a/hidusagestr_8h__incl.png b/hidusagestr_8h__incl.png index d4a993ef91b3f76b530afc35f044370e2a287d5f..02ea41a93e3387c1fa9e3113b72baff4c05bdbd2 100644 GIT binary patch literal 2744 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 diff --git a/hidusagestr_8h_source.html b/hidusagestr_8h_source.html index e152ebbf..6e82d389 100644 --- a/hidusagestr_8h_source.html +++ b/hidusagestr_8h_source.html @@ -3,7 +3,8 @@ - + + USB Host Shield 2.0: hidusagestr.h Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + +
- - + +
@@ -107,7 +84,9 @@ Macros  

Macro Definition Documentation

- + +

◆ __HIDUSAGETITLEARRAYS_H__

+
@@ -117,7 +96,7 @@ Macros
-

Definition at line 18 of file hidusagetitlearrays.cpp.

+

Definition at line 18 of file hidusagetitlearrays.cpp.

@@ -126,7 +105,7 @@ Macros diff --git a/hidusagetitlearrays_8cpp__incl.map b/hidusagetitlearrays_8cpp__incl.map index b1cb20e7..f94d0ba0 100644 --- a/hidusagetitlearrays_8cpp__incl.map +++ b/hidusagetitlearrays_8cpp__incl.map @@ -1,4 +1,4 @@ - - + + diff --git a/hidusagetitlearrays_8cpp__incl.md5 b/hidusagetitlearrays_8cpp__incl.md5 index 4e28641f..85cded89 100644 --- a/hidusagetitlearrays_8cpp__incl.md5 +++ b/hidusagetitlearrays_8cpp__incl.md5 @@ -1 +1 @@ -24f4b9fff6ebcb53f983ea5749309c1d \ No newline at end of file +bf6795292f5f5a0d124868b867d6bd79 \ No newline at end of file diff --git a/hidusagetitlearrays_8cpp__incl.png b/hidusagetitlearrays_8cpp__incl.png index 0fd8000a70ca0b32729b5bc21bbf600a510eb1a9..2bed71c0c5d5618a6d9baafd0501a44c1630d25f 100644 GIT binary patch literal 5298 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 literal 4771 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 - + + USB Host Shield 2.0: hidusagetitlearrays.cpp Source File @@ -11,9 +12,6 @@ - @@ -32,40 +30,19 @@ - + - - + + + + - + - - + + + + - + - + + + +
-
USB Host Library Rev.2.0
+
USB Host Library Rev. 2.0

The code is released under the GNU General Public License.


-

+

Summary

This is Revision 2.0 of MAX3421E-based USB Host Shield Library for AVR's.

Project main web site is: https://chome.nerpa.tech/arduino_usb_host_shield_projects/.

Some information can also be found at: http://blog.tkjelectronics.dk/.

The shield can be purchased from TKJ Electronics: http://shop.tkjelectronics.dk/product_info.php?products_id=43.

-USB Host Shield +USB Host Shield

For more information about the hardware see the Hardware Manual.

Developed By

@@ -173,7 +156,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');

Documentation for the library can be found at the following link: https://felis.github.io/USB_Host_Shield_2.0/.

Enable debugging

By default serial debugging is disabled. To turn it on simply change ENABLE_UHS_DEBUGGING to 1 in settings.h like so:

-
1 {C++}
2 #define ENABLE_UHS_DEBUGGING 1

Boards

+
{C++}
#define ENABLE_UHS_DEBUGGING 1

Boards

Currently the following boards are supported by the library:

  • All official Arduino AVR boards (Uno, Duemilanove, Mega, Mega 2560, Mega ADK, Leonardo etc.)
  • @@ -182,7 +165,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
  • Note native USB host is not supported on any of these platforms. You will have to use the shield for now.
-
  • Teensy (Teensy++ 1.0, Teensy 2.0, Teensy++ 2.0, Teensy 3.x, and Teensy LC)
      +
    • Teensy (Teensy++ 1.0, Teensy 2.0, Teensy++ 2.0, Teensy 3.x, Teensy LC and Teensy 4.x)
      • Note if you are using the Teensy 3.x you should download this SPI library as well: https://github.com/xxxajk/spi4teensy3. You should then add #include <spi4teensy3.h> to your .ino file.
    • @@ -313,9 +296,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');

      Wii library

      The Wii library support the Wiimote, but also the Nunchuch and Motion Plus extensions via Bluetooth. The Wii U Pro Controller and Wii Balance Board are also supported via Bluetooth.

      First you have to pair with the controller, this is done automatically by the library if you create the instance like so:

      -
      1 {C++}
      2 WII Wii(&Btd, PAIR);

      And then press 1 & 2 at once on the Wiimote or the SYNC buttons if you are using a Wii U Pro Controller or a Wii Balance Board.

      +
      {C++}
      WII Wii(&Btd, PAIR);

      And then press 1 & 2 at once on the Wiimote or the SYNC buttons if you are using a Wii U Pro Controller or a Wii Balance Board.

      After that you can simply create the instance like so:

      -
      1 {C++}
      2 WII Wii(&Btd);

      Then just press any button on the Wiimote and it will then connect to the dongle.

      +
      {C++}
      WII Wii(&Btd);

      Then just press any button on the Wiimote and it will then connect to the dongle.

      Take a look at the example for more information: Wii.ino.

      Also take a look at the blog post:

        @@ -355,8 +338,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');

        Note this means that it uses pin 13, 12, 11 on an Arduino Uno, so these pins can not be used for anything else than SPI communication!

        Furthermore it uses one pin as SS and one INT pin. These are by default located on pin 10 and 9 respectively. They can easily be reconfigured in case you need to use them for something else by cutting the jumper on the shield and then solder a wire from the pad to the new pin.

        After that you need modify the following entry in UsbCore.h:

        -
        1 {C++}
        2 typedef MAX3421e<P10, P9> MAX3421E;

        For instance if you have rerouted SS to pin 7 it should read:

        -
        1 {C++}
        2 typedef MAX3421e<P7, P9> MAX3421E;

        See the "Interface modifications" section in the hardware manual for more information.

        +
        {C++}
        typedef MAX3421e<P10, P9> MAX3421E;

        For instance if you have rerouted SS to pin 7 it should read:

        +
        {C++}
        typedef MAX3421e<P7, P9> MAX3421E;

        See the "Interface modifications" section in the hardware manual for more information.

        FAQ

        When I plug my device into the USB connector nothing happens?

        @@ -368,7 +351,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');

        When I connecting my PS3 controller I get a output like this:

        -
        1 Dualshock 3 Controller Enabled
        2 
        3 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
        4 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
        5 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
        6 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
        7 LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
          +
          Dualshock 3 Controller Enabled
          LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
          LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
          LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
          LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
          LeftHatX: 0 LeftHatY: 0 RightHatX: 0 RightHatY: 0
          • This means that your dongle does not support 2.0+EDR, so you will need another dongle. Please see the following list for tested working dongles.
          @@ -382,7 +365,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/inherit_graph_0.map b/inherit_graph_0.map index 6ffd86b2..daf7b9d5 100644 --- a/inherit_graph_0.map +++ b/inherit_graph_0.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_0.md5 b/inherit_graph_0.md5 index 579c5f1b..bd8903f1 100644 --- a/inherit_graph_0.md5 +++ b/inherit_graph_0.md5 @@ -1 +1 @@ -51aec80c6698220ab54f75d7e2a76022 \ No newline at end of file +e87ef1920ae3987d3f53b1c3f1b6da38 \ No newline at end of file diff --git a/inherit_graph_0.png b/inherit_graph_0.png index 9342406dea8ea58f112c77c47421abfd65bfece8..5dfade4e1281657e27a3d77d79e00336f2c04d3b 100644 GIT binary patch literal 1847 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 - - - + + + diff --git a/inherit_graph_1.md5 b/inherit_graph_1.md5 index 4b69cca0..592e9a2f 100644 --- a/inherit_graph_1.md5 +++ b/inherit_graph_1.md5 @@ -1 +1 @@ -f7077192a6c9c75c0fa28e435f701915 \ No newline at end of file +b017c0b10fef5a6bee6477623e5880f6 \ No newline at end of file diff --git a/inherit_graph_1.png b/inherit_graph_1.png index de1f348b96223bb0960fb0170ad7460fbd53f0cd..0597a6e69c2c2e06ac4b50c82240063e762044ee 100644 GIT binary patch literal 8434 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 z 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 - + diff --git a/inherit_graph_10.md5 b/inherit_graph_10.md5 index a5b48127..1742c117 100644 --- a/inherit_graph_10.md5 +++ b/inherit_graph_10.md5 @@ -1 +1 @@ -73bbaef19201f2ba28611d49756a3e81 \ No newline at end of file +2e90305d9cdc8803e4c818090bf3bb7f \ No newline at end of file diff --git a/inherit_graph_10.png b/inherit_graph_10.png index e99ec9e0db23b908c118187f8744cb0e7b2441c8..f87eec3d4a58ee810c85d76a16e5046bffa69617 100644 GIT binary patch delta 1361 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 UNYp)Wq5uE@07*qoM6N<$g0oi{qyPW_ diff --git a/inherit_graph_11.map b/inherit_graph_11.map index 18022101..7a781615 100644 --- a/inherit_graph_11.map +++ b/inherit_graph_11.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_11.md5 b/inherit_graph_11.md5 index 51fa68e9..86db3871 100644 --- a/inherit_graph_11.md5 +++ b/inherit_graph_11.md5 @@ -1 +1 @@ -601b035ab244851300e16f0a82e686ac \ No newline at end of file +a7a06573aa6e34ac9ca82e472915efc1 \ No newline at end of file diff --git a/inherit_graph_11.png b/inherit_graph_11.png index 1c1af84e78c7a985ad09066f26568a576a7cc023..4c911ea61643beb04a6ad654d8c755ca0fb7ec47 100644 GIT binary patch literal 1847 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 - + diff --git a/inherit_graph_12.md5 b/inherit_graph_12.md5 index c3e39686..314ef65c 100644 --- a/inherit_graph_12.md5 +++ b/inherit_graph_12.md5 @@ -1 +1 @@ -3ed57b3e36f0a7a657eed42fddb5202d \ No newline at end of file +ed02cfddadc4837deab27d8a488e0b8a \ No newline at end of file diff --git a/inherit_graph_12.png b/inherit_graph_12.png index ad9652c1ee38c2fe79bea3d7086f69dbfd9b6a93..3628c99282413d29ec4a8da241ab247e6a201c2f 100644 GIT binary patch literal 1667 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 S$kG4+3IG5}MNUMnLSTZ1{Z!rn diff --git a/inherit_graph_13.map b/inherit_graph_13.map index f1a5a480..80a4e176 100644 --- a/inherit_graph_13.map +++ b/inherit_graph_13.map @@ -1,4 +1,4 @@ - - + + diff --git a/inherit_graph_13.md5 b/inherit_graph_13.md5 index de950995..61ea85b7 100644 --- a/inherit_graph_13.md5 +++ b/inherit_graph_13.md5 @@ -1 +1 @@ -a582106e55052f1107fabe28f27c7d10 \ No newline at end of file +2d6b3e67436f8489e4525334563aaebd \ No newline at end of file diff --git a/inherit_graph_13.png b/inherit_graph_13.png index 68f24fbdd70561dde7a176eea941bbc2ad6ce5da..a2c9b7c1ad0ccdc1cc493f088eed489de1defc39 100644 GIT binary patch literal 2999 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 F{s*aq;t2o% diff --git a/inherit_graph_14.map b/inherit_graph_14.map index 61557dd3..7f726b01 100644 --- a/inherit_graph_14.map +++ b/inherit_graph_14.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_14.md5 b/inherit_graph_14.md5 index c4d032d9..8d64f76d 100644 --- a/inherit_graph_14.md5 +++ b/inherit_graph_14.md5 @@ -1 +1 @@ -a94f31d2234932f36ce87864433fbf93 \ No newline at end of file +1c695f0e8910c9bf3254eaf9920c1e34 \ No newline at end of file diff --git a/inherit_graph_14.png b/inherit_graph_14.png index 4fc2686496b3ab2c3a7eee672668b914082b5f31..619423a149baf7cf233f4dc881c973ac16fb2b0c 100644 GIT binary patch literal 2171 zcmV->2!!{EP)E5sD&aQAi5jK+8*6m^q0uYx7beONqRtQ*=-|+jLXc&i}>X|Kr!(v_#Dp zzt5|4p5Jqx=Q-#1_3WG}k|2bDfWQKPN3MO&}0p-QRW&g+ftNQ?u?R5o`!*YHAb;1>Qnl?DY8YZ``;+B9R6M2T^x)bd*FQy?OIy?Fv{GRw53S zO6BM0N2OA$s;W9VIz%E-baeEK7cW-5xK$)MIk~g5v$nQ&WMrhcxVWLAAtNIL05CK( z#9%O%7`Uv1NrHoeKYsj(>93`w#nRGJB9Wl3R4S!XseAV9`TKdSFAzs{b+wVjBq=E= zQBhHNOGZY9P$*n>;QG_w-;ZWQqtV*i+cA4mUYwl)Z%R;#tK zv5Ak5KYsi;dYYD&wr}6Qzm2)p00641tADfLJAWt+7Kolb`mmzI`#d3n+4^lR6yRa8{)csxf($DEuTtg@vY>gwvey}fO0Y_@LQ zDi({eQMI+Tetv#VPEPsx`4B>b!BALO=;7gEZ*RYM@7}VqGBhJDmm41+KQ%RFG#5IZ z4ghd*aWR(#?|>HyzFl8m@8#uXZEelt@yg4~k zgis(5pn0JnuU@_4a5!ykZHu!bhv(0qdwO~@7>vZkM4e7&(g-13SXju)%3`zGG#V{2 zF>!8g&M5xUuXPo~F+DvE09d@r7}3$uLZNVQa8NFndwY9dzI+)aK6dPwTCFZFE(QRE zg@vir>Y}0|0KktQKbCd)`ST}*LOFf<^w`)~Wo0D*U~+O2jXH7Sgi57)`0yd}6pO`7 zCbPc2etdkqv9XcOW}_KNrBWXsA6r}7!-o&wxpQZ9bae4MHkrkoAh5PZqp`BGdhp=E z#Kc5NNeP8QnVFe^5S}@6COkYGLYSGEnUIj6*XwCCnoK5}o13FjsS=3<3v%etq3Y`D z@$qqU*$*5z(AU@3-rmmV^YilZOd27C1qB5W5fKW7LN1s4`}?P-r{m*mG@3OR$K>QB z06?WunS8pius|l0dwP0Mx4yof&*!7Wt*x!d!KmHe-@mNG{QUfvFJI82zkmN8KkD`C z*LY8NclXlLQmmfx@^WlO27}?lhYtk>1-`z%6bhxPstW%8zD;IXRvgpQ)7IA3g@uJ^ zphlxH7z}7J(SEaQ*RGnH8VF%TL_~gmzDy<~lga2+p&)X(eCh1S0mbC=`6i7JLN_((v2rJ|x@VPV16)|Sa+lF4N3&NeVGuw~1Zl~smk zetteYJUlfuRVtOtX z`ULTwG{qDEj1OGMVn~?pLo~_3`o9v}qFnAT%^oCX+Qc zHwOg;;R7ONFOj{kuMai8e*KDm7)%;jEEd{OA%rTGN+y%xu=w_jfsho zN~LnSJU>5QEEZq6as|~985w!@?AdSMzV-C<eOwOTC}i?QJ$At4nN6-uS@`}gk_78X`kR>&S49Q^FrGoet3 zx*QIN%jGsTH5rLx**T`9qznuUbai!QWo2PyFE)xqqVwm^4-F0V_Vyk*as*%D3c-KI z{NZf{La0zEqN1YMY_@}gLttRwlP6EGM^jT%v9YmqI-SL0rKhLQ&CQ`57!$S0_OcEI z1qIH|&Rj0HsHjLJ5;2)flb!~H;qKkL9v&Wcc6Nb*f$!eELo?Fr^_MPPLU#dISJ&+9 zY*d(DuNMde_V)HD$l@$U4taTbPEJnSw{LH3Y{b^8va*uPASFbg3L0<#d}ATW!GFIFEtdbIv^5Ntq9h$AvGa{cQd*np5A x@&7pp%s`wu2+Tr=gTO3=I0(!_h=af^{{inkM~O{NV>JK(002ovPDHLkV1m?26tw^V literal 1850 zcmV-A2gUe_P)4!W5_>2veYjAWUIXjnUE3 z#>U2AF!-mcfvgD1%gf8l%Sm(AKGfge|M>CaWiJV`l6d#-U1w(})x(Yq(&==|RS#t4 zQBhG5=7H}+5T-y4L6`zH1YyeGs38`M^`}etU-36;2(q*+QbR*SLuF-UDJdxl2?+%S z1zlZTOIz0R;C8zk8yh!l*syx_YCfN@P$+tPd%@5=_o~HhX%2@&C=~kre$t~dc z#{~j`!{J!Oo&N}n(a^__A7wIGadEN1VEFm-=bbxuR_Lcnm6erFr?aQ0$K`Sj4-c!= z>gML=WyqVFnp#v;)ZN_;%&DoV?(XjI-@gM>uh$nB7pJDCE<+_t13}@*lP6&wTGVRw z_3PJZhj1LnFia>E3WY)p!*Co2egr`}Iyy2lGvnjqH*MPV`t|Dv4<2M^XQL=uSXgK_ zn->%|JUm=hR>tS^lai8@N~Oc$AgABGdsi$LgLtFS2>gD(|Lobbd_G?&6yCaZi|moh z<+@z1$Sxw+hc;tmSlH^3=Brn)^7Hdi6cvlb_wU~)2tu#d@87>4j6Q$<96^w0&z=FZ zq@+Zz*CPmW`}Xbh^mG=B6}{z~H*X3A0zRK#TU+b*`=k4V!C-T9^ZNDcc|6{+W5+xm z4;fEQ7X|Pk^{h6j#ymA76beU1MrencnwsQtxz%d5TCKZx@4j;73Rz-lY3Zj=pFAGV zjT<)-6B7>{I509Y0?b{zb}cAu>(;G(eSOo@(=M0m+_`fnPMjd8D-;Tg#p3aJu3fvf zefxIczk2nmTrRiSY@jN#$9?R{rVMLd%a!+LB_|&Nt4UvE+~wO+wD$IPba6-#!Dm;YE@*9ZnwLssVO%%7e&#m ztgMR{FOu6*lywNpNFAEX%*e>lYPDa!e4&nF7}nn2P7uV-ojc#YeG3%d($a!q7??Xc zIy#>M$kt3I6LrC9{W&=~LqkL0`rEf}VzHQvpDSG$zkMG#`6+J$zs>mKgp^(XBs;a6gEiI+J)j~6dnIArUP$(2BDJj|6 z*)Lzd1Wtp&ke8R|_xm?*-b@h0#*G_s9G6O^27>|24TVDUDPXPzr}cBWT2X-(r8GnR=2dY&<;h}hh}AErXh($^6=q9r_=fC*Dt5j8FM;yA2OLtbM^S+$B)Fs zL~tGUS}<3}urL%wyeMOB4!)Uc7jbmX=0(^78WT-Ma^#Zq?P*t*x!Oxw*8x zL}{69ZD3%4b|0eprBbQIVu|d1K7V&Wq=puAF4Jf{{BOU4uK(+ zN`+wyI2c65U@@Q*-j;!(F&sSGh2hL@6b#>%+iY)0q z)YH==l}b4r&boE$v|4S<={Sy`Idg``;|T-;>bb19w^ylD@_0NHMKd!qYinzrPA3>@ zYimnRPL7!|EX-&$78VwQ^H)bl2kC$G=#f+^MNu?AKfkZ9kF0QVa+1U0SglrqAS@OO zhr^kioTTj~O3UE<#pCg6YHFwlVOoDM7}RRDIXO8A2?<-aY2#Hql~fPpKMr`9&fm`*@ZAsU7lh#dIv`Ae8iFtdYG`FM*8^)gUr3;aAWVT8f-nVY z2*MPoAqZ1wej60_>mdk)iq&e($jG32W@$(y60zCr$R7|vAXJKqim2xA`ZN>r_W<9A oAWVT8f-nVY2*MPoAqZ3c0h&mf%&w0|SO5S307*qoM6N<$f=LsB*Z=?k diff --git a/inherit_graph_15.map b/inherit_graph_15.map index a2a2c0f5..b9503f86 100644 --- a/inherit_graph_15.map +++ b/inherit_graph_15.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_15.md5 b/inherit_graph_15.md5 index 9234f30c..ab303183 100644 --- a/inherit_graph_15.md5 +++ b/inherit_graph_15.md5 @@ -1 +1 @@ -0cd0ba5765c7231e72b2249ecf384180 \ No newline at end of file +28d903fff18b61a92823893cbdd9f35b \ No newline at end of file diff --git a/inherit_graph_15.png b/inherit_graph_15.png index 3dd952fc60dd90f47afb5c449b956faeb97248c8..485fd631ad576297b158778c98a2683d8b4b9945 100644 GIT binary patch delta 831 zcmV-F1Hk;31;qv-iBL{Q4GJ0x0000DNk~Le0000-0000b2nGNE01%AyPLUxMfBH#8 zK~!jg?V7Pm^FSEJpOoNKqz5uI8g`xI^VW!Ph+>Yw=ps@(oeabaow$Y#WYP! zOicJC=SZzqLq4C!!^6Y3=J~)ka}-5EG#d3w&XIb(j`#O>#N+XA&GSJZe`}6y+mIv) zS65en=x78U>iV`F1%?90mwbX|v{ zD2T`7NT<`Tx;;Z3oSmJKLzoKyy1l)nMx)Wyh=?r9A^^0qvO=X&iEeIgNL5wZ+uLLF zEzA0(x4ODY^?IF7PEH5_f7NO=rqhn5X|%MoMCEdsip3($&d$>Q{=VnhIrnS$W{z7U z`e#nDSp1YnRaG{>)12$;Ya$|QwOXvd)0|eTMY1f@-Q69FU0z-?T`%y=@$I#;EDJ=` z)!I>2m0eFyPoq+)xa!4XF#v!pyDy7RPfvJzd&A`9B#TW=O>uR5e<9FwPN`I4*Z24L z%m61sp|4AeMx&5r8Rc@B#cbQg`1p8#h5p62-KtuxA{-8P#oKqVR4Rp|qa!>&KO>XL zU}IyWubi?hBauiTnM~sN_!zIRuh`w)g{EnJ=`wv^Q~)e4E;`2BUoB13u)MsCMx%kX zwKZfinZENL92_8(e@bC~ejYij7l}l0 zdV1=$)SeLEtvCc?&hYRsHa9neNaZVmn4>5P4i685NaZWywc;Sm;ULW6Ak5+5dd@Kn zBgi@ihH09veXi!X{g(5akjU%t_V*$FpTk3#!$FwCL72ng6%X2mf`#UE=tlqm002ov JPDHLkV1jw%l%@ax delta 655 zcmV;A0&xAs2A2gPiBL{Q4GJ0x0000DNk~Le0000;0000b2m$~A0B+?tl#wA7e@sb4 zK~z|U?U=uc>Od66GuMDEQG{H@K38jpTI|m`UGMlX@n3g zVp0eq7Kt`if{23T7GXoycy;e=b~Tb;bvztDzR$^wqd?bn#d_%!EgC-3;@7Y z=WX|x7tC$EM6l^}nn)z<`{X;kM6hbL+Uazhy|vyr6(3^%XzzOh0NfvtB&kp+KsdPr zOfck8lK*AD-~0W32L%ylA4LE_x7!Ve!=X^9TrQu_XZt{}*TZo<5C~+me_2_Uk&pEU z02syTbYd6=!!QiP7=}5WPH<)%-ecqOcs83!lC)SXSeCU9j7Fo$WU|}s^7(wJR6;%$ zU)Ob`Xti33qKKj>ilQV*?RFc|if*Cb?_YIp@-GntK@>$XYFU;Ef-w7LvE6Qs`fxY| z0)eXmUDso=m?<)!&rOksf0p|FzP01<9*f0dMnMpSrfK#848x2f7z`edNBh8LvoS^D z@%T-Vui)^bxLU2uA{vcCC`2L=Q)IbZ!igY`2dh*nnx<)*R;g5q#Ug|PMNu?OtE#H1 zDoxWAMZr0N3vag_X0w@0CP|VcNivm6Wi=WNIEOHY$DJJv z{oZea*ba}ExKjNDUa&8qztVrN-io;mFPPi7aaSA;hrjQ`d8}V*JkO&j%AMNhtZTFZL%x%1Fu)p=3I&DhF?1KOR002ovPDHLkV1kz!EUf?l diff --git a/inherit_graph_16.map b/inherit_graph_16.map index 8eb0dcd3..3de9c461 100644 --- a/inherit_graph_16.map +++ b/inherit_graph_16.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_16.md5 b/inherit_graph_16.md5 index fffed17c..2bfc37b7 100644 --- a/inherit_graph_16.md5 +++ b/inherit_graph_16.md5 @@ -1 +1 @@ -6dfa0651c3cd070f61a646406016af8a \ No newline at end of file +564cd4776df44fada8a3277544d21210 \ No newline at end of file diff --git a/inherit_graph_16.png b/inherit_graph_16.png index 18e1574446253dafb51311109a7dc41e970e8ec1..9fa946e5d06feed50034e88e460f560a139046e0 100644 GIT binary patch literal 1732 zcmV;#20QtQP)el14CIv5&mI>jHnsgl4+2CR8|(%Tw1v{3AS0uN>(`B&j&SFTW1 z$`awsnKOljh2-NuR)Ev#?C9uN^pchk9UUD`r!&$LH$CX?-Mfob&yoYfuqX?C22czw z0L9P(Pz)^q#mq$jEEYPQE~edVHb*`R1Ok~%Ha0dEnQeG@I5Pjmix)8ryL9Q&uXb(* z`2GIc+S>K&*Rxoxf`WqP=4OH*7U8=jF>XOK!DuuJ1cFFQQc{x3+9vtl9KJ)x98^Oq6vZM>gtk6Br8^|$jZvnXfyzTQ>RWHJ$e**eLi1eV&dT7AOHZv zFoVG$l}g!cc4K2B0DvF}rBcb~^HWn(Wipx9>qT#AG@6EnhRDgDkdUBIC^Q<)@bEB( zVcp%`VzD?iHMP3BIur^40H&s<>gwt;GBQ@KTv=UR{o}_E6#4Y&({=0Cy?ps{)?*Q= z#>`iM*=)umn3|d*y)#(>0|Nue$;mOjnVFe4Zrp$noeA@7uS}>2z8w7O7Nv z_Uu^{xqJ6+olb}2_)mu}Y6Z+ufGFPCR2QTyxZ-D5Wao;764$i zS|Nm9ub0VWwzRbPd_D*vj^p8Qm>`Js^z&1%~uV26B^ZC1W?HU*u zz%Y!#U{q987z_rt+uhUCQ(0L_=Hc;p0D!o-zpof0BO}?_*{CfNiOS2%0RU_^J3T!e z?OKrx4i0YEumQD&LLqA8=H`C+@&y3kbUL|QF1pd}*s)_|WQ0sRs}Uff<_u_UZJn-J zI2_jN^;fT6C3m)(ni?cPFc=I30=I76`u6SH;lqb_?%av?@%{Vv8w>`$USCvHv}Vm3 zGF8+ahR5T5{`?uW&1Q2`Qxj@eRaG@MHipAtGSct&t5mAJd-tM8yWNf&Hk%EJ%H#3K z$>;HS`uh4%04esYiJZs_cMCEajV_n#>({T(o;@osFVD!x@Or&b*?N0>S;YhuTV|GCx1x zVzCSj4HXp?9Xoamc_$_&L?Y4Fty>>Fcwo2NJ3BkYV)33md&pjF+qTW&aP;^0=j7xx zG&Dd6>+9<)Dk?sH{5Ui;w0ZO96DLkg@9%#P-Ta&ZvlW13?b@}64jqadWip#wE-x)D zjmnmtoqg`yIS65Ud%Hj&SiXF@SS-GG?;aU&{P^*NgoKHSiJ0Y~b|@55C={z#uV%B^ zm6es_HLNpdx&U+Cxqbseq0s2)s9LSQbLS4#walGA z_{TVt$+U6f#v@0LY}vA9-jlOfEV*1h?`fy=2d{wQ;$pYky+Fx198PO%>jEW@Z#Wz1+S{WPO>eye-WJ#+7w z^Pe+!G8r}ifW<&79J&KwU^KV}e=r)*52FG7@W>s9!_m>v5e|pxisqJ3RaI40RfW2z z>R@SUX=Y|7<{{lKzJ2>p|7v6q@)DLaktyu($WHrsi~)e8-QCbWe>^;_QmO2AyW8z$^D5~=4T8a7 zTwGklsLf^*3WYwO4*=lv`Gi8D-EN0N85tP{gW<=IALL1tO6BC_Bmm(1_wQn{*z5Je z*<3Ccbntq;d_Etxv$C>KO(3{jE?f?Ae0XQXGc#d3J3D)OdmFZY z{rV-5NRYq7;W#T*XK*d*KqL}HjJCG6M(C>5YT?lG@^WQmWl~a-OeR}cSb)a4xjDI9 zesXeBS662+7@{wYVOT`E0RSl}Dbecy9pdx(FbsojKA%qxlEdL3e}W*+%SiqttCdQn=w^N1(lVKhS_gG?b=3W! zzP=tEi|W8)v7kDT%jM)aqnu_GXw$&!^{%X}yn6L2Jv|+r1{@t9AFrsWh?wW;)29;? z699nP+FFan5(os$W^;OaI&y&TcSlD@FI@WV+qWepe#l*cVR-PT#g3UfoIR2O-)T*(d1W}1gZvS{C{xGAqZl0 zbkyN+)YR0_9n0l#^EBXcxl*arWHNC$|H#X(X`813xcZOMVz306f8)bGcq#BmQxytL?RxKNBsbX;c|KO=n=Wgj`4FC0~KaJpdUs9 h`e8JnA4UWE`43$<6PezXg--wg002ovPDHLkV1g4R!Uq5V diff --git a/inherit_graph_17.map b/inherit_graph_17.map index 09b7d183..6fe6ea14 100644 --- a/inherit_graph_17.map +++ b/inherit_graph_17.map @@ -1,4 +1,4 @@ - - + + diff --git a/inherit_graph_17.md5 b/inherit_graph_17.md5 index 7323cb95..859cfec1 100644 --- a/inherit_graph_17.md5 +++ b/inherit_graph_17.md5 @@ -1 +1 @@ -9934f46f59f600eeafd7fe021507ff07 \ No newline at end of file +4993e04d4be08bcb8286708a2596b242 \ No newline at end of file diff --git a/inherit_graph_17.png b/inherit_graph_17.png index 149c9f7fe88dfb5b4bd91a2d72c6ec36c0feb20b..cabde70d464ba1d7ed20b36dc3d3494ea43c360f 100644 GIT binary patch literal 7822 zcmai(1yof*yM_-P0@B?n-AG6uN@M;}hpIy$a9-edcT{+A9VT?h1TV;@ujHVR z$G_isou!Eo2&J?FR8rF`>p0t6A78r}=H!l0|Ezw2t==gn68%h#TpFJX5$`-_OyeyA z!ue#XWbXTy)B$4Xo4DzMr_#9R1tv)fvWRa&%@p+uIwpH@G@%yp@g*kEIY)^($B!lL zYgEbQnr-dxONdA}{2mLGSA{PthpVT5uT=;W^*NKnK_L5hDfvhc2-j(_1Og;z?LS_* zc^V~0C0*#2qE_GJpIbWlR5;G?X)A9X&uX-veDTQmnDH3+w{%ju@kgY)S;Y)nC z+U{9v&^|Z85~KhZZh}s@KM8^4c~VdO4_EO}6CDEsiUt`aae7KhN@r(h3JQw0#B#GT zTL%XRGc&XHwze{)SaP8dlZ84nSea~{&fTOOmA8*iMrNjK>k0x276uj;iwM2R95p`r zdf=nKipsdnbP2o8r@XwpAeOkFMqF=9Fxm$osC+>`nVFew?Ck6u9UsnfA6J%_$?)-K zrl-xU)f%yF_4M?dRz9EB2HxB4jb+btUSD53Iy!=@=2k3)$jeu+o}i-}c6d4Oj-(H# zaxyV7u?iM_d3*Kq=g;f&J(YAG266Gn-cS^>=Z+s@VmdvJmm=%sSU>1Ctn~&fK%^pJ zTQNGa)Yx2lGcQuVsO9J9qhOH}SLfDAN*-s6cve+c501Wnk4_l;d-$@>AE-O?d`3UD<;a%pUmdHGei&=7$_pre!Se$?Q{9En7&}UTCZhg zb@gPevy!^7u+YrdIOv*Z(Y`q*2D3FiHN;Za>(?WPSz(bmwwqoh<8Wcqb+F)}pt#o6!i;ofz3gyxum zfdLK?yz&+3*XA~6BlEaGC%fGC{ z2M0aV)zwwN-#zsb6BA=$U``?@Cx794byOe|9TE}(9!_)Z7y7)Njg79hw%k!$;A2-^ zowJn{Q|wk8rKl9@>({U2QHFNTz#Bh&_|VfMVP>{gZTIIZ;tjsdzNWcGyNi&rV@f?d|P& zneCn@T9HKM<>i90(O);gy`(G33M;6ncse`hxBFR=Q&2=lN0+BeO-;RfLiGNtsjw3% zs@YtXYtk~=$Rxy;+jUp5{wpZ%^>)vvG&3_Z7dxp&vQQ{J0|Pg?@7ea??=|1Jm83y) z)O@f$YG~B(cv6w$d*fL`iORTA-@biArRm>zYdM}{ps(-u`=^16X$T1~Zv%yh$BV!R zeR|x%oik9YR+g3teYr(N^riw(j#MBJbrluwUvPo#w;yQJGnC94MYBX6k5{5Mnvqxf5%~k_$2rjqaAUKT+Vk`C;{G>$^z`P-%?>WDcgHR3VlLbA+S>CY z>AajqU5b=4Vrvh#>yHo1>ko5ZzZRF4qQFkCt~|n2K^;0dogB9H{m0fA=lrhUn2Z5!sz$!-)juoK`jCa+uGa&8>sv4 zY#7v+X_m{6sp52AE8N74nOtu0s0#}^2L|yuIb!}dZbnAymD;tjEEDEdR=!?dZw0f! z#AEk8vrrfc4$o_E7vbfdUS4j`&zHQeP*||{kdTm2P(X{_LPJ9Xs;2$y==iwP^Td!G z77-CKJvFsEmThNgxx2H|1Rhqq){t35^L(!ZY=HZl%dxSs=@KQq&u=%1U!`ge(M{+O zH&|k>nHfv8cABtoBBvP}6Ax^i8cy@!xVyWrt*tFR*CdDSxCmvA&P7#3A%>eAA0P8t zj!fiBzq>+q*I>#VbQHOkHRYa@RItJfNQO;u~AW8o~sevA^&#M<^=}x`}glJ z{LxYQdb}d~HnLuLPff5iTD(BSM}U`Rf{r{|XTHp+q$h2h zda-nNUhihs)YQy4l^h%%mMW$vWM)=U_be^>%vQX{#KfetHItx?FDfcRL`Ht|<_$6m zij}!J_Q@YE!J-DckAfjJxI@FkFozhMSgc$dxGln>fh~u3XG7y6IQL|Bc~`1v|hXG*F+z{r$IZ-{u7zfZj_%N?Jjk*VJ@5n8*Y~4HXTIM2(EX-`_tVAi%`L zWWLsD@BEsG)9~W=@25|m&>7|yyUJTVuAT%CQBpqaPZnNXT@@4*^z`(AcEM{`Sc$k9 z6YQ*GcJQzI=SEp{HEf9v zJi#RX`KPL+`(oU7|O z_>inDa?B1AF0{}GTgB{tQd@YH>>xF2!sxH2+_R=8CX#o(mJQutZGcQWb>9nca42Us z_+8FwpYM*oQdIOi-TWFu_B;vcyC4T{l)AclNN6Z%AaXM$iYh89z;zfK=Y@!Jas2{y z#6kfY1@7~Tm%hMaNJ)hxCTi&D=$MWaQv*Je;cr zM&pgbjK(?|u{JdYX7>KlQ{9JX&aN~ue;+fm!U1Wfkc$hqFjYfC%4`T8UZTZt%Iy4n zT$vIB)bx97EEdvjr|)k;^4OOV;tzl5LMi5Hox@V3nL6imfU`Nx{tcuIs2fe{@GMT0 zajd0F!Cf3x-JSKGb)kIJ3!;_GK6av?_EW5LDfT~I*CkOlTMG9%FT%&Z&dyfJ+ zg5~%PW9)=N-lScOLh;lSA`Uj)`u_R(7O)HZ&xVdMcda1?AtpLN&zzmPA4{RaaI0)=bO^n#sFrhWruvT+);*vv9d^@T_ntxrQ7r=;b~mGpveL z6j=z{ExOlEkxC*D?qb-^-77}Cz5kAJm+UZ0j;I8!Xw)Ol;(IG9zu!`Y*~d9ZImtSei-=p+euow&qZi$S;X4LMwsQPl*!Xv&Z=^o zt@CA4QsG=tI|ru|FvgpV*7ou5F2~Z+{ssmPt@g~2U0dz3m+p-Ur|#dkd%ZraJ1NPe01~; zENbr0^~d?$-Bg!r&T;$&d&1mxS!B|3O)aDKvAvc~uSs2v>4Ci`cD8SfI!R?w7nk*1 zTCvV|TcL8CZmtd4qP`{7$C^a~YHDi2ZEO(Y^s=&NL_|atJK9djc)^xeM~h}0_63rf zbU4%DmWXW{nG zf@|y5+S-+&p@&9^#5$f=jM}7Md3RrsB{qe$SoiTlot<{A)~7|bWU4d_OiXP}K7r?+ z;2&WF99LJ(TP}YmA?CyPCIn+Cxb8%s{03L!#|Nq!eeaiH7%sB1B(3D#9uDKgFA*RJ zkYHKZx1B%QM)${Yfow@HcZkEwczIZC><+yzZHZ-Nd-{==T4GJ=J{>QwySOBnroDa@ zy`B4LUtMKiRcV(xxXnfgEINHMmIh4KMaa;I^Xxp+Mq(6_=R`fRk7Q>zz1Sc+xX4ki z$%q}9BWhP&<5*r{>vPjsTv+&&rr)x`oX6Xt8XF#yt8UVKD!#2TySm!J-kvS~AbtB= zJRNa3umvA%XN;M}k;9}mZcn;Te*6$}SZYLiLWqx#ue!rrTVIyW6>d=YWg+c&Z|{%M zBSE9ndf@gBgQh0=&7QdU!_W3dA+KL8+}zQ{>gmX0aNpfSGLT+9!(VH2f0ccqyM5;Q z6hw!unCBojl_TBV->;BT}{YjrAip_vUZ#LJ6$hg` z7S}HbTq+e}P*hlWaJbG^O?P+h_}65D0 zjxGsi7`GiVM8cqKmFzM?S(A;O{qW!*(%|>W`f~w+pGQai&UcfAa;P*eozD8v#dl>L ze%H7(Gpnnk)GFTlMd@6-1{ggPXpk~%5jnbed9jB-X27MJy8iyTihfGV&rdM#!z_;U zpY1)a9Y*B^mQ_SWLtY3Y>9>M2v8uf5+ zCuj=W|L=xpy*pMH7j3Mph{(wF^!4>YfB5xX5~DBR&jt#}B2UZ~zG7ThLxSEnyYkr! zh)`4K0XGFZ4GRkc`H~eM7@@UxPtKZE^?)Hh0Rgb+Ym1BCON}<5Gj_QBNOGS+Hg8ZO2RM2z+hGV_3Yh+ zjfRDVtCf{F5T7vi#EltE9Uw8`iD(eBUNB}Yor}=J<$TL{Hmj}uof=DWolaUj&MTJW zL`hd``BOayPR_I;I7Y#bnOd+2s?vk|tmw1B8brZ^TB^z{o@mG68F!P=VgQ_7iPbC>Y291o9_%gciB@UgBgNr6mJ zhm0SQtzHlyTj9z#U%o{WkhT92f8_l>%=vg#Dt>Rk0n9!DiqgPq^R)@^WSeB<(jf%h$^{`Voo{N9p2sa?H^xSu(Pi|8aCBe=jWf7=2k>n zG%G27SXs5gX5GN${l)Rf?B$BI9$9{+R`HymqmdJ>m{`yvE zZA7GG;qf0xP)?9gMja#9L{r}P!1wQMu_)T~wV7Nznn|vS(T6B<^Yb^_gySWsD{7r; zs|mEU1Pt0P%DNv3q`pl}jVv#Z!C-6sh+4W33^YX2zE5uDC!?8EghcaoI!jlAii#iZ z?kri@7N(Y#478bWQJ0Y5O$@S8`x>*Aks%I25@uXn7}M)a%CWIp;K!+J@cwse^T7`& zBoFJ?7s_9}ZqYikv$Nca7ZbS*2-;*Tv%PI7Z`_4o~bqF-F#wv@!;qLz=LR07dlLL#WO_4+*ltJv*P zLrDqa7vg@vl>Lg(T< zuXhJNW(m2MMum%B&0XWVAKk~ma1b28$<%Y;)sk~PITY=cE zep_t7x)yE$4{2GN3$& zLjj|t-?WEH0?7RNuU~0A7Vo>e zAAhe0stB()*`TUNU&LS&btiARzQ_01AytGo>dd z7ZDoT2i)PegvrTC;2+W9lQdMgtP2ZkYsbgOIoa5bZY~e~#2z=lMgxHWG^hVblN;8L zBhsRTyh_9~%pa#({~6SD|8Jls_}@UyvE)TL6LI5Yd{!1PHR=bxH>Pz9eSKSi6Jmgo zmx>Zp8*28^<8))n<6L}0^YQY?JWkd`?dGbUiv5vzB~B(_4-gZOI7!sw#Re;|zHY3p zsv0WR63WWTZ{CnbUk7EV^%VH=(_G0*Fu3b!XV>vIBrp zWD*5k$p1oQ>YJOjG9?Pn-nt`}#estu6O;Uq)0uLOla6z&Q0Zh3b`6Dn`icFffg<%E z0HUX`>24k#f`B1t>J3hfT={}Hdb!wuj(`3v$jbWa)&BuxUj94$ZiGUi*sZ+-7@c!z zs?VxwY8-8CGsFYCq)e&#gM~;X_yH}|C{<>74qlUEin8Cgx8IiL2DCXWH*;evyi;BV zNVuS|ke!{KV5qdX7zqVM4hlV5ZJ(c>Zm6iR1t%+@HbLMbIW8|%&Ta!|dG3dEI7Ttr zAkc|;urV@PLLI^_psxjEi3kaEUU=6xHo5_&_dHp1cXONhWo~zQ!7Ksmh| zkK2?Kj5h5jyl2%eu zO6kr4_jrH*xcBwH|9cO-$Y(pxbI#}Ut`nuFqfSl1Mgf69s5LcI^dS%;ckr_pIWhP; z)+*ozzFoG~R#$;s{QbyoEO-ZjusLX|+&6sremx_=kkRC%gZGA_o=-1Y1*^t%<%n1x zrCrQS?rfxz*p@>~y!zrNX-R=y!1%;Gk(bLpl437A&u_wL_PxCNb?2Wr$92Kq{oLvw zr;Ha>$=&pcHT4!azG!;{1tGj&q@|!3E+=gHpLb85_K42ZQ_W1)r`D%L(0u_ng$b7b z3GT6iy+scKv7&-AK_E~PDpClfeYU3tV#W4GD^I`hd5sZ-B|0f-I91dxS-?y!QIQt^ z7W~J1V=~o+IT){RX!v|{THfQzo*w`E6wAQ+4I;RLG^Lxcvi*aTxC zkQS&F3<7~)hW@WVL!rfz#u~iL(Rl0X@wm9S^Ye4{c+P;Gg|0->KH`##FSgYYN+@&l z_vV7UWKV2uJ*3|E^dLM?mX26HqQ$u&7S`RmuOS9eQ|PrG=t78Vu=`{hByjyRR$jj0AO$}Jiv ze*XM9FhIw}6}0l>PDc18rU|xd*OZl%EPNJ|xPl0k&CM5t<6Tu%)gJ{mXdXwLZ7Ag1 zEs4M5#SlC!h3MfwgZ4TZGC1dP5j(r(fYSqN8XE3!eSLjFi_aRDEbH8F+`5IgD%#uI zYxFy0lcTGQLLn_IG9x1+V`F<)hKu>`-rd>VH7PUiTJ#7D4ds;gRSD0K_Zt}=9>(LJ zUYwuh=H@a{Y#*(yIeUA1vqY=18eco2ymtv{M@L78(|-LQiz5M&a@JW>~70%&c@I zy>eG~Hw7i7lY@iL!P@wAqaQ7&+$%aZ4vwjh4vc}q%*@O#6CWL%oqMc`YHB2~diGn2 zPn5@NT+9p%zR%9io^Cd~xw&yMGY?Nr#<*Q3BV$C(&CPk#n+v9Z2hEat7OHfEv)QHt z6bX%gby3k>aq*;%c}+@SzPq=_Y>Ww zK6#CnJ+5_|;pF6$NKT+34#}>sPc_BR{OdWO-GtC4tlpkQV`Jm$>gsksD0?0T`Yd@l zxj0VwmAN^r;oT@hnXZoZ_L9<4>XEn9dDYd77jj}^;V6s}_PRt=84((V!{LsW)6&wI z`Hc1WzQWhG=Q|eK1Rj6-SXJdQba~K?5$tVR8r$b0Fm?ZOd`!&sa5XixBmY2cZAy#b z(b1I5%#G#cjzy0YA&+b_plAo2DR)2U5l~Yv zlcIHe? zOMoS;x?Wo;ulckol6&9Tk`)+@iO{8UyWC=L%rr`Z;>dBR7rEX&ta|>PX!otD? z1Oy&Fd}s^pb}DZ~$74SqOgLS=dX*`uoTU%RNx;}w(Y9{PxhwJI<4;5quYF)Ck zv)lYxOMB-1AsBBhVEVDMzkjno=)77hkNZneaWUxeI`c9Op6+koMBDVXEPdW*WEdD2 z3_FTPDA_ElGVZL0MMrBJ8X6iHFe<^WU!MgN$h3m8qM@QvAx}z4QCC-&m6i3ZH>ahI zKRZ1Hps>pO{y7!t4MP(XRt}E!g@q?JHjGdxEJ-VNQP_+@b$I<}t)%mqVnNb#s)(n0 z+*ViDCUBH(@aWVg$i=>QjZqIJ4}+$!udls5%nKTgzbh!%E+op1p#@y>*mbfFH5~_V zAMOP8j|J z@ZNlDv*6+5?Ck9CFLy?G0`UCUKhW4XSqZBLV;UbH_gBdJb=A@)B3;rga6VS@iOBfx z-}WXZCeNM;AMdNC@oM)zmyFKJveeO`Ii|m{+cMi)I6@x)G`g(bJ z;R1UMsZ_7i&FVHVh>43|O*ak68Ca91=#fZta7+#f2_X;&2?=zZ@!(yJjf_-1)vI(k zltYA>TEt)*{eaArl$GPT?zz6$5qBCnIzDbZKUoE24W<|@Twh!BKV7d4+D)GspwI39 zUZ6WQIoWwjJDK0-WUsK*nJEHrpLOL+z(j(Af_%m$QXUH$mX=vQZ|y}M^j6sq=FFUJ zcuTrX6MjVt30gL>GckP)Ha3vIf>G{qrzO21CL{AH@a*LEYl_!aE8)Gpy-@TU%W2*+ zBNLO+@bK`mGC@b-c6TqYrynAftX9}b_elE@)l^heOrUAe=$)6JfBZ01^MzT#l6!it zQ7HXWQ!~=hQPA8xBd0tl^ube4<|`imCmzeg!!uxFO?TqSguv_VQ5FpGKYjXCQ&ST# z&YL%H^a~ST_6`~DQIlpSl0t2Vi;V8vxkE<7j!~uNS1zaLycg&{-yRFDJ$n8xOa4Gn;5?(P-Q(b49D_xujl+GDS!4$2#_%RGlkOG}H2ejgrA8t;LliJ|z} zQmKs7T@o@HSW@@6KJw9{dQ{uxGpkCZxrN1fdC=Ln?|;W`x?9s7KEBGQ(SIZ2WwwKQo{| z+!2yZ3GMFL-V7SelsoPp8Q~>IiKIIAvekAS-WVK}L_i}E`Ofxw&%LOvpi8q>wa(+^ zpFdwhp%g4El!Sz^8eiMI$8p--1P4g)vlczuP%_#H-AqDNQBg#%?TzrtasE_fcU*GiFnw#L`Pv7P$ z;8foo>Cq_mxFp0uG?`{<6)lIgjZLaF9|Zn2Q{FG|Y}N9ecHnlmGQfn#kEei0vops; z3`|eEIyps4T3OC)9q&piob6rEeYt&GYyl3?F0c_MbE0Zv!)0CRzNm#o@-OVJ+bts? zE&NoIJ6p$u)KS#c=U!eYsDwh<9l@r<^HWP|>exTXD>O>KTf<(YBAz<0kwBJUaP$`* za;#gk%L5%jqrww$HUZTSYPpR;7d$CW@-`C?tIH5&)LQ~!Q|Pg;BCme2>VpT5^UnuJ zApO!-Fa*QZKW*~@YpZRJPO@xlOv=hOQ1tkiyBJ%kPGkf=jS$HR!FUE^;Zen_IUKUa z^tlrp9P(hhPkdDa8gugVbL;D!{LR~}D}hpK@8D%)v$bxggJ3jU^z!K?CGEgx)K{{Z zANC&sm;~%;3=U+Mly90hj0C(`B!bLic0H~OGcu+3vQR`kd-lwu{ylp_YHHVK09T-unBF*@Mzg)Wz1et}sp->`pz=_a2ucC(PaX1ynU)$C8fHp+q6tSX z78cWHZjBKrq^apd2UidxF)}>-^YK!8Qc}{*n>P)l?R|Wt6`Z64dJ?`SnnEy^2~!b) zv=K4Y)uP)tU{89Mch%L@=#;><{tC@`d8FkltE<|&x`(^F^B(ozQiSgLAHfGnvyJme z{*#)d$c`lL@yz%A1^~!wZA>^yCDe^m!5`Vd7RN4~Q{7OwTKeZY9eL+!!Bs{zt4tml zqZ0rIyX=?S^-fMtw}qJqr_DHA(m#$44mW(sWCkqV9z+6%0O0>Sy#%x7UUBE&%ikCF z-T65+m64kIXL&gig?#vMP+O?+Bk(#oBW-OruV2rutAn;xBqSufean!fC9a?_Ju%_C z_xs`Qh?(rOUn;Jyt~xq#=7L-t9F5+a({4ehW;U(1+SXbEkRGAV4eNI3>wgzJOih=) z6ct-=PNUC5g#d>@p@3P1gyQ4kUc7h#B z6blU<|0U00!JJ@+gyCFT8XDx^%fv1JDJ{jrsct6{EeUM>K0|z;l1G}1-g$S&($|6X zGdnpF+Fy=EwhuYZ&$Fc>j(@+&X|mYfLixG4sO$E_Es~ON6Dbq%$1IQPExq@irJ{+O zZW!I!!V>1%4kjl0@^23x)uDTBpGg^m*Z=xZQZmM8+|u(hIB%Q4)@{D<3%|K_B^k8R zN7GWZ-Rb~)oV~MiD0|_cy}UeW^>unkJ|psVqGpZDuFt*^Ex|U{ozbSm{0f>F$!5%} z^ZvR78ja4B^HBGUS2cqhy_E zAyfsELTcrDs$Hjsf(Y}auPGk+p0LKoYOzE|2z4mib}-d7=|m&6_+UVI`rA(5B4}CC8dE>(R=r1i}m-ro&dY(nqkzmwhs2t z|IMrA#ak_-<6C>raaAJAg8RGu_u`|XP`{V}e7H-^&(EWaJFfvQ1jfd5Z#ik1=rd8& z1BrB8!09Ievk?~78QFl7;?~x|sHm)hqT96DpGgq7z(r08sY4v0ApH>TPhgHSMYL2sZ3z6&`7 zqFh{X-kaYZK3wg~;Ja9>HY3MwKZ`9W;KK{X#ZmePupXT>DJI6mKKNLpkkpkZk_s5o z$guPLpw=umml2A-a*3u6{|c`J9&^1BI&$rjEhSVr^#(ipS{z3-;cQbfaI1Bn&m?ef z`;qm~hJ*xrB@$3()Z6W65A5uOT!md+rf9ipSed6d*x2y!p225C(?Rr6FY87XXD(r` zBHasn<;by`yuTz!N?E!V`_s}sJrOZ7cvn>UaCq#Wm35AGcu!wnQEskE>3P(481XJO zA-MzNrbzpg1w$j*3Xkcv6?oij_9;=Fe-il4?*(BZsa17HtMT_XQscrHDv(=?ms-MH zlKaX7aleyHY!~4z#%CkV|{tqu7V}ZD<2VZVoI!> z$~qv%B;&-3f*yc$=9LP!V9GTnCd0>%OBuJ$4rhQZ4cHr0|DAHda5w37$NY_OHa0eE zYio0Jb9Q$2oZQ?j&>T-X`}$sZdv`?Iba!_X&d%!pdaIMQ>i#WgteWS_kHV+llBH#3 zfg^KscORH-l5)hE-c17DT}E2^*6rKLNl6d0*l0>bRjHvAilcfpu2Y|!M$5p}w6wIV zhHt2!F85`WmX-p`$*Y?=S%D&vo&~+|YxmeP@Hnr};?)yaQ&W?q>m-zub7OryV70XN zd@J%EU90Siwco#gw@8AZ%G}hn$hi3D#DqoAnb&7HA0Hn-e@R~6;&`>4-{FS*%dPCz zfa0PeeFFm@xl9%AJ1`g&3eA>s@}O14>V4krlU;DzeD&&8G%H{y5ETK7gmC1O!F+lh z<^wD#0w}p`C)f`sUV1Jj3es~Qd;3>MA|3EGkXiu|U+=xi`6gkkI5*d(A84C{wZVHi z4GpsNgrjYnoRtVxi_YHOvp)q{o!isX)BF4TM|OGocNn6mHlk5uLwVZZW_jhGURp(@ zlK=bqki$lFhPsr2&i6kC8D6nL^!&<7T0+9W@Nfj($wtE_4?`57HVYuWRWCW=Os!`w z2+Q|?I9u3$$!Ai=W6K5tshbzMRpZWKr_=SGyti&ebj(LYL@=|kFnFt7zL7;=A}W5z z3Kraj4z+P#=b=z`aC1A{+at_|(e62Ql^`o~Dk>@(8vLxSi7%!ixsk=gAoEg%G5t!n zuEc!qX4nt;;pnBQ*#*Ln_wV1oef!ov4ht&uhn}VOR<-cfz5F`1Hw_J^rDnB)=5_8% zJy%~>V6ivI$RZ;sS%F??1k~OB1=!1#m6fep)A6+|p&wvKPQRQV%vA^V46GSgMXXc; zNNk*)*OK^50AZgI2sE5>Qh)CB^n2xF{5w14QizvW#Qgql%O8KZahV>>-{1dyC#Cr} z*}Qq9uMs~B$Y6vXe-e|F97Qf^rwB&jtp!t7H#dXk+o?b6mAIGS0YwGIKQd8$$rQO^CVQ?bQMsN%@ z2!m~jzai}$^+7~zb-O}t6HZR({?CS;YI^sYpKuo5+GV^-wZKGo`*~O(CrdQgju+kfuX>*T;1A`? zoQ-6*U-Up`@zr`eS3UkV_5bV0skXaCdI?V$7#QNX?&%12b#{(5cnhgYghklun*Z01 z92meMCNx+qv76{nIv_c1fhZXpgL=VLzkqrG<{5!Nlvp&H2IVu0i7V5SUpl&3aS4QN zU(J;E`bXEIDF1(s+)fD26s)N%{PG*Z9~fxz?Jt#A!4yEJXz1wNmZ4dIW`GrL463cF z8uE#9efbj8HV5rdduV^~mDKhcMOvTjeewWc(*fj)ErwtrqCb@HlLNzAX4%}7lM~8~ zkwJNSilR{qk|$9?R6FeCV!Q92{cltKmDE5u@sIuApaA5p0|R;>C`e1AkY@@O6t#ts zV?n;h#g%n_9=J=T+MLjL{|_B2Yr#GA+k^x~%c%Rmb)=WcrpAw-T;T(;$w7Nq`$ZQ{yd>i1t-x1F>Q}+y{*ERsJ(Ww8{R+soN zvi5LC(r{?$==AmU@Cf01srE9iU>Y!^%7e{@F^})bbm2_bmwMCxun$^Msht*&WkX*d zZga`KtN;KHTK8`=g9rtfW=YK}apR1v0~d@4^=dfjo*u*#{=#ACiftuwwA|8e1tvzT zm5`Yk2;%-QBLLo(L1(yeEq4H1D%`@F3>l^dc+3R9C<&Cp$^m|=pkT!SsBh1DYjAV? zj3s~**kvFJ^I0j6cvETkagSyf75~q{3q+X+5)6XQzvnT~#0+(fyrJ=ANRJP2ATY;P zy(LnB;Y;pP4KLQyTy6y43T{qwrbGUw1V=W(!vFX9=0Chk%mrD|UC$}2vy2LG;seoC L)ln%^vI_k-t!)lv diff --git a/inherit_graph_18.map b/inherit_graph_18.map index 4ad9234c..a41d378b 100644 --- a/inherit_graph_18.map +++ b/inherit_graph_18.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_18.md5 b/inherit_graph_18.md5 index 509a7c53..da409493 100644 --- a/inherit_graph_18.md5 +++ b/inherit_graph_18.md5 @@ -1 +1 @@ -a92c38bccf0475ef95cebbb56709577d \ No newline at end of file +78e1471dd12f57596e4d7059b2b7fe2b \ No newline at end of file diff --git a/inherit_graph_18.png b/inherit_graph_18.png index 1447e42ec56ef6b767bc5b451914b02dcdff5f5a..a761710164d94b303bef3997f05dee63938c96fc 100644 GIT binary patch literal 2395 zcmZWrc{tSH8vin_h{#rreQ6=aXvF-KXpEU6+YlPn2xA-ip%Ai*AvMGhxh7=iH|ln!l1>*obLmtJ#LpQP{8(1FL+s!0Ra0CVo|2J(7d_4NQ}Mh(Ko%_gTXms z(@dX{dbbzx8b0xT^+l?M!Uz*hXIX+qGFjH#M;=STZV@CUchd&yC5m)mC*w{@c3Y|j zyCAy)s7kqi2d{1MUM)=CG3l8vYAIV--C7J4ALn2-lng{!0bw9X67A<{q%y;%F4mn z6&%~`d%-d5{7+hnZNj^luqV5ovJb|_k;PODOW*%@QFj6^#vBfV+J z0L!s7GBOfLaO2c^&}g)Tgamzk{RsT1*kxL4Yn~=yH&8Gz-3Uh3;6e%r2nY#T+gMwW zP(Z3vFuym~A$tBW`PP>&t@8|RuUuK%+E{z`?3u=;tk%0LdRcGqp+n)@yFpKm}0veDs``3ety29l9F|%JCSICMh6~N_wx6@R_|qNWpw~3XlTfM zoYMZaxf#j7Ng`F%)YLf0Xf5KEha~=Vx3AsW+5)0uVuYS&8PvA490g!V89Fmd(fWE%Iwkrt*_4V~M8ln3M!q(Q7;XkJO>Z_weU1$4yU_QyZwx|qD z6qk$7yf`^C^Y;-kJ->*E*1|$wSB^f&4mWzX7N0_)fVoUCGtJPFCM%iT`!q9x93=Bz zr|W%bN+0_8F{Ry2r<2KK0>FFP1Mh>ZB`~c-;uMXh0%aXNdQ=EFb?Q{nup9mK>C@7( zvL~fQh(uz8OSeTk3xSXmaBGoYGqh!_t$XL^{f9$KnRq<@&ODdX*Jp|_zseTd0|9Q_ zy7lP$((+VqCsmgLf}OoFTFhWD(1o;%GqbZ7%*;~JY89qXmOdQrl@U1IuK{H}Ko`1H zJy-mLzr3s=wIAPZ;(KmXgDbi1ZlyU;W?z!TGagW*hDha)PL8#Ntj&-4f-rhgI2&g< zPyYx3DXk0e3ia+A=aS?d|QnZ8a^e6u}E8?X0#o)J$E7 zyL%DGFR|h`LB~;H$$GfE`;>;pi1?ClvPqv5)>2!fk4K%+|8{m z-D|Ce2!wfROlf0n;y2-SVWz^{jN+cUcDJRUKQ~uq` z^tp8%6waYTha&Jya1;HsfJ`PgHX2r+xS%YECOCzKt$$(O$L{|%C#7PjZI!Yb!x=$O zEZz?8*<%p(rxT@{6K+6+)wBV zd&fu=4u`wLIqZyM>(`$-R)Eq3c_S<=Tp9^|;d05!Dsr7)O!@-;ofr&epQvajn=J&m zdwPPnIOKW7CvOdT@O<6+@nNoX$>B=3fN` z$^byp;{{li46JW#jOKSo*_PpeXn`Q~xw9&(tgI|#;WM__?m5|45!z#{1FyItzdG?2 z@&FyQ@cHa}7^d!ncIDFab_~mS)^|!olDDaD@sj)7$OGc@hrDtb5;c$b4gD77c&jxh7p1ywJz%)4}1thVvt1Bs-Tz9|M z*ie23{s*zwy(?R#3Fr{74PW!eTwC0^b9u<`mzIWWIjIgksWIiT9BWaM$k#rz6fK5%b-K!Xd2Ag~e@4q$G>hyQ==Lj`(*$;UxZ>PN%OvgwUhceKj&L z>Uw&5X(GGnu%zT<+LoNA*jaD2_&xt$HEauwm-~I=&0d`Xt0e$yei>D5b|dy*Xo!pn literal 2010 zcmYjS2{_d28viFUXKWMFSPn*0mWV8+QH_1Zz8+=CWbDIOa+4@Zn2{zVAq+zdCUq=h zP0C)AB}~pimSc;#Lp3?b;Ql@LKKI_=_k7>`Jm2$t@Am!P_f2)Q$B04Ypa1}fSz*nc zLHQQk`Vax|e3iiR0mUJ_4aOYU+h4_P^eg}nPPZ~Qag8b97TDNInZSE*)IiA;s21^p zySNs!vf#VLG3PRRgJKY8tIHeZEOsW|uK6o0VtT=i{(#gfO zSVCDto0wtgSy4adlhxmnzT9D|6cA76o~@hq-42Y7-WE~-?jT?Seb{ILa=mac1R?zl zk>r?>0y91AgnmGwu*b$Qr62wL?_otASeAYaLZWx;#M^H2${CE4v+9W9)Tt@&9F_%> zoSW6s+A5VTp|Vr){P{EYq4@t(Wg=$^5dw8TUI>EpMv^mQ@65$mTK4o%8X6kkzkk=&(_?yY?+HsNoBSdtFK?mZ?Mw3S^8&afL->Rxo_CA;l;(pcl)p+ zbt1B@FDOc!mr?jjXbx>sspMv5hCGwc{jod(8w{x1`c&=7zb61FqT^o$4k`k7+!(jN z&;JrUI54og#Z%>|XCSDw%H)XShf+K0K3vtwEiAOFb5XT*a9CPcFmYyH))W&Hb7l4C zpLN%x_atWdiBZziSqs<5fqAxzysb@PApkC#($H`QFpi6BeS1}z8{77}w)Xo1D~IMt zj)wY?1A_?v2}utInQV$It*9Ue;2x#;>E?}b$~<0qYwJaMXd0d@NAwX7m(Z}t+Gwr^ zIWQ9|Elz4q)TLZ3a?r?@q$hRyRJyKgY^Tzio6qIP3SaZb%uF$xa3S`G+8!bX^g8k-T+ez^*S98jjPtoYVXu=U5$x1w&ExU3 zWLO_Qh$7j1KEH_r(~~KfUn30^oICg}6wG|I(O_{`huIG2+xE_Ut+{V>w40_(U2KYI zWOBJo$I|_eC0{kOntTu4GXdJFGF%x|Rk_=Uv~GcPA=PtoKS5rDlp+$fik5Vny;dU( zU*Fo&MWgqAu7~tRxyQxDxx35uSB!CtP$&TC?(VjyM-d1blBt_JyCO$VeOZsii~IeX zMwdh-lN0h(9jKv1q7aKcG&Gc9t`cdeFdvm?t|F_bn9`e=6(r^ZPnp|H5tAP!tTRK# z%IWku)ZUL}mzy`Y%I)$&^3d6YE2oaK<&RJ-dEou{a=PM$VFDAlL#0x|!UKsB=o7lHx@K;vYFHx}Wwjfj!P=8X;wQZF2%qH^d6;0;Ma$=b#y>e@c6t*xip69x_P z9te>t5e2bFz)s*$i0Y2L0)q&YY}^}HPKxIkLz2scwGRBg8*}z?l+0!Wd>brzmD;Fut5X|t8?Q8m*EH>;;(n(JPDp6A>lnVGt%nkR?I+i z+{Wr`C+YOVRdMXBl`8m5h*t(N2@4Cev0**(>c-b>Z>&wfzTL`X8pxzMk!GdbiO9Mw_WU5>>#=mrRnG=cJ%wrg=4PlkE+jt!U{0`#A+SE~PZ{rhE#vYiN zsob!+24+Oz7v7eRXlX-Y#=D^wBj*4~=GAZTy0#uuXlPkMYX{J*ZYt6UU1akxC? z5sw^LLu{W^$^H)g{N5snpjCMIOM7~$$F4i+{{8#5CtUC@rq5(ig%5v944fX1BM9PU qi+5nAYFIM}O<4?)l&GHsdynG>7I7ZKzwyCg4Om&&o4+u - + diff --git a/inherit_graph_19.md5 b/inherit_graph_19.md5 index 58aac6cf..da7653a0 100644 --- a/inherit_graph_19.md5 +++ b/inherit_graph_19.md5 @@ -1 +1 @@ -8a9d6ad9dcac0e1f24d9388b79f919a2 \ No newline at end of file +ad12c61bc74928fe7806a9212cc53d96 \ No newline at end of file diff --git a/inherit_graph_19.png b/inherit_graph_19.png index 90dee24c0697dd0148386a314005e8466620065c..3f4c0ca3f9564da0ce31fb43c6f18d21f4d23fea 100644 GIT binary patch delta 1122 zcmV-o1fBba2;~SNiBL{Q4GJ0x0000DNk~Le0001S0000b2m$~A0Qv)wW|1Kje*_vy zL_t(&f$f=3NHSd%#_xPdn-aAUCsQbdvY?cp$ZfQV7D7!3wJ=(=GLZfeL<={$Yhkl0 zT2zE+L17StL=l+M&Wu)?l!6LL!bn7l_gf4MlViSS_wA*)ztugLbI*Brx*eU7fDi%< zQvUnb0)8RbQ}kd@(StojkBA@mfBpWowY7gG<>z8B7-nZ@x$xaRjm2UI2M6CS>1PuN z1pIzKe@7%t+TY**EYkPO(^QFc_|`u8K1I z`}+X^O-)T~n9t{zmzULQe|1AcgT-QbdwT-_5CpNav(wepC6~)rS6BD;_B0xeL?T&P zSt;4Qrly81#mYE8KW}Mi@%enh;{5KMW{=0CQmHbT3;@9Cbhfv*zr4Iu;{xR2a=D6j zN&)}~27_510Dy2f3?U4M!)yhI!=X?p4i66#iNwjtiAtqn_l21(e|Ec_qNrFb77B%W zdV1#P=h@_ukr9Srwzjqa07j#cVVI4L4FEtoo#rcH7$y>ljE;`>_4RSZhlYk+E>||2 z6&B}r=daCX^W@}YDwQHh^7{Jvk5)hkDT<;f>YYE;c`BsHDXmt!y}ivH+1=eO?`d0G zTQZqs*Iutzr_-^?f0vh+5W-w8SF~n}@CDS?)(#8|+~41G#Y3UcN5wz#G?U4w)oPti zXS3NVF%*{aw90uJ4u>@w4HpVOHy^YPFIiDU->}W^*>1EoxM9EmXo%G^~Zi zOU_f8ruBM#E|-H49vvMimCEPm=Rdk3oTmijO?tQ6Z8Di4{w4J@u?wM%r|7|+qNl|3zT55oejPuTcs$O&ICbMF;i<`F`Yt`c1d5{gA%UNo okb~zbda$SH!JeWAdy1a_0j`4Uyy9#R5dZ)H07*qoM6N<$g5gyi{Qv*} delta 1026 zcmV+d1pWKv2!;qDiBL{Q4GJ0x0000DNk~Le0001W0000b2m$~A0Q2ZE9FZXue*?Qo zL_t(&f$f>iOEOUuhf^e*U7upe6jKl`>JM<)HfYg88;pvAz#)j*Rf|^9qAyDVA;Js_ z(xBQzMGyr-6t$=!l*kfd%A%r;Oc>6*i_3eNX2x{FTOs#ZopU^Q&Y7RrgL6kGiedo< z8T#LDAkV@2q6O=V7OXE?3{oc+e~S$b4W&}4-|8k0u-ol+yB)fp_V3Bb$?EFrkGGUR z93364t*uET24zw(82qVz@(qW>A&cPoix#XeTCl!o`8j=cI^B=e`Uas;h$P9JH<^2V z|G19n7#<#8SXcn3F*&@2@93*q9tJZW7{SckeiOR?n9b(S&d!&Y7fs7qf0k`*Yy@@= z&%E+#{)(a~isISX8PD^5eSMnNzP-H_78d5bC4}=KnN0Tf_Lh~Ena$>ji3!y-u;V~P z5QNduQHr8UOG~@EyAz27%=CJ_H8nLxqp`leJ`@W1{rk!!V1Bi}12OpO0Y}t!g0Lzhh%#S65dT7Z<0er`y}x zvQNQp5bQV*nVFe6I5^nf-;YM4A0HnhBO@?*Yinz7Z}0W>)#-FLH8pK)Z0zjpJU>4- zH#fUnu8f@=9v&Va9}9wzu8Oo7*w5_jtl#ekPg{XNU}gsBkc7J~lY_Q!P9v+}e5QOY%9LLc#P17`t z$6~Q;sz`4TCQuYLI59?iV z>s8azxp1M$WNK?`e|vg*f^k6*G*yw>V1rLiPJST>M5!;r`CzeFZf+9=oxBL3~T5CTANawH9=^Pjs z;5d%sxc>frWkPv*c{m(~F2gWAJw4%YIGIecEKAcgimtM+f09Tf+S}V#R#sYCTD)Gb z!{GqGLTyMlb8hFu`}@1gr;$rBgQYnweW3^h1Mq@)m!{+9u zYPoc7y3S?sY^ngeqoZSfejWy=r>DERx>QR*l=DF+N+wq@7;J5Al}0d{0Oym^1KzxP zzW9S+ebIvTSVarg7cE#{v|xSFg7rm<%KLfQ8+=Um+}+)gBq@!2(zmj*(qJ$sU*co3 w$7ZuhT^)W}Lkgb1Xu - + diff --git a/inherit_graph_2.md5 b/inherit_graph_2.md5 index 4f950ffd..c00a6f8f 100644 --- a/inherit_graph_2.md5 +++ b/inherit_graph_2.md5 @@ -1 +1 @@ -24627451c36c62f79e0d4a157018b61f \ No newline at end of file +bcdab5308ead65ebde09b3a589327ac2 \ No newline at end of file diff --git a/inherit_graph_2.png b/inherit_graph_2.png index 9bbbb8a3da7ee9e2ae3ef0d3151d60a14d886058..a361ec985b318f3efc97aad1d981ecde8c0413fc 100644 GIT binary patch delta 1320 zcmV+@1=sqB2&xJpiBL{Q4GJ0x0000DNk~Le0001I0000b2nGNE0AJDfo{=FGe+1u2 zL_t(&f$f`LNK;`L#-C$KXebOps9ZzM&>JPOt^$c7FOm|vaE;Y&y_p#y_UA&Rt}5-a ztB4@zY$`+rL3oi0JFG3EAzjF3G5@rrF;qmOu&CCw;{ouQK-}ij)_nc?n zIcIQ=M3N8~k&&W*y#j$g!W;u5f6Os3!W;uryg8sK3WkS=|HWGVYeq&!G%?N2nV+A> z=;-LKEJy$>EG+1rZ_Up6O*SV5JCED#Mpsu?)||NK7#LxWff42y7-5cq*%5OjNm7l< z%1YSncC4(dXln1=xdTa(aQE(AO)egfqrbl&wY9YYCU`7?TYdNg&iEW={4K$c}q&gpc*=ksA~Yz*OW7>^!3!iyI#(AU?e+jn(! z6-SRA#ooPpA<(w6wHfZEbB^nzs!% z;c~f{C7crg33e-G>G>Qu3tH*fOf z$&)0>#>Ph8zI|Jjuc@h_!{J~w8qK@cfddDqD2k>o7KzO&W>Hy;_*1*@i=0!7-nZ@aqHGCT)K2gRU^wXE?&F{0Jw1B0$eVaCOl93CF#i4!L%NfPhhzpv```xpD; z#}5MF>gsCF_2pZ)dH#*~d_L7BD<94Iuq!(!7z~0WNFtF)f1tm=AE!>8%H(BPMlzX1 zWo0EKNkU6Y3jkzxPa=_k%jE(|G&MEh>eZ{5nwr9sCr@zW#tp>daZOK?$%Os;_v6#2 zPnw+H@5k}u$B{@R@~+!TUtL{YL7M-Rzw$q)w6qjXrxRbke8KYaGScZZ+-^4>Ja~Xu zES4G9u3gKRe?t;Bn+<_LKsDEyGiQ)WrI1Rcvi3T6?i_}OhBWb~PoE;0Oror;te`qQ z9zJ}CvuDrdt$9Z%V4LXzfQq6p5{WPpiEwUij=jCTtgfzRI-Ta*w{KZoT+HR=Wz})- z-@hjSe)#Z#Bi)9Xx;jf4r*K#>-AL8f8^g743FAJsuAO zfdB^w2PsJsU%q@gwv&*Vntcx?tpwn-va+eLmk; zi~6qke75V^Z)$664F<#5 z*x2put+>GLc9SIOcDu#FOeW)Uxw^Z%o0^(58qLVaNH7?L4Pn{E#f9B&f7fcYjg5^o zP4DgPl}$l0ZEbBmJw40I%RJ9lt`-3xg5x+zq$IFL5QMwCyZQO~fq?;-6$HU(G;VEe znM@`@5MX?8aBymBDjJP`e0-!*DURbT7K@}|G#b_G^&1--i9{lw&mSKj+wJzUDY*RY z?JW|CIGxVU&d#f=t4h==e;4Sp<7^f&I zolYw^bT}NVtE(kz6jE}{EXz(zOjM#)fhwCN2tqQMTv}R!cLV@nwOY5gw*dfNuh(j| z!Z^b)qobooM@QLg_HPaKdVMSwE4iscO0GGPNEi%;O4KS)HM7L1f7R-aj~7#!OonAyv)QatsZ1u*!omW)XmC@KB#Ue1D5T_?3xz^`eSKNA zWsfN_>yvLoxIUFi&CJX=oz7z15EMo6Jn!*%imBGt)|Hi&)6>&zHX8^8 zc%C00AD6V%YPI+GfA=MKR7lB5CX*c<9c9%bBX;g{Gwb#BwKxTeR|!s506;t*hZjx4 z%gakkON*qT!{Jz4TPwM#LQ1ZgW!cHeNoBQVsj2#ae|maiS+>8w9{}L>dWVLFB*hHF z?Ck6S04x>@$8ir24~0S@9*<8?PcsZ7X&8-04F<#J=H|`Ke@#B0KRG!OzYYJEg3I6E z-y@O8+}vErx1mIBCC9At%+hEy!^6XumzMy5zP`T0!$V1NAP}Hw8UPRs25mN*TCG;8 zR7Rt5c6Rpp`B{FR^Ye3?&DP%D-q6rM)3o33FPkbVAqb+mx!G(sFD@=VK0cOJTgfr2 zVAc;oZWjK!T7v*K3ju5v0@y4BuvrLTvk<^$AyDF{Fu&jb^*a6!#2>msp%6)yub%6fG6zxT?yR)0000 - - - - + + + + diff --git a/inherit_graph_20.md5 b/inherit_graph_20.md5 index baccdb90..5e38afe0 100644 --- a/inherit_graph_20.md5 +++ b/inherit_graph_20.md5 @@ -1 +1 @@ -ef590edf2e26fe3da8529463a5c11b67 \ No newline at end of file +780f0b86057a92fa3ed17db998c38ed1 \ No newline at end of file diff --git a/inherit_graph_20.png b/inherit_graph_20.png index 4ff7ff1e59f60a66e97cf336ef9c2f77c129bcee..cf55073d550d7feb83e18ae5bf0c90336a52e5d6 100644 GIT binary patch literal 8806 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 - + diff --git a/inherit_graph_21.md5 b/inherit_graph_21.md5 index a632eab3..366d3a37 100644 --- a/inherit_graph_21.md5 +++ b/inherit_graph_21.md5 @@ -1 +1 @@ -9fcef69ec3dac621831c24e0ffbd1fb5 \ No newline at end of file +052d9abf2542a495d1b6b680591d3ac4 \ No newline at end of file diff --git a/inherit_graph_21.png b/inherit_graph_21.png index f42ba7461448ef7a97a1af75a36be26fa3d9e620..3ddf9f9b58a5ef9e87340bebe72b75bd9b052cb9 100644 GIT binary patch delta 1411 zcmV-}1$_Fs34{wFiBL{Q4GJ0x0000DNk~Le0001W0000b2m$~A0Q2ZE9FZXue+4;7 zL_t(&f$f@0EIVHm$EPx0iFi*j9#vW@(nxHulX%C5q#~h|T_g1fDqf4)un`g#tVkLp zMN$@QEF?ne(M?m2L{&+P773-ILz(~LCX@M9+rOWGr}Ae$t8>r2_neb&=ibv!%D{0P zqM;1G?=IknL+eW|w7%3r>q{*#e|ex%sYXUdzN?g7dwV-E{NwpG8jXvKi#{*u z=diuKtx~DT9{A&;g@pxQ)$`M+s;YAG(DyI3(E3sftuM9E`clhR^kpy@dcEGWhm2mY zXD}Ep;}EdfY>`NGdwctZdOYJUyKngB=U1gtna$>li;L;$>4%4h?Cfl-f7R;U6yf3F z-QC^pW(@`df*{__NamaMMGzz=CI&^({QP{SQkjyHGCDfy-4sz#QA0yR?q=WL->En> z1YXvcd>EY$=G@#Ihr?kqnN3Yi&(F^;w~NK%m6a7>I~PzG?WtgK{a zW-^&fi9~{7SZ;1E1VM3eaUiMHYHe(6L=Yq~F;Oa&Vi-mawY9bN*NWgI6bglt$0ZO1 zX*3!e2?&BtPEK$fKRG!eA`mt(3JMBzI^FK>ZdzJePfrhs19lOpf7R-UhzMX04Gjqd z0;AEW)oQb|vpYLGZ8lp#K)~eWq}gnqnws+W_kVhN8Xg|z^ZEPx`&z9wCnrZLl@b}t z%E}Z9g+`+xmr+tuqSNVic6PX2u1qE)7mVY$P$(=cEId6u)oQhTK7U|ffE>zZvw2oV zAP@)yfh+J>fWRv)SI?-+4UV($W%Gc64;4R4Sb^x+_DWP;j|ia>1{!uP_WB92|h5QmG^s z5W76{QQt4#4^FzcI~n95m&*kPkH@>Zx^fpbH8mC3Mx!w{e>N6;yC^CuIzK-T4GrDg z+}z#WWwBVLrKM`Mn!#Y4pPzF$93pZ>MFkO!$K!oWL6nh^kzq2K$Ws=J#o=%e1#mbV zVu8z0pMjG8_V)G$LD0p;1=*?7>40&3e9U68TyC70m?$qV2R4eL#HV zpP%J&xy52>e`shZE-toOttg6~ot=R#8jWUfaFB=w!!F*gkjp?(lspv^69dEW>FFsL z>h=2g_;?SYK7*I_4GRl{AV@BkKR!N=jg66~IyyS^dc9h$?(OZZtE&Ufo0}Vp#d3Lh zxv{ZPSy^c?7>Jj9H8nL|U0nu);qdUVyu2JlD=I3Qf0>!FSS+`aZUwZI8l2n@s3)zvL6EoWzE2L}iJ{ry6r@V_cTKIWgl ze?Q(2ghwWmg@uKsr>C#3u0o`XZ((79!{HzZ(%RaJVVKkHk(87q6bi4euZfs;yS=Tg zEjBhbe1Nx9FDxaypWI(u=wuouD-rLIyxFf(az3J48xonpl7_(-~Olkl~P~B zYyFMpll&rmLqkKwVzG~t{vv%51euta@Nv>#S)}i`Kq{*ze)i4J&-=cP zpMl9_N=Qf`dtB&SU0v;~dVU}Rfq*<@;Pn50sf50NsfE^;T4;T#h1Qo^{sBbFkyV)o R>)!wX002ovPDHLkV1mA%qm}>w delta 1207 zcmV;o1W5aY3%Lm)iBL{Q4GJ0x0000DNk~Le0001e0000b2m$~A0N_7y=#e25e*|tx zL_t(&f$f^hOFCT`#~mpeDJU~iE3+%PiPAQ;?+<8WB@u)bAtdT1x{!efsX}veb4-R>-^qdUog66N$su{ZBM6eT&-(qO+?}H!+f*^D{Jv%#FC=~Yh_xt_+ueJINAMOJt=feDo`HtgwG#b6Tf4f^)Simr> zwzk&oc9SjY|K;a>kC`v zIyzcfTAG`iE0szEfdI&FZEcA}A_jv|Qc_|t7(nv*`B|-2^Z9%xld08e2?08tj>qHC z>2z2Rf*|pFz)|oM1ZAO6e@LlRayT3ghoe*~L!nT@w*Qr+&i9RtjgylTi^Xzzc{wpL z@m5(^SJ&p|CWvQdX12GtO(xUT)m0=CQLEJ;-`?InG&J=1__({fdvI_7k{XR>Z*R|J zGC7@2kHqaW%4s}PRk#Bww?HfFQg%x1IMY_?b|f8*ohAGZAzIK=Yu za!e*6@3)HS0OxHs8;H-&&dSTn6V~H69u9}o)6+pL5C|?VEF?pLs9gt zZr9h>TrL;H3_GqA}A~@e5-@OU}$V?1aWb3vCHKmvTG)R0@(j9?#)$#5a8F5hbCXnBszh0;0^}aKN&^^W^jMf4&w>-DNssd&fAasxI%Bn3>+9=L6y@{zb8~Yv=y$ErX!7&(nM|fkCVP5%BJwmE4MC8s ztgM=vn!dii`}=!%g6s8qfk2Rvkx^Y;y|%Un@{5a$RaI3eiVB57lgR{<;c$3xaImPT zh{H83c#!lSZSlrKJUb z`_B27KoBHp-xTZv!yD|s;(t>LLitV(sp~tr%W3NRPA-)11D%l<(y54?a_z VZSd3X4e|g0002ovPDHLkV1i}rTG9Xj diff --git a/inherit_graph_22.map b/inherit_graph_22.map index 4269efb9..1e73abad 100644 --- a/inherit_graph_22.map +++ b/inherit_graph_22.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_22.md5 b/inherit_graph_22.md5 index c20f7c22..86740bfe 100644 --- a/inherit_graph_22.md5 +++ b/inherit_graph_22.md5 @@ -1 +1 @@ -4432d09c85865cbd8036d4bb3bcf1793 \ No newline at end of file +a06694846e55175ba4dc3a2489193ed8 \ No newline at end of file diff --git a/inherit_graph_22.png b/inherit_graph_22.png index 54b0a0b5cbcfcd4acb612fc80d020fa95272b009..f12edcfc9c4fd6f65a60bf6d50051bc7737fa17c 100644 GIT binary patch delta 992 zcmV<610Vd<2jvGLiBL{Q4GJ0x0000DNk~Le000160000b2nGNE04*MsD3Ku*f0{`| zK~!jg?V8O?Dp455AES+6Xo6)zL^XZTCMbyd2i&xXR$&l9n;?RMqJ=^QZL39pK#LZE zqqHdcBBE$BK|zb4h0Wl?qQVFv?Zd41E-ubZoiP*d>DE0zIB?GU>T}+C9A3w93`9iW zu)tUJ)fN0taI+c0&1MKUn<2&Ne*sC7Fh4*46}9{*d_G@BEaS`$g+lQA{Y(n_iCkP< z==zs&W+&15WH=uqiXwV?dNgyqXETJG%@A%jL%7)tDTvtyg8_=7h4vf`GEJG7Jq3;qmb?C++U;Zj6tQtLu0?4y)CQ&CN{!Kq8TV$Kyd|WhJau zD~5-M5s$|K{BBVzD=TPeX@SLJ!OYAI0HD3S9RN^KQIY>ar%^DoW3gDq_$-Tyi`d%Q z!ut9;c6WEx1J~0}?%{H|e^P$6ZEtVGXf(p*W0O z^i<7@qDVD0H6Q8|5j{LSkjZ4CqoX4tB67K0b$YBG3Bh%(obSE8qw9& z1;5{qrluyWt*znY zey+{~fdHzis&dv%f3}j<)m5~%wn7jDHRo_RAj>j{2tJJFoM@8*|D4|6{n>MY2DEehYg#80$ z1#Kk=m(ij{8dHlh5y?d)1XH2dd7Jm zD%KfPGF*IyaPb+!#b-$MN5lR7e?8{r=8#UOS>*F0vDs``TU*PrXRZA6^KGm)+y-9w-Ue7 z$osZa3W6XY-~L=7-@nY03qAG*%XuAtD2w=d@{=}UbuBx&R_;gJ^71k)e-;ZG8X7P? zJ&j~C`DxszrzbQuH6f8mWZ5ki3lfP0-rwJ`u&{u(wl9y>cba5x+= z8ja}f?L{aQ(&Q)zLRp_n->&ALoSfj|;sTeKm$W(*Dv!t3>F>|U=I zqoboRnM~N&*gzlS-@Avx=2n6u>_=tgl0ZdIz0r-2j5m9;X zJo>=?{yya}7X(1TBXeA?b2HmlS66C36bg~k>HKsaA|hFqNfbp&rBXyhluD(@;c!qS z5+NcYNs{RL`dW<@kH^Vww`*cQJUpm2x9%i+wr|07#OAj*bo-9UTDx4i68}*VhM86afH{NCc83sinhewIUjgYGPZhR<&JQ zTZ`A%*OK!u1zpRI!C=74%Zu8N$KzRJ?(Xh1?bg=TqT|oZ%)sOE002B54`yd)Ri7w| z2#3R(53Q7)+pqWzf1<1S-QC?-Sy_RiCI4R&@OS z{(d|^KVxfa3w3pM=<4cHeJ+;^6B84VWf{q262V{)BO@b4$8KzFge=QNk1vW6YE)hd zjnDK2gF)))=^=x`Kz6&Gwzs#lYW~vF5;ZqBlgVTvm&-+Oe{XLZf372w-Q8WPs;VNt z->2UEG z!o_C@7oQrG8N$V9NZ$SYgM$M-^Z2oxot@?NWr^R?(t_&hY77kxeQ8pagw1Bl xX%~oo&`(4EB^Uhv`7Gh$GlYxJ5H3DLegXT5zlgnt01yBG002ovPDHLkV1gzW*|`7! diff --git a/inherit_graph_23.map b/inherit_graph_23.map index 104352c1..0d97d2cc 100644 --- a/inherit_graph_23.map +++ b/inherit_graph_23.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_23.md5 b/inherit_graph_23.md5 index 166377be..7e8bed28 100644 --- a/inherit_graph_23.md5 +++ b/inherit_graph_23.md5 @@ -1 +1 @@ -877ea67b6c20c690d23e5db6d644de48 \ No newline at end of file +9c0e10f2760da98ecade6008707fa5b8 \ No newline at end of file diff --git a/inherit_graph_23.png b/inherit_graph_23.png index 6888cd40653134e843947deac691aece1dd8ce05..0b2079cea07a4eeb14ee15817351ca8374e94863 100644 GIT binary patch literal 1702 zcmV;X23h%uP)dq0T?3=PzOX!9Oys?(nJIkswrxs#P}STR15=~iUXmDX~8z3k>WvHX<2u0cuv)FS za^=c&XyGJ~yLa!7=^L{$IGs-1yLT@kf;frC<#I*6zhhR0Uqo^aXXaxzn^9C$6mg8# z3>*eG1Bb!Qz+rGRa2RnhgG3^M!{La>r6S^RI3SToCKM}?NWwk}g#uf*ZpHie@8hg; z<})K!hP1RaoIZVe!tqwC6>hg1ZnqmYn+;2sE{$4I|DTDvwfviyKYu=IYilPQuU4y} z(P#hw8jS{*E?q);dOG_0`k+#&;w5v&GbJm7L?VI3VnJSB9@5g%aN)uQHda?x2ZO%Ml0!002Ip52dB0P^;C*%F04jRTUc(o1WFCCW_E43IOWt z> z64r*;}CB0rx zH8nLvL{w5zLff}*r>?FpvfJ%sFc|3ExpSg(B$iK1=Xephzvd}3!>d=Xh=^!tXo!s) z3sDCo?c28}WCpw4PDDhZP>2>RSU@jcydWZ?f`S6Nc=2MGmeC)jQb|2MJz+X> za&pM+cC+@=r%!3knlvsNHFiS;L7?H`;W1i%&7WScr=g)ClF4M$-rml} znwy(Ruh)ytkyt)4o#RE!3{zG>YPDJbfK2wgEO9s-Si5#@*mA=uyZ>*J3&MsB7Fb;9Y&)Og@uJ-=Qy2CWMpKpT}OU? zK0bf`jMUUryng)}Z{NPf;>C-xYu7HcwY7yk()4;gJ6^eRC0s5SJRT2%!60-x9UEJ= zY#CfGm*^bD$`?&%JeV>wNTp*hotc>lo6Q#1H+qW~3WWdwJv}|5*B?27`}XaF#bSZk zY{sTdn~<5A88t3BIT>YTWw6`rVf|XIHq12r{r!0J<_-LQKYsl9f%^J-csw2)I&=s- zcI<%9=VP%Q9UbiWT}KBLiyQ>RYh)2C1P@Zkdr3JREp{QP`0G&I2D@u07-4^pWVa=Dzvo;Yy= z4u=D6ZEZMn<_wC9iy@QAP*hZe>w_AE+DN@D60%O|FD()__QB`Sze zGel~KLLs_*`7-6?pUj~_o4tr7lZmpkvq`O1Q$-P}K=y1JT*i;Lr+X#B)Wdm<4t!;E<8Bt{?*KyPm^OePcV+_^K|a%MC$ z;&rqbt*xzCzkWT+%F3{9+qQ(}PEAe4(W6HbnsX|d_LV`W)5Y9Iim_$O7I?khI4T-H zYPA~IuV0^*+*84fUl};@gPVcF;AY@3xEVN%s0F0iY)+&OPJ*yntx?CKnt}fk=>La= wCbO^O{FmVW&%pT&Hv@;k&A?%BGjJIH09ocvsjv?HMF0Q*07*qoM6N<$f*_D0RsaA1 delta 1309 zcmV+&1>*Xq4W9}jiBL{Q4GJ0x0000DNk~Le0001p0000b2m$~A02W#{HIX3{e+1M? zL_t(&f$f@0NIF{_#~qUzmuBb`SyK|)qD4kg6hY*&s9jk>P((#Z8n}qw5cDQ+5iQzQ zmJux?YEcW9LJ(;0$X8;Uf+F!z&bf z<2awsFDomvTCFf23QmORh~=d@P+VNRva$jIxV*f~%*^z9z2NO`l%Ae$v)KRu za=HBc{2adP?(Qx-e>)q-5{X2w*E^lgcjJ=stX8X3Dur=wZZ1_enU6G0+UAjzL?`~n z(B@GT_4#}-_W67<8AA{RS+KpmEtAP!Utd)!m0qu>783+pk4AS)}YqM~ATb+x;@yQ8Dy?CdNU3|cIf#>Pfipi-$$PfuT7UN{^M zm;3KzNqJhWwz;{PEbi;;gL_Y3U!O{)iY||~c_bw6DrE$2F#mZND*4EapuCB&W4EUO!Zz9|nn%`p>0znYV%gc7Vy`iBY(OMD! zbB#$#b4tQ-+-NjX_lDoYPZ$F}^`FAey(_Vu2?c!%%28f1}a( z^Ez1GLw%?*nM^z$b8n#k$MASOlgUK&0{J8E9e*M09>Y*rV;Bl+3`1d!VJLqA#3EY2 TX8$&<00000NkvXXu0mjf6=rAA diff --git a/inherit_graph_24.map b/inherit_graph_24.map index 49704a3e..6c18c9be 100644 --- a/inherit_graph_24.map +++ b/inherit_graph_24.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_24.md5 b/inherit_graph_24.md5 index 8d30401d..99d88ee9 100644 --- a/inherit_graph_24.md5 +++ b/inherit_graph_24.md5 @@ -1 +1 @@ -57ff073c312452737b67ddf1c2920573 \ No newline at end of file +dd061fb6416e37491a61f0d696398647 \ No newline at end of file diff --git a/inherit_graph_24.png b/inherit_graph_24.png index 9f46752fb1742ac1a1dd8cac59f2ba9c72e6feec..5673ae6aa2b03a6de68d03960cab5a41eee38655 100644 GIT binary patch delta 1146 zcmV-=1cm$T2mJ^kiBL{Q4GJ0x0000DNk~Le000180000b2m$~A0Iy9gEmDJZEO)_w8#jG!bRVq5iH(MZ)9p+S=NlpP!*IQ50=%Zlj zgye8IbUK~a>lKT|9*+ka)?hGfZEZzbl!!wGK@gwMS5i`Pb#*&r!YW)NCm_KK@h9ee+mGYpPx@jNx8hd43`Mb&d$=((x4ImpsK2BY-}uCMG!=x zP;fXLm&--;SglqvvG6zqN~N;0vN8||kUcn#^LV_Km6ezk$z(E_Oh)aAf4^*OY^c?0 zqtRGeS{i8#lgUg^PmiQ36bhr!2$co~2Kan_S6A2P^U>?|qobn?f5!h6u~;mnQmNPL zKOcl7PG1ZLLuY4aMn;B6Bnpvm9LI6o=kwj(-j0lnw6?ZJ3Q|x|Ks~3ZFqzD?wY8(8 zqxJRma25YZAQ13)JWi)GJQL;=MfBgLE>FK_{KD*rxU4mqPe?L+v27?jb(HsAMDK9VA>2%A>%g4vZ zREhla`~7~kT3u696Df$*YR${bi?T|0cehw9?&#UdRzXp8 zb#?Xp{CsI?DP~G7EiDrh6V%(s@Aqpon#RV)m~$aejsNO>1ORw@dlLu*#7{~{6pO|0@9$74 z%B(1A_(+q<^qDv;7E7zuMp@ZUQvd(} delta 1000 zcmVXO zL_t(&f$f<+Nb67($CDZbsYPrf#z<$ks^FlLU|L!_h)ac{AP71*=pb4Fev0DQLfdATJ=u3kdQ8g1mr~;suW5;y50U(=@%f zxG3lX27`g3D6iLhcXub=BIvcXwQX%})6>&WPfyB(IF7qqF4^azG%7`$e~?Hd+-|qY zWHOmdZnrxgkC)IC_J`|&Wm$*Av9Pc(F)<-10002M=jUfE7Hev1@_N1EWB@=upHHXL zYinznOs2K9HI+&!bDGWO<>h6qCjtqA!f{-8cemYcPbQPeWYXbqFbu+WPzZ zXJ==n%FN7+m{|wm&{@!z^y2GY?Ck7Vt=7}iQ<*Lda=9GO^FE)itE)?^jhmYrilSsu zVQ_SG)ZX5n&1O}jG8!5hIF6Gl9LI^7b@(gwtee~E-v8`*5Ova(VZ z6$g`(lYYNn8C9<6ii(O%CL_)K@$o?rMA0skUX-|BtgNgI4-ZG9QLQ)b@$qqVbaZTN zOe+J=^CU@XMd#+`B9X}P@v&BZ(He`za({m>os&+dbu#Nvq8CF$L!nTpx3_n1Z%=hX zeSN*p=VMt`E5qvQf2!SX*NRqERfWUhk&%(Nw>SMt7=~G2UzaN3aF}5j{kznWI{jOF zCjcNCjan?0P$(qR0RYd>&w)UoqoYF>dVhb9#bV>*<1|fQUti0jvZpUCEe#G1YDEPu zFE2@w3$L! zYHC_qTBfF^9v&W)31v^u=krddQ{M}r2A9iaG#ZUYqtod;J3A}d0#Nfp<(vI0OGzBt zY&P+A1&ZxW^%k9|Y#NT^2L}g5lh|yw{r&x7RTl@H!6C>C2=W4gynrAtAjk^{@&clA zzL5Pj_*c2TKE1VCtx~1Hi^j%Af*_PX4*pd-J3FP9xc-UozXI(S5aa~}c>zIQKz;!q W+1 - + diff --git a/inherit_graph_25.md5 b/inherit_graph_25.md5 index bedabd8f..d7ec8270 100644 --- a/inherit_graph_25.md5 +++ b/inherit_graph_25.md5 @@ -1 +1 @@ -eef6363741eec1182f17bcaefc72a3a4 \ No newline at end of file +11f69995d0cad2317810d40826b473db \ No newline at end of file diff --git a/inherit_graph_25.png b/inherit_graph_25.png index 61988f56ae2468dbc71069127371a85fb010f34c..6dfcb7a14421ffcaf6a1bf8ccd1f29789dd0f2e8 100644 GIT binary patch delta 1002 zcmVht+>UQ!<6 z^ZBCDC^zz(KWS@gD_8a89SVgaBZBTA2*@A^$RG&FAP8~{QYaLmP>3B)Oibu>y6fv} zCdE=xQev@Ko}QlARV+0%HGO@3kB^UHn*1d!*{IPpO%OzFZEZn8L1Sa1f79uFdwY}7 zDfag}Xl7<+Zf@@I@UW?=iHVRTd4GR@cXxMia1aiMhlhvR$xJF1i>7 z7ioQF372ftY&KgU5ZK<{zP-I&U0vPX-5nVjk=Y^O;PH4eB7$HT77PXf0E>%@MMXvD z=jZ$s!^z2sMxzl-0RXzXf4ZDbr&v}jn2nl7qd7Y}V^hb+$JN!<(7qU1kH^D}$lpQh z>+1wT`2GI&_I9y3N~Kb()rw^Y2M7Irzw81e)QXFXmzS5HpP!jwXJ=<55|Jk>(;%CDLPt!dK}SbN0Dy~&3mnIpXMWwuWO8zHQm@yGwY0gp+1A!3 zmK6&^)o7Y_yWOc&e~L|wkB?VYRzmv%|L_jd>-89hwYIhr1kvB$pGYM5b5tso&1Q>4 zBJp@!P-JOo$z(FgD?mamolf`k^juwCv8nFv?vIZTd9nf@tKVXDbaZED$8NW;tgJAR zhldBXT8&{?GMQXhSg5F|(CKvCR4SDU27@k_D;y5*?d`Erf9yhrva&LMkc~^Isnu$$ z)oM1IT`pIBef{O-<@EG)Z*Q;64!PUuyRUf$ilT5F-{0Q{UvCYiQrXh%tWB3N4Z!rkSAPC4H z2*@A^$RG&FKp+UnAP54#q`h8m?(4`~1Pn5p&AG25Z&3jB{~$@w9RvXx1OXWY0T~40 Y59$Y!)#DIfg#Z8m07*qoM6N<$f;Ml~SO5S3 delta 915 zcmV;E18n^72bl*UiBL{Q4GJ0x0000DNk~Le000180000b2m$~A0Iybw7Th3C^&Qx9a^a$qX-H*C~Ai+x{3Y)U39g6 z3>93IE=4E^7DX39wBkqAT1*8i6zhG5KuB}XO=4fMLho#P9d}{eERwvR{sljy5(ne!Zm1lSm}C zwzkv}7N4}ax%pf5{1pO$fF?rE7Z~ab4D|(u`T|3JfhorqhGCTJv$Hcn5LQ=L<+zO1 zYUO!87!2Os-6^-o@y5o+uCA_yg@sHe0}85x8q7%La=B0_)ZX4+TU+aJe>nR4`(v?K z89n~jen}(}y}i9FD=RZIGjaqWgb@1t{7fd3EiEmN1dU$wPTU-11_~`8H zOr=u#`lu8$QiFqo*=%-iZ%>k>i;Ih)p`oRvrE+>xFC2+P@M>`6Is5zjJkK8-9BASS zk|f#fb})qy5=C)jWQ3F@e+3Pt>~^~(Nro+GkY9F7R#6Yk`?9^g?Q*$}kB`BMi^XC( zot~ec_jo*-l)}x;4bStWEGcLx<@5OhfxzM6VLqQXY((M5d|_F3XJ-eGtKm5A{QR8M zOrcPysi`4laW!R*zEm!k6GhSOcH3;Wwzjs}*;zB&2lu7S^CcV(e~*og#p7|(Q~CV- zJTWmbH8n+2NT<_Ir&E6wL#J@5hK7d4#l@48lYBnEyStmoWQK=_O}9l@`&;KrG#ceN zE*gz$;tFqXZ~EuU=;$aZO9~oFX?T5ot*@^qHKOoi&yjo)kH?#un%39X@rqwwUPMvs z?(Wv4-rwJo$>j9(f3zS7*Vothjrc00I4I@ucp{O=`i-lpBy1F{I+dVfo_w@9n7Q}ZkX>03C#bU96 zfdP)=Y&KhKYwP6XWHy^E!x!Lx1~ZSIa^2C+=<>PU$%&CSg$%i - + diff --git a/inherit_graph_26.md5 b/inherit_graph_26.md5 index 53883b5b..1c5c6b8c 100644 --- a/inherit_graph_26.md5 +++ b/inherit_graph_26.md5 @@ -1 +1 @@ -e08467138944e1fc15704ad9d90d125d \ No newline at end of file +876429b494d9aa2827ca081f519cdeb9 \ No newline at end of file diff --git a/inherit_graph_26.png b/inherit_graph_26.png index 959eef664a46cd0f7856a59538d673b0eba9c565..eaa6e1da9f0939f215929e96c2ad842b54462006 100644 GIT binary patch delta 1254 zcmVsehB~*(R z6%k#aD9xy75rLZ)YIGqf2qOi_?1n*_+CpsJgGVK5lR$H(!K@`LH>>MAQM3tql?(rq@IMx*(5 zNk1HoMq{(t;E_MbH?6I$eV3kJ0SJO25n@lr0m5_~AWX*r!gL(?i0L2*S}YcfAP9mI zi3FatSS-PL0-}N4@&5k4rKKf1JDWnGaJk&|^>ujG>-F~b_HsC!q@*Mse~&jjJnZ-T zk-ZoUMr&)U!{PXVW&i-JR%>HpV|sczl}fFyuGZ;v*qSl;swZ8oR;yI1a9M-FaQ7CB zQcq7$MMXt%adE4ws|N=MO-)TQnQUigCy;f!-CQpB@bFNnR30B6_x1HHFE0xOg4fqq zcrUx%K0iP2a=D6&i=9qqf3%vPpP#F$sz4CbXf*r#`+PpXwzl@<P)m7j%ole(kwINF;CnqZ_D^Yu`tgLXk+-Nm37z~|G2e0FB zIE+SPB>Iu2f7SL96BDzru%Ojy7Z(?iSr3A6bzCmj&CLyq#exUPWO8O^CIA3Vr}Osq zmc!wMtm1GuCX)%Ze_(EIE^;7YYkq!ywpy)ud3kX0@$vCYCNrFDY*4-DFnrvn26AP8=6ZwIn2 zmy5+>RaI5(?(SY*UT$n`2xA>Vr#bB?P+OgQmIs@ z)0s@BiHV8Q($d)2*mu2xKJoN|{Nylh0D_>px;nV&f7qWr5}VB?l}a-*GAI;EX=&-^ z<|aJr@p!tsy9)~o$z*atLBY__(96pUvR77CmP{slczA%{NQ9ap2)e$$mPjOYIz1~Z ztG&J5>2$K$?03C_KFf51s6d)d{PuzaUwCAUmT1p~|6l$g(|?}1;UKmb93V``0m5_~ zAWX*rJd{DIR;#~X$FBm#^pJn82tFO~_Z-yz9f&<02ME(~fG`~g2-9)kFFB?%@?2{d Q+yDRo07*qoM6N<$g6^qIE&u=k delta 1046 zcmV+x1nK+e37QBYiBL{Q4GJ0x0000DNk~Le0001Z0000b2m$~A00tJitdSuUe*@1+ zL_t(&f$f@2NGeenhG%M+2$RAYNGF0?wX7f^T3KUg?!;XMfr~aSS_F}cawD`8irPhi zZ8X~jF4_bVK`#2CFl#1K#IaC|ihc-k?&5-+oS*cP=XSm4+0FM3=X-tUc+PPU7ex_6 zRG+%PZQy?a1q}%lG$c^akRZT|e?%hTcDp}5KK_=QnxVeFeqmvuqobo(`81=W(P$tL zfNiQ42?PSsXcVjv(wjCnH(~jyS#TULsh~9)5-4a$pr9dvf`$YN8WMjJv~)`ai#U#3 zt=5uvRiIjedarmq?r=CLifU+RFdB_pTU$lx?Ci{DvuU+jtyXKZ*-lSSf5CP*j@Q-I zH8(f+_V&)s&StaOO08lTc5`#%a=AJ?J4uq%>2xC_BjIpZ-LMi>nbA6(Ze?XfNfke% zG7iUaCX;DkVBqNJ=<)G!d3m{b%;$N2XlTf6Hgg=uaoq6mFw3$$&x2hGg@PamYinz- zudh8lJ&8o3BCF|iy1&1_f3dMK91cG`Ja8Q6a=Dh4mdZ)si;o=)2Bkqrk-eu_#4zms z{=TcL>-_v&R{e7PBBP_DUawbH8XFt)csyWbetv#@d|au^+}xa0Rk!MNI^Aw}`EEfl z3=0N>pDN(RcLgnq;_mKlUtiz*`@5`KCatZlS65d`63_Esh39#_e_pTDC7Dc0RduTd zgW=-hqI|a?(x9ug8JbL{!NEa~$0L=>U!(K+Ji{=uQZAQkYik2548!DdIi;Zt217od zugGdPn{97zm)ce_tU?t}9bT_@XJ=<`Z?B{-efUaH6eS3Pl9W!T!HOUVG)*fFmC0mO zR9UMuO{Y?+65A?nf7PjC&?HIv{r<_x$)~5MKO2E%+25;~thBMQ0apBeKg+U8L#?i^ zn$6~ltXeFV_4W12T`K@iu5VnUi!3fKPE1TFsp?!_Uh4IFpU;;{rQY7&4h{|+4##gP z9*@&B?eqCEnM@{=@%el-O&6EcVwdOV=flIpsi`T3VXm*Qe=D+@NF*4BnVz1G#bPfn zFL!r$+uPe^`p3R&Gn76pCHI9w!D6vs%3nS8Ua?rrZnw9zw2&leG#W#pP*FNLIk8%; z8jVJy(O4{&ff)#Xo#x&rD)%{o&+C1YKj9%7T^-NT8r0fr5qv3K|kJn_(yv zg72gD0T0!YNQ5AM#5v?&haiYZBm!oO{|`s2p8#5;A%TL11PU4wC}>Fh0zk^qc;imN Q_y7O^07*qoM6N<$f@VqUJ^%m! diff --git a/inherit_graph_27.map b/inherit_graph_27.map index 4392f2f2..f75496f7 100644 --- a/inherit_graph_27.map +++ b/inherit_graph_27.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_27.md5 b/inherit_graph_27.md5 index 706dd303..1110dd41 100644 --- a/inherit_graph_27.md5 +++ b/inherit_graph_27.md5 @@ -1 +1 @@ -bcd0f59f08ac86a597efcc4e350e7f3c \ No newline at end of file +dc4acb24ba9a1179dee83f6f86946736 \ No newline at end of file diff --git a/inherit_graph_27.png b/inherit_graph_27.png index b7d1f2801d8dd9c118302e496281e002c9f4f46c..4748849bc81be474d9a838179a73fdbfe4ff567d 100644 GIT binary patch delta 1445 zcmV;W1zP&Z38o7niBL{Q4GJ0x0000DNk~Le0001y0000b2m$~A0L|f?7m*qRCwm~7BaJK^ zIrhW{MLifrAlrkjkrLtqMN%m@5@AD#f|EIxV6f$Cw=LH4`+IP3zjHg!ZTidK!T0s( z`~C2_&!2nW?tAyW5eOl`NDA3Oe;0r$8LXM~z?w-9teNzX^Cy14e{^*8pi05)gkG<| zbLS2>-S#_+Mx#ET@2{7H5hD-?`2BvqMPBIi`t|F-RS#x&OeRyF1+Qn)18XKdux8Q& zYbHI)(TpI7`uh4j2=SOZ9a~<7{AlTP+G@3)e>rpJ(4j** zoz8Bz|M~NW^DJb)%J`2c^LMtkwiXJ7xM?DhSXfvP@h3_0-o1OpL=K0;6h)O+l^_hm zoI7`JX=%yfa4at`4-5>r-EM=yu(h?tI{5wmjqMa4eBY}rhB7rX7!3SZg12wqUbt{U z#Q(^VBX+yJn8;gOTd`QIf4r&$86F;{C~9_g_VVS+b#--ZZEYVvevCvSuU@@k9Vm*b z-cIqs_r2O;C{r_&$>jBVxv9_RGa8NDbbNgL^y$+T6&1&h9eeupDQv$t5(M$)&6}2% z7Lp`wHd|ig*49=4&}cO5G?&ZWzkmPe(W8eCAGTO5*=&}LFg7;Uf7H}OQPjxDh}-S1 zt*uq5R1Y3JC@j_Gat#d)$z=a_T2WEa-{0?YxkMTi%v;zOzgm8e+?XA_d-v}6@#7yp zd=Lyq$!C(*}^y9}5rBWG>#{qz*>7PG;Din&_w{Nenue;rD z0Qmm>J5AGEWB|B%fAeM{k$Caq1pvh3an?xFG(w2)i4d~e?M9<98jY^3thBVW+`W63 zb#8BOPbQNuU%mu@>({R*lS!x3Sr{#mNB}@A7Rzg4adAA7?%jE>~?%J2& zm>pcXa>e8EFbpHujyOi6(P%VoJOAZrM$@##Vi_D9L#@88_X-AS|h`udHH4R$;;Gt=DM%sMYDEN~I{H!MwZnC8F8N%8E!k;uLBouy<7?CX>l*Ha~v+IPb=&P$(jih{a-I7^bnY zQSex;Rto@ffBEj&qtU2Zt>&gANft&BiAItndq22%@gm!{P9! zPoJ(`yY}SClTt$s4Gn$!_RU~0OixeKG(9mfq0{La8yn4Lv&d0}c}4nSt5vB~05CQ- zmP{shf2wou?EsYf48mS4^Yiln@cjAnJiFa)CrR?ei4#tzv#YDCy1F`VJ>#x5C|H4V zxtw0FS1OgP!>?bzdV71-YIRjr)va5%7>3y?f?zb3R4Uci*Vok4R9RVh>eQ)`k&#R$ zQ+PNZ!MufiQWh|IR8MDLKFqd3|jjh24lH4f8YK5*_ZvE*Xj8@e*FB|dyjL^1``AU z0R%zCPZt0v89+%$dwZKcBW5~M4uwLYP$(P@M>rg&f4kB7mx;;` z&vjWcqm>3@)XExKB-~qOixc!ZaqCcD2iejwy?0EP$-;EXCjdx&Cbrwf@lp54JeAz zBcmv)R;#~F%8|EdgWM(rLA|}bcXxN(S-2^gmIOg8FE2ZtPJ$rpcKgc83bS;QmzNi< zR?BQAlgW_d*Vk8>e@w=7pa(G;jnQb79A~pxymZZK=tsGtqJldPTeSN6`afEiY zOifKmBog{ZLqkKOqoXK_etdj9K0fkz@KW%HP^Z(SQYorv-cNE61X*8Sr_Zddtsw}) z=FgUwt-*q_rBZ1wmm|m7Y?iITQgz3FU2@E;)#{y{oqRr@NF-b?7gTK7G3V>*>LQT{ z<*>N8XtUWOf04-h`}@_^)!^VDcO15`(P&hqQu+P0ca^4 zfR@4mXek`Nd8e}AtxLe)$?ffJV`C$I=8KjZjYcdMGhe&}{GD`kbkI#0?D7Z(aJ>`` kKuh5O9JCY;Kuh898! - - + + diff --git a/inherit_graph_28.md5 b/inherit_graph_28.md5 index 44305291..d5d79aae 100644 --- a/inherit_graph_28.md5 +++ b/inherit_graph_28.md5 @@ -1 +1 @@ -960896af1b7f0c81de87f46cd275cd33 \ No newline at end of file +c5418760a5e0ce73c2d4856831789ba1 \ No newline at end of file diff --git a/inherit_graph_28.png b/inherit_graph_28.png index 88ce146d4f35141af6ecef9443e9498a234f0cb0..e1093d7fdb93cfb59ea84581772904b2a72987b7 100644 GIT binary patch literal 3560 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 KD7}6^>i+;v!0^-n literal 3113 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 - + diff --git a/inherit_graph_29.md5 b/inherit_graph_29.md5 index d35c033e..7f97261a 100644 --- a/inherit_graph_29.md5 +++ b/inherit_graph_29.md5 @@ -1 +1 @@ -9d1d3dd2508a0988eee00e0bb2b34cf9 \ No newline at end of file +b112af6df1dfb7c508524bffd8dcd294 \ No newline at end of file diff --git a/inherit_graph_29.png b/inherit_graph_29.png index 9d2d33729744a3b9bebc7b80895ab6b26f271c6a..4f4804cf2f1e46c25e6bd84af57e43089fa100da 100644 GIT binary patch literal 1941 zcmV;G2Wt3V$p=yO_V}%8_G)6@WDy;?u z5<(P8&1U;rf)8LY7-eN;Xz?%O&D`9aTCHAnNgqM2 zR?p4N`C7#X1OkClsr0pqRi&@5ueZ0?F@pPhB`TG=T6&g*OeXWS1ZPT1OF0~luT`ub ze;;D8^$i9Lm~Sv(z}X7iadXPhdKNTjP*uexhKIyxE}8VZ-%B?iNMN5?>J?!U&y;C~D6 zGB!5$;>8QJsL^PiKYzZW88sSBQc_Y-P*7W2TYrClPEO9*vu7m|30lGa)ZV;#^Z4;& ztyY_yoIE=_3zy5qK71*JhK7cPg#iGtDrGE1fZ>FgZ*;fLSn=gk1vDl4ta@760YnM^*PPovT7MUhC9mX`MH*|U|)SXo(_ zmX_Ak)MPIvBqU5tP2IY6>+s>j_6YjaA|oTy)6>(_(;FHZDl01?a(Q8WS@$;l)V>Bfy40D%4b_X7YTA|l{2TCKMJ{#RdrEu_&Z z3JM-dBt!G_3jlmt2SV6vHjl?civoclJ3AXK3WdVmyLaR9_$^zu+`W4j03Z^HqNAfV z8VvxTwY4=qKK}jt_a0^B^Z6wuC61Bn*RMZ%^vGTPqN1XwPoH{}0tM1H27|$1FzEIA zSFc_b7Z=m%bTXN2zjX8F&APg}J$v>z)^BfbmrAAe_4O4M71PtxeSLiZfXT^8PxB5B zPgPfoX|(HES$Cg2`SEZHc%)O zcTKi!+XlVZf}E$&;WscaFf}!`t*s5cR99EGbLUPcL0m4ENF?Ux=NA?h&dkhsnr?LT z&nHiQ<@0~}&rGWquH+q-t{I(YElg$ozBme-1^Eh2k&&zAqWaHx>mTz{`xZ{g2+%BrTMPT4kr&l(cU07IH zU0v-oNd*K1jE|3Bym(Qs*E@dIArgt_&Yi2Os_O3U_EZ&_Opb_%kjv!^1_KQa3=D9& zT$xPfa_Cy*A$}A{-z?UnD|7hyK~9LNsoP3Q_P%^+l1SuZV}Aw);!LK+hM8}_%?b-6 z!sS{bSy|sLv1V#&s$Q?}>FMe2?tbv#0U9@%OvjHO=ka(M85#5Q^A8_Bw8xc7<-L3N zm`rAQd3kelv!}vXELMGey+9y9BP}g03kwVG=DYj%?`LFWc$&qI_kFW;^m;vkK=^32 z@NmLcUnPF?&57aRDY5vs*4CdVCNu#7IG6L(mtQ8t#cf^zu^+Hnm-=zu&(H6~i4*6~ zpQqF5j_(}|27}RP#Nlv8qp_;03IL$f>1;MzK|#T#OP7j^i>Xv0 zCNVKF3czOAu{{D*ZzrU21cYs7%4*f@v zn$xFGQ>oOrxVW60oI{5WH8wV?)#@u(u8>Hi#>U2?q9Xg=${h>_BisQ1KuAc);NYOy zZ02w{DJdypu~;Y+9zA;0sYz5+RBmoAfj}4>9E3jAgg7paR4SERE>BNShwE#FkjZ3; ziHVyxJC7m@3zi>$92N=(C6XbN$&4VtVzK@7)3uczZx94&Z*Tt$&r$ICd^FtYP1vtY06gMtElEytU<+gJPi zUvK{e-=GkQ9=s@96ZqU8?!eAbV8DR+1_K7nHyAKrzQKUO#kyFfQmwv@wT084iT?2@ zmCESoXvc_)_kOFc>f^Y4@8>H%&-1U@+1ZZo{g6*~r-$(=gRO5cV8DEX0R!e63>Yxq bV8HM{=i$5mZa>zv00000NkvXXu0mjf`|z~B literal 1931 zcmV;62Xy#}P)mR;0 zMKl&-VzNeFvILZxMZ-0ipkWxiCj29fgcxj(V{1Z|vH1cRKo(tB#g}TX7lBkLb`EZ^ z%G-1Q@V29rg6%2P+UJv;ggnpro#)r)*VE_pIUI%%LO@Z$hvoS@1B&t&TKrVdqQy@I zEn56k(BjW+c=P5Bo;`bpkL5ZzHZ~S9F){v5!z(Pyf@N8MrxEa^QYmU`YFye~&irFz zW3X5(%aYVm3-s5*vMjp0yZxO;KpPksz`1kh=IwJi^V=mSCofq-%jLm?2mVfhv$V7{ z=yW=NrxCDpIvw`y+c$3?o%2&cixxi>v}o~DL5mhY6}0?T{0zhRYiNoB;G^Pa7{;;1 z#l@kZpa52@b-@@<))AKLgEBt;7R}9fQC`l%W}8@+F@23;7$heryS%@I5F{lfEz5hk z*cgu=KZaZ`hgd9zKp?=DEn9H)>Q$$BhGD?t@gNe3kdl%DwOWmlkrAKf>9aFGAq0dF z+`W4jHk%D4B_+N(^pcvKoW?J|^y2HU8}Rw(Cs0&$8I6ry7#w`%@6@~&85xO|mKLWr zyW^tY!^pCU6e6Y1&cFc=IN8ymxg3m0(Z$`z;m2qBo6nSt4ChDM`-&1S>q z&70BJ*XO%r$Q;AN!{p}8n{%5NH1{yW!^1=@7CZIV)YK5ER7x0zaftyy>gwvqnl)=k zcz8HTO-&{D@85Uy&E7oG+uKWedwX5lr>AE~PtU)}x8F9C4I7S=goJO%r=OOR`1o%e z+mk0l9*wmW6bc1VC=?#W03bS@j%?k!)u}x-HI=X|>+~L)OeP|i%gM@>D~V7jBzyMk zAtNIrgb+ehDizUaG)~8;udgR6mFm56aOc2*1EjLD(yRCrCr*%q2M;bf{%l&U*4^=R z%Qok4Z*NCWPY-5hX6Eg0ZEZzcTN_@!e2MMbw?m~;0r-1*ME?KH!iC8+gzvul8DD<+ zPwd|PFEloGVRY06LV&5MX->!fkjUk7SS%KFb#(y%+S=M+wOX-v?_Q_<6bc0j3kxwg zIEeoKeym!x3dfHh2LRO8*5cBoOO6FLtyYVMh6bEJf1Xor*RNm4{{8#CiamVzFs@y@ z#%cW7+^+C?%WO8Iw6qjCIXO=4wY9ZKNJwxSS65euxVSg~Kv`KCs;a7dlF!i4f6>-< z9gU4$=1Y02LJ#XliQ0y?ghd*Xv#OxpU_Z%FD}PFc|Ra)w^q)kdP2ZzeFN|QmMqL zQ>Rc}T@8su;@u0GMJyJ>Y&K)vx^*7MzIgEh(b3VIbFlMS@h>(d;qohkx3OtytC64o z1v)yOqp#13urNL*Cf@ICUs16e@$n+B#`TrjTGu-f-5zK;W`Z zUS1wfo;(SbWg!xYFgiL4u~_WrHyVx5Xf$YUZbor&F?Q|Rh4t&#dz}*iWM^kXtJOND zSDv_d@glZu+s0}9*?d0jSqjn7(RlRe5jJkz=uwy9n8^K1$3%_&9_@A)=z9@cj9696NT*sZXg? z;_~IokjZ4=^ZCfl%|&NtCn6#uyw0hjq5?9R4B_G7P$(3LiHU*HXvEpGXPtiTw0r&f zHB2TG8X6kFvMf3~JG~xzu7FtKRjbuVPfzFc?eW=XaVRbQ2Y&nQB!2v{82S0>_~esF z005sKvPksDslL7*YPA|GR;)l)Ru(ccG8}zJjvPU8aWP~v8316%jvY`cl_)GMe6M5A zUi-0c0FaoNh#NO<;MT2M*tBUAghC;Tii(hzm**1C(>+W~Oo3q-Oi$0C zy1}RPdt3PX#Sn{8Z4Q#ZLvT{{f$#uBCE$ RLlyu4002ovPDHLkV1ibEu4MoK diff --git a/inherit_graph_3.map b/inherit_graph_3.map index 58bbc248..1adb4990 100644 --- a/inherit_graph_3.map +++ b/inherit_graph_3.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_3.md5 b/inherit_graph_3.md5 index 412a1d56..48d9aedf 100644 --- a/inherit_graph_3.md5 +++ b/inherit_graph_3.md5 @@ -1 +1 @@ -3040d4af94f0cf70f4b2922506297649 \ No newline at end of file +c56f1be7ddbacc7b1a86f8330279a489 \ No newline at end of file diff --git a/inherit_graph_3.png b/inherit_graph_3.png index c6f059ee23350355e46217f76c1c95f492fafce6..2f00ce53f940883d54e229816b43cc300f28d759 100644 GIT binary patch delta 1287 zcmV+i1^D`$35p6KiBL{Q4GJ0x0000DNk~Le0001J0000b2m$~A03oXLYj_;3S=Ii%6udC1V-g7>mXYZc#?3|hxgb=WN zoPWN%fS(F$979;+7{VII5N~RLf1>E{@bGt)@|V-z-kzPEO@_a99EM>tGcz79=?5?~ zGlO9mRq=LBnx3BaR6RciFE1}Ag`IH>VU1%5YaByZ;~2ukI4=r8K|!^(wRd-SpDDs( zv2=HL$Hm2Qxm=-8*x%oe<2V4oXf(P`Wm?hmFzh%KMa^dO)z#JV^0LWfe`;-QeJj&s zGKGYM{CPK-Ot!PLGdnwbetteSHa0&$FPF>TO6Ku+Jv}|l%62D^f<~ipQfL7H7z_q7 z+}zyc^Z9Qj8w`ej-ILGfYqeT3+}PNNj*fokwVnY0pwVckiW_DehrBBKyS=?7Z&hNkxVV^*$E*;QB*7zbGh8o($bNUk&BB9BAL9ltE-D}jVcn0;^JbxUa!?^6A}`X zN+qpGdoGb#Qc|MPXr7*)KH6~%jiV9}5MVSKA%u3jT_6ywuC77|%gV}zhK5{?6AFc9 zvzb`0tgMK|Vq)!Ze>iq`cLxUtQ&UrYe0Rs zUta?NDl04J=H{lRrgC$0BO@bS^CKc6NYn4{@3*(N9S%ozb@kEF5t&m|RP_4#N`?yy z3!|f>YPEWOecg3Ky+q+uGV9 zBO@IS2ZYdWf47H)g@uQQkB^U28|3lvkqCQxd&|qqPft&ekB@V5a+;f)A%qf%Br!2@ zX=zEX*U!$*W@ct~bacSqyH%-FibNtD$DKN^u&~fzFzoE?2!+DFzCK!!_S_HsWCOR) zI1Yy+7K>37B|mLyYT|Oa4-XGSXtUX}v$OsE{fQ9AfAO}qw(#(9KA$g*eL8N~M~doOI*1e<$vI$=7PN85tS%_4WDr`EK0y zEdl}pT^bu3-y?nr)b?}Bt@@t?e8nr*{}a|YhOovlgf)&KG>;=wQ&XO=;A^U!_u|QmIn8DI=s(sZ=V(yPxXO;c)Ei>=fNn z`Eh!BYPDL4N@eDt-QC?{`6*W>CnwVs>U<;zDo1jlawLcH$dN{)mD<7=lt+$P`K!YH zNshGtpwsCM4GnU+JQxh-AOD?cqtU2JrRwPDsIIPNu~_5d<953}&-lOUe+|nI>k&c- zAxtKdPN$Q@;mGCk!mY?;vT!)OzrP=eM0`Hq)YOz-uP=PsA^{0lES5ASD`{gQkqDE? zgb?=k_it}+GgUZkB1=0%*@Q|>no-+naoHel7GeX^K%Y|V>B9x zA^>1{dAYv6p2cD*6pDB}f1Y2@WdH!MwzkIQa%nVL{sgdx8KP3q`G}%uC=@an3_U$P z006aGt<&jH6veLUbULL{nYLj7fYE3?IyyQ$JiNZXP9zdqtrpV<2M1?oXHQN}VzF4( z<@WaWBofKS#)eX{54k_vYp%gz)n6lFQ}3y}iMV`V|U=7Z(>;I}{2vH#cMLXf&$PXu7((7z_rV z&tF(rz{?W=u)e|Ep^z@|B zXnK2laRqy0WHy^|rLL~d>-FMYqtQ4#JnZ#)n z+}xZ*A|bALe}69!2$q(X(rf?##A0zU7z_r3VzF4O)#lf887M)HI4l-xY;5f6>I%PV zwOZTT+Y^Zdf3B>quGZGp0>b^;WHJeb!m6q&kw|2-*)ZL1w@*w=APB->Fj`t#6beN+ z98TNe!^1;oXQxi5gP(K6?#l>*%+JrizrW|#a~UXhj`+2(SX{GwH q@{d8CkK{n*NDfqvSW00006 diff --git a/inherit_graph_30.map b/inherit_graph_30.map index d7b57793..6fc74b6f 100644 --- a/inherit_graph_30.map +++ b/inherit_graph_30.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_30.md5 b/inherit_graph_30.md5 index d7e3da32..f230272c 100644 --- a/inherit_graph_30.md5 +++ b/inherit_graph_30.md5 @@ -1 +1 @@ -cc85de701ca8dc6b75d8fb39155b29e5 \ No newline at end of file +638e562f26b99bb20496fa13a2064017 \ No newline at end of file diff --git a/inherit_graph_30.png b/inherit_graph_30.png index adb885d6cee7cd0764759182fddfa92a6bb18aa9..91d04aa42defb97793c651ed85065e15e0d64169 100644 GIT binary patch literal 1687 zcmV;I259+-P)!VUa|l!s<`AeN%pp+aKk*$dmkSLI z4O6ie!4z`s+BI39?8))v%NJa~etl9FB$#@>e*LPt-?Ar11SKa4{(U$c4wRObDvpVF z4uLAd90FB@IRvT*a|l$K5Oe5sI%H;MDvlKv7DA`f;r;vf(Y{b9gu{mq!(y=@B_#z` zs}*O?oIyAomc)#0X0sXP<>eR}8j|IXjU7KPwv9)xq%jx_u-R;IyWN^=0f3VyPa-un z6>r|WNhsgGefyA>mWEI$B#HCk!v`cKC84>w82}Ir22oQ}gGGxLVaALZ$jr<{U0oeU zMn)9(VO%hdt5>g5p<5FG)a&(p`SPWt-{JsuB9^4G6lT)cQO^YZd|@7_JW zd-skvZros2Ru=Q}@)!<>qcL4B7r%f1&c41rwzajfxVV@L7A)ZK@USFzBzF9~_%U^NeZX5*-G=qt5?$u4h|9kyGn12(`RUUqlH{XDkEqw{>2|xL8k5Py$B!RN<~f~Crl+TC#*SxF%+c7` z$c&5(Nqn8WAuar*S> z92psr>6)6FICJJqc64+k6ibQx{Ct*{mXah_u3X9L>T1cj*=%Ncc{zXl`0>|RT4Q*49?I-EPdEKObw>tiic+=iu>pH0v^E#^5AX@aLzYs;Y`djvOIL zUb%9G1qB6?ai7me02~?`QjF8t*~!$@RLPupo<4m_lgT8@9eb_RZr{E=CVgxTl*Wuk zBm4ULWObM|YZf~@JDHuG&Aof~D%R?6`63)Yew+Z<($b<>uhG#_c6WEPp`n4fxw+Ko zbgZwhSJbL8DaVS(<6(Pyd-P~2DJkK_ix(y1r1r6L;lc&3UAtB`CzgN0u@VY}xM$BE z=H%qabdh^|_Usw;dcEvk6Ui5$r>948FM`1!TU%RY?`@YaU#4EKXCM$rC_Xt!#|i-C z=H?<02%w{*0}mcNKyh)gOjA}?hEu0bVRUp<(jN+iaQ5t3Y}&L*GspS!=dphM`iWfj zm`P4fMny#hUcY`V8(X+=Apl_c^5v+hsX;|W1^j;hxbnpQIvop1Y~8vQuU@^9^cNHq zARG>B9-(7lLd`L4+B9t3xDmT|?}pWCMQUoQOjBE1i-Cawe!m}qKtNS< z?AS3FjYipe$CED>gTa99+qYxOmMyq*=MH*%d(qX^h04lG6crUAB_$={SelICF{27% z9+mCw?F2x(-L5!J{_n9^U0u!W>}(ng1}sZnKS#XrdpK#;41^-es_FMe-xj-FZ4uLAd90FB@IRvT* za|l!s<`AeN%pp)k^{WXEhhs9=A($duE|=<}002ovPDHLkV1ilnHah?S delta 1245 zcmV<31S0#F4c`eNiBL{Q4GJ0x0000DNk~Le0001e0000b2m$~A0N_7y=#e25e*~0C zL_t(&f$f@0NIF{_$7gDS$|NdFM~En}MFvtxBn2)C?1dGi5%#B5v(q_9P$_Mk;?Dk&>V&s})$aGDvt|NFPw!2ds=mFN3=c;?ITICB^j z0Dy3OJ0WaO;17lKogFye*@5$&e;qJ*aC&;$+S=;zc-WfFZ;VEx(P%W}@Y8zV-rgP` zAOH3#{r+rhY)ni{zzRlBGMP-@HJ?8PtyW7>xc!|SIN#ZU^PL?y-`RologIF~cN9gX zQYn0(1^`G)OG8nVRQC7xi;9Z)d_JGgFDfdsTCH$7ilQMQA<@y%85tQZe=RLHH#cw; zP9q5%rRxHLproY4X0uTW5d^VXtzxlQuh;wQlb4s*+uKX#_w@AS=jS5`^7#1J+S;0$ zni?4y85i^bB=&>$9zPfkuKQO21Bj>7uw?JYqN3Wb8AudlBQ zg~HL%(ExomH#d`#lHT9n0RV2dJ1Hq?YikPtpi-%7Yio~=j^5thuCK3+Mx#=x4CK^5 z_#T=*%@ZE{yzeHHDJLg~RI;MrQzAx89f@L?{{~1ZEbB?Sy`k$IXRh_ zn7FgE!|hKtn$Z~`3?Z+@9$Tu)c^pM zN;NPr0AE9BXz0t!3tZxIxiAca%VFGZcUV{$CCa!T`inB^IF7^H7lvU|Q&aS7@wf5n zbh?_F8uEt-0C;?SBnUz#lZA(er=+AbH8uU@^8ZTTUteEwe;gkh8^dw@_4O4tB_Sc< zzpi&2$0^ZZ*1Om1wcG8vxw+HR)1*E)I2aonyS%*2*pQCH;Xn|?;c(DHUaxn5f4`=t zrntD+UpdTI`VIi-?CiuatgEYwqE}T_(f42Aqe8fj~|q1@cX-O`*J#+q&_=4 z8xs>VJ3Gsme;>FTo%{QHKA#^Tf#i#Q_op8m90&vggTX-F&jXQ@U0u}EEb%gf7SVq(I>!;_Pf>+9?9?(Y1U^a;A}DE!?flc}<@l5sX1 z!QeXwh7Z`ea{_kYd}jyFcXr@>X9v!AcHn$x2hMkPV0e#%@}>tz@SLBYCnhGs$|v7( z9LF$>Gybv%NAM^V3V4WePp7QF?eFZs`OXfU@9e<&&JKS8K$luEJyUzO00000NkvXX Hu0mjf#~Nbx diff --git a/inherit_graph_31.map b/inherit_graph_31.map index bad5ccf1..abc090b9 100644 --- a/inherit_graph_31.map +++ b/inherit_graph_31.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_31.md5 b/inherit_graph_31.md5 index 82e24427..3e118ea6 100644 --- a/inherit_graph_31.md5 +++ b/inherit_graph_31.md5 @@ -1 +1 @@ -76143ed123b79c4a7c89b3e3901cbe6c \ No newline at end of file +6837647f38409e0a708da691073c8d57 \ No newline at end of file diff --git a/inherit_graph_31.png b/inherit_graph_31.png index 35c069837e28bf8456d2e0015e485fc82f479bfc..14eeea6b93716c58e16463dbef60d17b020b9398 100644 GIT binary patch delta 1258 zcmV`1_wT=P(Ba z03a-kg8gj){~@fW%)@%hJgle8fAfnxFq_S@v$KCo%D+o-adA&i4;+42r}y{w8yg#c zT++YI@$s?QY$iv3(TmpC*Z-8B{{gvNPKmJlDf6(NG7sx1^RS*W&v!gUQB)uhP=Zpa z6h+b7+goB72n723`^92$TwI()BAJ+&z;PT-hh_AL-|rt77|6`bjERX6e+UE`jpp_B z6_(MVcR*28p-_F2qxnk&Irl$S0 z$x~BPnVFdv7Z)QVBm4XN27>{^B0NQW+#HcLo6Q*+ z84=~_bh@UdCW^C=piO?Ff0+s(v9`8Gi39~fkh;3Mp`jrd(Q36)sT4sFo6QCQP^;DD z<>fez!veqGpOKNVw6sJ_C(6hTVI(0T!D6w%l+kG9@p$wyx+IuF5Tw1mJt-;4<#G`b zo6QFQSEwf8HHSealgVT2z?ov9TeO$>4BhWo2}9f0X=qV`5^|YW2#> zO2p3b@$vKX^KQ4B7?zclIUJ6!%2TOSLZPs&t?lzuexjMeH$5#aE%o_)=jZ1Lf_S~& z!^6YI#zrFL@pv8{9>iiXWr|oVzP`SW*m-qz_2S|pH8r)Sre=D2npk2GKaHSGI2_LM z^76sKfmW-fXDJeCn!{_rSCnvkRyPZxaB}HknySw{C&D2?6odA)` z<-}Jk<;9PWk55TSv0AN^daKo1R8&O#4)q@bfxz0@8UUc6f1p66QkhI9tyViYI0)Ax zeJc#3u(PwXu&}VTwUtsvX;NQb{~66+fZYA_XOzum!*M(%CBb$45Zg{`>m+ zDk>`I`~BkLA^?EL_`;$E*;C=^y!R_^WX-Q3)4ZEfY| z<~B4m5M>&ThR^5g^?JMAZZH_&QX*(+Y01vc*6a0mcXy|!rwt7ajg5`4zu9bdeT425 z#kGZn1>)ohnuUbd90rCxJvur<5M+LSo-Wt#_xJYpf9B`s$HvCy<>if!kH5UU5UKa~ z_vz_rp->nd9i5exH9R~V2n1kr9LLAT#zZ1fbaXV2$5SemPft&gwu< zo`%;P2D+yxS*uQ`Qz#Un)UyPIxa%Wdkh0(V%)@%hJgle8!+Od*tf$PwddfVkr_2-N zPMUm)K*tghr_-61mPU>Q@if%+I7=wVS4aqgpzK!@VgLXD delta 1155 zcmV-}1bqAL35N+GiBL{Q4GJ0x0000DNk~Le0001Q0000b2nGNE089qAYLOuoe>_P< zK~#90?VCSHa&HvJk7Z?wNFtRGL6HUhp&^H$A;>~Ah*}IPa;qVzr3Qy;Xlt+<9BPRS zB6SLC6r(>7O-4dV5pMJ7D}h%sdIh%#$$8JP9NJe;T;IzbA*oL8(;gU-ZKepr)pVoK7b%&f9qx7Z0462=(;zP;YN9-QM2P?d>h~_4Sd-WTHqU^2h6rjEqn$7Nf(%LwbIGrf@h+ zqobp=yu8fO0pK0k&}y~he{#9g%kljDoVP!*c_PBo(-WGSns9x6ol}<$u``Mx zhacV_GcT1&!C)}p?CcBx5C{ZdFc^?Zr8xDfs;Ur)M0hnKkqD}*f2%n)bFG)5zrPO@r${6cdG-17ne#v(0He`}_xJalIw8c)D29TV2LKxz8yFlM1OS-LW^8V5a`FIB zTwIJ~GRdovNF*Sa%Xu|(tp@<{cpM803utd|heDx1eSJOV=H@uNk%$Bjp?aUs=jZ3) za5%E+vegqiqZkTif8OisEA)Cjc6WE7*X!~6`pU@zKxJj6sApwKNy*3cpGhW@C@Lxv z>?55{BNPh3ZntA#V1U5SqaPK@%F1YFW`-sv zCTMncmdeV?cp8(*L_0e>ytv!#CX>nZ@wlO(fr7yxPZtaZf2p>%R&f2yyWX|6H99^% z{>CK#Q(9U|Znv8zCnxFU_U|9n1QA^Tut z;r#qOYmR50Uau#)TuwHd?N^&(h^MBeMldb|*#Gk+3j2Salwsyc7-pV?VdhDg{{RHh V1BjGQ#I67U002ovPDHLkV1iXZA&vk5 diff --git a/inherit_graph_32.map b/inherit_graph_32.map index e27d0c42..c095e645 100644 --- a/inherit_graph_32.map +++ b/inherit_graph_32.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_32.md5 b/inherit_graph_32.md5 index e6597b6a..4684ba88 100644 --- a/inherit_graph_32.md5 +++ b/inherit_graph_32.md5 @@ -1 +1 @@ -54b6d5467876bba7ace9526132001d2c \ No newline at end of file +20b223d7447fd9d1f92c856d06deb34c \ No newline at end of file diff --git a/inherit_graph_32.png b/inherit_graph_32.png index 012c3534659f5a2f42857ab52fc081f6cecfb15a..23b3792382c799e1da3882eb3a4af75b6b027bd3 100644 GIT binary patch literal 1920 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 - + diff --git a/inherit_graph_33.md5 b/inherit_graph_33.md5 index 222a2769..c4a275a0 100644 --- a/inherit_graph_33.md5 +++ b/inherit_graph_33.md5 @@ -1 +1 @@ -6acd344a4b68803c92a718bdc202c2c9 \ No newline at end of file +c1b13f941f198e6a55ec43bb4af37768 \ No newline at end of file diff --git a/inherit_graph_33.png b/inherit_graph_33.png index 540675adf5f21bd58a79eb30f1ebbdd552968f2a..ef0ef9eaac929af5486089cf1d634005a95b3ea6 100644 GIT binary patch delta 1384 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 BB;Wu5 diff --git a/inherit_graph_34.map b/inherit_graph_34.map index e7659185..39bd9eeb 100644 --- a/inherit_graph_34.map +++ b/inherit_graph_34.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_34.md5 b/inherit_graph_34.md5 index 490178fc..08f308ae 100644 --- a/inherit_graph_34.md5 +++ b/inherit_graph_34.md5 @@ -1 +1 @@ -09fca1d400dba23831d13e7df5e3653c \ No newline at end of file +fe93b2452f6c8ed8580b1b8349f5b125 \ No newline at end of file diff --git a/inherit_graph_34.png b/inherit_graph_34.png index a448422e4ca8c03965c47e4d8d957dce60cf30f4..f059705bee5fd7ad9917646a189cc8969e31b296 100644 GIT binary patch literal 1471 zcmV;w1wi_VP)pR{Q-CA5he#A+xtek>$J3Kd2&C6k19e%s%087(Sm*v(32X=omvB z9b<^2V+?V0%&drGGMRD?hr@y0yLaRL`}b;}R4RpFFo=~aSE91A5^L71!O4>+F*!N; zTQL?dUJSqAkCBm)**FDVGHaD12m*$OhcPrXgx=m>D2jpu2M(z1fj|Jyo;|~@TemPU zFo3I9uj20AyJ%@?DHtmfiNJ2RLz1MTF&;d4fM_&|rlzJ}<`#`c;dDBS+PZ~#bar-9 z!#ynkD2if^Z*Xvs0QmLmSCXW|;b321UrwJ#j~=nMwl>F?PN&(>&`>a@R*c7wAJgG* z{4zgL6m!lg-=0sVneXslyXKUamjeJ4MF9ZV?RH$gd>NyoqiUbcn>QmCi{*SS7!0DJ zp`qj$ixw>c07#MqlgXsE{cLaCxDf!bY}qnR8vqiC1dbdz0;kgnm&=8gmKLPbX#hW# z)b8$X)YsR;Znxv~>C@`x?%cTpkH-V6)e5)UjgF3vl5#JJ87Ns40DSf86_d#%$HvAe zNfP($*~1MRHmH3BL7>;`Wo2b0ckSB6^XJbq9*^gY)6>&Kuh+|oi3!ch`8meBckj4m z%NDk^wUL~@I!dV=zu(Ws#zsaW5x#!?njVjbr%s(xWAEL&m!qSjymI9V0r1P0FH9zr zv{)>>bmns;F&XL zxPJY5R#a5*#*G^!$$^0Zx?C>4efw4&GhdwiqpGTkk|dG*GjTGR49#XU`}_M<-|gGC zxq9_#HFj@ruiAGiw?rbrg$oz*;>C-qAjxEs*=)Atxto(^O%z3t1WBaRX*_)R5OsBR z0D$rFaddWef+Xte>v8<}alCx_5}{B?-4N{Cw-3jT9fQl|LMoL4@MDMf?b|oa7~|vP z2nK`Lwr!hcKAgcHys|7qQ53k{Zq>JH)hfi}an-J=sR00(&Hw-6RaI4mCr_T>>C>mE zt*yn*ojdXT`SYCR^-q|S`06-8cO3TcjMwOSDf1Q3hG@bTkE)&KqbcL2cP;9$x5EnT`4X0sWQNJRBXl7!{Um#cPJ zS>aSoPEKNCVgl{$?T}>|hYugdjvYIYNF+**Jsoo*j?HGn!Gj0k^Z9W9{(Xp|i0NuZ1eS$2@kYyRsXcVojtyr;Q1)NSNs;jF30PXGV z7#kbIg$ox7@<=9=nzq?&hR^3iQ&SUSu^9UM`*GsL3Hbf~U!L3c?c34O(E(YO@%i&- zl$DjiVzK<*MCCJsHLxhq*yiS=C<(;TSr)MTp_xCph2EWg|+~*klIfgho#t=ux7~<#{LmVAr zh@)c+adb@4N29{w@LcBc&mssy(YB)E6nmD+VD2!H#``%s#dtqQ&luw97(*N#V~C?; Z{sWGI9nK@IQ`i6i002ovPDHLkV1lk?+7bW& delta 1087 zcmV-F1i<^h3&IE?iBL{Q4GJ0x0000DNk~Le0001N0000b2m$~A04P(NK9M05e*^bP zL_t(&f$f^lOEO&)$JJb1gCI2?g(yp@Rv{9Iix$x?g0NLi5$^gy*lb)R5<&*xn(S9f=JV`HOArLtPBfj|Hb%;j?J?d|aGCM+eB$+TK6e?btbRI29g zRm>lu&Q9bwj^nsUB*HMv{QNxc92*;>DC+R=kf!OoySwr6@s*VoIBIEWX?AwD;!{{~HJMBR0G&>^ zySrPnc77?J&j))@o{0kk15;B|mzS5kQX-sA=koG00H9(l%d*eU&mND*Y&KWf0v5O2 zlt?72tE=&NJRA;(!{M8oo3*tyA@=zA`274lm&*+e4b9BV@XpD}e@VC7P1AHR7`(c= zs;6wp*E;d(>B(lZ*=#o6%;)oqi;G615dfgq>zz)g(3mGDCuXymWm)d;7850-R4QY! zm}nP~`H`PTuh+-paef?)MhymoFfE-<^W#FHAoP1%Tie#w*5l)2&8p!YMV(luh&+G( z{F#`T$Y!&m2`tOTe_}Da-99`#%zJu!doM07gm8E%VVuoo-EQ~b;9&V9?$aUy02qeh z#|*;&0IEktA`z?As#dGJy1I^zj%wDM(NeFkuR@Oi01AZy zKTfC9!c3`D3WtcyDxFxR1eRqF4i2o7gEEfLWf85^Q7NRycH=CQAKQbAHaX1|O?d)(kgjZYgK_~9*?e+BZ002xT)7jZs z&DuFsuk-($auM;@J_KM95r9QR02UDeSVRP15fOkzL_md~O!xQqzdw)P4g8@o7!1ng z6=cQ0$mQ~2FbL}= - + diff --git a/inherit_graph_35.md5 b/inherit_graph_35.md5 index c77a06af..c50a028b 100644 --- a/inherit_graph_35.md5 +++ b/inherit_graph_35.md5 @@ -1 +1 @@ -f7e2a84e74cd774df0f4dd319eb64818 \ No newline at end of file +256b72fbab6b57cf4773aaef76053091 \ No newline at end of file diff --git a/inherit_graph_35.png b/inherit_graph_35.png index 71eb256cb4feb877a084ef5f812f003e25d73b5f..86b33f573c76757d60f5ffbab80aad2ce021944e 100644 GIT binary patch delta 1021 zcmVU7`E-Gl*rbUYMj}~oO)Fv{6AaNzM$e>k0 zvL=e=t=5!^(x3l=e`QnfpFJuGIF5IBcZb7aVT$88hr>}*Q-h*tU0t2i z>3n~G&u}Y)!7wy5^z`(Ui;rB%F@KUI@9*#L?(Pl`4|$&N@9!7tV`F1Jf1huAdpi<| zEH5wb?d{p^cIm=kFsRjP1A#!wRy0kotgOUhF@hjoUtiN*Hxvq$m6hezvpi73`uciG zMHT=6MN#6ArfC2`EEarOQ*cf)I9ebU2;PbeECMPIf4|?)vMj?efk2?Ar>CW* zMVKN<(quBBDB9K4H9tQejYh>)ySuw4lPMmLgCFxhKR?HD96}h2f5i|486F;{X?k^a z6#(%3{4C91R*-G}Ir+5Td;~<15CnthZ>R(ont$&&K-%Ow=%4jsE6yM(7yk4)>Y9$DQ zAc(1{DVNJ-x7%$te_L;F@8sm9PN(BI4gkP$Tr!!|Xf!|Uj37uj93CAVWm&eqzW%%N zKLr_)TmG_lnqiotq9VWFFIJ9^k1HxFAcSgl>W!Y5n2_D7y}e!d{YxYgD2ndy??VWM zLo_9SSwWuimj%PH!NEbB&F1lVYHMpRFE3|jXN9BjDTA+@e#wY&(BYa zqC6f?C=~K~y#N4?!(;_nH~k0mhY<2SKQlAa z(9lp)Qere3r>CbAiNp`frJYn)R}TyfJUl#zO1Ims)oKj}!_v}HUteE&c{$JXX0sW? zuylfK^UuZqQ{T(~a{m9-6#Ofjf`4UG@ULuS-v2f>HuB#`euze+RaI5eij04o&6clz regTWcA|0w=;s1XnQ}C~BlimG_6cu^~J%#!PeH+kC#**_V@R9 zc6LyUQR|dQBz~%%dNMUNrLy4j0)n-GU@ah63kcQ%Qi~Sk3te4Zfk1%gd0-a=fnk{b z{(iIBY_r+CUT-RuLIZDaZygQ?Ns_9i3y3>KQ51)U zhVuD*ZB>018DV>STV<&T>ceqddwV+=H#RnwN~LO1CnqN^mrE2yG+djGW!bs8IWW%U za+8yjHk-|2vG{zxVzH?De}zHE?M=X!PSo<1=f(K=crX~uWHR7^RfNOgXf#Sul>Qi%e6%mFuCDxkzu)f%Q$Y||mUX+` z6h-y*^@YP>rA>BscSlA>BuP^Bf;Qdb>fk0qlVggtO2M5#XwDw7~=?aB{-EIftY&Prhc&t_{NY~KNP%)~S zn?7Hr#e0(7-QBgcv?w7J`%$|T%d+$H^I+_9xi&X9d7giIdIE1NU?)iu4XNg)&$pi! zi9~|qxN^CCc6Jtte?-Q{#8UcU=JsLGDnHp5sZ`46^I5G{ilUrOXDAfnd0syp)IgGCb91xX?Os_~ z;W$qDG?`2e3=Eh|CWpfjkH?k3SS;4o)}~CWx#{yYd*pBMT)lhbe+O#;!CFAD77(lj z1Zx4oT0kn?38-!j{wfz27rni`sO6OwcDvnZG-@vn{wkxRqv({B@&7Mgz~==7YXQMp cK(H2&e|^Wlo`?dDng9R*07*qoM6N<$f=?5&OaK4? diff --git a/inherit_graph_36.map b/inherit_graph_36.map index 2ff4bcd4..5cc81f29 100644 --- a/inherit_graph_36.map +++ b/inherit_graph_36.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_36.md5 b/inherit_graph_36.md5 index 7a434844..ab3b7736 100644 --- a/inherit_graph_36.md5 +++ b/inherit_graph_36.md5 @@ -1 +1 @@ -55ec7b6aa2dea95417ad9a8ab44b92af \ No newline at end of file +f76f83094d52aa1d5ede4851276abb5d \ No newline at end of file diff --git a/inherit_graph_36.png b/inherit_graph_36.png index 7d549be3fa30d79faa4142d1108561f4becf3385..0cf9a94a925da5f19f257d9b204d849f179cee87 100644 GIT binary patch delta 1234 zcmV;@1TFiO2-FE7iBL{Q4GJ0x0000DNk~Le0001C0000b2m$~A0Nt$+j*%f0e*}q1 zL_t(&f$f@0NNQaa$G3F{Wo9}s=tbDWk`kqd*}$N1RuGgC<)CShP71XUEGT+F1#t%v zlr+%LN+Rh&K@>I6kg!36NVA8AL4(RXmZhCLIDF@xuiNdEU)O6N=QrAG?Y;J1=g&TC zZ;p~+7zPAy67#nc_yQ0b;X`PIe-EJ%KHsp0*=!yi9sOIWL=WZVa25E|h_XoOEV8j>Gay# z+OxAWqzi%|rBa!dl|?3#Su9p}clX1?!`rj@{eFc)!Q=6$R4Sj(9~c-2e}zI}WcB9= zb03+_=F7`VkH@pMwG|8oB@zkZm&s&StJP>Uo}ZsjO--3hCb?XW4Rku4G#c&r_!u#L zK3_>miPdTy8XDT$+w1D;(&=;}k?8sP`PFq#PEHsM#z(UaFX|^S27|%y!t*Ks0EfeY znim%r006Jo3&Sv-PT$?#e?_~tx3@DhGf^`T2$YtVV#DQfc|}D?J5(E#hrBaD# zgre1I)oOK2%+EB)WU^c?*J`!L$HycR32~xrfj|HNNJ&XSoy*J1e+2~v$;ru5sWcD> z;6{Z(m>NM41VNC`=W{xpZEbCQKA%pf0{~`bX7={>($dnZtEGhc zD(dX)wApMbl?tiZO-)S-g(4#(1A-s`00cpgkB>AOEhQyoe}8}f#pL_@`^Ck@SkLd& z1OVjb<{}L?o9%YH-x>8GKJ$L`{QTV9+a!cq82F_2%d2S5{W8t*zPZ_JxIof`WpYni?2}udc2D z02+

          -E;v)gg%?C)C~D9onv{s&Y6SR;!i8VyV??+$darJ=Z>2qhK(oR;xK2PJDcP zc6PQ(r3wTBZ-+w=)X~ww;cyZX5(*0o`}_Ov@9&YWf1aM6q@<+0yu6i_6(q4>Fj!t* zPN7iXf1X^U(J+}z27@7!$sQgaaHDYf9F3xc@a{^u{E_?7|DG?b5tT}9ZEcOfLSI-T z27@s^J|2OEzOY6SgU|>cLL+<#jqrKpx1-tF*~sS+J-FTO^z?MB=M{|_8yh2)Pn04S wi?JpNC?@`Yga=WN@F6t9htLQgLL+>B08UgD7qS*lX#fBK07*qoM6N<$f}&7KnE(I) delta 1041 zcmV+s1n&FP36%&TiBL{Q4GJ0x0000DNk~Le0001G0000b2m$~A0MtgX^pPPHe*?-% zL_t(&f$f>WOCnJm$DPf?ln7}$7*SC|mxyjrL=;U~8AKgS$;w+HLMJaCQmR9ANILZg zREM;4m(oiSK~PjPNrS@>WT?@ALO2!V>|xm9?M&HoI!Y= zS1J54-#)s4e+(rrIF!8LQ1XI9e+_nSZf<-&-|Oq^M^*C)vDs`kn@#NgG`~(xPPVtV zOJ36F<@oq`XJ-dg)bc^$aJW?Ue0Iji$0drge!-#S1&5Ls977jp&CSgTqTOz1S$21KHEfy?1w23~6p|=!0**4QfdXLBR{QL}MFM#lH4=V4u ze)aV9%*@Oj9UTdwNbq{Si;IgWih^P!5}BHs0+s3M=}06};3{AcqPV}me|C0ud3i}u z)bjE&tQ`U{JlOelcX#J-I2;a#(9LGE^Yinqt*t1EHa0eTyt$rsE^44vaR6h)!z1$ejnQ81^|>8-6T zqtPfiiXcdHbMxBTf7-#pfuIls(bd%@?5ZkYhr)4ub8{2)ZftDeI4-nN6wT#wLOYd8 zf#;W8kzp9IQBzX`Yli>~uZZ;?q`SL26bhwMsh5`*hGAxBXNQJ{3fr%*uMGx6Fc?fG zlgVT<7z`Q=28yDDqn(|d3kwU6kB(|%UMdRw~YGq}m3b?<7{ZXgWx!vxkrza?T0pxihJg^>x!(qGK&KI|Fd>jaZ z{H2gsB>S}p(R_CM3n(E)b<)|2s9MOnY#Q1XI9$qNo8FF3vfl$=T) - + diff --git a/inherit_graph_37.md5 b/inherit_graph_37.md5 index 566cb77e..246523a7 100644 --- a/inherit_graph_37.md5 +++ b/inherit_graph_37.md5 @@ -1 +1 @@ -088e9352a3199609f7754b72994cdab8 \ No newline at end of file +58814e892aeee959f14205fedb6d4433 \ No newline at end of file diff --git a/inherit_graph_37.png b/inherit_graph_37.png index 883116850af5df161257c8d354e91b157f155de2..714bb418883f59d4188e47b38aa9d26b01138bdd 100644 GIT binary patch delta 1087 zcmV-F1i<^m2g3*ZQMM_RXcI-yrbP>(aOJv9AGiq8or@qMHx<+( zl(g)_h^U=ZBvCC~6{J?0WDsG_4Aa!;xr>2eUNg^oy}e#}ncwQ1=lqX6&!1bSQTUlAz+uNI(ni6h|Mx!c~DiVnl*5BRT)z;P)NB}ALF`xji*P9c`3jiP-4)fDQ zA^`wMr_&HZwOW0Ce$Fo)A0KPAT7JqfOlN1OaQk=qa5!8z6QrOx003UER~Y$$GpM4X z0sz3WEC4{IQY|elrBW$wf2pUZ=l=elS6Z!B&LE!e^ag_g0MO9Tz{PiVcG}z9aU9ob zwN9rqM-Yib`1^}+yt}*G*49>CUES2wC`6JZK@gEhWO#VEtE-D! z3I>CEy&lK$!NI}#`T57kM}C*z@7L?~G))6R2Ysg(Hb^?1mdoW9e~TrNNVwf@0Kn_( zt5A@4Op+vqVT+54$z*bMbyY5xQxsK12Nh`$4~AjAy}i+BlwZwevsYJF4u_+oqeCv2 zdpsTpVJsHYXf)T?*YL{|npZEZ`Qzi`=H`Yg@9gZ1+m1Bo?d`3qs>IBuSDaxdvnyrhq=@h&ehs>g($>7z`GR zrLaM_x3~QG^77JbHrLeD3=9ke0s&-Q@V_>QAPA{c8VZH@$m!{6eSJNIP$tWL>6@IK zET9+G%rFd&llWmQmG;g`pJu; zLZL95%_fuS@bEAk4sUO7PfSd3H-OL2&m4beXJ-rOIk26eFTw40 z>vX!x%F5Q(R=?kmtPB3sBlbV$t3l$s7y{8C1foF*M1v5B1|bj)LLeH1AkWV}8yg#? z&!cR~W01*YDt#Vhiv)`Q4=RXw1|bj)LLeH1Kr{%!6)#x%6lyxZ6TScd002ovPDHLk FV1l$X`}P0; delta 959 zcmV;w13>)42*d{=iBL{Q4GJ0x0000DNk~Le0001F0000b2m$~A06T=+%8?-ze|bqn zK~!jg?V3MGI$;>cy}aP9NKzw&%Kk_>MMw}04bj@7L}W#{86h+|bVLL-wAA9z($tjN znhlW+7eN?Kh2dmL5mrZc!{K1v{f6Uryub7A^u3>y(fgV1eSE&&^L%}LUquN~6it}w zX!z~|eiGO$1h82MV6zY);l=&^e?3J}pP!%KRZU%CHk-G%w|jeg<;Xvil}e?e(dbtf zRj)*&(Nro0N67M|cs%}9_0%;4K`0`4&q4s3g#b1S0c;im*enE$m__`>;cx^30fu3u zILC1mMGX!PHa9ohY&Nggn@lEQ;oIAr)9Hjy868RaVWd@zffkHmaI!>Ee-uSAolX~v z#g&y6DL6Yj%P>qLkziRio6XM8&u?vQ!K#gojpgNKI8sqkUx*N~SWFR71E|dV2Ev{eHh+T5=q>zP>&@JPZKn z@9z(X!}8Reo}P}5jtYXHc=2^4I+bu7*VWafnx?hv?(U96BKds2e`0sARxw!y&64Qo z=vY`-czJnIBnX0VdwUxQ1g55@q{z_F(8a}tYCl>MMcVcC_2lHF)oPV)Z8n=#)3lc9 zblU6n+U@p%fq|2glZrixH8iW5o4vokx3;#*5}k=wl@J60Kjd<`4h{|&hWYsTkj`J# zGynk4^V0S6^Rwbce}W(!A0Im$j%w;JH><{bRy-ar6bhwMDVNKwuC9)ckC$6x`n%WY zOWNDp@9ys8C+B(IVzIQev^+dK1cO02u1Fgh8QIy{;dwrn%PlP}$?>_lxlATgDwRwo zQ$vH%uHiQRbFz}jq|fKGTCD(pzP`RtD8w*~zFbGLySv-gf7T`^ClU#_+uhjM=yW - + diff --git a/inherit_graph_38.md5 b/inherit_graph_38.md5 index b26c4c93..b8150433 100644 --- a/inherit_graph_38.md5 +++ b/inherit_graph_38.md5 @@ -1 +1 @@ -daebd42513f4d8a3f7b812e8f0d04140 \ No newline at end of file +95ea602f20956fa5ed9512caf3205a08 \ No newline at end of file diff --git a/inherit_graph_38.png b/inherit_graph_38.png index 6c98556f97876cd84f049171951447a8d720bc3e..25c1fea249f6f2ae0534abce06a5c3b210b8d407 100644 GIT binary patch delta 1561 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 I1g=70f<6?}MF0Q* diff --git a/inherit_graph_39.md5 b/inherit_graph_39.md5 index 6e6e3f9c..b52b04ad 100644 --- a/inherit_graph_39.md5 +++ b/inherit_graph_39.md5 @@ -1 +1 @@ -25ae5399eb47f5f6dd9f3853ce45bf75 \ No newline at end of file +90e1ae10b96a2d460ec3f9e356a37d58 \ No newline at end of file diff --git a/inherit_graph_39.png b/inherit_graph_39.png index 61f9043685db6c1184f43222589d2da351fa2ce4..6b5ee3b4e1d3ce834c9ee9cf0e72ee6b12ab8fa1 100644 GIT binary patch delta 1034 zcmV+l1oiuh2eAl{Hh<Z0oLzD)QMPVXDAQg0oyaq<$L81-8 z4jsC7h=>R}boACCFA>xs^xzg$$B3vywGmxJhz^>FNn=HzuBeN+zr*sAd3RSW-^N#D zKDU|K=h^Q(3}0qf!Sg&IV58w*7f|PreDOl^#S6(7FG_U4Fn`SU_V&Ljr9Lp5&8w@c zh2bCPHxh{)A0Jn}r266h{+?kNbVezC=;-LETJ_W$^Yinf8Pb38Lh{86$rmpqU%XV3 zuL41<)!J;fa5xMA@Or%pIeb1}F^S+73Cs*$;rvc$Vh8ztAAdvcez{z=c}u$fq{YB+gqu* zpxxZu?CAm32-e5-OEyX=y1Mje0yD0KnJRm!O@QnelqPu~3^gsDiVqK{r<7Bv9+}|RK>FFkIrv}`4&*C)svHxFE1};^DQPRk#9U6Z*FdO zxm?1|S(eS`^U{1}ojHzsets5&cXxNfTLi7&?=NP~^Zel8AcRmbzqq&<9UVngrTMk~ zP)H=3&0bz!8Vm*;lJ@rYo12@5hX=i0KRrGD_<#5)d#{jnR;g6saM)(Ena$??{eATL zp`oD?=8;H5r_%`+5{t!BxQz&^pCa@Bp?1h*GU;^s@bEC7&(kzLH8u7A{{BrZ$8oc> zvouXxt=4Qdi$<(eDvOzSbaeFg_MV@g8;wQ)Ks+9Y5TdG|QWM`7A0Hnv1a!$_vAEst zSbr?``T5z<(4bbUg?W}`OM9kLsdPH6R4UWy^w!oE03ex6ik^`*cQ_pD>+7LV=;`Un zYPIg{?EKZ<&}LED{Y*;P`qBQ` z^0nLT)vBisp(qL+D#+IwR!INF3&|HRBwxIceDU%h-;tA(W)-W_00000NkvXXt^-0~ Eg4Ng?VE_OC delta 865 zcmV-n1D^b`2#N=gHh(`!L_t(&f$f>iOFBUq$9K)p2qZJY@GXc~FCIL0?Jp=|Yb7E) zBt+m{f-aql*lQ3)Pn_R9~`~(M7RXjKyM-B!B%@HC+JD^E}VP<(K|F zJ3C7x5ACa?5xT{=Py~PzGR{Ll7;F^md?_bW!c{@ zq0O|SFZ+qp>0De~tkr6$5k)JQ(U4OAW0Pu&R_2bP#r_2V008p&{M*}GG#Z5#MIiJV z8{96)Wo{b)VSjgbS7pJ1##F0Shr^-e)d|Ml2pSI$4}-y=)oS(meB0aGs=n6Ae0_aA zGcz+dIB2ukrl+T$o}OUv=H{l`?PggPn;!rmNz(fI`snDW-EI$u!>_Ne*u6R^FK?)& zv*s^kVPRo)b@loAIh)O%oSZP9qXQmT3!dj!R#wX8a(}5*a=BcwSPZ(3kB?7JPi0xg z=4TjYYisN1=qQuP+}zwW8jZEJHSFH+fr|az{(X3O5ClOG1guv-7<(gV^msg?D3(g4 z7BWL#US8a8Hw-Qoi_nG5@Avz!uCA2pN~PlS`LKI+Xzt$@^;H-i9-g0{e|&sYd5r|? z>zmK#r+=oV91h3$_;@;6cM*Vl)3p2=jw?$x1f z`Wp9Y1?%gpAj|T>!GY81RF7GF`hWZT@9yp*k;u35FE1}IEiDxah4=UO zi;D|E5ZZ7ORO}z_-{wkS@XpQ-$8lDxH5d$LG8x6Vv9U2QFu>@xWGa>7IIg$1*X#9) zqNo*&%`ZukD2jf+-(s-@0)hSgeIw^ZY3^SZJ!&$UoSU1&9-d+Z<@+T1fwx2FL)Sp{ zC0YyBmn>9YvQT}=LiHsJ)t4-o|MRLp_!Q&Z-`{&Y9@O$h-;t3Kv)SDI6Q5$7iHQkx r$*O`jX`zNoM%@u#=0U00000NkvXXu0mjf%Z$Tr diff --git a/inherit_graph_4.map b/inherit_graph_4.map index 3009f4dd..2cfcad19 100644 --- a/inherit_graph_4.map +++ b/inherit_graph_4.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_4.md5 b/inherit_graph_4.md5 index 5ae8e04b..dc5cf354 100644 --- a/inherit_graph_4.md5 +++ b/inherit_graph_4.md5 @@ -1 +1 @@ -4193fad5772fedc8d910b8c1ddf17cbb \ No newline at end of file +5f24c4892acdd5ed6cf619217d69f89a \ No newline at end of file diff --git a/inherit_graph_4.png b/inherit_graph_4.png index a2d9f739932fff90ef71f1a006e6eac830e6e570..83fe1bc4def2ad20848a988bad3e24560de5de26 100644 GIT binary patch literal 2220 zcmZ8jc{tST7oQ>|Yu1uSS(2@cnUO&gnk+NcjCHKtD_hAPHTGg=n6Z|fhHIagvZY9f z$ugF*U6RY#DTJ|ezx|%)_xt1bZs$DD`pU*ij!Q9k1Y8;l=sTfxo+jX$GdbG&@)Vtq_tIH!*8i5M}2Zx7K zOH0JHHQ&L(!8MkOg2D;9pT?t~IZ=sBjZGHomydgwJ2#mrAT0c8IX*rff*&6liAzfp z4hao)-TgI-ClGWkEmMcUa5B>|aGS-7W@>;UkS{=IbhNpHL&D;sXG_)=-Pg}g7lRSj z)Y4MvWk?(H6Oek^_fiuQ6H`k{U_ZYBf)*TZICNf-`? zTVS!-R^Sr?pmHj8a8W6>6S}`gPn3dcYa6$2!2ym)A`QI`3Jgrj z&6OM)8WIHU?W`A)j~|IlRyw{frP0jkP8Jrretv$MegXdeSHR$biyZ@n1`06PPuU#tL9(~E54=wzk!F^c zm24rCAu=*D?2-Bg1}01W^Yvo+>FHudMR(ZVJ6tU}ItrH@CkV-3(bUYs2 zF76-O<6d}(sLkuaCK>|bTHD%wAEvJ_QB6(F1Bd(OA%%u*kgg*TrtxCeiUDM#YHot9 zZ~;ymCZ?v-8}of!e0=I_4R7Cm93RKht?ldxfKx${w#uC6iDczi;_Q-`Y~)ZEMR z@)pj{i8r3GJob!DOej@V{Fg3WI-jjai3D0NyRo$C@wx{RGyZU=#*ip^v%HG{FJ30vDtA0PBgV6`y*gR1S*(76 zPN7nH7!1Z+KW1zY!8WR@>e`=bndDdR-%IfE@#!~T&idljnS<@F^&SZ{JwKO`n|s^K ztGuN!a&*+T6jKiO4)*ug)7OvfH41eSpy@!nfJg9XCyJ!Kc%ct0J2)_)TVj@fnao^h ziQz;dH&_0K*w=Unk`fXY?vIa+p+KcgO}Y4lNo)0a$f+99emYsQFeyoZNFYpY@$>Qy zbUjy6fWtGhva%Kq_qPLQyF`e1{6$Vq&WgLy?k6G+_k!M3S7T`sSKHg$WzP~y>*`)0 z!uF76`G_JKO|`412PzR~Rv{PQL%8?DfEOrP2E0N-LXC$BjIhU#HBWJJel0XeEG;RC z0|KGP#vCIpJzXB)K4M{YRUQO|!Q3o-yu$Y&Luj=nutfK?U)ecQbLlxcj+o{RQ4nRY_ zuS-cuq0nfEhOR{RqX#!25C}k1B#_KTW^8P24R1yq2~#s4O7-;ietF~8U0PMuH+_IN z7L(d;Zh@9YoTRwlQx&&%DaadbP6vzEwJs!j9?SMjAdVy|rz7r?BMRo8%~W0a5YZ-k zM1UU=vc%4^YExTig47*x9*GuW;(t}w&Di)oH&>1r*Bf`r221-q*3a!%>2kz?Z;Cfg owYsQ^va@2(#JDQ`f99ROXY~++*hB=i4Y()~{Hrc>qtzH2BSoo5Y!k4Ffz10YzAqs^ zlbK1#)Gu-$7?|99=G^zp?K^jpOsWC^VlWt`#$EBJ6)+foE6iLBhC(oNF&GNL%*9|R z1ee_q37z)A6#b77|GZ%xQ5X@W*hC(oNF&GL_GIM?S z@PRrzJE^v|mR77-K_-)l?%utd6E`q0Kpe->z`#IGpGu|5n_sL?43$bnTeohd?B|mK z(3UM*a`Mj4&y(G5r-p_Gs;a6YtyW8Bvza^|PftSMbbI2Mq9h_qTQ4G$0J)dwK83B8sgJ-*lw-ZlBLbEiEl%v)N?V zBB$64#>dAY&@778YQ?#8=Op7MCMM9*(gFZ5nM|0RoXqGK8@EtR>BqTTF6`aAH>16^ zwH0o+J0ovTPY)apM@e%M5f&B}uzB-lynp{bCy!9>LMZl}6{At^JQu3R>2%`Qv15{P zNz`gJ78e&qW8`Sf9w!osK&@7b9+QoTUtA?I*ZTGAF*`de8Q0$4j?vLk0KnMT7~0$0 zGy0V>S0a%>V`C$pJ$nWK@Or&yY-~g#k;ura*X!Z)`AV8Ix$pIQVKf>MkHgo^(1X3|dnF|1}U%!sShYte)+S=N1VG1wOVoh{Q127 z$yF-*st^bSGFCGs%>@7#E?fY|akzN#qF}$xWAq;U%YsM4I4HTtWj#7i`D9MI&u8?amhF_78Vw;diCnmYdKo8$4TCvMj{c} z<0@{hj~_omr_*6@a1e8IbBM)ac=_@rIy*Z7{QLf@qoYIcShLxTn>TL)P~Kcp{lQ=m z27>{oPMyNc%nX*6mhkiEPdt41Q1U<;$00v)L3k*YNN#wr}5#$B!Q)91bHK z4#Vs9V%xTDxOC}K!5XFJxe%?te*MDh*ROH%e(GMEbhW@ct!u~@KX%^FlyRl#I3!R>Yf0E|W> zJRXnWaSt9mfXQS6AbzhcbswIOLW}_Xd-dw+>4Cvu0LO8tt*wQ{V!`w0&x^__6wC8G z+S=L_Hy6+I7#kad(P)H5qk%@FfzfEhty{MwbL7(~HqUaj5)o7?6;`cUh34jFoIZUT z-@ktsjLSFIQ&Us0SS(n(b}g!_tI^QV0K46eP$*Q8R-w8dJ$jV-L|YDG=2HDPNQ&em z^jXae215W5zp(%Q#9$~z-XBYr3u2G>{0*ybIn`HAT9<>eH`m`jY2{R3IcZ%E*li($ zp%Bbm42D85b1@hS!OX>AC`8^5G~90Ya_V3(%982n>AZb8=F;o+#Bm&Tb#*B!ioy6> zsIRXVY|nW@gTY{w1ongmgP|16TnvUnFmo{&3c<|9U?{{t(1`d551v`u00000NkvXX Hu0mjf$JlWh diff --git a/inherit_graph_40.map b/inherit_graph_40.map index 570c0bd0..dff5fca7 100644 --- a/inherit_graph_40.map +++ b/inherit_graph_40.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_40.md5 b/inherit_graph_40.md5 index 3d62232c..29effac8 100644 --- a/inherit_graph_40.md5 +++ b/inherit_graph_40.md5 @@ -1 +1 @@ -330c80adbe895db33b729dd4a21d5c07 \ No newline at end of file +a2e205aba737df71362dab0f52e96f66 \ No newline at end of file diff --git a/inherit_graph_40.png b/inherit_graph_40.png index 3593ab74147275cb9c548461c940df21eec49e23..34d76337311daade96d41fc05bcc1889e605cdd1 100644 GIT binary patch literal 1757 zcmV<31|s>1P)!Q(qj%&tzNOscnXHHC>{%70AW#MJ5rwv4ncN8cdfN z1O;0~c`I7fBFGm-guSSs37LXfITLy!g6PeZ?8WU)1Ko7wtgQ#!>aMojcK_O9;c^-o1Og9zg&AUayyJe*XL!0Py9@m%kcj5wF+F4YjDK zXn1&-ZN7f}y1cx6>AWw83SvX!+t5;jC z*5AK>0|1;(CywKVg@tu>buVAOlt?5#pHCu@Kojn@p!vYS0FL7rhE-Knb$53I0Jdz| z0svUMb}h70sZ_Ua-3o`pu(@s9HoxC5GND8w>F@8at*uq5R2MH^gd@|v%xAuc3ZzdC zvwr;eadmZdNlA&-YK_O^0Dwp&(%RapR;zV79YGMVGd2zu|8kfuU z>C>mDPoJ(^w+;ZnebBkr>E<*|%jNQ$H*W@m!OqT3nM@XqMtSRm+wHEYsZl5tyLRom zcI{dq5DtrLsX1Q(@JIWsfE-ZdBu z!C(+xzj*PYrltnR@jG|!umkSiy(^-Lbn{3gvU26h>({TtABm>vR4T>O1j8_?RO;>9 zx9#oin>KBd$z;8~z4J{7Q+W026~i!db8|2lK`$ca3#x!f3KT`L#n0`@xUsPjmWFE{jYfNWdy~l|>%!r1=yW=f z2>}4(iKa2M$ma#r9~mTDD%{aCm5FsI06E>HxxhZA&JT0Dzg984>eXEcWZyudc4HP$;y2 z|Nfmjcd~mYB$Y~;&1UYj4Gj(Oc@mru_UGmOk^6jJ<}+VV1w>MS&jSEpe0*H1)oL^v zsZ=^SISD&`K3{2RsbIibt(HAAktBKP(k1bHGbamYOpQkK{rh*CreV`;HlI9sa%yU7 zY;0`z?%f?79S08{BnV<~a4-}KJ%9fE^y$+80Hsn10O;!K`tjpOM@I)cTe>*_V8@Of z-QC@xQ0VK|uX%ZSa=9E1hE59#3M>|j$z*!=?3vf=?eFhDapFW%QFKGcs93RLMRj%cqeqVzhDjt6_4V}y z1qIM5kw~07caA;S+wJyvJT5XJHwE@O-Ag9snN&b@Q zef#zm7Z+=_+P1bfm`HlS@pzmdh|nH@sfhMY|s&c+yE(g?V z^^F@havg;LXq`atL7G7DL7G7DL7G7D5%`wBudnal$AQQdfk2?Ftc=?upo#z0Cqsw~ zFdB{ArUbnfB6y(l1cDFJ1cDFJ1cDFJ1cJ|h4mhEwW}?x200000NkvXXu0mjfZ5md4 literal 1501 zcmV<31tR*1P)(ImKK-G^|#z$yo&t% z{QUfUdiPCV+1c5doSgi2OBiotYinzIdYT#Wdp}5}Qhk>njQ3JdP~Z{4>lF+txK=Qz z;99|;f@=kX3a%9lDxawppWlRpgyiJp93LNlxh-@j%-zSw$Cj3sgoK2EfB>OTn46os zy1M#3HoPPuf0R%56^f!LiZU9Fsi~>u<>g=N>C+Sz7T(?6&CkzUtyZJaSW;5b+1dF$ zQ+sDZz8H$Z)YOzmgcatPr>7@@KtNHH%jN3q?2L+vB1y8cvhw-)84h@Pd8x0j7YcPB8rGR4u0)f?PW%bM@3ji1$9hFEV1VN;y zr|Wb&uIczi&=bO{3;^iu?F|hL6$*t74Gk|ZFEH+KI1~znNF)-8L<)t%;c)QVb~>Hy z?d_3~kwHO0{r&y?w)ufCZJCk(wO+ZuzwhhoOHNJ(01OQct*x!8)#_iremR}aj*bpE zrn|fQ=;%nR)oL`F#l^)BHMw-k%F5c>+N@UV`uh6z_BQH40d&O84L!E zMx)Vav|4R-dAYC!otjEGeuEJNlAx?hj764 z^|eGIf!ndMu?B+yZtHY9@KImk(us(O7#W+~DBg z`1tsRg#}g-8n@f6*Xzs6%d@ky`DM9muujJ>f|wAl6JchFAPCm%(Qz)@%<(i_PWbuC zT7jIMor%Tbr>CdH#6);KdBE%|dcB@`RyLarZeLwp(Qz&vh}-R+o0}7h#c zmrikU@&5k4)9Hj)1`LLTgd7|k(8p$GW~x-Go0}V_(`h!Fo12?uG8w-t7p&8vhl|or#Hw#Kc5`Af!^MTCIk`fq{Xbpdk9#)z#I!ygZU534(}@j&5jZxVyXKmjxUb zDC=~HBK!$qRR+JGgGiFBtE;1*ckFh%TrP*tL2|jAzQ1tUetmsyZEXz?4<|`-aBz^{ zHb3wCiVwwDnyFN(!oou8?PBd~fp?8Rr~gCo!nD9|5||&T;CK8ORB)|eQ2Fj!@wQIu zCH#oA;J$)E1=k7&6 zzez?$26NZzUKe7#7Q9};pn_`!g9@${3@W%*FsS?o;9F&bSmn3+00000NkvXXu0mjf Dj*aK0 diff --git a/inherit_graph_41.map b/inherit_graph_41.map index 9f170229..cc8ee2d7 100644 --- a/inherit_graph_41.map +++ b/inherit_graph_41.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_41.md5 b/inherit_graph_41.md5 index 6a1c02f0..f541790e 100644 --- a/inherit_graph_41.md5 +++ b/inherit_graph_41.md5 @@ -1 +1 @@ -b029d8ee61ea5fde878355c78ea5d173 \ No newline at end of file +834e9d2b8735fbbf887c02bda2072df6 \ No newline at end of file diff --git a/inherit_graph_41.png b/inherit_graph_41.png index d336339a36ed5e3e8abfe0200f370cb4d15e3e05..ede55f0259732e4045f8e52efbaceaad75d28c90 100644 GIT binary patch delta 1071 zcmV+~1kn4t2C@htiBL{Q4GJ0x0000DNk~Le0001Q0000b2nGNE089qAYLOune*@=9 zL_t(|ob8*>OEO&)$G`LRj$lD%KUN`DLIe>7Q4rLoMXkbJLBEKoO<{{RLKIP3OM<{Z zz?E7pZ51veup$>m;UZI`f+R2yjTTPlStU>E*!VbF^FH?jcQI$qx#t|d+h1YvtYF-(!D&zbpkY zzUJZKK~#^dmG?m|r5WYN<#J(cY%J$JcIGJVnXy`}7Dl5He|L9xlKPPn zpR1P5%}q2kG~oLBT2ep7BKovh2qu#Wkw^pw2M5sUbO;0jSXx>_EEdD=?rz%8>-D0! zxjE+?Mxzl=Pfq}Va5#*6buF>%@+&?bJid> zN2WcO-{a#W0ibw1{$+kC@qhZ*Y&OzpG<1G`UQj<$$fJi#mTj}9rUo{f4Y61(Z5tRE zKqL~8V|rPrsHgw{q*5ta*dWtKuKx7fm;c(#Uf9eX2jg1%{9)`tY zK`q(d+eD+i@Te0MGN# z>2$K?kxElj69AyQyBlV+8MCvqh{xk)%U`s3RaI4(nwrAsf9NROZa2c=Fnm5A=H})w zGBSed>gu%b^Yb&J(P-9?%FN6ROePcDZZ{&42s|DSCMPE`Jv|MTN>ywtMX|QF28~98 z<>lq_B`si?iXsRCZES2%XJ;p=)oRk~^<*-c=;h@l?E@Lkyi_Vh7K?@2+S*91R+GVC zpw-n?dVPKUf8>WUZJU`sKA(?xo~OgZ!%y}fd*(4pOUZxdF}?>`UXLk_kN2r!kU~CX z{U^m!ia1}vwoL`Y#8WU#JO#tVQ!t_rEH0O;oOLin@Or(X_e8}L`&N+gbKvOz^4$FI p!Tz78WSDpghKZ+On0N~2H?Tys&* delta 822 zcmV-61Ihfd2)hO$iBL{Q4GJ0x0000DNk~Le0001J0000b2m$~A03ofUAme}_15~)-w z%aB%tq{!*w;+)83TCLW2JWkWJOiQbh`IqQ+yEdC`RWpADVq7#DrD?iUe=1ETldrF@ zSS)sTcgIB+zu_x_&udv`w%cu%Wz*^OCdtiaGZYHtayf7_($`x;lB7m-=VDGyP9~Fy zWJvyWK~yrC6Zz5a?{AC6qOdYQd8wDnWvkWt{{F7KRdIciB>4(t#03I@o12?PqrtK) zOx3{-MB2g-pg2CVxf6GFQBM8FncBfJ)9LJqbXC{+j7>0{(zI+H63>FMe0 z?5tL+F$}{nOto6|dc6-14@yeOR~G9OMOiGCd_KSSlvQ=MU|gkAxxBnIo6UN?-r;bh zQYo6IxeLfF1%ku*e|(WE_xx8aWANrZkM13;+NC07*qoM6N<$f?D!{ AjQ{`u diff --git a/inherit_graph_42.map b/inherit_graph_42.map index 0829f7be..419ef49e 100644 --- a/inherit_graph_42.map +++ b/inherit_graph_42.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_42.md5 b/inherit_graph_42.md5 index af6ce610..630386e1 100644 --- a/inherit_graph_42.md5 +++ b/inherit_graph_42.md5 @@ -1 +1 @@ -c866ae9a562917389c3a2fc5880921a9 \ No newline at end of file +27d2b5b9c3e6fc45391b12f9e54f9d9f \ No newline at end of file diff --git a/inherit_graph_42.png b/inherit_graph_42.png index 77f020a33978806d863a86a6d2800532701aa476..92bf631a564ac927bff6dd9276b5be9be7774984 100644 GIT binary patch literal 2240 zcmV;x2tW6UP)Vrz9 zx_kF7TT&1n$K}hHBO@cp$A3PVG#X7^T^-|+5FSZgU7bdwp<2AGC)L*0GNlLM!EiVn z3k$k4A!q{?6M{BSF(GIJ6%&Fs7E(+YhUMnw1_lQ5c)XyXpn`&e+1XiQh(kdj5F{oh z_V@P#0D60St?z5}h9HJ|dwb!YM@B}@oH-L17|7@I_wV1YP$FMb!SFT8<(p9Tgg@=b16&20T&pV^a;l4QqPNAlz#=>Hg zbLY;*#>RgB{CRYAw5h2{DwSquXA?sJ0F_ELJUl!!G}PYSE|bZkqM~pd9~&FHdiAP9 z&x;8`4E6N%K-_AzT9HVUnVH$z+S=9CRa{)WV#SJAuU^FXlQ6mOw9cJyhBy+(DwAy)YSZA zp*}cSOag(RwY8OeY-(!Sym_-tS%3cg0RZUrdRK)mEQG^Nxpe7LT3Q;_BA3hK5W|9653%FE5X@R8&;RWHNH0TrNL&@E}n-1Q>>i#p1HEGM7|2 z2|dLm7K<}7GPGK)%>Yzc!^6V>fQgBTo}M0io<~PVr>CbEAHsUbnvEMbs#Gef#b7Y} z{{7pgXR5KHqJq!oH#av!oV!~*0HD0QeEat8q~-YWmiv8tq`Bqk=t zB~?yBPcf-fs@=PH^LRX&Om_eN{egi2YJiT84uiokH8s`S+nb!693CEySj-x@9(- zNz3%~^zGZXlarI(t?GYJE6d4a?(EsK!NI|=U%&3|?p7!i5fKqNIXUnex41KPc6MI4 za6u>(W@cup)oNNoz=sIN$H)Er{7#=ftyC(%e*Jpm#tjaK^YZ0OayjvPJBfwQxw$!s zL~{Q8dE&9GtW2lVF(#gzkd>7c5)u*@7iVGD>-E9G!LhNiZ{NP{?(Tm6{CQ|-=&@tR zTvBB(DVus|xHFkdru_VTiA3V#> zfDe&qG@7)uG=G18KA#^J7WU%B3+i&~pEL`fYPFin(;GfTLsN5CMg@uaZ3Pu-vi>b{*ho)QxlEeNSG0C zkHsXlG>eIueRmU{E1vyh4zXllw3yiH&7gXKXaLX_4u+G0xP_;{Ce+)wyMLQwt2cw{ z0iprk!ohG-5Vw#aCIRfe8epq8gX#gI0p7yFa8eMrkRc|qE+$5gxixFnJbLtq{1zoT zI{MeIUp8kFFAGd2laroPQ&XQleM&yo)zzh>q`0b~va&KiKY!V>|L+Np$CJzDm6er{ z&~8c!;?|jnV`F18Gc(Qvq7g=msj8|czfudh!^O7i#jFDNJ&92|tiS{Q)cR|9PIW>7sqG~mz{4tp}(loZ4* zJOu)ULJ=7mSyff__wQdwl*PbuF?lq=qZ&?(Mx(n!SQiueZq8XetKr1Ui-oW7J*jKJ zb9*x&u$vUUcv3NW;{G~hDJ6xDIRtH>VnWacDkcPNpkhMMhK&n&YHBL;IuJ{Me?FN4 z0s`!{0U;0;q@<(-1O!kmoTc=uDS}pBNwDBJZrf5h}{->@0 O0000;r`&t)7xz+Mi;We+3Ic)Hv|p$j0kRWV z(#+R@eJ*E101(&g5nAe?i_4KmC`ko@n8dWzRZW7jcXDiA7<+;H@n;anq@}}H{qeld z60BeO3gNu8dy*I2ad~bC0_=KgDc_?qY=JO3U|dhtSuSO+6+EG*Cn8z@Oy@nRQ5c+m z^Y0${;uedGlYOhBje!@VNx8>YBfkX;;nz-|uC*<@go^zQ#1T`dTyf#}+m)Eqhs`vF z_^2#=p~a=5LD=s(-dilKu1=G+l`tS|FHTaGKgq-b#2UYatRL3wC)Jg78e(nhQkds3sXGjn>l%y z-hfCG6Wo>6)!&K`=^1W8%7PFuIIpa%tip}ucR$6_;^OEeeg!olc=$(~&hYU_CU)FO zu7kb(TL=WQ{+$r&NBikmj88#VtE&U~9scOWe)0`y%aMlYO)I1iY54p5`_X^-pcQjg z0I>Z0h|R67FBCMi0*C6PZe7g2Tj?d|-=#>Tob&o9$u=v+*Wk7sQU zJ-!K|u8#1Tn3#OtJC32;myn1aqQnm@peBOUMSoThX?i*qNLOQJrqLtI*@jFe=b4qKlJPfg%VESW&d-S3+pv(35YpGL zT*?OOUFL>{oVud7lm!i@L*B&2v1G$Bf^YBS0X__JmAm#9JL?LdJR8ji@Nhbqk&!Xz z^ys1Sh_gdTb%Z>AECz?;Qht5H4TVCfv@p)#`1tsYU3$fdv8vGl(=Xb=y?RRz>exP7 zGjz4d0_N=E5}{x6JTNeD-sxP|g_Gzk{exWjoAw%O#mr8?%Gw&yvq@?)QKR?>0tq}l z^7z-J>wJr^mfzWMrj#L`rYCAVtQfbMtkpMy*`AiX!Oo8K@!

          dT*20qWA8+g0zeb zBhrY#jKyNt_xAcDt}@kDK|iNIvH{9%C!4ht(6)3yqn@9I);BdtQCO|``1m64FoXH| z9mv8I>sw!>FbmCxbvVh4iWKWmF$Vq%F5pL zb>~LMfoO*l&LO(t8ckuw$|!#^|Wh5DAK~F5{W(Y)zX=D19_f<-6ydU(YPbX zGg;#t{-g=-17B{e`|zWw{dp3SCsEyfxgEX9gm_3Mc!@e7!&{QpM9WhAv*iShjv|Z9 zo-Fs9nwt7uoWK4Vq|D-md&lsUcSH;=Fvg~W8Xr&`Y8WJoZvux&GkVUW|Ng=FXD$$LPN( - + diff --git a/inherit_graph_43.md5 b/inherit_graph_43.md5 index 32c3ef2d..46795b56 100644 --- a/inherit_graph_43.md5 +++ b/inherit_graph_43.md5 @@ -1 +1 @@ -0532a009c612d61860d242ed5c02f6ee \ No newline at end of file +c9c4b81a3ce11be2428b060a81596cf7 \ No newline at end of file diff --git a/inherit_graph_43.png b/inherit_graph_43.png index c5cc62033c1dbfd1d0522a604bc7ead023ac698a..a736bb419de39a9c9c084637eadf871f7d3a288b 100644 GIT binary patch literal 1701 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 diff --git a/inherit_graph_44.map b/inherit_graph_44.map index 95ae6d26..92fd90d0 100644 --- a/inherit_graph_44.map +++ b/inherit_graph_44.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_44.md5 b/inherit_graph_44.md5 index 0065e0ef..34651d5e 100644 --- a/inherit_graph_44.md5 +++ b/inherit_graph_44.md5 @@ -1 +1 @@ -d7c36044078187de8be4193fefea9aed \ No newline at end of file +01ed2c37faec8ef8b3b0f0ca6f6797a1 \ No newline at end of file diff --git a/inherit_graph_44.png b/inherit_graph_44.png index d55f4f4c4f0ae014f79ac5aaf4332744406c4707..e06fd7fc2cd8e57368a395f7106eb28570b4451b 100644 GIT binary patch delta 1407 zcmV-_1%UdT34jYBiBL{Q4GJ0x0000DNk~Le0001J0000b2m$~A03o<2uq03)( zTsRz_ot-`RNSA=w+1YS7%Ft%mT=-&!ii%ECypg~7KdS2 zC=|-cRH0A^!>|t@K3utSh52mo>eZ{l!a|ZHEf$Mftv)S&3cf* z)YR0eo^&XRl1L=KACo-*fM76~lc|EiAPV2#-!GTTqtPgY@W+oIN~QAAqel?JSS%)& z%k6eMeMn17OMQKPmN}=Urhe&R7TJiS^W}tpAuf?f+_-V0v$GRI*wxilSy`D(CefIQ zi3uFXx3;z*gkG@zZEBuNB{tGxg3?TSggIhT_TaFRI1+I-lL-WR=u(0Z5(I(c zICDTC5I}7l$1~nd004nNfNs;`=s7=r{D|W?gm7hL#b`7d42F)54m7f;sL1E@(Np<+ zK6>33FJ6d5qSe(^9LGH#V}RN0d*?ynw4WHK3#$D=3;m7!2bsZ^r&&!0a506RN7 zs8lEvU%q@ne{G-7_xSN+dXn_7fygFm`2Bu`LXk)$nwy(@dV1E@)}B3khF;QWG)NYL zBuUiR-QBfXtwTdYb#--iyS=lsGZKj~C(pRznPFPYe#h*cTer}J4u_+nqJkiZjg5`kf7;r+ckj~gB>kxh7(1?^p&=Ly zuCK2b7Z>;U_eUZT48xX}mk$pQA3l5t0C@lY{m96OOeXVqJYT({NCac35Ha&l5rQzH}#Q5lU!+uGVB5{W{g=|T;?G<-ahC;797{NHEaAkl zB*V{x)6>)EpX1VzL7d5CI{zG(4h(Ytk7EUQk7EfZjwPHpmT=-&@;{4^_=$P6MrQy3 N002ovPDHLkV1oOCuQLDu delta 1177 zcmV;K1ZMky3!DidiBL{Q4GJ0x0000DNk~Le0001N0000b2m$~A04P(NK9M05e*{rU zL_t(&f$f@2NHSX($H%L|vf%!KD>03#Q{JVI>q%REvsQ zmSCY3xN6(NRoPNa1*ZZ97hx1Qe#hL!z+qmU-n#Fd+pCxPt>*dr_?+kb=XlPDatMNe zSpFS<{pkk&53nXO0Ba%xuqHA9e~%hGJw46O&%eLF|EX^30xp-kv9ZzG+6t7PR$?F! z@OV7m-Bi8d@puA(09D~tC!L?4e^)mbab@0xA)-S0Eqkh`zVV3&Hw}juh(0lf6(%koPWxH zQ4^HKaa^TRot>SL;_2zBTCL7zvo|+4a=E-zDiH)xEEeT*`R(oPS895_-k%g|@D&rQ zZ$Lhux7+O^kw_#G+3ogxK2M!M#e4{YD3wYMheIZl@%jAi?QQVt(b17yE{9=QtJMaB zL7;DLZVH7$fj}@dHB~4Se@HzRiV-mKa&l525Qs#gt*tFE zXe1I5i^b7sG#ZVzw6w%xF;X{~OfHv;Ac&KblfJ&bPaPx}F|pbmhr@xQXd;nFBoaM6 zJ

          v}qt*TU*oX_3?Q8<>h5|b{4$a-{1fE_?XFLoKB}srvo~Qf1=4`GMP-GD7w13 zO6os;{J6fp&StZ(udmb7(_>>}q`tDULgtgrP)b+uGW~;V|e)p-|AKfv~;3y}Dfpf>Nmzd5zMm3b3k7|!K#2kT8PNzXWbtQ&E zA)trDVTnY7VOTsKmq;X$NaPoz{~BgYY;JD8zrP3J;^HFM6AcE#($W&C>vTG&)0xR+ z9v&V{CKIToE+g*b`}I1woL}Xe9SUqtOU9T(MZ}^ZD}mJceOrvl-+&91f6A zKCci2f#bMRf2s8Od}Pk$ut ziF){NL9Lru7qBKW0Ba%xuqHA9%}=Hm7Z=~(M}0$mX!QI2JRXg$EL3 - + diff --git a/inherit_graph_45.md5 b/inherit_graph_45.md5 index 188d85ce..5215c8d3 100644 --- a/inherit_graph_45.md5 +++ b/inherit_graph_45.md5 @@ -1 +1 @@ -02fed3113bdea3a5e53c82b05dd542ab \ No newline at end of file +dc45e404b2320fe728bfb776d6c634f8 \ No newline at end of file diff --git a/inherit_graph_45.png b/inherit_graph_45.png index ed7a02cb3dd2cbb631552c37c1009cb22863637f..c629598692a548f42c260edc0cdabe76d4550ef0 100644 GIT binary patch delta 1125 zcmV-r1e*Jv2&lQt*t_Br8p4?1k20I$;02SFT34-czF2Z zTPj{mCX>-hqk-)m008h5 zbUIzyN+uSIC3#M2e06nIe^XNvjYe@C*J`!x?d?Pqa2%J*C2TxVXS^TqF{0Zf+9vtGT(^>2xOIv$M0Vf3B`bB=Yj|l4$1k z_7(tOu~-QDWj33$$@+Z0($Z3;QkhW3Ff1OA=WaIBue?1UDHO{1__)Df@OV7u=jRfM zgkYlGZfCRE2!bF8A`}X3HXDsbv)OE;qoV?WU~g|PcRK$2_uP$;BUt6eVF%*@Qt(2&pPgYEH~eqk7v z8Ta@1$6~RKjg6_PDdJKRiDY$k)oQgqKR=5^B85T`3Q4TVB$Yij_2Kp>D> zi^*gH0Mu%AAP`U}6a-}f079WqqtUorF1OoFp-|{_I&|l$Hz$$#6^%v(0zpMZMOvI- zVPS#6VEFz1913akD;y3>rBXJV&0?{pr>8Lt!*N_LmseF)@%jAS-Cc=9Qdd`(R%?BI zoylajw6vU_f1ZMr`ITE%tJU)P{F0KAwzjsDlat(?;(3|(xsl0alarHwqEJ+1`t`;4 zukZ2s`T73-u2QM?_xJOqS%l$CI|&6v3)>@X^?a)O6{fBIx4aC#PV(J(O1e%+hVHhrA51=Tfjr^j@$K!+XfzhF0f6MKqcjLGe+T3us?pI=j^m`Ta5y|LFkrD*%w}_cfB(zNi+U}T z{x1T<@apO+ilRE5E<=^0qodZ=R+GtuVVKwJ%~uns03D_6OcX`=LTQpD>G603L6Cwy z9?$gjwApOVnrCfo?fCfEfA9C--QDp#KR-V&g%JcXH8u74_{g$seSN*#?N+bN%*n~g z`T4ojQo1T5BO@e9zP`Smo}Qkao#m?uBzGgRyStm@Nl8*nlG)zgzPY(6iefk%wpy(m z$K{g8;c(pE-b&Zc&(AiSO&uSL#jI9qECL5S&iu%*+giVejwn8S*G=;W!?NMAR`&O-&mc8_{Sq z9*;+(QF%#HQ3OHcf5CrxdV)UhJXx#Ao$v4O*VNQx=vhLoVgwuHD3s2GVVESz zrKP30xw+EP(j0S6PEL-EjfFy?kB^UFFgQFsEcrQ(D=#lED=WLdzaJkTPgk_9t!;UE znd7)fBr-8Ek#7~3%XM>e!}B}@LDC&5Ze-+c=IR2-4Eh;`jTrDgfqxot56+-mR^zujl!(sC7*7{_!gag5dRf8HO1e8Uma7 zhXYtgyB@PMMI((_5j+S*!!!Jz&)tD&Z|vr}op|HDJcH=ym0V9;~~gQg=GG#$b44@5dN UB_#x6g#Z8m07*qoM6N<$g3u}fY5)KL diff --git a/inherit_graph_46.map b/inherit_graph_46.map index dc09fe38..1aa2a4ba 100644 --- a/inherit_graph_46.map +++ b/inherit_graph_46.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_46.md5 b/inherit_graph_46.md5 index 5d1ef01f..3b2e751c 100644 --- a/inherit_graph_46.md5 +++ b/inherit_graph_46.md5 @@ -1 +1 @@ -6c5d0ee804b4e8716748d9f7b9d0f387 \ No newline at end of file +082fd0f3d5fc2a5f8089be3dcad35b3e \ No newline at end of file diff --git a/inherit_graph_46.png b/inherit_graph_46.png index 73149860b3e325eecfe79a64f0fe6771db1daf0a..e46cbae1305d9210b67aa97a9784d2ce581402cb 100644 GIT binary patch delta 1371 zcmV-h1*H1Y2;2%GiBL{Q4GJ0x0000DNk~Le0001O0000b2m$~A0LPK=0FfaSe+3aq zL_t(&f$f=VD0_b#$IrH(`r%I-N^@It3&WPnN(z%}DQeT);sNCWdw`H~Ns5+B@jxE% zzymc*a(SXCS!-itp-k?#tX$T{8DhS_2di})=kWjSe|~=aJFiFkem-ZP@B8~c-|zXJ zeMbQRKqUVe>faXdKY{d-7)T$9e}VLo7=9odDwV3Ir{`};`Ci1u#Z^~V+nTTDgvkp^E)~^EEbC$VxZ5Tj}nPQqtQ%EOq`sY3=IuUPfyp@ z)>>00lc~74*vrey!^5MfsOb9o8n4Lh?X5r{pin4sxm>MQCnhGQrlzj1uiGwAsZ@Hs z{^H_dadGka`MI#L@NJR1f4jSwm>7*lBb7?m*47#t8b(G&Qc_Z0US8}O7(g&OI*N*5 z0zuH;-X31${VapQSYBSXrIwbKSS*(Hb7p3yKp@cRbo=}J>FMc0p%70%Wo2bfP7X3s zUS3{MP=G1m{QTT{lTfMJ+S-JK1dGLDyApD zl9H0^>uXfar>7?xjiyj2tj(2`6*`@cCxFdnE0s!QvKPf2*uU{K)ef%Tq8h#BjC6mdvwzj;zz0=dvJ3Bk~_V%oCDwVpkvlAB= zXKgAJium|=%;LAVf44_RM`2-M$i9C5{23S+h!SvjcXx1bP*G9A=kpm12C|6JXuP<% z;PH5<;yfNtr_TrTHuIG2}~YPFif;b0bbb8~Zd zci-IHv?&1q7>!0u0gsQ53kwTuHXBuhPNy@OOs!Unifgsn=;-KwVE`I?d}Og$w)F@> z(DwGWgM)*wf3NR{UjzUY6clW1Y}g`cX=xUV#X1FgdwZLkn`dTb1_lP)+}z%&BNPg| zy1I~&si~>o9YtYbVOv`pa(6bH%~GjUC=~u~DG0J_ziw%12@DLJot-^AJX}~D6T zEiFaPzIXPSl9H03prF~=*@J_F)z#IktgP(pYyg1Ce`IoYc9zLxIs|wE&d<+1Jw5aC z@{~%YPN(bZ>x+$zb#QRN6M(72WHN<>ga`zJxw*OB-QCH_Ne+jTm6i43@BvZ#_4D&{ zXJ=0RVt}k;c5oD9+B# z#9}d%f64Uo^D8SWGa8LtE*DP#o;DbUYiepDA|jlfox{V!+uPgk@9#exKEU#k0uaxy zv9U3+SPaO25I@3tZiYNyB!6EM1I9V-*MUNzV8*}Tiuuw$enG$RAlEf9kUkOv=_4_a zJ`w}QJ~K8p_W3%#7iVW@K0ZFk2!@YhvG}v}F??f0A`!Al`9|*+Um5cGNDQQp#6bE; d45W|5@C%=^fmSaBqY(fA002ovPDHLkV1kL*m!bdw delta 1103 zcmV-V1hD(u3epH6iBL{Q4GJ0x0000DNk~Le0001N0000b2m$~A04P(NK9M05e*_0f zL_t(&f$f=1NIF{>#;nt5EO1)v@5bGZIi1ks|kr(2yJqai)zs#2yzj$ zj&@qh$XaNY(3emdi6jnT3(*S8DR3glxeH;K|7c^^dnmnkekzTU$Tnrz+v`cnpQRCPIJ<5dvI@5a2?D02d+z$_cUX_Cy!i zM{yi?I2r+0UE zGnq^@8XXxKSz21k4>_GqyWRfu^b`t(001b8veZc=5*-~KLZQ&(@!&Wfi^Xg<+uGV1 zHGw2ak|ZxKE(n5{nVDgne~w{TcXxMBPfsisi^XESy}f$99>cIQS4GlryWI?>C`IQ` zBKxRND9mIsC0o3{zBV*8uuQO8tqzCdI}RTn9%M2ZL$_Egi;Ii&Qx+B$Mn^|W8p{`P zyWMogec*f8B#psflqv!t z#Maihe`PN*^8` zF1#jMES8deNmwDSudlbaw;vuJ;y8}uxZm$@YinCsSz%cKeg$Kwcs%+Ah6B9Ux1`~3X8v$OO45N~g9<#M^x=}ab* z$z;;$bjs!O!ma&P5eOmXa=DF-4V_LWkw_#GiB6~6+}tcQTGYMI=QEj1jg5^0fk30t z*lf0RI!(=CfAIG9#$x0C{@!Y}A_xKikjZ2wlj-E-gvA3xzrMci@9!6hL?V%>udgo@ z3YA - + diff --git a/inherit_graph_47.md5 b/inherit_graph_47.md5 index 159342ba..69f912ee 100644 --- a/inherit_graph_47.md5 +++ b/inherit_graph_47.md5 @@ -1 +1 @@ -1c7a9b5b86003e92c3bf0c8685c00950 \ No newline at end of file +e52a4a4bfecea1f0ae8945be83b4b6c0 \ No newline at end of file diff --git a/inherit_graph_47.png b/inherit_graph_47.png index 5c085f50fd04a4900a9f101108afa159ed2d51dd..e1573cf38996efa68577145defd5e9ef2b86b987 100644 GIT binary patch literal 2383 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 - + diff --git a/inherit_graph_48.md5 b/inherit_graph_48.md5 index c674602a..3c2c76d8 100644 --- a/inherit_graph_48.md5 +++ b/inherit_graph_48.md5 @@ -1 +1 @@ -8d5846296d9d341acf795a87b1f5cb3c \ No newline at end of file +a6a971f5b382796e3cf1e1e195372ddf \ No newline at end of file diff --git a/inherit_graph_48.png b/inherit_graph_48.png index 274b244ce7288cb2c321032f242843ee56ce24ca..313ad8c704f81cc5b8f75b0406a258ab4a5a06f9 100644 GIT binary patch literal 2068 zcmZuyc{J4B8y}TPLQM_BkbRU&Lk45YKC&bkIkrZYC>8S}OQI&t7-JVQjikjgS*I++ zudy^ocv+HOi0|;QR^A=dp&Y$(7mXQVm?QOBbnmF9a;%8m9bZ~<<_f0Z%;##5R zmolrwIvSL|#Ke6ONlZN%VHwm;K;j$^_L3f1dXs0L%Ha0kCi7%f-Cj_Ov#{}~*$JQ1 z{_w>#nzpF!c74p^?I&&eJpCl?Q768_JndfZ$XtDArcT834*DY@kd|};JwK?ISn`1L z)6KJ~$)j4t5idrG_xO`i>;2B4;Np@n*bdB9I>9}owbhz!$bMW@UYgpTy2&ZxiwFZ=LA5CtEI(YoVfp{S}IM5w3gQ;CH}4V zlXx?Yv4^2>xb?`$NQK|P>DIQkoVRbainKEPM{2@z9gA8#G^xE_1E!{?$4;Dx-`w1k z8+6fCewCVfNK`~bvCaueB9RJmbFrH13k!t7%3H8#3MG}vL^d@xe&P>RAvVICval0^ z)5Fz~k&(v?4YM;dGw0_|EqfJc;3JO-&=A4w3k0X&`(&x?0c0(XCiRUo)f1?W= zjtf>+a;mG*n27b0bQ`r6_%pC>I*mqR3@KsBy}iBazkbXQkQy7YHTQl=)z;R&E-j^4 z=QX@Eiz(*%qTs7+#gbAmj5NmKAk*!1(%u8| z)b+(uv`}C;oq*TS(CDv?(91x&6Bwg{x`FAfVRl%5#f`(g#V)%+(npTyd@ShlHO4x= zO-N3@dgqSxqeqV{EiK>YSR{Y?`ZeK9*n;Bm&q@v@+Jp9t2OKN&L`R|wmm)EAIrd!YHDhF^dKGZ)_I36W}hAJA&xf)uh3pOCwc`q;0Xqw0Ll{08XO3evyf}<`tU(SM^En(fpE&_+BMA7nX_lVE)4i~C;LBD)zC-; zgTXUBMNU}k>c-0Tn*>6BMFr}Lf|;4w>ejEYI4boGdz!~Hi;9X${mnknS@5Srz{qW% zVa#P@WKa?7eldd@E2TX*XU8}sC=6yH8tv6uy?5_kD`sDsb>2j6seQrBXU0X_Tj^x7 zHI$4k#e+1pw4x{!FmU@Sf3Py8#T!lBuIZ5;n*R1JhQ-olRD9{_aq-vK_-&(mzPr1- z{iD3Fu(0E0#mmIqyLT%p7hRXPz%=~?2$Lk3@WXF!Z-1H%mRK7~S{4WzHrM7}_T1!0 zE|uWHBq1!huFmj^8`Hg>`+H*raRW-a%!&qJShJO;m%>A*KYl#Gk72s8!51%HOh`!R zPZR>>bWydhcPgUM&J`K-!BaxUK0XMkQ+ScI7V?uP()f45Eia7#tY>Dz+2P;6e?KTI zyFZDix&iabpMXB4&2oKE@W8S6LMt3{$|?09S205k@i3$pkDK@hu~S10FJ36J`NIIC zT0VdNT;l^W24J1b<(@mi&dpUlO}BBh$jkUJ71Y|FZNLAcO%;x+Ytuuhw(35`A~|*sfi>fVpbr zNwqCwo=JRsZltGxJ0Kw;x)~S@&8E|1|8x7Bvc5jO@A*`f2a#wbb6!?%5v8lE zY-FTxnlAQZarAix(WzNo4QW47<`#v)V2rWS^72v@JlUhNIUDT#tV zWnpJ`u&lh?Q&YNK*Sj3HzO-Z<9E@7Dl2l;vXeV8E0d-|(%g2OfbY#RFP!I1``GW!`ah^c>W#M9!qJOROe_T_jtKfsW_5;fmz~(_#=C;^UQ;&!L0J+QbssI20 literal 1634 zcmV-o2A%ndP)`O&TqcxhO zl4YTVc2j(SQP9#w7g>}RT-Cl7^|5K8s0-0W!KUD&R3tH@Rji3N4JLsm8k*cL@-bXz zlABR7HlN(zYUbQC=lpZ#$7{0*0h2aa_TNu6|;FHzW z)y~e&P$=}T)L{PCG&MCfH8s(vd*-b#U%tG1_wLXoVU7aR)6>Jl!?1;5I}HsD9hM%< z(Lt-#GAww%h2aa_TNu8;y@lZm+*=sFz`cdxi-Yu*Kp;REyQyWCTO1sLZMJ5lj(H2A3uJe6GfcGVsS}HNk>PA%jIH>!YnN<<>lq=?(Q<;cs!m9 z7cOjXZ^O#1R%>HpBT16!>FK4Vr6VIFvBD-$VcZgN5hj&N>+9?7b~~f;w1Z40Ga8L< zw>zo^+J9kTp{}k@Boc{4qPn`eZ{NPLl{0efi^R`c&CShjxBKJAj~Z`9+wJzNSFc{ae3_ys?z!Rvzw*JsL3TOVMD?MK znVFd$kB7^J9*-w8Gjm^wOeWLq+qV%iW@cvOa(O5eqAk0-yJyavvDs|!C3?O7(W6Hk zlO|RnK$eK3FrUvymyWi>4qIDWBuOHq8VrV>o*vlJ-Q68kIh+eY$Fc?frON$zfcAlJ^glkb;Tx_ve7y$`_2m}JL zk|L(|geXLmh@-IF+}!WqzcVz@2OAq3EiElAEiDMCsi~=qM1H@YAP96W1nk~A$bKs= zEse2X-r3m^3jYgr^5n_h-ro87dB5NP;ll@)%VjVa*!St@&!2bi-i_=DxZ`v>rBW$7 z8eEa8sw$ySI5jnul9DnuHb#q)4oQ*@ha*-N#7#|zLPUw;3JZtB6h)mse|~Om zj_nZHfR~h%q^71mefkuklO)NFjSbl1a5xys(YfLSzjBWAR$*b`=g*&E%k=bgK|w)O z=k4unkw`>W79NVbkh8^@Os3Y>)>xx7@87?#si^?~R99Dzj*hYe>h=1^j~{bP%7;Q2 zxI`RzB!7x^(FhA`$KX`}gnJ+1UpV9-KaX zn!OgV35UZ)MMW=PzEmg_Q3Eb5Ey-juv)R19zP_`wW3gBo8yn+>O_V}JiMR{9b?a7t ze?K^AZ&|HYsZ?qFX)vH&p z=+TLZ35`Z0kw`K!GR~eod+**ox7$rCrpeCEzH#FQV>`(p;wcaaPMkQQP$=5k+P1c~ z7^AV~;5TpH5Crk|?OR4b`gn11QKQkEI(6#Uv16sBrNhI+T*4+qA)-WRVQ}j4@o}Y6 z2@cv@0D!Mwzt+^$WMyS#Wo2Ezetmv^K9)0`3jw>g1aJw4hK8D(o1+#5gFzE{#s+>s z3;*VW;fpBG1|B|9e^*JW=`;BiCLu}DTgiWul3!sGg4aY0U*O)t@CEKI3}4{h!th0u zy*%SzW*7_?*4Nkb^YdZLp5DsM%_Rte{YNtlh6@!H74WG5f4au-1m169_yYG9hA(h$ gVfX^~7KShW0 - + diff --git a/inherit_graph_49.md5 b/inherit_graph_49.md5 index 10babc4f..00ea3338 100644 --- a/inherit_graph_49.md5 +++ b/inherit_graph_49.md5 @@ -1 +1 @@ -36b8ffb823d725e2c783a2b7a8202aae \ No newline at end of file +822ee13931924f1680478d3ababf923a \ No newline at end of file diff --git a/inherit_graph_49.png b/inherit_graph_49.png index f75296dee86e0c3ac86e2a95603319d4c7f5b907..5f949b1f0f416cd3aba7f475b6add4f8349c6488 100644 GIT binary patch literal 1953 zcmV;S2VVGzP)DB7@>lD7b8?A)4L*($nAD>jgTaH^5n_%^mLg_wrJ5J ztJV7R=T9&Vkdl&OHk*UNAUY8f5GpDvf+xG(Za4}^OG_&)Egc*jWL;LJQWX{!e)#YK zM8o0mi4!OEdVO+oa&B(!`Sa%^kqEO)gn)*I23F-=U0rd@M5~Q40bw;k5MRH3-L-31 zdV0D-p~%k8zH{de>zZ=8JTEV=r>6&w!ez30g{~3pAtLp}pdcC=8e&FRAqb+cua9eF z&z?O7gW=`NmjeR>t*xzkz5ejw!(f`z>HPBLOCS*F?Ce~*a;4d9Mkk`@!+;P$5O%vA zOz!LJ1LDDne!u_Ovu9hkZcR;1{qf@mQ^u=TuQqMkv})BVIy5{yym;~A{QUgKk01B; z_TIgFH#0LcKR-VbiNutN5HLDAN=v2R=>X+pV`Jzt(Q26{Agm4sgKD*U|Ni~$?d@;g zys4?FnK5I=qeqXJYr0&n-Me=$S+a!nYI1pns4=dGh|~y7CX>lz`o%Z+AR)c0QmNY8 z+d-(cwN*MlmibLIBqY&oU8eVGveVR8$lf7sHb+7R&ne>si~7nW+&ldpGg>-I+6IUcP+!`}gnk;hHsTyk0NsOtDxzYu2nuCpvoc zs7|LlaNq!+$z^3_4HO#u@Ep%w;V zbyHJQMMVWX*=n`c*VnVIBaujwl9Ch(McjE+=9+;(pt7>Eq@-l}^y#c(SiRy>&c{RkspA0OgcGu7peQODjdpc))z;RoUcFi* z5?#D_5ln+gPEK~a-RMMIf( zj*gt19Fim{#)UX|@E~|vE%a$!QH8t>jo6R;hHYStFV%CvLrF-}8ef|1% zg0xS-!{1E}H!{!ruGMN?xNu=}bMyQ6@1H(>x_tTaef#!-XlZF_Mn*<+bF;_e>Fn$* zC@3f_ETlsO^nS$S@f3bUK~EV0iN6iOc1>ckf zcXwA+Rf$BR2M->wivRfWBS8?u!^3gQWWubGzlY4!2oker7#|<6uCCVUbW*8w!GZ;+ zPoEBl!yp=oM5?N)va+(IQmIy}EiW$*27^F1Kr9w#Wo0>?PDCQahmGl}(P)IDfO+%g zna$?@{(g8_#PuLa^7!%N%a$#Z%jHX#EHAL!!WGhl=Y%Wu!89`FbH82-<`0sfLQr;PtZ@BSqh?=LBH%D{UDj8MV7ixDcg zcQHZ*_bx`Luso|ZHa1SZ4h#m(r%#_W8Vx+c(z`ML%7VfCM=+U8@SzC5xWNb%yx+wL n72LZRp@MrCBUEtjVuZ@SPZ{|;D-p%w00000NkvXXu0mjfswdC_ literal 1646 zcmV-!29f!RP)8U4V>yRzMvy%ef??T=3c=9AOA(2A*;eea zhoD}%jaoevKJ+jM6nrv#^Af%F(1REhSV3B}%C(~@UY6Ey8{}-{IXxUW{Qdv`=eHSZ z2m5`VcK)~T_y65*=bYX2k|gO6L}M8KwE+a-fOUyz5v)r@i(p+MTEs{mOiWC8z24>J z<$vV{`EO}zYHDg~QVv&~FW(l;g*p9ouQ$j{{DWl#mElo>+9PnKM11J>2%G_ z%~T8CUm{ur>k`o-SeJ+v!Ma4W2-YQ{MgFEP^?E(f7>mWcUhm$$d$Y5%Ef&k!vu6he z29z-}27|$7vpJp4>FH@$h(c+vt*xbgaYFXW5@xgc;K748Z{Ga={X4s+&1Um>JdsF5 z=?Vk__4V~8lgVT<)z{a5`0#Tw7ylvaIm6w-4 ze*BnP&1$utK7BeA3UL#oG6A*&2gTJ|Eo*5a zbBCP;OT)I|F={4BfNWhZ*ZuqVQ)+0&7 zo10(0e7U%|s5WMKc{v;o-?(w3va)iuLQ4DK;Go0dNG6liV0PBzsPf+ zQJHY9rVNU!1+zAFnURsPw6sLFBoYaO!9WcYMKKTvcs!m{r%oxRmEQUJ`CGScRaI31 zLh$)glB8e1ejPe==*5c{5?Gg$laqG4UFns{&(C+e-ShMFa(jM$e){K2HEGy3Jccp} zPiM1DdA<}yQ4oZRii#&sp0JzZX2La-PEf2C%-YmtadGjhSFgyHp`oGOyLWR3FDxvW zOeWH_LdyG(lyxad(#MY?CtIS_U&6TnH(PY(!+-j<@bG5@6Vq< zhlhu+T)9$MSjb+yC`Ly|tyZhw?+=H=;c(dR_gk&jU@%C{f~8>z?wD1X1hW0|<%`W` z^ZWf%Q&USzORrzQZftDiu6FL+xz5f`U{h*VWzr0a(t=r=x)eq6(W6HWhr?_(o6Tm2 z!_nQ{t@I8I3^X(}8T6+EZ^|`q@a!ob4_wV1=*4F0a1W9!zf<>lr5{ry}&&z?OiD=Pyw#ag9W(g}*vf??}YPo~h<*Voe0 z!p#Li)(`o2ZsZRv@q0)_i*SAyyzy|quiG4_?M=M3bwv|(xrv{rO}w>r1+U|X7Qwni zv - + diff --git a/inherit_graph_5.md5 b/inherit_graph_5.md5 index 14e66f72..cdc0d644 100644 --- a/inherit_graph_5.md5 +++ b/inherit_graph_5.md5 @@ -1 +1 @@ -11dd839e1a01f217fcb955759338f91a \ No newline at end of file +08d515e8d712741afdcd6eacf9c05feb \ No newline at end of file diff --git a/inherit_graph_5.png b/inherit_graph_5.png index b38f4e56f383173a75b4cdc6aa7042d7ddaac4a8..08e79a56cc89e7bbd9c12fd39c663ca064df5dad 100644 GIT binary patch delta 1160 zcmV;31b6$r2a5?IiBL{Q4GJ0x0000DNk~Le000100000b2m$~A0KBy_%#k4!e*{2D zL_t(&f$f=1NNQUY$9GahqG9BrG%1XPj2r}32z|{Wg1%4+EeAE}lOhlz2U!CxC8f94&WR_`WY5NY&Mb4{pUpMpF1O1KGUaqtD|Icx+ui3)`R0Pyzqc6)mpR#p~*AZ=}J&(F`e zm0qv6udgpPH5EY+u~>Y6e}C`4970H?QUL(T$;lAHj*gC|rY8UHL?Ur_clT4}d_JGg z=VLQp_W$tk006Mt?YN&h9FCZnn5L$t%gal(S`7fWySqaTl$Ms7OeTZDz+$mvG8t~= z@bEB)!`a{8HyVxk`S}uw1nb`)KnOQBHmFpp*XxB4s@3Z3?Cej?e+S3^-Q67k0KGFG zd3kv`Iy!Q>ToA&|%}oG+*=$C28;wT)E-V%cw=y#`b7^S_Ejv6s)ai78^6&HcXf)dT z`Z|QLyu5s9XecoMU!H#n2?;bB?cm@5o7~yi$;-=odU}e9iLqELm6eq|9&d7T5?jM! zvCx3cW?QXR+)9hZf0B`rfySAcnN?L)f098U5Nc{_v|6prW?NfZ6AFc2HS)Vp0M}Gh zRE&&_U^COx)32|uL?ZF!<)ym1x~r>8uh)-_jbUp{CKDPQA0N}{blgfhoql$9hQ@n) zdvdw_Ut|ab0ss&_W0m z3I&BiVKSL2f0aro6ecAlq33pLYKqBZA_&sa(SgqYkCh&eM`=yNIzqYnERC;~@KA(?WM#0Gc|KUu;e|Qt_ a{(k|dn$c%Rbv}~-00002Q@`4uuOIhJm&?oLy{E@}xzqpvzz`T# zQ|Sc$6_5xB5&=OXAcXoN7K^#vf9^~sQ>kpq29D#)%gZ*KP3ifvBEsQtAP^{bQk5VO z2!z97bq|pnw6n8Qu6!zn!C=VhK{Wz`L_m-T2oeFQCK0(6u80&U;_B*(W5f_5oA`gTbsGe@#Y5M?D^o z=B?}NYmVd0W^;Xgz02i#czBTeF$`N>U2SS=GMmlQ)6?(o@A~nnRBC>H-fFdyB)PV> zrVNtx(EtF@+uOUny{#m0cX!v)(vnCd^rwJfSTGp;(o=wl=H_Nm6g6*kcXuBh9lgE1 zB@&65nVE@+3FW~Kha(=3f5+o-hr_YBxTqiR@pxF46$Ihw>1lR$RxLu^000~w9(Hwg zWilE0a(sMzWo0Gr6pAB)Ac$l#nK$hD`I)9^<-wPimvZ~!;-bC1T|d5~qvQPiJU9ES zh77|no12>efM_&I)AZ}>Yu?;Sz9LRfPy71%D2kGoE{@~MgB5qle`L~RGU>;gOr~7d z--+1Y-?!WC>2!KzWW?w5<;@>xi72F4_V@S8%5oVV9v&MT69gfhPCq_Ast>Zax3@~8 zwY610zOAiI5QOg%$l5gq2M3KtqucF1K0cnDoGf5Q7*i zsi`SRlJw(0K0fB==4hIxD9Y>gW{Fr|UnfaYohr}sot>Sje^jd6BL0>V4XZFPFtD|? z_4D{#5gOkks*BIhPru(Ei^Yb9hJG_n)r-J!+-9@!JYQ4ut8-JCM1Ye0ja00WtLgMv zQjiD;5&=OXAR5Jz=lSyIQF+ua6`@dwAgX>t{Rsp?ghC - + diff --git a/inherit_graph_50.md5 b/inherit_graph_50.md5 index 449e6996..6771b49d 100644 --- a/inherit_graph_50.md5 +++ b/inherit_graph_50.md5 @@ -1 +1 @@ -868b020ace8c41333293b31d6f4ba3db \ No newline at end of file +c95b84852e0a546d8620f51aa9de2e00 \ No newline at end of file diff --git a/inherit_graph_50.png b/inherit_graph_50.png index 62f075467b8ea95df16a241a980174f491510bdf..f1df6c93d5dc3c543e19625e5ca7814173e1edca 100644 GIT binary patch literal 1708 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 Bs<8k7 diff --git a/inherit_graph_51.map b/inherit_graph_51.map index 8d245233..9958b823 100644 --- a/inherit_graph_51.map +++ b/inherit_graph_51.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_51.md5 b/inherit_graph_51.md5 index b88e057d..ddd45e73 100644 --- a/inherit_graph_51.md5 +++ b/inherit_graph_51.md5 @@ -1 +1 @@ -5c3434b4140d15887c2ce9b803ff2b94 \ No newline at end of file +036e932dc3e7cb59ed4d9b5e9a1ef1d5 \ No newline at end of file diff --git a/inherit_graph_51.png b/inherit_graph_51.png index 9fb87f9cb9e7a8dbba73b3c18159d711819b8d4a..f618b0898baaba662b4ee021c3c4e187b9d53b41 100644 GIT binary patch literal 2108 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 b7kEEq*ar>=E0_BKO&4T~K*KAounGSGY&_4- diff --git a/inherit_graph_52.map b/inherit_graph_52.map index 21765097..0df5da3c 100644 --- a/inherit_graph_52.map +++ b/inherit_graph_52.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_52.md5 b/inherit_graph_52.md5 index 39b032ef..d209cc2c 100644 --- a/inherit_graph_52.md5 +++ b/inherit_graph_52.md5 @@ -1 +1 @@ -f7bc24c0b02011f24f977e7adc86dd70 \ No newline at end of file +5f5043246b0fce4c7727867e1d5927bd \ No newline at end of file diff --git a/inherit_graph_52.png b/inherit_graph_52.png index da941f306545f754ceb83ba42e71dd5e572f00c2..93ad0979b8bddf12cacfeb2846ae0a2979e4bb52 100644 GIT binary patch delta 1225 zcmV;)1UCEh2+Ro~iBL{Q4GJ0x0000DNk~Le0001C0000b2m$~A0Nt$+j*%f1e}PFv zK~!jg?U_wTDqR@I$CqmvRA^F(WrJmd5E0lSq833UL5nOVqzEh`3JHox=#$)(i=q}S zYE|?JnV?zGB3cB2qHV%N$gvXpun5XXEwSb<4h(iPC!<@v-1)7ZdCr-?&-r^kbcTlG zI7AVV|Gv9`{{fUo1Say8Vv?RXy(`JPAe-bUscafq^73kj|{aRkwbYz4&@O!lt<)z#3LGw=5RP7XF_o} z95fm&tPTO6&zH$$*Vot47W0<)C-Tkn$Y3zI-R`rqvzeKhySqD)NaXQ&f1*-gGMU}o z-G8Y(z&Cr8oSdARn#$#JOG-+#T5V=#=J@z{R0?c1TcuL{rSbru?~zWY%gxP=i;K(3 z%34@hAo5E~O9Fu)B_%~Jm;3$xu=lpMwr*@}fH)Wo_VxAgc)X;fq_(!UKp;?6Rn^ti z1zH1vKvGiD=H@1`)}Ef8f0Rlk48tiYDKeRin2)b@q8<_+!t(O+ADOT~5QJe^*v$R? zeN0Tu)YO#Q?Vg^Vrqk(OuNT8G2!cvWOYL^M$z(zhq^GARtj^xv9*e~Su}Y;vQPkyf zSu7TjNYvHUwY-AhNHy8{8aU91-M@MsWa}N#ae?fslp?FIt^5{?$ zMN#y{=swpYkH^DcFeWA@yk0M`?D_c_48vlvfX-^QIx{mftd7}iCOkqA#O-#2cx!7b zFE7vM^To%r!A0d%Q-qMM7upjXVhGFpS0chgF`OoUEv*e*iI;%Oz&n?d`46XoMiB zwzgKI(dhO1{QP{v5u*Re$q9(}_xFc~ha>1jN9d$_=UN*a925uy>+9>s$H&{-+ai&u zsi_Gx`Tc$dgE2ope|~;GF)_hlFnm5AFjOoSV;E*On-K&V8X5vKkvRKzc6KBZ36IC~ zcsxLAU|^uSf4chU=*Vid78MoA<#HUy1AzdW%|;Mpc6JtYBi5Qysm#mEvsf%vtF^ee zxVgDGf=*Ox?IRuqgTaxJ5us2B4zK?HexJ`rv@R|#^7;JO*w~z$oYmD;Vi+qcD*}Na zIXSt#z5Vg=5r4T_Gcq#j>+7$st_Yonhlh@i4i1OIe`2v@GTHt8J;=ATv?L@Xfc-Ai zqsPZbg+h^*md0c<>+0%mZf+v$yx${QXsv3sS}K*||Mr^_@N6XX0TK0ojU37&aww0; zp*$jo@`xPDBXTH@$O-fANUc_XeH}lC)6>)R^z_h77>}e<=~vbBLqSnA^pf_E|Ehiu n)P6(`ALS7_lt<)H9+C4KPi#l_BtSSO00000NkvXXu0mjfGn-I9 delta 1136 zcmV-$1dsd73G@gdiBL{Q4GJ0x0000DNk~Le0001G0000b2m$~A0MtgX^pPPIeDZ@qXT8PlDMOFxIs!b5oD*8ZIMJN00;R`K``*&YAytp8uQ~#~BDk zQ3}Z~L;dOm{xC?th(Y>A4AL)Rf0W=mp-^aid_0@YepNQ#5VcyZR;xkx#r`@xJha(t zMNjGb;_-MkHa75)lGl^$c6+h%`R;UgcjrXN`xh}tzlcHlMT{c(1wl}87W&=%J^QOT zr=$?S-ps79bRh_WAc#t(GMP-7Og1()_VDmffDVO1Db9<7uisxNiXsSde|vkova*s) zCR<5H}i)91e%gW)BSwrPJx0qsq$4WHQyJf1OU#Xf&)Xkx0(Z z&$0I1-JL)nKvDGU?5w7yCX>maD4NM+ghF9B9L7u4*Vi8(ALq!vDfJ=PpT`%4;5)zQ z7mY@HdV0b~lF1~MO2yhoM@OBVooqH+Bob|HZT-Itg_2Ar!DKp}4&piD;c%GCYSm~oIZ|{w9jpb&C-pv`<5xpNgV*cDM?4;nP$fmABxe{eW>JRT@UrBX#Akw_$> zQmOQMeNK^yM8fCu4G$0Vcsx*;$z)P0m8YktsZ`4E_xJSlfE*ed8y6N9luG5#N`6R9 zPfxeEw+Dm4Xf!%9GV-C+Z}$s9kk!>yxm?a_~!9j32V^;?RLFMJ;&CSiDqoeot_dqI}&6>?-i9}LbS}K)FH#axI z(9+Tpl}dFwoj)u2k$F0uo|u@ZuC9h*cy4a)L#cOo?H7dN9`o#WJ7#==za4)a*!vv( z3$Cw!Uj4Hm{UQeG7coe`h(Y>A4AL)RkbV*4jqhnWMqk|iWo~Y6_ - + diff --git a/inherit_graph_53.md5 b/inherit_graph_53.md5 index 54a30c4d..6a368047 100644 --- a/inherit_graph_53.md5 +++ b/inherit_graph_53.md5 @@ -1 +1 @@ -1f37fdf36af1f7a4626fdb6e529e6fce \ No newline at end of file +050191547df11f553f5fd58845463842 \ No newline at end of file diff --git a/inherit_graph_53.png b/inherit_graph_53.png index 928b5a63f09d9533082977a00a0fcbe51dcb6e4a..c9ceabf7eee75d4243550eed4ca8b14502d10b8d 100644 GIT binary patch literal 1614 zcmV-U2C?~xP)HpMBYED}|})V!E!)V`wG9Dnb$x1SR^XVj)(t zAVQI#Uy4>r{!s}P3MnXpMcI#S3RCG9grtAitXVQ|GH9~``!Pka#p!gdJ>NebI|vs3IgMCpR=S#E_bzD5ule(a|wFI_h${ zVu-L-th{GEJw4gk*)o|dBO~Mf{rimm@Zm#}BvVsUD=I2{J|E|~<>lp1o;*S0Kp=4G z(j}Ejm6Vip>eMN}-+%Dn!OF@?wAb(VCnY64d-jaEQ~mn&tG>RTAc)k|RD;35%-8TZ zNH-ddd-v`wC@9Fv$}*WuNQ4l!w6tv9x-}soAvZVo)vH&0BFg*n<;yKwwhRpoac1Fc z1z&%n0J1=(!@mIlaJ$`{3Qf~-adB;JZ61&3_U+peiDZ6$-tBe+0165UTrSs}H*d6B z?S%^$IOB|rj3g!|qH#k*gI=$noSdX6N~hCRR#uu!CW0W)-oCy*rBWFP1W<4Y;mw;j zv$L}u4hKb1yLa!ds;c6PgLI8X)85_=A*`*f-M)Q05^vqQrBEm=7R$G9-=02wnx38x z0N@l+-hKP_nM@{{ro*#vwt`cP+-<#Huh;AU==REb=Jk4|QfYH@Gb)9q>0mI3E{~!p zbg{pJ{NlxnoSdA6g@yR|c$>`zAuK5=xp?s+gplzpGc&WN zrw1MHbUG~-3tt=v;p^A0B@)T(>@0-v-Me=H0EfeYg514(m#L?-vl9ToDTZ8Bcoxo9 zaEg(;y<(oZT&@s>>Hf&bNNH*5#*G_`ii!pX2H@|uE-o&j1IEV2WHK4#^6b&0M>}`! zL}Qsu#=alO<#Gt&(W6JJtE=bd=i}q!Q4Ne|GMNnZJp|4;XV0Dux!=^))j5QO2*Oe-@gwJ4+8*7N=mxByZie3cI?FVzyXy?<@I_|sJgnkLx&E1`0!zTe0+5rJawv)#A0N-l%R71UBww6?fdR2tJUuXMsTA#*G`9nVIO} zr?$41o%q3n2Wqu?-MV$#wr%U}?Pc29)zw9kWJ*fP>C>l|mX_e3-wtiwy!qI%W9&XI zE-s!qb7s?~O^Jz#27`g7X{48xl_ex3FiSVnyQQV2s;a8Av^2R~e&ooJxw$#MIOXN# zMMXs+7e$g}O-)TO7;I^2$;!&wuwlclUAu;ch5!JZVu)v))rPl%PmDmgXCij*%w}_O zaWTYSV*Q^$?_$_5$ngJ-!UKCIJg{fN1A8VsuxG*pdnP=vXTpQyTRF4Yy!v%u`1t(! zGkTN2z~NbOaq()^gIN}Oy`H@(!vA^*4!oWT5A2!nz@7;Y?3wWR7mLmt7*F{|3jhEB M07*qoM6N<$f^w5E9{>OV literal 1481 zcmV;)1vdJLP)R#xWb=J<*t^rYF@+3Si26FH9_JrXGR z_fkIKTFM7pOZjk3wIoUMdKUWckopL>=cCD|FK+|{0ghIE!?8yg!n8ckwiBEMy& zbdn@TMn?2{Jw;JrRus*TRMP$oz~ke`j{-#$(Q}Zf)9L2t=L3O&%jK%Atwpn?rKN|5 zhlhuUrKP34y}eRaE|)7YF%gc3hK5Q?N*oS{*Xw=u>{&}o3jm<5uCBkoAD#dD^=pg8 z!nf+{>nkcM+TGptdcAN;$_i3ZQ86_&1pt_yp0224+D z%*@=`*@5HZHO`AqWKXO!xNoa#>B(~0s+3lFbqXe zaJ;s*_VD3DjYgB6p8n;_m%o=G2$(N;vQnu;y1?A!a_MwBI991t{4E46QC?ndv)KRu zGcz;Q)ztzkrBaF3LP%M)wzdj3shlI2@==`Te)Cu_4-*d|mKaq=JVC@)JgsBD9u~{O!}!)MPfB zfBg92_xt^R|MK#(*=%lTXn?a%o;=yw+6o4P@XLsWLTwI*dXcSo0)YLRL zH#-~-pU-EtTEke`Y_|OTe1pM&u1!r%HJMECJ6&B}jbgS~Ea)65U4T^ZqWO_Z+MmHM z>_6;Fj^n1Mr%fi4TCG;A)h3ha!-o%Oc4lTKBO^npR2q%OrKKe(5(M$)&71i6c$%i` z>+8`L4PzilGA=GIJ3G6*z5V3m1X*2PUXG28WoBmHxpOBgD{En40ZqMq`<9}p#l=OW zpvYO4?ds}EN=l+>dU$v^jFrh`3f<5?efpG_mj?g{1Ojz+bu>-K$Hxy03?P3gU64Ad z;6?KzDuyStFG;}r7khSg_VMG#0Kb{{e*ix7;y<9g`FjPJXn|`fA8;+@1Foffz_pYQ zxR&w(*HS)+yi+N7>k@N2al74my`HaJsijV*Qz#UnFJ5A9CxwND{6iAo<&h2e_fkIK jTFM7pOZk9nDIfj<@@2^?(4f=Z00000NkvXXu0mjf!<5@` diff --git a/inherit_graph_54.map b/inherit_graph_54.map index 4b5d011c..1fb726e4 100644 --- a/inherit_graph_54.map +++ b/inherit_graph_54.map @@ -1,7 +1,7 @@ - - - - - + + + + + diff --git a/inherit_graph_54.md5 b/inherit_graph_54.md5 index 9e0b9eae..4b5f32b8 100644 --- a/inherit_graph_54.md5 +++ b/inherit_graph_54.md5 @@ -1 +1 @@ -0ffd2b6d2b4510d83bb6613deb8d2a78 \ No newline at end of file +9449d80f4013de19614afb4d26ef87d4 \ No newline at end of file diff --git a/inherit_graph_54.png b/inherit_graph_54.png index 7b548a89d2e4b7eeca1a53a9d124dff46128bcf2..af195ecb26fb24e8eb23825779d55259b577e71c 100644 GIT binary patch literal 16219 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 E0ClQ{YybcN literal 14648 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 - + diff --git a/inherit_graph_55.md5 b/inherit_graph_55.md5 index 121741cf..41125d13 100644 --- a/inherit_graph_55.md5 +++ b/inherit_graph_55.md5 @@ -1 +1 @@ -efa111f58b731ca9bde3087bb6774a17 \ No newline at end of file +983f50da3e330fdba2ac90345225970a \ No newline at end of file diff --git a/inherit_graph_55.png b/inherit_graph_55.png index 006ed767b0b9ccf5afb07e6145eec12b9be99e9e..d64922605ab1a0f842144f214a6095b02cd7bef4 100644 GIT binary patch literal 1903 zcmV-#2ax!QP)EK~!jg?V4Lm6H6G!7b&ns12(p?mJ$TCVgOr>(V$V=SkV|w3|2{? z*y;1`KjXuh-wW zapS*|LPI7iE9>;>(}C_U^)xUr@ZiCNd6z^JjKN^g>-FRaW9mgsO-=KqhbA-!4jc%I z(EAfLpnakSv`^H4_K6zI+NZZ~-$qAAlaGaMZEZ0zF(#9#zrQ~sBH}j%c|4x8XU~d6 zqPV!Y4I4ISG@8lD$=OcgcDv7=JC~A@5*r&U5D3c4%Y8l{8j2vXWXTe_TyD49e^c{( z03`0;zaJC{Nm*GLm&>)=?Ev6(IujBSDl01ips%lQCbv(+*x1TMpMn-fxok%1)e*8EZ!Z1v)*V}Bi!NI|33JVJXps1*5{rdHOzaQqpr!!~H zY~8w*?26m%PEJm)t*xEaJS-OL_3PJxu1=>*N=ia)48!{R`T|3*UcF+mSmEX&XY~8o z&78UM2>`mgyQ89_G#U+#<0g{{1yLpq4GpQOsT>ZcsHn)}@c@9s;ZQ1-Y&M(E=c`mI zpU>CY+M1A%fGYCdy?X+I!0mPez_Mk_Uc7h_^jf!W-4ct%0Dxgwb93|BwQJ+!<1b&n zj7I%_|M~Oh`FuW$#X5HE*!cK303;_TA31Ua%^yUNPwnmPsi~+5H-ymRIg0F;)NVi<;=c;xi9Z{Kb#u>1Oh>6X(<56 z<#MT1YOz?1Mq_4X=A}!Q06?KoD3!{gp&>4p+tJa1GRH9N>({SAFVx=Nj#dZ5u!9E= zIvkGL+FA_5zJ2=!02+-(CX)>e3>b~Zb?ertR4M?_>-9pRFg7-J_wL;{Z{D<8t$!tq zVej6(bGck&V`Cpae2_>aYPA}|_%uyDg-mLyLYK=G9UWa$Q)9E)>gwvEqN30{a(d>{ zr+xeOF&K=3f`UKjt zfcEpLJ{b%K4u^wQ;pNMh0O0rg17#r)2y8YRy7Kw+=R%;?%lib@$ovHj>%-U zwziTpK~Dexc>n%AlgYGNt>mE5Xk;>(s9jM}!C)|khlc~xhJ5bT)YRw)M|BNVq(yZ0O0X>Dl03OFJBJ7+F&-Dr}rsbQXv&~ zb#)aK6tLOsojZ3T7yp*2KK+x=PlJPlCr_Tde*OBEEnCXV%L@w&zkmN87)41U#Yss? zOP4NXFc=n#1qJ*2`x6opFbuO=t<}}lQmM40q$F@}etv#MMFl|+fr!WBxpwW^{{8z= zcfo>S!8{%>u;{-nnyUXlO{ORAy&qJDtwyCl3wTv>DdZ-o1ObZQF+G*YEcWg~GhN zyudpyJ3G6tudlPSQy>ta-77yoUn-S;{P@viGG%0BsMTtMAa?B7aplStyWP&?@!Hzj z(9ENwqiJbr5{cy5vu9?rxuvBgJw1KTo;_1bA<({f@nTL+j>Tf>>FL?LdGpbuM*%>g zP^6`$J$drPY&JJHH*egyv81FVa3eaG+iW(A#Zp{c%;)n7f*2VY!7!|@u5NU6G$$tq zBh}N`*jP|IWKtm&dc9s8$Ls6szkK;pRaJ%KI67O+ww`9~)9u^0aU2g+Hvn{Yc1A`< zHa9n;Oq!aSR;*aT;c!l!I)zSOcDw!1p+jsoo5$m+RI2gu@#^Yokw}D2^N$`q;_-Na zvzgoNE-5L=%*OBZWetUav<(YPC8(K7Q4zRgWJ(M(Z#!F_D#(wP?|zpmxZl z!YOQMXh=>@j){p$Pfri*5wrCvf-GID)#m2r!j#RHW}ZR6Ymk3nqQBpx2DDGqfcA+R z&^}QE+9zs2`$P?BpQu5I|AlF_+WFT(L&j>g^7(vnB!o}7xw-SDhbAmCnT*_xpuc^f p1oZwy4QQXJ0qqktpnakSe*mA#bC_;r;VJ+C002ovPDHLkV1m~)uaN)% literal 1655 zcmV--28j8IP)jue8MI~YkI9-*3UP_qixz^?yjdE^dZD(I zZ1uv0m=HmUZ6&@6a)e+(QN5AeOe(^9l|f(#L1Asv$!@dS;Eu?evAIo}=l9~!;d(c( z)^C&-&ga#6o_p_ep67h;x#w{26$1c77{Ma>*9l<$7g#@GgY^?OSU+JSWg8zqe(dh< zPN&oVDjUq2G&VLiHZ~%2#r%8y`nAjD`s*oS*30DNsg&B2lZ=7K z|14T_bMyTC{L`mTqtWQ>?CkO5$NT#F&`|&Y0O04(pKss3EiNv$SS&dz;x7VNxZQ4! zCo3~EGitTk@Av!tevL*mJ39;gB9Z9o)vHBCMM|ZzqoX60ND%sY4P*laccKub%@<;$1Z-8meN*49?k#m$>HbvhkE5JscX)XD4yF#I`TCK5I4Ekj2BY?z2>k30N~4)6}hpEb?OHI7#bQPNs=Ts;Vlt+YJD4xm;CMRZB}t005OrMbk99FPf&+YBlP@ zY&Or$&BbD|-rnBI%1Y?(@9(dvsR;&y-@bioZEZbw?i}>j)zvjMHBC%REG{l`N-85eUexRLkw^qO^YZc%i3B_B;^LxIDn(r| z3^JqG9o-L!7$! z{rqLFmUBr-$-uzC=g*(Py2+V-_wL=RsHmu@s2Ca=V%LL)K9NWe1OeLwL1gs<02~g7 zNF=&;?HckF6&3N%zZKd4GG#IuTMUUr!bx~}dD-jrwzah#IdUX3)R!+`dU|?HCKG=z z{Q9j{=4w~HdGp3>HgDOoW#`VF&z?O4>mWD!`FuXDR{P<@2b!j}TJ6lt49X1MfIgpZ z&G|PqHMMQqwucWN78e%>0s-i>SS*?AUrS31r+AK8R#rAQH@9Zy-@kvC%jH=^{rK?% z%?yGd;_*0aGYo^y6pO{|OE@Oa{L7j%WO;dcY-|kOp#0=Ozj!>pd-v`~j~+pDbaa#? zNw~U*M55Z-TDbnz*4Cm0pr@w?Ees};>C&Z30DxF5Mv~;qmoEVTPo6w67z{9o-|sIh zEOa`Z48t%C<8(R;3k%s>q^x6c{rYu^qNb;(Q>oPZ_wSpVo1wqDy4vk_MrKMmn z*xue=S67!A>g(69cDvnZG(xkova+|gHx`QpgTaP|26X1uty`z3r_og$Gi#YVIUhTA z%;)o^QmL`AF|Ah1KkSek=-1ZPhIR*#vuDqqJb4nZ_MZxc;>?*dXakl=Bsx1g;l`}9 zvlBjKPMkP#>((t4#OZWetyb86_wL={!-oqB3JMAe4jno)H8qu4JjYC@(*pwo<>lp@ zHfi{7+$=1!9VPfO#Q^{N=8OT;GHYNY)IhuBlZVA z{QgYXVEu#*)=$`A{e%tHPuO7ngbmhD*kt*Ckn@KjX5$bFg-S|F*q#;oX*3$CRGRsd zA!g&SfB$~ADaLPG1PxyQgbmhD*kJvH4c1TC{0F|Jbrqx_R%-wN002ovPDHLkV1j1l BMzR0^ diff --git a/inherit_graph_56.map b/inherit_graph_56.map index eaaf1b45..3c822c82 100644 --- a/inherit_graph_56.map +++ b/inherit_graph_56.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_56.md5 b/inherit_graph_56.md5 index bff6d575..ce516311 100644 --- a/inherit_graph_56.md5 +++ b/inherit_graph_56.md5 @@ -1 +1 @@ -d69e68e89acf9d3e15e4d1008f50b3b4 \ No newline at end of file +e7d99a5c8310be8f588f2d99227ad050 \ No newline at end of file diff --git a/inherit_graph_56.png b/inherit_graph_56.png index e76f2d09ea25541a76ed400def01528e98aa2701..2f9407e61fd812126bf014299dbf9f6953143c40 100644 GIT binary patch literal 1721 zcmV;q21fabP)!Q(qXs&ulBVB3*2_rZeVjEOc#!R1&yJDKB8efxId!iCgLPJ4U%qD6}w4#&rjA7ft{GbIoRoIH6_tyV8xx^&&Tbw;Cc za&mH}gZTaaii(Pij0_%+Czs2stE+>-AU?#RAeBn>dj0V5@L$$EV}L?KLqk*~E>%@k zB9X}J^#Z`?=xAzc>cxu}0l?*Q{mJRS!RPa>TD3~6)pm4r^!N8SH#cWxWofnA$;rtX zjkACM{`~y>*RNlH`}WOZv8dJRBS((lLkJeZ_c9y|yDWo2bKIXU5Q7-mEIi4!OC^75#P{eHhx zDy^-pozXaaKL6#*mt@ysv8-6J0=E%DE|-g%tkGzytE;CP>hC8tJJJE5r>BR*;TVm^ z#Kc60!$GaDuC7idlL>{wva+&3AOHXaL6nq~2n2$(v^0ak5DW&}+S*c6Q}MHM@7_JR zT<-V#0bu#^<&Pgfj=I*38#lCCEw0{dHm_N;CMhZD+_`i3XgC}`b?Q`FS{k3vKYaLb zC=>z!sZ@I4zyUmdtb!=%_wV1&$;rX(=H_OlQpx3V)6>(hUAqPV0)YS_Boc|HN|=^e zlMVotm6Zq~ys%)f^i7*KIi1e#?rynUURhZQ0L8_{I-Sn#cH8ZCrBZqJ>{$TN>-8li zC11XL5s5_I-Q55{5ClSKcz8JKLS0>5c+Lo+UAuM>1W{XCixB$${W|~{jmDijcX~V? zyWPHa?OKDu00362Ri#q#c)YD!w_d$^bzoqCsvt`Gt5>i1d_Dk-jg4_QoYKp z+mT45r>DngG^*8V4u?};Ur#ECl5Vrvu=Mfq@xH!3{LFQAb>U2^^tcJrikda)ckkX! zN=mX=EL<+Pt*s3QaecvH5O?3df6wJ|2L=YHLA%|~<#KWR{Q2{2Hv8+>ujH_CmzSG2 zZx$33;OhJP`^lN$33Itz>b@X3Ioa>`*VormUko)hH4=#=>O>Oi^3vJasnh8;Y}im* zS{f@oZo;&#W=Hzx&!3kqTXy^QZ2-7@`LakP!cThCoo+Ij6bc2t(?5LpfP<~At(lpb z0O0X>Qc_Y13JR#tiosyeXf&}eQhY7yB+0f+CL@CcLG<lcQX($xp@pum&JOBW^#f*|3H(^>`vm<@`_U#&tCK8DNKsX#$sZ>QpMex7$ zEnBv@TrQiC-2N!;zhxT~kvNi9|MU-hAQ01+UjD7K_{4+wsU_ zV`B=1B0oRBv$NCbbhfm#WMyS-+qNy%7uh~@=FE;AJKSz}Z*T9$jT;XgIs^cEy2#XS=Jo5>mzS55Cz4ynXV0GDE#v6uC;*I%jIda&j*gB%AW%_Jfe?E0<_(^d z&*z&eVJ@WKxpOBmF_C=C0l;RnEm*L?Y&PTinwpw2Gc$!k;nAZ<@m|8~_3qoZPaqJ8 z#bSfO5DJB^U%#$atMNv&wY60&7Lz*-zu#Y8UanLs7cX9%ot=H@(xsn2fBr^#Fc>^` z?3hR-;`8}>z5d6K9{?~hF;P`jg|`_pne6oG)3_4&^;h`x^z`E5V(R*4G#ZnWlciGW zty{N>ii%QFQYI!Qa&vQ+ELk#D!dysam?^Q+neSd`fRRoEjC2}cq|*Q+ody``G{8uw zfjED`Xl!hp`#Rs8vz(}V7Mmh~J(rMs783%5PLiQX~ P00000NkvXXu0mjf>%3$% literal 1606 zcmV-M2D$l(P)Q5d200006VoOIv0RI60 z0RN!9r;`8x1^Y=vK~!jg?V4>!Q(qj%@12wGv{f7G9xxT($C=?2X!utAp zlgaegsk~nAz`(%4g9meRa>QbBLqo&V)D-*($8j9Tc|6|k-McF*EBpKV*Vfj4oAAF_ z>s!`fWMt(1`}fbEKZoYCXU}G4W=2LvGF1>w(@Le1qA0uFZnxV{pFUkvQ$y4A-(_oU zZFRfdlarGkkH==SUAS;zaBvWP3IN#H*!cSO>*(lcFc_?;s90WJ&dfBn1Ylq^8sj`k znV+ARN~Kn-)oQiMWHOu02K^X@-Me?MprAl37I$@Zg~MU!4~0S+jYcAoNF)-CMiUB! z003&WdUSLY<$V13v0AML0JOEW-M)RBIh;^ zgrx`GB*#?3H2zQn0KnMT7)g>ONg50W=By}+T3uaTU0tOp>du`zXl@imIUEj$!*S}= zDV7I*REmaZXlPhkTJrgPckkXk zapDB@4-E~~)YL34E`I<1y}iA?udfgK>+0%ST3X({dlv`<;--)|)0LGKG|=J0ho`5f z1A&0Y?Xt2mtJR9q78Mo2 zw%6;`YPIF%{l)fLtkGo7$gV+wh4kr>IVSmbUF;f?%%(UJOu>>>DNI_^_!+ZAYfi7csyQQ z!5bSJX0y4YqvPDUb4gPH09IC3WHK3SfBg7SsZ@$YBA75MD=TTQRAFhzj0P5qMJ|^w zEG*D8EtkvZ=jTy<==W~1Sbn<>W@l#$3kzSpdbM}&Uc226o#)S=PuvgM+Sq z1Ha#Y=+L2wi3w=FeEE_jNqDuzFs!z=7VZbNwYBiN4*y z$+vIc0s!8;c~e+ARXKYjY7(P-pyITBJTl}=1dghHW( zg@vZ3CKQ~XpFcM@hYCm)mWB*y(9zL>c05RLZ|~*HmjUBkBoc|PUAqR)KLCJWFxb=6 z1J6Z0Jw5Qcbm`KiM~@z%BznDGrBcE6=g*(do;{nJo12@Pd*;lU+1c4&<)+Xe8jTJQ z50{md?bxw{B+1vWUqk=Y)Kp_*qevto2tuJybai#P-EPzu!!R7jckbL-US59V#*J^^ zzM;&Mlar;TrP - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/inherit_graph_57.md5 b/inherit_graph_57.md5 index 9b2f1e61..5eee9a1d 100644 --- a/inherit_graph_57.md5 +++ b/inherit_graph_57.md5 @@ -1 +1 @@ -976beb672ee3bbb088260ad7319536ce \ No newline at end of file +ec85411eb90657e576fed10164fae81b \ No newline at end of file diff --git a/inherit_graph_57.png b/inherit_graph_57.png index e6a173a181b505f35e4178f245e5c5449ea2f792..7eac79b79e848d7e862fbeef389057ebf1aaad05 100644 GIT binary patch literal 98343 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ʽ%jh@AW${F5Dz1dokC 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 (wnLAZiO|8mokZSv6Zv4OR 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%0DBBQ>t5GmA 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 Hf$RSTks(xy diff --git a/inherit_graph_6.map b/inherit_graph_6.map index 0f67a081..4ca122d7 100644 --- a/inherit_graph_6.map +++ b/inherit_graph_6.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_6.md5 b/inherit_graph_6.md5 index 3ea3bcc6..437cc5a2 100644 --- a/inherit_graph_6.md5 +++ b/inherit_graph_6.md5 @@ -1 +1 @@ -ba911d369aaf00de4a84856161d75d22 \ No newline at end of file +2802458f6f6669f531dc7b22f8ef5bb9 \ No newline at end of file diff --git a/inherit_graph_6.png b/inherit_graph_6.png index 4b6786be2a9154c933140c104828cc5836b187be..52500c9ce59dd7e259321622cdbaaec304f93fcb 100644 GIT binary patch delta 927 zcmV;Q17Q5l2BilfiBL{Q4GJ0x0000DNk~Le0000?0000b2m$~A0A~)E?vWuCe_BaI zK~!jg?U_wTGC>^1XWxQIurfii)}*AaR#*@O6?qGyTNX=QyJQkX#}tZAb?DMX=pv+L z5Off_MX(zogdK!n`=BK;6vvk6Gt=9A|bw3_=K$&Y#~F zPzqF&N}()FR-y?-QEO{!za^!Jf6UFz_4f7(>ARI=7$z7DmRwSi2?m1%G^-``J8PPVqTYPDLM&9=L{E3`0#mX?;Osi|Z#DcRNQ z^#nnrQmKD6@fmVVK0ZEnc6L@(Rr&q?larH)i3x%rLZOf_fTE~aEOvW)f4jN4$#Gm) zR~O5&qVC<@-NC`Z)zy{L=|n&L_4U8;b$?nn7kxr-MV~*pzUa#G5M>Q-jFL!iw zM5EE;<6|7h{eJ(a@&EvVe?Z_}1x>zavazv|qA0YIPN#2fZX|6$2)DMjY&M%@mn2Dx z#lpulO;1lxkB^U|8gLvBg+hG1zP>&%Fz~6oBADcVc&SvXz#Jlz;c!@3E&xCz5=p1i zPft(h=jVfigKoDQ9Zb`-pyB!X832$>Ci#>kNt4M`SRRxzDRJW|f6Uw48<4tH6y6bN zYPDL0xTdDY>-FY)Fp)?A0BUP%`LwRCE*_76OD)g04<4OPXEYk4(I{FBhr>NRJ()~K z@)4S*Efx!!@?UT!lUZ0;7#bSNHgwv5nVIYB>wN2@(P)~Qnodto`7{!Vw70j*5G?25d3bm* z7z_kKkR*9_cINSTFbvz@-xs!o@CrFRJRBVzHJMB-%Zj?OSnTrh(&cjDIG)SpB=;nQ z(Cv2j_4OqZiHnPiwzf8(&nII~$}tHcWEjTbaNszu)oQ!Db-VZW_Ru*5nwy&mf{4fC zlHH1m3aiyBI;ce^v)QcE=`q{Ib% zdwaX|I(`%hlVf9JrPuMJU{L*kQW>Zwl|osV{0jyk1j2SHD$)P|002ovPDHLkV1oEb Bz|{Z% delta 840 zcmV-O1GoI82hIi|iBL{Q4GJ0x0000DNk~Le0000@0000b2m$~A0Eo=<(2*e(e*;NG zK~!jg?U_AK>QETRX+tz7AP108AbtV{m4rlafJ9~zLNLMb2^e(J%D~3#L_*@*EH5*I zadRLFl#Li)5Cef&B*C}n06ll;y|uOtV54{~{Y~dQ&v{P&f9L~;febf2G^)b~>G< zQt9#WF&>YzzjYym6h$=}je~=O*Voti`T1(K%FaRvyWK895EhFi7z}b!oNMju>>M8- z69iE#7LSgO_V@Qi2!7w4CYelfB7&^0uEt_9!4$td8jXfRA;D~?)0vu@>c4}-;mBsQ z^f;T%E-ft$lm{WC4?`cee`QaG^l3C2udlBKQ~dJV+gl97IN4sW*K9U%9Cx`~{dbt2 zo^G{T^q3?`0KhW6 zz|+&yC&m6nOn>V2`bMKMiGSi1qb#v)O!ebHnew`}_N7G`hIB$l07DAdyJe zY_>|JQmIsIHrwv*f9^ne@T)$DAcW;|+2`{C0463T>~?!Pon}-j6bb}ER4Ucn+}!5o z=H1;L+XI76r}KKfS65epSw;p$Q5zc@00000j^h+XjnwCV4&SGI?voa>PiZ0hlosRS zQ{WuWdGh%isnu$;v$O2T2cIUBNvTxwAAbHu91aJ2ia`1Q9#1JD`;->r;`0yn(``7} SNrFZI00004K diff --git a/inherit_graph_7.map b/inherit_graph_7.map index cbaf2a1c..34e08024 100644 --- a/inherit_graph_7.map +++ b/inherit_graph_7.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_7.md5 b/inherit_graph_7.md5 index 00b8d445..91ade6ca 100644 --- a/inherit_graph_7.md5 +++ b/inherit_graph_7.md5 @@ -1 +1 @@ -403af80e2b8a98f436627a75fc38f463 \ No newline at end of file +b3c6fa457ed87fc226066b954d1c13e7 \ No newline at end of file diff --git a/inherit_graph_7.png b/inherit_graph_7.png index a20a1b1017fb0591fef2cda10ad619db3f9d9e90..bdb5cb5f5d0d84c2b18f531de1100c7bcc2a21c8 100644 GIT binary patch delta 982 zcmV;{11bEz2HFQ9iBL{Q4GJ0x0000DNk~Le0000?0000b2m$~A0A~)E?vWuBe*=$6 zL_t(&f$f)1Nb+DD#~<~jC^fQwkc_BCRCtiWg6a^F5D|3gkj1oX1Qi6)L8x1FsmO~R zj4pw#7DgU|uA>&xITALEMpjx>tL>1;-os!lom#$WFY4#?{Jy_u?)%00+oOW#d64TU zf7?JdD1^)v@*?CPX+aRg+S=N0e_8oK=H}+Qy1K;j(>F=eG=^bWxAenc7)H~yRQVIX zX@7q|TYfTvLZOIJ^5QpH2$?GsLMGzQSTYP_v)S}|eN|Nzf*?;%PiYti zyaW_QV-#6tXJ;)Ii&UAPpEsM$!WsZTlBBfT+uOUev?SZbaa^a<32TO7TrQW{Y?gW$ z931TH>$|$Tq9|%$U|?iqe2F#gKZvo*)RR^8WsQb8{mbgXej-+ifzL zWV>f)XD|#4Ymy`eM(f#fg@6AT7hT3V!{ zTCG;A)rl@?YHFe=N-SBHWm%Tz`Cu?;x7)2&tDwU$>~uOQigLT%e}bY^D*b+ceSN)9 z;yB*Z)AL=!K=#CwoM(>m?;6)6>(}*Vmy? zDABz(HZ~R)7rkEZ=H_NaMMWBJK^l)M0AP7}xwW;`YPC*HO=&b5kH_P1IF62v#0}wa zSfkNIqfwG1*Voqrfq>WRjp+gaIF55T91sLmS69p4=rBWG<#+X4(lBDS2 z^z<~j;Y>|e0SJP`85nOO$%VD-=TJ3V9Jy<~_N$ zx0ih%8AT@KEa>QH_I+d&#g7~*{&Vu;H(3aoE96DUztQ;-IjaYhWB>pF07*qoM6N<$ Ef?yQWg8%>k delta 825 zcmV-91IGN?2fhX&iBL{Q4GJ0x0000DNk~Le0000@0000b2m$~A0Eo=<(2*e&e**JK zL_t(&f$f+-NHSp@$M24#5W*}A^dxsDbx_Pf0-c2r1ubxKlE_801~a5x;4$h_=N!6&~EeDVv9K5uVtZ8n=!DqUP$)ai7|WO5QmQ4~c{48xX} zm$h2$!NEbh-6lt&zrip}CX+dx&PJm_&%zU3U0s>YW|2rl5QN9$>2|x^e*|;!d4GSu zwY6n58cU^8zu!MTK89~y0Kj-WZZ?~zr>C#4uNsY}R;$5T0KjlKEEbCjg~I7{Qc{$; zqS2_|?{Bx;<#HLvaktyeLGYjI6JoI#CBlfyJy108Ac3aD>Zxf8N~O!0Yfa9*^hx`kE3PkH?RXkC8}3uh+AmH=Rza)oS+r zVHn;+Q|WfQ1VOOuESJmSO$Beim6erjHp{Y3sZ`qA+e@WV>~+F$Sx>1{+H5vic5by= zYiny{ll+jLpP#*6@BaQin@fm8q&==;sg@p8$YLrLw)fEs;nT z78Z0mT_TYnRU!z2f1>Ep(vn)O4g>;EPfxH1lGW8!tJV7O@W7Zw{&LMA2=ems!oeq( za|l5Yl}dGadCB;7d@zbb_TwS!5#D|LLh#8i1fTq3UVJj#pOinJKaqO9zOk_ZN8b6A z%jGzZ(|>;cL^d}!;U+q(2giTTyzEcGC%>2%pT7X^_TkZi4>96>00000NkvXXu0mjf D3 zjBY%UqL9^iAbG?y)b@b#z!T+v!~>G@K)EG6Q1(Ellliw%Slcz$b-xE!>uXNzXs&gy zN8j)JeYd^e+uf&I(}|)8l8AqQ9pIPI`ly>^>yrv^7>1dcn1A@ID9Wg*sj=Jb(e1nM z$Lsa3tgIwFl5*T`H^VTnlKSzW<>lo><@qU1O-(UMvfV#gA9bVk0RRBt^ZDA^+6oE^ zP!uIea&>hzYUv>I^Yh!=+aDhvWnH7uNYnJw)6-8&Kq%?+{QO)|QIVFGwy>~pczD>_ z+Dg;(*49?^0Dp#I?(gq!Zf<60X9IyiWo6~d%S()VcXzk5v%_&*Z*OnZa=BckrKK4e z88l7vJg=mX2(h@h7^BG2*VkvYT4BZEaMah=OKSiC%d)UrTU$FaG9v5l@9$$6Caq^? zX3ERUPfkuwPftmb92gk*G6_Xd6h*;`l0G>(ISj+VN`EjIyt=yjtk3-XJV}zW?!mzU zK@ifqtgLKzcUM|_yegTauSoBP=*X0!R?;v%{Yg+ifF zC>RW$pPvs64cTlq06-)X@pwFEXJ=-!*=RHl4-dz@#W#t&k01yD0G&?v{ZqvEKN&3+ z3xXghihmXr6&)WROMQGkpD2oZdwbj4+YG~S9M|99A8$6Gpbv&&CX>nI@xbEI(NT4E z^=Ef5%d!MPz+36s;CX&<7ytm%)6)b&6c!eaj*f0@Y{Z)lD4TDMjg8~u zFYG`QqsO$Cmo}Qk|%YRG1-;ZHfW@hHw+nZzwf}q#y6=ain z9{rNBv9Xep5}VD|-QA5K$lBVP)9Hji&WDEw1VIErU|Du@a+2e?&CSgi7XZNXywmB# zaXc$43jom3(b3u2>2kSVUtb*#M@vhKf^16Wn>2r{Rx6I+9>&)6;>MBpjNi)9Ex{QFISVrBZ{c=clZ!taK>D)<2RTaU=N=Hv;|K-QBs}ZVbbe zN~O(aJ3BjrI)Wewf}kj>)oQI)>)zhp)6)~T7xD>;q6UM3B+2{xdoEij6qc5j)M~ZS zXpG0>gY#1=m4BR0=fc85KA(SnevU*U{HGQGpxtg)tJQcs{`&elH#b+QRQOo{!2A1q zE|)VJjU-7zy;v+RFE6jJuQLoo)AYr~g)l$=4**FflO0M=d_Ld7!9mYd_wM0vcx`R1 zXSUgFj*gDPZIUD-k;u1)?f||V@D(BRb9s5mo!4&(27iOyC%fHlKR!Ml9v;rm&qF1X z$*?R-5Cn!{8yg$VW>Y|6GGW(SqtPG;qR+uNjyD<&E`;Xi z^?5%i7K;XhfubmeVOp(LHk)<3-5nkO^74|)<+iuC34$n>%N&Wm%SGyf8W*iO&KSY4^|3}P7e#FhN`S}OL@%~?b?vlp< P015yANkvXXu0mjfFS~t0 diff --git a/inherit_graph_9.map b/inherit_graph_9.map index edf85980..79a0e76e 100644 --- a/inherit_graph_9.map +++ b/inherit_graph_9.map @@ -1,3 +1,3 @@ - + diff --git a/inherit_graph_9.md5 b/inherit_graph_9.md5 index 1f39f68d..77565876 100644 --- a/inherit_graph_9.md5 +++ b/inherit_graph_9.md5 @@ -1 +1 @@ -7bbb2b18ef2cde532600f302be39eef7 \ No newline at end of file +a26962d66b3be37750f536f7c8f15144 \ No newline at end of file diff --git a/inherit_graph_9.png b/inherit_graph_9.png index 266165e4b78eb61f898995c0f630af888ccceab3..ad46dcc0cb82b7305cfb481488533973d57ba244 100644 GIT binary patch literal 1549 zcmV+o2J-odP)Q5d200006VoOIv0RI60 z0RN!9r;`8x1;R;0K~!jg?U`LjQ*Ru{pQA<>viY)5)K%nEuqCBT!JBL(Xcj0q-K>M= zm3E_JQ6x^E|(o=X=ii9X1R?2n2W~ithvj1PzV>f(HB}Xuv-)=!L;xc>er3U#XlN z3JVK$I-URWujhcGsDXijh^KV2FdB^pg8{X~1TO0D?~hbICy}bEDwaj)2mB*wz(0Zp z{3B?gwt?H#dXMN+c2-$6YQLM<5Kt z>~?#gk=sdER~Lq1Po6vpuet~mjs|YGJ2yA?^y$+CL6}UY+qZAyIR5F=C;tM2!LYWr z_Wk?!_wV1+G@X~1x4pg1nsqoFpFe+IUS4i$Y6>FDt=b)YQ~7XU^a_?sPi2Y8CnY7JmRGM{UA%ZPE-nto@!j3s zFlqr1p|`h}WeG}ibF)UHK`pJVt;NN~%oqSbk|a7?R8;iv;lrS_I7K{Hr1pv&>&U!qaot>S9g$1Qj+1c625iXPl98S{H)8D*# z10n3_=(u$05^Jx|=c6b}tJU7Rb<5}TktF%^=TBzp*|TRiZ{FlCpCn2D5$*5qV;J`G z<;#qWjKsvmyLa!p-EQvf@JKY++S&pDa0ClHHM7}_YJegZi|uwhN4QWLgmN-9HFfIL zDW}s3A+%bp0D!r2`l*{FZ z&mlH8769=2^=p|-mX(#&-Q7JjG!#ZH;q-%sh6YyeYHn`6a^(s$1_5{O)vH%S^<!D%=dgE~7^ZC-!(q6oH;rS1}UZ0hf#Vo6Zva_>o zHrs(!Goa4_gfKon-roqv#>S*l>46@OrYAd{&ZMLy9LFaoCv7&{qeqW03>zLE{^Jq( zHXR!qtEi|rd-m-1_BLyFZEbC7X-TWqN~O|YzkY>^g|27da56eN8WR(VWiNzx5 zgB!|8V`F1UNeRnCMn*<^dpm^C?RKlx>g42PiA17Ss~rx<#KZ*miy;t}277yZ_wL0P5j5Z*K?D8~G~l1#s^1wf+b#5QH@}*;W8xK^#C%qr@0s(QXXcqX=d?fo z00s>;V20ZO&HvD0PzX8<3PFcKe<5K1gS)%C{{DWi*BdT3zX}$MH8wVuk&%H_KD-&n z$Hz*g@~2JxR+LKR@$s>L1r9t(rBeNrpI;3GLAVONW>5$^3<^PqK_TccC*!YC=)eSKr>=E-Nczv)KrOw6wIC z&1T{Y$41B1Pft%PDk?Y}PD)D3!omWvNJxMmD=RCwN>KEAy+9zCn3yma3~smk@bFL~ zk@%Xh?r(2zTCKLDqXR*Zf7{zzT&vgXeR_K8>gp;iEF>5xs2O4ruh*NInK?Z@ot2g4 z^?I>-NlD52`nttpvD@v#!^5SerM`N3dAVAxb~qd;ing}4R#jDfdijCIE-o(8($bcf zmtS9B4F-c$DkUkhva<4_;(tIgjQaZek&zKHE&%`vg+eBi1#Pujf30jbo7nEBMV!dy z=4NhgE&xC*7H@5B1(kI;95FF5fpxpx9v2r!;3t#^sZ=^MGef2$P6QXmSEi}m-Ce0v zO7i5EmX@8J9bEDK{oQCZj*X4w=jVUH0D;Kd++2HmJA=V!YipaGoek{ebUJ5dW=cv* z0-H1%jYuT=f)kBKe}keZf*?E|ud%VwYPEhrgu(dIGzG)3%jF{T$N&I59#2F>1lH;g zm&-jnJ0pH}f)+!GTwh=F`Fx)@m&?WH^KWi$0{bQuWMD0RRSrAvrlYf3VeLG7St2U~@M~HDZzO z?rvOEJv}|R?lzlkXlSUYsK~##x3`y?n!3NgPhf_?SX^A3$z<|kbE|=?cI*-S5e}CWJ-j3~>CMPG;)6;c2 z-KSSgU~GPVzM-K3o2HtZn@Ng%Ll^)6olaLjf>YMjEx#)eod1^}p3s_g9S$jHdF zw6xaNRM^Oibi*xpKMOVzH39hu; - + + USB Host Shield 2.0: Class Hierarchy @@ -11,9 +12,6 @@ - @@ -32,42 +30,19 @@

  • - + - - + + + +
    - +
    - - - + + +
    - +
    - +
    - +
    - +
    - +
    - +
    @@ -140,158 +115,158 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    - +
    - +
    - +
    - +
    - - + +
    - +
    - +
    - +
    - - + +
    - +
    - +
    - - - - + + + +
    - +
    - +
    - +
    - +
    - +
    - +
    - +
    - - + +
    - +
    - +
    - +
    - +
    - +
    - +
    - +
    - +
    - +
    - +
    @@ -301,126 +276,126 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
    - +
    - +
    - +
    - +
    - +
    - +
    - +
    - +
    - +
    - +
    - +
    - +
    - +
    - +
    - - - - - + + + + +
    - +
    - +
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    @@ -429,7 +404,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search'); diff --git a/jquery.js b/jquery.js index d52a1c77..f5343eda 100644 --- a/jquery.js +++ b/jquery.js @@ -1,4 +1,4 @@ -/* +/*! * jQuery JavaScript Library v1.7.1 * http://jquery.com/ * @@ -14,13 +14,13 @@ * Date: Mon Nov 21 21:11:03 2011 -0500 */ (function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b40){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b40&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b21?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv
    a";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="
    ";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="
    t
    ";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="
    ";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType;if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bCbA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}}); -/* +/*! * Sizzle CSS Selector Engine * Copyright 2011, The Dojo Foundation * Released under the MIT, BSD, and GPL Licenses. * More information: http://sizzlejs.com/ */ -(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1},lt:function(bS,bR,e){return bRe[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="

    ";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="
    ";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT0){for(bB=bA;bB=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},ac=a(av);ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div
    ","
    "]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1>");try{for(var bw=0,bv=this.length;bw1&&bw0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]===""&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length;if(bA>0){if(bv!=="border"){for(;bx)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("
    ").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"":"")+"");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b})}})(window);/* +(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1},lt:function(bS,bR,e){return bRe[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="

    ";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="
    ";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT0){for(bB=bA;bB=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/
    ",""],legend:[1,"
    ","
    "],thead:[1,"
    ","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},ac=a(av);ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div
    ","
    "]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1>");try{for(var bw=0,bv=this.length;bw1&&bw0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]===""&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length;if(bA>0){if(bv!=="border"){for(;bx)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("
    ").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"":"")+"");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b})}})(window);/*! * jQuery UI 1.8.18 * * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) @@ -29,7 +29,7 @@ * * http://docs.jquery.com/UI */ -(function(a,d){a.ui=a.ui||{};if(a.ui.version){return}a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(e,f){return typeof e==="number"?this.each(function(){var g=this;setTimeout(function(){a(g).focus();if(f){f.call(g)}},e)}):this._focus.apply(this,arguments)},scrollParent:function(){var e;if((a.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){e=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.curCSS(this,"position",1))&&(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}else{e=this.parents().filter(function(){return(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!e.length?a(document):e},zIndex:function(h){if(h!==d){return this.css("zIndex",h)}if(this.length){var f=a(this[0]),e,g;while(f.length&&f[0]!==document){e=f.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){g=parseInt(f.css("zIndex"),10);if(!isNaN(g)&&g!==0){return g}}f=f.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});a.each(["Width","Height"],function(g,e){var f=e==="Width"?["Left","Right"]:["Top","Bottom"],h=e.toLowerCase(),k={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};function j(m,l,i,n){a.each(f,function(){l-=parseFloat(a.curCSS(m,"padding"+this,true))||0;if(i){l-=parseFloat(a.curCSS(m,"border"+this+"Width",true))||0}if(n){l-=parseFloat(a.curCSS(m,"margin"+this,true))||0}});return l}a.fn["inner"+e]=function(i){if(i===d){return k["inner"+e].call(this)}return this.each(function(){a(this).css(h,j(this,i)+"px")})};a.fn["outer"+e]=function(i,l){if(typeof i!=="number"){return k["outer"+e].call(this,i)}return this.each(function(){a(this).css(h,j(this,i,true,l)+"px")})}});function c(g,e){var j=g.nodeName.toLowerCase();if("area"===j){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(j)?!g.disabled:"a"==j?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.extend(a.expr[":"],{data:function(g,f,e){return !!a.data(g,e[3])},focusable:function(e){return c(e,!isNaN(a.attr(e,"tabindex")))},tabbable:function(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}});a(function(){var e=document.body,f=e.appendChild(f=document.createElement("div"));f.offsetHeight;a.extend(f.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});a.support.minHeight=f.offsetHeight===100;a.support.selectstart="onselectstart" in f;e.removeChild(f).style.display="none"});a.extend(a.ui,{plugin:{add:function(f,g,j){var h=a.ui[f].prototype;for(var e in j){h.plugins[e]=h.plugins[e]||[];h.plugins[e].push([g,j[e]])}},call:function(e,g,f){var j=e.plugins[g];if(!j||!e.element[0].parentNode){return}for(var h=0;h0){return true}h[e]=1;g=(h[e]>0);h[e]=0;return g},isOverAxis:function(f,e,g){return(f>e)&&(f<(e+g))},isOver:function(j,f,i,h,e,g){return a.ui.isOverAxis(j,i,e)&&a.ui.isOverAxis(f,h,g)}})})(jQuery);/* +(function(a,d){a.ui=a.ui||{};if(a.ui.version){return}a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(e,f){return typeof e==="number"?this.each(function(){var g=this;setTimeout(function(){a(g).focus();if(f){f.call(g)}},e)}):this._focus.apply(this,arguments)},scrollParent:function(){var e;if((a.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){e=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.curCSS(this,"position",1))&&(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}else{e=this.parents().filter(function(){return(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!e.length?a(document):e},zIndex:function(h){if(h!==d){return this.css("zIndex",h)}if(this.length){var f=a(this[0]),e,g;while(f.length&&f[0]!==document){e=f.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){g=parseInt(f.css("zIndex"),10);if(!isNaN(g)&&g!==0){return g}}f=f.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});a.each(["Width","Height"],function(g,e){var f=e==="Width"?["Left","Right"]:["Top","Bottom"],h=e.toLowerCase(),k={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};function j(m,l,i,n){a.each(f,function(){l-=parseFloat(a.curCSS(m,"padding"+this,true))||0;if(i){l-=parseFloat(a.curCSS(m,"border"+this+"Width",true))||0}if(n){l-=parseFloat(a.curCSS(m,"margin"+this,true))||0}});return l}a.fn["inner"+e]=function(i){if(i===d){return k["inner"+e].call(this)}return this.each(function(){a(this).css(h,j(this,i)+"px")})};a.fn["outer"+e]=function(i,l){if(typeof i!=="number"){return k["outer"+e].call(this,i)}return this.each(function(){a(this).css(h,j(this,i,true,l)+"px")})}});function c(g,e){var j=g.nodeName.toLowerCase();if("area"===j){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(j)?!g.disabled:"a"==j?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.extend(a.expr[":"],{data:function(g,f,e){return !!a.data(g,e[3])},focusable:function(e){return c(e,!isNaN(a.attr(e,"tabindex")))},tabbable:function(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}});a(function(){var e=document.body,f=e.appendChild(f=document.createElement("div"));f.offsetHeight;a.extend(f.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});a.support.minHeight=f.offsetHeight===100;a.support.selectstart="onselectstart" in f;e.removeChild(f).style.display="none"});a.extend(a.ui,{plugin:{add:function(f,g,j){var h=a.ui[f].prototype;for(var e in j){h.plugins[e]=h.plugins[e]||[];h.plugins[e].push([g,j[e]])}},call:function(e,g,f){var j=e.plugins[g];if(!j||!e.element[0].parentNode){return}for(var h=0;h0){return true}h[e]=1;g=(h[e]>0);h[e]=0;return g},isOverAxis:function(f,e,g){return(f>e)&&(f<(e+g))},isOver:function(j,f,i,h,e,g){return a.ui.isOverAxis(j,i,e)&&a.ui.isOverAxis(f,h,g)}})})(jQuery);/*! * jQuery UI Widget 1.8.18 * * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) @@ -38,7 +38,7 @@ * * http://docs.jquery.com/UI/Widget */ -(function(b,d){if(b.cleanData){var c=b.cleanData;b.cleanData=function(f){for(var g=0,h;(h=f[g])!=null;g++){try{b(h).triggerHandler("remove")}catch(j){}}c(f)}}else{var a=b.fn.remove;b.fn.remove=function(e,f){return this.each(function(){if(!f){if(!e||b.filter(e,[this]).length){b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(g){}})}}return a.call(b(this),e,f)})}}b.widget=function(f,h,e){var g=f.split(".")[0],j;f=f.split(".")[1];j=g+"-"+f;if(!e){e=h;h=b.Widget}b.expr[":"][j]=function(k){return !!b.data(k,f)};b[g]=b[g]||{};b[g][f]=function(k,l){if(arguments.length){this._createWidget(k,l)}};var i=new h();i.options=b.extend(true,{},i.options);b[g][f].prototype=b.extend(true,i,{namespace:g,widgetName:f,widgetEventPrefix:b[g][f].prototype.widgetEventPrefix||f,widgetBaseClass:j},e);b.widget.bridge(f,b[g][f])};b.widget.bridge=function(f,e){b.fn[f]=function(i){var g=typeof i==="string",h=Array.prototype.slice.call(arguments,1),j=this;i=!g&&h.length?b.extend.apply(null,[true,i].concat(h)):i;if(g&&i.charAt(0)==="_"){return j}if(g){this.each(function(){var k=b.data(this,f),l=k&&b.isFunction(k[i])?k[i].apply(k,h):k;if(l!==k&&l!==d){j=l;return false}})}else{this.each(function(){var k=b.data(this,f);if(k){k.option(i||{})._init()}else{b.data(this,f,new e(i,this))}})}return j}};b.Widget=function(e,f){if(arguments.length){this._createWidget(e,f)}};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(f,g){b.data(g,this.widgetName,this);this.element=b(g);this.options=b.extend(true,{},this.options,this._getCreateOptions(),f);var e=this;this.element.bind("remove."+this.widgetName,function(){e.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(f,g){var e=f;if(arguments.length===0){return b.extend({},this.options)}if(typeof f==="string"){if(g===d){return this.options[f]}e={};e[f]=g}this._setOptions(e);return this},_setOptions:function(f){var e=this;b.each(f,function(g,h){e._setOption(g,h)});return this},_setOption:function(e,f){this.options[e]=f;if(e==="disabled"){this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(e,f,g){var j,i,h=this.options[e];g=g||{};f=b.Event(f);f.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase();f.target=this.element[0];i=f.originalEvent;if(i){for(j in i){if(!(j in f)){f[j]=i[j]}}}this.element.trigger(f,g);return !(b.isFunction(h)&&h.call(this.element[0],f,g)===false||f.isDefaultPrevented())}}})(jQuery);/* +(function(b,d){if(b.cleanData){var c=b.cleanData;b.cleanData=function(f){for(var g=0,h;(h=f[g])!=null;g++){try{b(h).triggerHandler("remove")}catch(j){}}c(f)}}else{var a=b.fn.remove;b.fn.remove=function(e,f){return this.each(function(){if(!f){if(!e||b.filter(e,[this]).length){b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(g){}})}}return a.call(b(this),e,f)})}}b.widget=function(f,h,e){var g=f.split(".")[0],j;f=f.split(".")[1];j=g+"-"+f;if(!e){e=h;h=b.Widget}b.expr[":"][j]=function(k){return !!b.data(k,f)};b[g]=b[g]||{};b[g][f]=function(k,l){if(arguments.length){this._createWidget(k,l)}};var i=new h();i.options=b.extend(true,{},i.options);b[g][f].prototype=b.extend(true,i,{namespace:g,widgetName:f,widgetEventPrefix:b[g][f].prototype.widgetEventPrefix||f,widgetBaseClass:j},e);b.widget.bridge(f,b[g][f])};b.widget.bridge=function(f,e){b.fn[f]=function(i){var g=typeof i==="string",h=Array.prototype.slice.call(arguments,1),j=this;i=!g&&h.length?b.extend.apply(null,[true,i].concat(h)):i;if(g&&i.charAt(0)==="_"){return j}if(g){this.each(function(){var k=b.data(this,f),l=k&&b.isFunction(k[i])?k[i].apply(k,h):k;if(l!==k&&l!==d){j=l;return false}})}else{this.each(function(){var k=b.data(this,f);if(k){k.option(i||{})._init()}else{b.data(this,f,new e(i,this))}})}return j}};b.Widget=function(e,f){if(arguments.length){this._createWidget(e,f)}};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(f,g){b.data(g,this.widgetName,this);this.element=b(g);this.options=b.extend(true,{},this.options,this._getCreateOptions(),f);var e=this;this.element.bind("remove."+this.widgetName,function(){e.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(f,g){var e=f;if(arguments.length===0){return b.extend({},this.options)}if(typeof f==="string"){if(g===d){return this.options[f]}e={};e[f]=g}this._setOptions(e);return this},_setOptions:function(f){var e=this;b.each(f,function(g,h){e._setOption(g,h)});return this},_setOption:function(e,f){this.options[e]=f;if(e==="disabled"){this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(e,f,g){var j,i,h=this.options[e];g=g||{};f=b.Event(f);f.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase();f.target=this.element[0];i=f.originalEvent;if(i){for(j in i){if(!(j in f)){f[j]=i[j]}}}this.element.trigger(f,g);return !(b.isFunction(h)&&h.call(this.element[0],f,g)===false||f.isDefaultPrevented())}}})(jQuery);/*! * jQuery UI Mouse 1.8.18 * * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) @@ -50,7 +50,7 @@ * Depends: * jquery.ui.widget.js */ -(function(b,c){var a=false;b(document).mouseup(function(d){a=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var d=this;this.element.bind("mousedown."+this.widgetName,function(e){return d._mouseDown(e)}).bind("click."+this.widgetName,function(e){if(true===b.data(e.target,d.widgetName+".preventClickEvent")){b.removeData(e.target,d.widgetName+".preventClickEvent");e.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(f){if(a){return}(this._mouseStarted&&this._mouseUp(f));this._mouseDownEvent=f;var e=this,g=(f.which==1),d=(typeof this.options.cancel=="string"&&f.target.nodeName?b(f.target).closest(this.options.cancel).length:false);if(!g||d||!this._mouseCapture(f)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(f)&&this._mouseDelayMet(f)){this._mouseStarted=(this._mouseStart(f)!==false);if(!this._mouseStarted){f.preventDefault();return true}}if(true===b.data(f.target,this.widgetName+".preventClickEvent")){b.removeData(f.target,this.widgetName+".preventClickEvent")}this._mouseMoveDelegate=function(h){return e._mouseMove(h)};this._mouseUpDelegate=function(h){return e._mouseUp(h)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);f.preventDefault();a=true;return true},_mouseMove:function(d){if(b.browser.msie&&!(document.documentMode>=9)&&!d.button){return this._mouseUp(d)}if(this._mouseStarted){this._mouseDrag(d);return d.preventDefault()}if(this._mouseDistanceMet(d)&&this._mouseDelayMet(d)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,d)!==false);(this._mouseStarted?this._mouseDrag(d):this._mouseUp(d))}return !this._mouseStarted},_mouseUp:function(d){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;if(d.target==this._mouseDownEvent.target){b.data(d.target,this.widgetName+".preventClickEvent",true)}this._mouseStop(d)}return false},_mouseDistanceMet:function(d){return(Math.max(Math.abs(this._mouseDownEvent.pageX-d.pageX),Math.abs(this._mouseDownEvent.pageY-d.pageY))>=this.options.distance)},_mouseDelayMet:function(d){return this.mouseDelayMet},_mouseStart:function(d){},_mouseDrag:function(d){},_mouseStop:function(d){},_mouseCapture:function(d){return true}})})(jQuery);(function(c,d){c.widget("ui.resizable",c.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000},_create:function(){var f=this,k=this.options;this.element.addClass("ui-resizable");c.extend(this,{_aspectRatio:!!(k.aspectRatio),aspectRatio:k.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:k.helper||k.ghost||k.animate?k.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){this.element.wrap(c('
    ').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=k.handles||(!c(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all"){this.handles="n,e,s,w,se,sw,ne,nw"}var l=this.handles.split(",");this.handles={};for(var g=0;g
    ');if(/sw|se|ne|nw/.test(j)){h.css({zIndex:++k.zIndex})}if("se"==j){h.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[j]=".ui-resizable-"+j;this.element.append(h)}}this._renderAxis=function(q){q=q||this.element;for(var n in this.handles){if(this.handles[n].constructor==String){this.handles[n]=c(this.handles[n],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var o=c(this.handles[n],this.element),p=0;p=/sw|ne|nw|se|n|s/.test(n)?o.outerHeight():o.outerWidth();var m=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");q.css(m,p);this._proportionallyResize()}if(!c(this.handles[n]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!f.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}f.axis=i&&i[1]?i[1]:"se"}});if(k.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){if(k.disabled){return}c(this).removeClass("ui-resizable-autohide");f._handles.show()},function(){if(k.disabled){return}if(!f.resizing){c(this).addClass("ui-resizable-autohide");f._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var e=function(g){c(g).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){e(this.element);var f=this.element;f.after(this.originalElement.css({position:f.css("position"),width:f.outerWidth(),height:f.outerHeight(),top:f.css("top"),left:f.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);e(this.originalElement);return this},_mouseCapture:function(f){var g=false;for(var e in this.handles){if(c(this.handles[e])[0]==f.target){g=true}}return !this.options.disabled&&g},_mouseStart:function(g){var j=this.options,f=this.element.position(),e=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(e.is(".ui-draggable")||(/absolute/).test(e.css("position"))){e.css({position:"absolute",top:f.top,left:f.left})}this._renderProxy();var k=b(this.helper.css("left")),h=b(this.helper.css("top"));if(j.containment){k+=c(j.containment).scrollLeft()||0;h+=c(j.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:k,top:h};this.size=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalSize=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalPosition={left:k,top:h};this.sizeDiff={width:e.outerWidth()-e.width(),height:e.outerHeight()-e.height()};this.originalMousePosition={left:g.pageX,top:g.pageY};this.aspectRatio=(typeof j.aspectRatio=="number")?j.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var i=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",i=="auto"?this.axis+"-resize":i);e.addClass("ui-resizable-resizing");this._propagate("start",g);return true},_mouseDrag:function(e){var h=this.helper,g=this.options,m={},q=this,j=this.originalMousePosition,n=this.axis;var r=(e.pageX-j.left)||0,p=(e.pageY-j.top)||0;var i=this._change[n];if(!i){return false}var l=i.apply(this,[e,r,p]),k=c.browser.msie&&c.browser.version<7,f=this.sizeDiff;this._updateVirtualBoundaries(e.shiftKey);if(this._aspectRatio||e.shiftKey){l=this._updateRatio(l,e)}l=this._respectSize(l,e);this._propagate("resize",e);h.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(l);this._trigger("resize",e,this.ui());return false},_mouseStop:function(h){this.resizing=false;var i=this.options,m=this;if(this._helper){var g=this._proportionallyResizeElements,e=g.length&&(/textarea/i).test(g[0].nodeName),f=e&&c.ui.hasScroll(g[0],"left")?0:m.sizeDiff.height,k=e?0:m.sizeDiff.width;var n={width:(m.helper.width()-k),height:(m.helper.height()-f)},j=(parseInt(m.element.css("left"),10)+(m.position.left-m.originalPosition.left))||null,l=(parseInt(m.element.css("top"),10)+(m.position.top-m.originalPosition.top))||null;if(!i.animate){this.element.css(c.extend(n,{top:l,left:j}))}m.helper.height(m.size.height);m.helper.width(m.size.width);if(this._helper&&!i.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",h);if(this._helper){this.helper.remove()}return false},_updateVirtualBoundaries:function(g){var j=this.options,i,h,f,k,e;e={minWidth:a(j.minWidth)?j.minWidth:0,maxWidth:a(j.maxWidth)?j.maxWidth:Infinity,minHeight:a(j.minHeight)?j.minHeight:0,maxHeight:a(j.maxHeight)?j.maxHeight:Infinity};if(this._aspectRatio||g){i=e.minHeight*this.aspectRatio;f=e.minWidth/this.aspectRatio;h=e.maxHeight*this.aspectRatio;k=e.maxWidth/this.aspectRatio;if(i>e.minWidth){e.minWidth=i}if(f>e.minHeight){e.minHeight=f}if(hl.width),s=a(l.height)&&i.minHeight&&(i.minHeight>l.height);if(h){l.width=i.minWidth}if(s){l.height=i.minHeight}if(t){l.width=i.maxWidth}if(m){l.height=i.maxHeight}var f=this.originalPosition.left+this.originalSize.width,p=this.position.top+this.size.height;var k=/sw|nw|w/.test(q),e=/nw|ne|n/.test(q);if(h&&k){l.left=f-i.minWidth}if(t&&k){l.left=f-i.maxWidth}if(s&&e){l.top=p-i.minHeight}if(m&&e){l.top=p-i.maxHeight}var n=!l.width&&!l.height;if(n&&!l.left&&l.top){l.top=null}else{if(n&&!l.top&&l.left){l.left=null}}return l},_proportionallyResize:function(){var k=this.options;if(!this._proportionallyResizeElements.length){return}var g=this.helper||this.element;for(var f=0;f');var e=c.browser.msie&&c.browser.version<7,g=(e?1:0),h=(e?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+h,height:this.element.outerHeight()+h,position:"absolute",left:this.elementOffset.left-g+"px",top:this.elementOffset.top-g+"px",zIndex:++i.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(g,f,e){return{width:this.originalSize.width+f}},w:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{left:i.left+f,width:g.width-f}},n:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{top:i.top+e,height:g.height-e}},s:function(g,f,e){return{height:this.originalSize.height+e}},se:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},sw:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[g,f,e]))},ne:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},nw:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[g,f,e]))}},_propagate:function(f,e){c.ui.plugin.call(this,f,[e,this.ui()]);(f!="resize"&&this._trigger(f,e,this.ui()))},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});c.extend(c.ui.resizable,{version:"1.8.18"});c.ui.plugin.add("resizable","alsoResize",{start:function(f,g){var e=c(this).data("resizable"),i=e.options;var h=function(j){c(j).each(function(){var k=c(this);k.data("resizable-alsoresize",{width:parseInt(k.width(),10),height:parseInt(k.height(),10),left:parseInt(k.css("left"),10),top:parseInt(k.css("top"),10)})})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.parentNode){if(i.alsoResize.length){i.alsoResize=i.alsoResize[0];h(i.alsoResize)}else{c.each(i.alsoResize,function(j){h(j)})}}else{h(i.alsoResize)}},resize:function(g,i){var f=c(this).data("resizable"),j=f.options,h=f.originalSize,l=f.originalPosition;var k={height:(f.size.height-h.height)||0,width:(f.size.width-h.width)||0,top:(f.position.top-l.top)||0,left:(f.position.left-l.left)||0},e=function(m,n){c(m).each(function(){var q=c(this),r=c(this).data("resizable-alsoresize"),p={},o=n&&n.length?n:q.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];c.each(o,function(s,u){var t=(r[u]||0)+(k[u]||0);if(t&&t>=0){p[u]=t||null}});q.css(p)})};if(typeof(j.alsoResize)=="object"&&!j.alsoResize.nodeType){c.each(j.alsoResize,function(m,n){e(m,n)})}else{e(j.alsoResize)}},stop:function(e,f){c(this).removeData("resizable-alsoresize")}});c.ui.plugin.add("resizable","animate",{stop:function(i,n){var p=c(this).data("resizable"),j=p.options;var h=p._proportionallyResizeElements,e=h.length&&(/textarea/i).test(h[0].nodeName),f=e&&c.ui.hasScroll(h[0],"left")?0:p.sizeDiff.height,l=e?0:p.sizeDiff.width;var g={width:(p.size.width-l),height:(p.size.height-f)},k=(parseInt(p.element.css("left"),10)+(p.position.left-p.originalPosition.left))||null,m=(parseInt(p.element.css("top"),10)+(p.position.top-p.originalPosition.top))||null;p.element.animate(c.extend(g,m&&k?{top:m,left:k}:{}),{duration:j.animateDuration,easing:j.animateEasing,step:function(){var o={width:parseInt(p.element.css("width"),10),height:parseInt(p.element.css("height"),10),top:parseInt(p.element.css("top"),10),left:parseInt(p.element.css("left"),10)};if(h&&h.length){c(h[0]).css({width:o.width,height:o.height})}p._updateCache(o);p._propagate("resize",i)}})}});c.ui.plugin.add("resizable","containment",{start:function(f,r){var t=c(this).data("resizable"),j=t.options,l=t.element;var g=j.containment,k=(g instanceof c)?g.get(0):(/parent/.test(g))?l.parent().get(0):g;if(!k){return}t.containerElement=c(k);if(/document/.test(g)||g==document){t.containerOffset={left:0,top:0};t.containerPosition={left:0,top:0};t.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var n=c(k),i=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){i[p]=b(n.css("padding"+o))});t.containerOffset=n.offset();t.containerPosition=n.position();t.containerSize={height:(n.innerHeight()-i[3]),width:(n.innerWidth()-i[1])};var q=t.containerOffset,e=t.containerSize.height,m=t.containerSize.width,h=(c.ui.hasScroll(k,"left")?k.scrollWidth:m),s=(c.ui.hasScroll(k)?k.scrollHeight:e);t.parentData={element:k,left:q.left,top:q.top,width:h,height:s}}},resize:function(g,q){var t=c(this).data("resizable"),i=t.options,f=t.containerSize,p=t.containerOffset,m=t.size,n=t.position,r=t._aspectRatio||g.shiftKey,e={top:0,left:0},h=t.containerElement;if(h[0]!=document&&(/static/).test(h.css("position"))){e=p}if(n.left<(t._helper?p.left:0)){t.size.width=t.size.width+(t._helper?(t.position.left-p.left):(t.position.left-e.left));if(r){t.size.height=t.size.width/i.aspectRatio}t.position.left=i.helper?p.left:0}if(n.top<(t._helper?p.top:0)){t.size.height=t.size.height+(t._helper?(t.position.top-p.top):t.position.top);if(r){t.size.width=t.size.height*i.aspectRatio}t.position.top=t._helper?p.top:0}t.offset.left=t.parentData.left+t.position.left;t.offset.top=t.parentData.top+t.position.top;var l=Math.abs((t._helper?t.offset.left-e.left:(t.offset.left-e.left))+t.sizeDiff.width),s=Math.abs((t._helper?t.offset.top-e.top:(t.offset.top-p.top))+t.sizeDiff.height);var k=t.containerElement.get(0)==t.element.parent().get(0),j=/relative|absolute/.test(t.containerElement.css("position"));if(k&&j){l-=t.parentData.left}if(l+t.size.width>=t.parentData.width){t.size.width=t.parentData.width-l;if(r){t.size.height=t.size.width/t.aspectRatio}}if(s+t.size.height>=t.parentData.height){t.size.height=t.parentData.height-s;if(r){t.size.width=t.size.height*t.aspectRatio}}},stop:function(f,n){var q=c(this).data("resizable"),g=q.options,l=q.position,m=q.containerOffset,e=q.containerPosition,i=q.containerElement;var j=c(q.helper),r=j.offset(),p=j.outerWidth()-q.sizeDiff.width,k=j.outerHeight()-q.sizeDiff.height;if(q._helper&&!g.animate&&(/relative/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}if(q._helper&&!g.animate&&(/static/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}}});c.ui.plugin.add("resizable","ghost",{start:function(g,h){var e=c(this).data("resizable"),i=e.options,f=e.size;e.ghost=e.originalElement.clone();e.ghost.css({opacity:0.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof i.ghost=="string"?i.ghost:"");e.ghost.appendTo(e.helper)},resize:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost){e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})}},stop:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost&&e.helper){e.helper.get(0).removeChild(e.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(e,m){var p=c(this).data("resizable"),h=p.options,k=p.size,i=p.originalSize,j=p.originalPosition,n=p.axis,l=h._aspectRatio||e.shiftKey;h.grid=typeof h.grid=="number"?[h.grid,h.grid]:h.grid;var g=Math.round((k.width-i.width)/(h.grid[0]||1))*(h.grid[0]||1),f=Math.round((k.height-i.height)/(h.grid[1]||1))*(h.grid[1]||1);if(/^(se|s|e)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f}else{if(/^(ne)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f}else{if(/^(sw)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.left=j.left-g}else{p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f;p.position.left=j.left-g}}}}});var b=function(e){return parseInt(e,10)||0};var a=function(e){return !isNaN(parseInt(e,10))}})(jQuery);/* +(function(b,c){var a=false;b(document).mouseup(function(d){a=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var d=this;this.element.bind("mousedown."+this.widgetName,function(e){return d._mouseDown(e)}).bind("click."+this.widgetName,function(e){if(true===b.data(e.target,d.widgetName+".preventClickEvent")){b.removeData(e.target,d.widgetName+".preventClickEvent");e.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(f){if(a){return}(this._mouseStarted&&this._mouseUp(f));this._mouseDownEvent=f;var e=this,g=(f.which==1),d=(typeof this.options.cancel=="string"&&f.target.nodeName?b(f.target).closest(this.options.cancel).length:false);if(!g||d||!this._mouseCapture(f)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(f)&&this._mouseDelayMet(f)){this._mouseStarted=(this._mouseStart(f)!==false);if(!this._mouseStarted){f.preventDefault();return true}}if(true===b.data(f.target,this.widgetName+".preventClickEvent")){b.removeData(f.target,this.widgetName+".preventClickEvent")}this._mouseMoveDelegate=function(h){return e._mouseMove(h)};this._mouseUpDelegate=function(h){return e._mouseUp(h)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);f.preventDefault();a=true;return true},_mouseMove:function(d){if(b.browser.msie&&!(document.documentMode>=9)&&!d.button){return this._mouseUp(d)}if(this._mouseStarted){this._mouseDrag(d);return d.preventDefault()}if(this._mouseDistanceMet(d)&&this._mouseDelayMet(d)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,d)!==false);(this._mouseStarted?this._mouseDrag(d):this._mouseUp(d))}return !this._mouseStarted},_mouseUp:function(d){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;if(d.target==this._mouseDownEvent.target){b.data(d.target,this.widgetName+".preventClickEvent",true)}this._mouseStop(d)}return false},_mouseDistanceMet:function(d){return(Math.max(Math.abs(this._mouseDownEvent.pageX-d.pageX),Math.abs(this._mouseDownEvent.pageY-d.pageY))>=this.options.distance)},_mouseDelayMet:function(d){return this.mouseDelayMet},_mouseStart:function(d){},_mouseDrag:function(d){},_mouseStop:function(d){},_mouseCapture:function(d){return true}})})(jQuery);(function(c,d){c.widget("ui.resizable",c.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000},_create:function(){var f=this,k=this.options;this.element.addClass("ui-resizable");c.extend(this,{_aspectRatio:!!(k.aspectRatio),aspectRatio:k.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:k.helper||k.ghost||k.animate?k.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){this.element.wrap(c('
    ').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=k.handles||(!c(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all"){this.handles="n,e,s,w,se,sw,ne,nw"}var l=this.handles.split(",");this.handles={};for(var g=0;g');if(/sw|se|ne|nw/.test(j)){h.css({zIndex:++k.zIndex})}if("se"==j){h.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[j]=".ui-resizable-"+j;this.element.append(h)}}this._renderAxis=function(q){q=q||this.element;for(var n in this.handles){if(this.handles[n].constructor==String){this.handles[n]=c(this.handles[n],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var o=c(this.handles[n],this.element),p=0;p=/sw|ne|nw|se|n|s/.test(n)?o.outerHeight():o.outerWidth();var m=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");q.css(m,p);this._proportionallyResize()}if(!c(this.handles[n]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!f.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}f.axis=i&&i[1]?i[1]:"se"}});if(k.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){if(k.disabled){return}c(this).removeClass("ui-resizable-autohide");f._handles.show()},function(){if(k.disabled){return}if(!f.resizing){c(this).addClass("ui-resizable-autohide");f._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var e=function(g){c(g).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){e(this.element);var f=this.element;f.after(this.originalElement.css({position:f.css("position"),width:f.outerWidth(),height:f.outerHeight(),top:f.css("top"),left:f.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);e(this.originalElement);return this},_mouseCapture:function(f){var g=false;for(var e in this.handles){if(c(this.handles[e])[0]==f.target){g=true}}return !this.options.disabled&&g},_mouseStart:function(g){var j=this.options,f=this.element.position(),e=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(e.is(".ui-draggable")||(/absolute/).test(e.css("position"))){e.css({position:"absolute",top:f.top,left:f.left})}this._renderProxy();var k=b(this.helper.css("left")),h=b(this.helper.css("top"));if(j.containment){k+=c(j.containment).scrollLeft()||0;h+=c(j.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:k,top:h};this.size=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalSize=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalPosition={left:k,top:h};this.sizeDiff={width:e.outerWidth()-e.width(),height:e.outerHeight()-e.height()};this.originalMousePosition={left:g.pageX,top:g.pageY};this.aspectRatio=(typeof j.aspectRatio=="number")?j.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var i=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",i=="auto"?this.axis+"-resize":i);e.addClass("ui-resizable-resizing");this._propagate("start",g);return true},_mouseDrag:function(e){var h=this.helper,g=this.options,m={},q=this,j=this.originalMousePosition,n=this.axis;var r=(e.pageX-j.left)||0,p=(e.pageY-j.top)||0;var i=this._change[n];if(!i){return false}var l=i.apply(this,[e,r,p]),k=c.browser.msie&&c.browser.version<7,f=this.sizeDiff;this._updateVirtualBoundaries(e.shiftKey);if(this._aspectRatio||e.shiftKey){l=this._updateRatio(l,e)}l=this._respectSize(l,e);this._propagate("resize",e);h.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(l);this._trigger("resize",e,this.ui());return false},_mouseStop:function(h){this.resizing=false;var i=this.options,m=this;if(this._helper){var g=this._proportionallyResizeElements,e=g.length&&(/textarea/i).test(g[0].nodeName),f=e&&c.ui.hasScroll(g[0],"left")?0:m.sizeDiff.height,k=e?0:m.sizeDiff.width;var n={width:(m.helper.width()-k),height:(m.helper.height()-f)},j=(parseInt(m.element.css("left"),10)+(m.position.left-m.originalPosition.left))||null,l=(parseInt(m.element.css("top"),10)+(m.position.top-m.originalPosition.top))||null;if(!i.animate){this.element.css(c.extend(n,{top:l,left:j}))}m.helper.height(m.size.height);m.helper.width(m.size.width);if(this._helper&&!i.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",h);if(this._helper){this.helper.remove()}return false},_updateVirtualBoundaries:function(g){var j=this.options,i,h,f,k,e;e={minWidth:a(j.minWidth)?j.minWidth:0,maxWidth:a(j.maxWidth)?j.maxWidth:Infinity,minHeight:a(j.minHeight)?j.minHeight:0,maxHeight:a(j.maxHeight)?j.maxHeight:Infinity};if(this._aspectRatio||g){i=e.minHeight*this.aspectRatio;f=e.minWidth/this.aspectRatio;h=e.maxHeight*this.aspectRatio;k=e.maxWidth/this.aspectRatio;if(i>e.minWidth){e.minWidth=i}if(f>e.minHeight){e.minHeight=f}if(hl.width),s=a(l.height)&&i.minHeight&&(i.minHeight>l.height);if(h){l.width=i.minWidth}if(s){l.height=i.minHeight}if(t){l.width=i.maxWidth}if(m){l.height=i.maxHeight}var f=this.originalPosition.left+this.originalSize.width,p=this.position.top+this.size.height;var k=/sw|nw|w/.test(q),e=/nw|ne|n/.test(q);if(h&&k){l.left=f-i.minWidth}if(t&&k){l.left=f-i.maxWidth}if(s&&e){l.top=p-i.minHeight}if(m&&e){l.top=p-i.maxHeight}var n=!l.width&&!l.height;if(n&&!l.left&&l.top){l.top=null}else{if(n&&!l.top&&l.left){l.left=null}}return l},_proportionallyResize:function(){var k=this.options;if(!this._proportionallyResizeElements.length){return}var g=this.helper||this.element;for(var f=0;f');var e=c.browser.msie&&c.browser.version<7,g=(e?1:0),h=(e?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+h,height:this.element.outerHeight()+h,position:"absolute",left:this.elementOffset.left-g+"px",top:this.elementOffset.top-g+"px",zIndex:++i.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(g,f,e){return{width:this.originalSize.width+f}},w:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{left:i.left+f,width:g.width-f}},n:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{top:i.top+e,height:g.height-e}},s:function(g,f,e){return{height:this.originalSize.height+e}},se:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},sw:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[g,f,e]))},ne:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},nw:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[g,f,e]))}},_propagate:function(f,e){c.ui.plugin.call(this,f,[e,this.ui()]);(f!="resize"&&this._trigger(f,e,this.ui()))},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});c.extend(c.ui.resizable,{version:"1.8.18"});c.ui.plugin.add("resizable","alsoResize",{start:function(f,g){var e=c(this).data("resizable"),i=e.options;var h=function(j){c(j).each(function(){var k=c(this);k.data("resizable-alsoresize",{width:parseInt(k.width(),10),height:parseInt(k.height(),10),left:parseInt(k.css("left"),10),top:parseInt(k.css("top"),10)})})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.parentNode){if(i.alsoResize.length){i.alsoResize=i.alsoResize[0];h(i.alsoResize)}else{c.each(i.alsoResize,function(j){h(j)})}}else{h(i.alsoResize)}},resize:function(g,i){var f=c(this).data("resizable"),j=f.options,h=f.originalSize,l=f.originalPosition;var k={height:(f.size.height-h.height)||0,width:(f.size.width-h.width)||0,top:(f.position.top-l.top)||0,left:(f.position.left-l.left)||0},e=function(m,n){c(m).each(function(){var q=c(this),r=c(this).data("resizable-alsoresize"),p={},o=n&&n.length?n:q.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];c.each(o,function(s,u){var t=(r[u]||0)+(k[u]||0);if(t&&t>=0){p[u]=t||null}});q.css(p)})};if(typeof(j.alsoResize)=="object"&&!j.alsoResize.nodeType){c.each(j.alsoResize,function(m,n){e(m,n)})}else{e(j.alsoResize)}},stop:function(e,f){c(this).removeData("resizable-alsoresize")}});c.ui.plugin.add("resizable","animate",{stop:function(i,n){var p=c(this).data("resizable"),j=p.options;var h=p._proportionallyResizeElements,e=h.length&&(/textarea/i).test(h[0].nodeName),f=e&&c.ui.hasScroll(h[0],"left")?0:p.sizeDiff.height,l=e?0:p.sizeDiff.width;var g={width:(p.size.width-l),height:(p.size.height-f)},k=(parseInt(p.element.css("left"),10)+(p.position.left-p.originalPosition.left))||null,m=(parseInt(p.element.css("top"),10)+(p.position.top-p.originalPosition.top))||null;p.element.animate(c.extend(g,m&&k?{top:m,left:k}:{}),{duration:j.animateDuration,easing:j.animateEasing,step:function(){var o={width:parseInt(p.element.css("width"),10),height:parseInt(p.element.css("height"),10),top:parseInt(p.element.css("top"),10),left:parseInt(p.element.css("left"),10)};if(h&&h.length){c(h[0]).css({width:o.width,height:o.height})}p._updateCache(o);p._propagate("resize",i)}})}});c.ui.plugin.add("resizable","containment",{start:function(f,r){var t=c(this).data("resizable"),j=t.options,l=t.element;var g=j.containment,k=(g instanceof c)?g.get(0):(/parent/.test(g))?l.parent().get(0):g;if(!k){return}t.containerElement=c(k);if(/document/.test(g)||g==document){t.containerOffset={left:0,top:0};t.containerPosition={left:0,top:0};t.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var n=c(k),i=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){i[p]=b(n.css("padding"+o))});t.containerOffset=n.offset();t.containerPosition=n.position();t.containerSize={height:(n.innerHeight()-i[3]),width:(n.innerWidth()-i[1])};var q=t.containerOffset,e=t.containerSize.height,m=t.containerSize.width,h=(c.ui.hasScroll(k,"left")?k.scrollWidth:m),s=(c.ui.hasScroll(k)?k.scrollHeight:e);t.parentData={element:k,left:q.left,top:q.top,width:h,height:s}}},resize:function(g,q){var t=c(this).data("resizable"),i=t.options,f=t.containerSize,p=t.containerOffset,m=t.size,n=t.position,r=t._aspectRatio||g.shiftKey,e={top:0,left:0},h=t.containerElement;if(h[0]!=document&&(/static/).test(h.css("position"))){e=p}if(n.left<(t._helper?p.left:0)){t.size.width=t.size.width+(t._helper?(t.position.left-p.left):(t.position.left-e.left));if(r){t.size.height=t.size.width/i.aspectRatio}t.position.left=i.helper?p.left:0}if(n.top<(t._helper?p.top:0)){t.size.height=t.size.height+(t._helper?(t.position.top-p.top):t.position.top);if(r){t.size.width=t.size.height*i.aspectRatio}t.position.top=t._helper?p.top:0}t.offset.left=t.parentData.left+t.position.left;t.offset.top=t.parentData.top+t.position.top;var l=Math.abs((t._helper?t.offset.left-e.left:(t.offset.left-e.left))+t.sizeDiff.width),s=Math.abs((t._helper?t.offset.top-e.top:(t.offset.top-p.top))+t.sizeDiff.height);var k=t.containerElement.get(0)==t.element.parent().get(0),j=/relative|absolute/.test(t.containerElement.css("position"));if(k&&j){l-=t.parentData.left}if(l+t.size.width>=t.parentData.width){t.size.width=t.parentData.width-l;if(r){t.size.height=t.size.width/t.aspectRatio}}if(s+t.size.height>=t.parentData.height){t.size.height=t.parentData.height-s;if(r){t.size.width=t.size.height*t.aspectRatio}}},stop:function(f,n){var q=c(this).data("resizable"),g=q.options,l=q.position,m=q.containerOffset,e=q.containerPosition,i=q.containerElement;var j=c(q.helper),r=j.offset(),p=j.outerWidth()-q.sizeDiff.width,k=j.outerHeight()-q.sizeDiff.height;if(q._helper&&!g.animate&&(/relative/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}if(q._helper&&!g.animate&&(/static/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}}});c.ui.plugin.add("resizable","ghost",{start:function(g,h){var e=c(this).data("resizable"),i=e.options,f=e.size;e.ghost=e.originalElement.clone();e.ghost.css({opacity:0.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof i.ghost=="string"?i.ghost:"");e.ghost.appendTo(e.helper)},resize:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost){e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})}},stop:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost&&e.helper){e.helper.get(0).removeChild(e.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(e,m){var p=c(this).data("resizable"),h=p.options,k=p.size,i=p.originalSize,j=p.originalPosition,n=p.axis,l=h._aspectRatio||e.shiftKey;h.grid=typeof h.grid=="number"?[h.grid,h.grid]:h.grid;var g=Math.round((k.width-i.width)/(h.grid[0]||1))*(h.grid[0]||1),f=Math.round((k.height-i.height)/(h.grid[1]||1))*(h.grid[1]||1);if(/^(se|s|e)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f}else{if(/^(ne)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f}else{if(/^(sw)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.left=j.left-g}else{p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f;p.position.left=j.left-g}}}}});var b=function(e){return parseInt(e,10)||0};var a=function(e){return !isNaN(parseInt(e,10))}})(jQuery);/*! * jQuery hashchange event - v1.3 - 7/21/2010 * http://benalman.com/projects/jquery-hashchange-plugin/ * @@ -58,11 +58,30 @@ * Dual licensed under the MIT and GPL licenses. * http://benalman.com/about/license/ */ -(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$('