1 /*
2 * Copyright 2019-2021 the Pacemaker project contributors
3 *
4 * The version control history for this file may have further details.
5 *
6 * This source code is licensed under the GNU Lesser General Public License
7 * version 2.1 or later (LGPLv2.1+) WITHOUT ANY WARRANTY.
8 */
9 #ifndef PCMKI_OUTPUT_H
10 # define PCMKI_OUTPUT_H
11
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15
16 # include <libxml/tree.h>
17 # include <crm/common/output_internal.h>
18
19 extern pcmk__supported_format_t pcmk__out_formats[];
20
21 int pcmk__out_prologue(pcmk__output_t **out, xmlNodePtr *xml);
22 void pcmk__out_epilogue(pcmk__output_t *out, xmlNodePtr *xml, int retval);
23
24 /* This function registers only the formatted output messages that are a part
25 * of libpacemaker. It is not to be confused with pcmk__register_messages,
26 * which is a part of formatted output support and registers a whole table of
27 * messages at a time.
28 */
29 void pcmk__register_lib_messages(pcmk__output_t *out);
30
31 int pcmk__cluster_status_text(pcmk__output_t *out, va_list args);
32
33 #ifdef __cplusplus
34 }
35 #endif
36
37 #endif