1/*
2 * Copyright (C) 2001 MontaVista Software Inc.
3 * Author: Jun Sun, jsun@mvista.com or jsun@junsun.net
4 *
5 * This program is free software; you can redistribute  it and/or modify it
6 * under  the terms of  the GNU General  Public License as published by the
7 * Free Software Foundation;  either version 2 of the  License, or (at your
8 * option) any later version.
9 *
10 */
11
12#ifndef _print_h_
13#define _print_h_
14
15#include <stdarg.h>
16
17/* this is the maximum width for a variable */
18#define		LP_MAX_BUF	80
19
20/* -*-
21 * output function takes an void pointer which is passed in as the
22 * second argument in lp_Print().  This black-box argument gives output
23 * function a way to track state.
24 *
25 * The second argument in output function is a pointer to char buffer.
26 * The third argument specifies the number of chars to outputed.
27 *
28 * output function cannot assume the buffer is null-terminated after
29 * l number of chars.
30 */
31void lp_Print(void (*output)(void *, char *, int),
32	      void * arg,
33	      char *fmt,
34	      va_list ap);
35
36#endif
37