source: rtems/cpukit/include/rtems/score/io.h @ a6b36334

5
Last change on this file since a6b36334 was a6b36334, checked in by Sebastian Huber <sebastian.huber@…>, on 03/12/20 at 14:43:17

score: Add _IO_Base64()

Update #3904.

  • Property mode set to 100644
File size: 1.6 KB
Line 
1/*
2 * Copyright (c) 2017 embedded brains GmbH.  All rights reserved.
3 *
4 *  embedded brains GmbH
5 *  Dornierstr. 4
6 *  82178 Puchheim
7 *  Germany
8 *  <rtems@embedded-brains.de>
9 *
10 * The license and distribution terms for this file may be
11 * found in the file LICENSE in this distribution or at
12 * http://www.rtems.org/license/LICENSE.
13 */
14
15#ifndef _RTEMS_SCORE_IO_H
16#define _RTEMS_SCORE_IO_H
17
18#include <rtems/score/basedefs.h>
19
20#include <stdarg.h>
21
22#ifdef __cplusplus
23extern "C" {
24#endif /* __cplusplus */
25
26typedef void ( *IO_Put_char )( int c, void *arg );
27
28int _IO_Printf(
29  IO_Put_char  put_char,
30  void        *arg,
31  char const  *fmt,
32  ...
33) RTEMS_PRINTFLIKE( 3, 4 );
34
35int _IO_Vprintf(
36  IO_Put_char  put_char,
37  void        *arg,
38  char const  *fmt,
39  va_list      ap
40);
41
42/**
43 * @brief Outputs the source buffer in base64 encoding.
44 *
45 * After word length of output characters produced by the encoding a word break
46 * is produced.
47 *
48 * @param put_char The put character function.
49 * @param arg The argument passed to the put character function.
50 * @param src The pointer to the source buffer begin.
51 * @param srclen The length of the source buffer in bytes.
52 * @param wordbreak The word break string.
53 * @param wordlen The word length in bytes.  If the word length is less than
54 *   four, then a word length of four will be used.
55 *
56 * @return The count of output characters.
57 */
58int _IO_Base64(
59  IO_Put_char  put_char,
60  void        *arg,
61  const void  *src,
62  size_t       len,
63  const char  *wordbreak,
64  int          wordlen
65);
66
67#ifdef __cplusplus
68}
69#endif /* __cplusplus */
70
71#endif /* _RTEMS_SCORE_IO_H */
Note: See TracBrowser for help on using the repository browser.