1 /* $NetBSD: text_export.h,v 1.1.1.2 2009/12/02 00:25:44 haad Exp $ */ 2 3 /* 4 * Copyright (C) 2003-2004 Sistina Software, Inc. All rights reserved. 5 * Copyright (C) 2004-2005 Red Hat, Inc. All rights reserved. 6 * 7 * This file is part of LVM2. 8 * 9 * This copyrighted material is made available to anyone wishing to use, 10 * modify, copy, or redistribute it subject to the terms and conditions 11 * of the GNU Lesser General Public License v.2.1. 12 * 13 * You should have received a copy of the GNU Lesser General Public License 14 * along with this program; if not, write to the Free Software Foundation, 15 * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 16 */ 17 18 #ifndef _LVM_TEXT_EXPORT_H 19 #define _LVM_TEXT_EXPORT_H 20 21 #define outf(args...) do {if (!out_text(args)) return_0;} while (0) 22 #define outnl(f) do {if (!out_newline(f)) return_0;} while (0) 23 24 struct formatter; 25 struct lv_segment; 26 struct config_node; 27 28 int out_size(struct formatter *f, uint64_t size, const char *fmt, ...) 29 __attribute__ ((format(printf, 3, 4))); 30 31 int out_hint(struct formatter *f, const char *fmt, ...) 32 __attribute__ ((format(printf, 2, 3))); 33 34 int out_text(struct formatter *f, const char *fmt, ...) 35 __attribute__ ((format(printf, 2, 3))); 36 37 int out_config_node(struct formatter *f, const struct config_node *cn); 38 39 int out_areas(struct formatter *f, const struct lv_segment *seg, 40 const char *type); 41 42 void out_inc_indent(struct formatter *f); 43 void out_dec_indent(struct formatter *f); 44 int out_newline(struct formatter *f); 45 46 #endif 47