pacemaker  2.0.3-4b1f869f0f
Scalable High-Availability cluster resource manager
Data Structures | Macros | Typedefs | Functions | Variables
output.h File Reference

Formatted output for pacemaker tools. More...

#include <stdbool.h>
#include <stdio.h>
#include <libxml/tree.h>
#include <libxml/HTMLtree.h>
#include <glib.h>
#include <crm/common/results.h>
Include dependency graph for output.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  pcmk__message_entry_s
 
struct  pcmk__supported_format_s
 
struct  pcmk__output_s
 This structure contains everything that makes up a single output formatter. More...
 

Macros

#define PCMK__API_VERSION   "2.0"
 
#define PCMK__SUPPORTED_FORMAT_HTML   { "html", pcmk__mk_html_output, pcmk__html_output_entries }
 
#define PCMK__SUPPORTED_FORMAT_NONE   { "none", pcmk__mk_none_output, pcmk__none_output_entries }
 
#define PCMK__SUPPORTED_FORMAT_TEXT   { "text", pcmk__mk_text_output, pcmk__text_output_entries }
 
#define PCMK__SUPPORTED_FORMAT_XML   { "xml", pcmk__mk_xml_output, pcmk__xml_output_entries }
 

Typedefs

typedef struct pcmk__output_s pcmk__output_t
 
typedef pcmk__output_t *(* pcmk__output_factory_t) (char **argv)
 
typedef int(* pcmk__message_fn_t) (pcmk__output_t *out, va_list args)
 
typedef struct pcmk__message_entry_s pcmk__message_entry_t
 
typedef struct pcmk__supported_format_s pcmk__supported_format_t
 

Functions

pcmk__output_tpcmk__mk_html_output (char **argv)
 
pcmk__output_tpcmk__mk_none_output (char **argv)
 
pcmk__output_tpcmk__mk_text_output (char **argv)
 
pcmk__output_tpcmk__mk_xml_output (char **argv)
 
int pcmk__call_message (pcmk__output_t *out, const char *message_id,...)
 
void pcmk__output_free (pcmk__output_t *out)
 
int pcmk__output_new (pcmk__output_t **out, const char *fmt_name, const char *filename, char **argv)
 
int pcmk__register_format (GOptionGroup *group, const char *name, pcmk__output_factory_t create, GOptionEntry *options)
 
void pcmk__register_formats (GOptionGroup *group, pcmk__supported_format_t *table)
 
void pcmk__register_message (pcmk__output_t *out, const char *message_id, pcmk__message_fn_t fn)
 
void pcmk__register_messages (pcmk__output_t *out, pcmk__message_entry_t *table)
 
void pcmk__indented_printf (pcmk__output_t *out, const char *format,...) G_GNUC_PRINTF(2
 
void void pcmk__indented_vprintf (pcmk__output_t *out, const char *format, va_list args) G_GNUC_PRINTF(2
 
void void xmlNodePtr pcmk__output_xml_create_parent (pcmk__output_t *out, const char *name)
 
void pcmk__output_xml_add_node (pcmk__output_t *out, xmlNodePtr node)
 
xmlNodePtr pcmk__output_create_xml_node (pcmk__output_t *out, const char *name)
 
xmlNodePtr pcmk__output_create_xml_text_node (pcmk__output_t *out, const char *name, const char *content)
 
void pcmk__output_xml_push_parent (pcmk__output_t *out, xmlNodePtr node)
 
void pcmk__output_xml_pop_parent (pcmk__output_t *out)
 
xmlNodePtr pcmk__output_xml_peek_parent (pcmk__output_t *out)
 
xmlNodePtr pcmk__output_create_html_node (pcmk__output_t *out, const char *element_name, const char *id, const char *class_name, const char *text)
 
void pcmk__html_add_header (xmlNodePtr parent, const char *name,...) G_GNUC_NULL_TERMINATED
 

Variables

GOptionEntry pcmk__html_output_entries []
 
GOptionEntry pcmk__none_output_entries []
 
GOptionEntry pcmk__text_output_entries []
 
GOptionEntry pcmk__xml_output_entries []
 

Detailed Description

Formatted output for pacemaker tools.

Definition in file output.h.

Macro Definition Documentation

◆ PCMK__API_VERSION

#define PCMK__API_VERSION   "2.0"

Definition at line 30 of file output.h.

◆ PCMK__SUPPORTED_FORMAT_HTML

#define PCMK__SUPPORTED_FORMAT_HTML   { "html", pcmk__mk_html_output, pcmk__html_output_entries }

Definition at line 137 of file output.h.

◆ PCMK__SUPPORTED_FORMAT_NONE

#define PCMK__SUPPORTED_FORMAT_NONE   { "none", pcmk__mk_none_output, pcmk__none_output_entries }

Definition at line 138 of file output.h.

◆ PCMK__SUPPORTED_FORMAT_TEXT

#define PCMK__SUPPORTED_FORMAT_TEXT   { "text", pcmk__mk_text_output, pcmk__text_output_entries }

Definition at line 139 of file output.h.

◆ PCMK__SUPPORTED_FORMAT_XML

#define PCMK__SUPPORTED_FORMAT_XML   { "xml", pcmk__mk_xml_output, pcmk__xml_output_entries }

Definition at line 140 of file output.h.

Typedef Documentation

◆ pcmk__message_entry_t

◆ pcmk__message_fn_t

typedef int(* pcmk__message_fn_t) (pcmk__output_t *out, va_list args)

Definition at line 60 of file output.h.

◆ pcmk__output_factory_t

typedef pcmk__output_t*(* pcmk__output_factory_t) (char **argv)

Definition at line 44 of file output.h.

◆ pcmk__output_t

Definition at line 32 of file output.h.

◆ pcmk__supported_format_t

Function Documentation

◆ pcmk__call_message()

int pcmk__call_message ( pcmk__output_t out,
const char *  message_id,
  ... 
)

Definition at line 109 of file output.c.

◆ pcmk__html_add_header()

void pcmk__html_add_header ( xmlNodePtr  parent,
const char *  name,
  ... 
)

Definition at line 397 of file output_html.c.

◆ pcmk__indented_printf()

void pcmk__indented_printf ( pcmk__output_t out,
const char *  format,
  ... 
)

◆ pcmk__indented_vprintf()

void void pcmk__indented_vprintf ( pcmk__output_t out,
const char *  format,
va_list  args 
)

◆ pcmk__mk_html_output()

pcmk__output_t* pcmk__mk_html_output ( char **  argv)

Definition at line 347 of file output_html.c.

◆ pcmk__mk_none_output()

pcmk__output_t* pcmk__mk_none_output ( char **  argv)

Definition at line 92 of file output_none.c.

◆ pcmk__mk_text_output()

pcmk__output_t* pcmk__mk_text_output ( char **  argv)

Definition at line 238 of file output_text.c.

◆ pcmk__mk_xml_output()

pcmk__output_t* pcmk__mk_xml_output ( char **  argv)

Definition at line 307 of file output_xml.c.

◆ pcmk__output_create_html_node()

xmlNodePtr pcmk__output_create_html_node ( pcmk__output_t out,
const char *  element_name,
const char *  id,
const char *  class_name,
const char *  text 
)

Definition at line 381 of file output_html.c.

◆ pcmk__output_create_xml_node()

xmlNodePtr pcmk__output_create_xml_node ( pcmk__output_t out,
const char *  name 
)

Definition at line 358 of file output_xml.c.

◆ pcmk__output_create_xml_text_node()

xmlNodePtr pcmk__output_create_xml_text_node ( pcmk__output_t out,
const char *  name,
const char *  content 
)

Definition at line 367 of file output_xml.c.

◆ pcmk__output_free()

void pcmk__output_free ( pcmk__output_t out)

Definition at line 19 of file output.c.

◆ pcmk__output_new()

int pcmk__output_new ( pcmk__output_t **  out,
const char *  fmt_name,
const char *  filename,
char **  argv 
)

Definition at line 31 of file output.c.

◆ pcmk__output_xml_add_node()

void pcmk__output_xml_add_node ( pcmk__output_t out,
xmlNodePtr  node 
)

Definition at line 348 of file output_xml.c.

◆ pcmk__output_xml_create_parent()

void void xmlNodePtr pcmk__output_xml_create_parent ( pcmk__output_t out,
const char *  name 
)

Definition at line 341 of file output_xml.c.

◆ pcmk__output_xml_peek_parent()

xmlNodePtr pcmk__output_xml_peek_parent ( pcmk__output_t out)

Definition at line 394 of file output_xml.c.

◆ pcmk__output_xml_pop_parent()

void pcmk__output_xml_pop_parent ( pcmk__output_t out)

Definition at line 384 of file output_xml.c.

◆ pcmk__output_xml_push_parent()

void pcmk__output_xml_push_parent ( pcmk__output_t out,
xmlNodePtr  node 
)

Definition at line 374 of file output_xml.c.

◆ pcmk__register_format()

int pcmk__register_format ( GOptionGroup *  group,
const char *  name,
pcmk__output_factory_t  create,
GOptionEntry *  options 
)

Definition at line 77 of file output.c.

◆ pcmk__register_formats()

void pcmk__register_formats ( GOptionGroup *  group,
pcmk__supported_format_t table 
)

Definition at line 96 of file output.c.

◆ pcmk__register_message()

void pcmk__register_message ( pcmk__output_t out,
const char *  message_id,
pcmk__message_fn_t  fn 
)

Definition at line 127 of file output.c.

◆ pcmk__register_messages()

void pcmk__register_messages ( pcmk__output_t out,
pcmk__message_entry_t table 
)

Definition at line 133 of file output.c.

Variable Documentation

◆ pcmk__html_output_entries

GOptionEntry pcmk__html_output_entries[]

Definition at line 40 of file output_html.c.

◆ pcmk__none_output_entries

GOptionEntry pcmk__none_output_entries[]

Definition at line 15 of file output_none.c.

◆ pcmk__text_output_entries

GOptionEntry pcmk__text_output_entries[]

Definition at line 18 of file output_text.c.

◆ pcmk__xml_output_entries

GOptionEntry pcmk__xml_output_entries[]

Definition at line 27 of file output_xml.c.