pacemaker  2.0.4-2deceaa
Scalable High-Availability cluster resource manager
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
pcmk__output_s Struct Reference

This structure contains everything that makes up a single output formatter. More...

#include <include/crm/common/output.h>

Data Fields

const char * fmt_name
 The name of this output formatter. More...
 
gchar * request
 A copy of the request that generated this output. More...
 
bool supports_quiet
 Does this formatter support a special quiet mode? More...
 
FILE * dest
 Where output should be written. More...
 
GHashTable * messages
 Custom messages that are currently registered on this formatter. More...
 
void * priv
 Implementation-specific private data. More...
 
bool(* init )(pcmk__output_t *out)
 
void(* free_priv )(pcmk__output_t *out)
 
void(* finish )(pcmk__output_t *out, crm_exit_t exit_status, bool print, void **copy_dest)
 
void(* reset )(pcmk__output_t *out)
 
void(* register_message )(pcmk__output_t *out, const char *message_id, pcmk__message_fn_t fn)
 
int(* message )(pcmk__output_t *out, const char *message_id,...)
 
void(* subprocess_output )(pcmk__output_t *out, int exit_status, const char *proc_stdout, const char *proc_stderr)
 
void(* version )(pcmk__output_t *out, bool extended)
 
void(* info )(pcmk__output_t *out, const char *format,...) G_GNUC_PRINTF(2
 
void(*) void(* err )(pcmk__output_t *out, const char *format,...) G_GNUC_PRINTF(2
 
void(*) void(*) void(* output_xml )(pcmk__output_t *out, const char *name, const char *buf)
 
void(* begin_list )(pcmk__output_t *out, const char *singular_noun, const char *plural_noun, const char *format,...) G_GNUC_PRINTF(4
 
void(*) void(* list_item )(pcmk__output_t *out, const char *name, const char *format,...) G_GNUC_PRINTF(3
 
void(*) void(*) void(* increment_list )(pcmk__output_t *out)
 
void(* end_list )(pcmk__output_t *out)
 

Detailed Description

This structure contains everything that makes up a single output formatter.

Instances of this structure may be created by calling pcmk__output_new() with the name of the desired formatter. They should later be freed with pcmk__output_free().

Definition at line 153 of file output.h.

Field Documentation

void(* pcmk__output_s::begin_list)(pcmk__output_t *out, const char *singular_noun, const char *plural_noun, const char *format,...) G_GNUC_PRINTF(4

Definition at line 392 of file output.h.

FILE* pcmk__output_s::dest

Where output should be written.

This could be a file handle, or stdout or stderr. This is really only useful internally.

Definition at line 182 of file output.h.

void(* pcmk__output_s::end_list)(pcmk__output_t *out)

Definition at line 432 of file output.h.

void(*) void(* pcmk__output_s::err)(pcmk__output_t *out, const char *format,...) G_GNUC_PRINTF(2

Definition at line 361 of file output.h.

void(* pcmk__output_s::finish)(pcmk__output_t *out, crm_exit_t exit_status, bool print, void **copy_dest)

Definition at line 262 of file output.h.

const char* pcmk__output_s::fmt_name

The name of this output formatter.

Definition at line 157 of file output.h.

void(* pcmk__output_s::free_priv)(pcmk__output_t *out)

Definition at line 226 of file output.h.

void(*) void(*) void(* pcmk__output_s::increment_list)(pcmk__output_t *out)

Definition at line 420 of file output.h.

void(* pcmk__output_s::info)(pcmk__output_t *out, const char *format,...) G_GNUC_PRINTF(2

Definition at line 347 of file output.h.

bool(* pcmk__output_s::init)(pcmk__output_t *out)

Definition at line 215 of file output.h.

void(*) void(* pcmk__output_s::list_item)(pcmk__output_t *out, const char *name, const char *format,...) G_GNUC_PRINTF(3

Definition at line 405 of file output.h.

int(* pcmk__output_s::message)(pcmk__output_t *out, const char *message_id,...)

Definition at line 311 of file output.h.

GHashTable* pcmk__output_s::messages

Custom messages that are currently registered on this formatter.

Keys are the string message IDs, values are pcmk__message_fn_t function pointers.

Definition at line 190 of file output.h.

void(*) void(*) void(* pcmk__output_s::output_xml)(pcmk__output_t *out, const char *name, const char *buf)

Definition at line 371 of file output.h.

void* pcmk__output_s::priv

Implementation-specific private data.

Each individual formatter may have some private data useful in its implementation. This points to that data. Callers should not rely on its contents or structure.

Definition at line 199 of file output.h.

void(* pcmk__output_s::register_message)(pcmk__output_t *out, const char *message_id, pcmk__message_fn_t fn)

Definition at line 293 of file output.h.

gchar* pcmk__output_s::request

A copy of the request that generated this output.

In the case of command line usage, this would be the command line arguments. For other use cases, it could be different.

Definition at line 165 of file output.h.

void(* pcmk__output_s::reset)(pcmk__output_t *out)

Definition at line 280 of file output.h.

void(* pcmk__output_s::subprocess_output)(pcmk__output_t *out, int exit_status, const char *proc_stdout, const char *proc_stderr)

Definition at line 322 of file output.h.

bool pcmk__output_s::supports_quiet

Does this formatter support a special quiet mode?

In this mode, most output can be supressed but some information is still displayed to an interactive user. In general, machine-readable output formats will not support this while user-oriented formats will.

Definition at line 174 of file output.h.

void(* pcmk__output_s::version)(pcmk__output_t *out, bool extended)

Definition at line 333 of file output.h.


The documentation for this struct was generated from the following file: