]> git.donarmstrong.com Git - qmk_firmware.git/blob - docs/internals_sysex_tools.md
[Keyboard] fixed pins for numpad_5x4 layout (#6311)
[qmk_firmware.git] / docs / internals_sysex_tools.md
1 # group `sysex_tools` {#group__sysex__tools}
2
3 ## Summary
4
5  Members                        | Descriptions                                
6 --------------------------------|---------------------------------------------
7 `public uint16_t `[`sysex_encoded_length`](#group__sysex__tools_1ga061e5607030412d6e62e2390d8013f0a)`(uint16_t decoded_length)`            | Compute the length of a message after it is encoded.
8 `public uint16_t `[`sysex_decoded_length`](#group__sysex__tools_1ga121fc227d3acc1c0ea08c9a5c26fa3b0)`(uint16_t encoded_length)`            | Compute the length of a message after it is decoded.
9 `public uint16_t `[`sysex_encode`](#group__sysex__tools_1ga54d77f8d32f92a6f329daefa2b314742)`(uint8_t * encoded,const uint8_t * source,uint16_t length)`            | Encode data so that it can be transmitted safely in a sysex message.
10 `public uint16_t `[`sysex_decode`](#group__sysex__tools_1gaaad1d9ba2d5eca709a0ab4ba40662229)`(uint8_t * decoded,const uint8_t * source,uint16_t length)`            | Decode encoded data.
11
12 ## Members
13
14 #### `public uint16_t `[`sysex_encoded_length`](#group__sysex__tools_1ga061e5607030412d6e62e2390d8013f0a)`(uint16_t decoded_length)` {#group__sysex__tools_1ga061e5607030412d6e62e2390d8013f0a}
15
16 Compute the length of a message after it is encoded.
17
18 #### Parameters
19 * `decoded_length` The length, in bytes, of the message to encode.
20
21 #### Returns
22 The length, in bytes, of the message after encodeing.
23
24 #### `public uint16_t `[`sysex_decoded_length`](#group__sysex__tools_1ga121fc227d3acc1c0ea08c9a5c26fa3b0)`(uint16_t encoded_length)` {#group__sysex__tools_1ga121fc227d3acc1c0ea08c9a5c26fa3b0}
25
26 Compute the length of a message after it is decoded.
27
28 #### Parameters
29 * `encoded_length` The length, in bytes, of the encoded message.
30
31 #### Returns
32 The length, in bytes, of the message after it is decoded.
33
34 #### `public uint16_t `[`sysex_encode`](#group__sysex__tools_1ga54d77f8d32f92a6f329daefa2b314742)`(uint8_t * encoded,const uint8_t * source,uint16_t length)` {#group__sysex__tools_1ga54d77f8d32f92a6f329daefa2b314742}
35
36 Encode data so that it can be transmitted safely in a sysex message.
37
38 #### Parameters
39 * `encoded` The output data buffer, must be at least sysex_encoded_length(length) bytes long. 
40
41 * `source` The input buffer of data to be encoded. 
42
43 * `length` The number of bytes from the input buffer to encode.
44
45 #### Returns
46 number of bytes encoded.
47
48 #### `public uint16_t `[`sysex_decode`](#group__sysex__tools_1gaaad1d9ba2d5eca709a0ab4ba40662229)`(uint8_t * decoded,const uint8_t * source,uint16_t length)` {#group__sysex__tools_1gaaad1d9ba2d5eca709a0ab4ba40662229}
49
50 Decode encoded data.
51
52 #### Parameters
53 * `decoded` The output data buffer, must be at least sysex_decoded_length(length) bytes long. 
54
55 * `source` The input buffer of data to be decoded. 
56
57 * `length` The number of bytes from the input buffer to decode.
58
59 #### Returns
60 number of bytes decoded.
61