39#ifndef _RTEMS_PRINTER_H
40#define _RTEMS_PRINTER_H
88static inline bool rtems_print_printer_valid(
const rtems_printer *printer)
90 return printer !=
NULL && printer->printer !=
NULL;
101static inline void rtems_print_printer_empty(
rtems_printer *printer)
103 printer->context =
NULL;
104 printer->printer =
NULL;
142 size_t task_stack_size;
150static inline void rtems_printer_task_initialize(
161static inline void rtems_printer_task_set_stack_size(
166 context->task_stack_size = stack_size;
169static inline void rtems_printer_task_set_priority(
174 context->task_priority = priority;
177static inline void rtems_printer_task_set_file_descriptor(
185static inline void rtems_printer_task_set_buffer_table(
190 context->buffer_table = buffer_table;
193static inline void rtems_printer_task_set_buffer_count(
198 context->buffer_count = buffer_count;
201static inline void rtems_printer_task_set_buffer_size(
206 context->buffer_size = buffer_size;
This header file provides the Chains API.
#define RTEMS_INTERRUPT_LOCK_MEMBER(_designator)
Defines an ISR lock member.
Definition: intr.h:867
uint32_t rtems_task_priority
This integer type represents task priorities of the Classic API.
Definition: types.h:257
Objects_Id rtems_id
This type represents RTEMS object identifiers.
Definition: types.h:94
void rtems_print_printer_fprintf(rtems_printer *printer, FILE *file)
Initializes the printer to print via fprintf() using the specified file stream.
Definition: print_fprintf.c:47
int(* rtems_print_printer)(void *, const char *format, va_list ap)
Definition: printer.h:70
void rtems_print_printer_fprintf_putc(rtems_printer *printer)
Initializes the printer to print via fprintf() using an unbuffered FILE stream with output through rt...
Definition: printerfprintfputc.c:75
void rtems_print_printer_printk(rtems_printer *printer)
Initializes the printer to print via printk().
Definition: printk_plugin.c:56
int rtems_print_printer_task(rtems_printer *printer, rtems_printer_task_context *context)
Creates a printer task.
Definition: printertask.c:169
void rtems_print_printer_printf(rtems_printer *printer)
Initializes the printer to print via printf().
Definition: printf_plugin.c:47
void rtems_printer_task_drain(rtems_printer_task_context *context)
Drains the work queue of the printer task.
Definition: printertask.c:211
#define NULL
Requests a GPIO pin group configuration.
Definition: xil_types.h:54
This header file defines the Interrupt Manager API.
User print interface to the bspIO print plug in.
rtems_termios_device_context * context
Definition: console-config.c:62
Definition: mongoose.c:448
Definition: printer.h:137
This header file defines the main parts of the Tasks Manager API.
This union represents a chain control block.
Definition: chain.h:96