186d7f5d3SJohn Marino /* $NetBSD: text_export.h,v 1.1.1.2 2009/12/02 00:25:44 haad Exp $ */ 286d7f5d3SJohn Marino 386d7f5d3SJohn Marino /* 486d7f5d3SJohn Marino * Copyright (C) 2003-2004 Sistina Software, Inc. All rights reserved. 586d7f5d3SJohn Marino * Copyright (C) 2004-2005 Red Hat, Inc. All rights reserved. 686d7f5d3SJohn Marino * 786d7f5d3SJohn Marino * This file is part of LVM2. 886d7f5d3SJohn Marino * 986d7f5d3SJohn Marino * This copyrighted material is made available to anyone wishing to use, 1086d7f5d3SJohn Marino * modify, copy, or redistribute it subject to the terms and conditions 1186d7f5d3SJohn Marino * of the GNU Lesser General Public License v.2.1. 1286d7f5d3SJohn Marino * 1386d7f5d3SJohn Marino * You should have received a copy of the GNU Lesser General Public License 1486d7f5d3SJohn Marino * along with this program; if not, write to the Free Software Foundation, 1586d7f5d3SJohn Marino * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 1686d7f5d3SJohn Marino */ 1786d7f5d3SJohn Marino 1886d7f5d3SJohn Marino #ifndef _LVM_TEXT_EXPORT_H 1986d7f5d3SJohn Marino #define _LVM_TEXT_EXPORT_H 2086d7f5d3SJohn Marino 2186d7f5d3SJohn Marino #define outf(args...) do {if (!out_text(args)) return_0;} while (0) 2286d7f5d3SJohn Marino #define outnl(f) do {if (!out_newline(f)) return_0;} while (0) 2386d7f5d3SJohn Marino 2486d7f5d3SJohn Marino struct formatter; 2586d7f5d3SJohn Marino struct lv_segment; 2686d7f5d3SJohn Marino struct config_node; 2786d7f5d3SJohn Marino 2886d7f5d3SJohn Marino int out_size(struct formatter *f, uint64_t size, const char *fmt, ...) 2986d7f5d3SJohn Marino __attribute__ ((format(printf, 3, 4))); 3086d7f5d3SJohn Marino 3186d7f5d3SJohn Marino int out_hint(struct formatter *f, const char *fmt, ...) 3286d7f5d3SJohn Marino __attribute__ ((format(printf, 2, 3))); 3386d7f5d3SJohn Marino 3486d7f5d3SJohn Marino int out_text(struct formatter *f, const char *fmt, ...) 3586d7f5d3SJohn Marino __attribute__ ((format(printf, 2, 3))); 3686d7f5d3SJohn Marino 3786d7f5d3SJohn Marino int out_config_node(struct formatter *f, const struct config_node *cn); 3886d7f5d3SJohn Marino 3986d7f5d3SJohn Marino int out_areas(struct formatter *f, const struct lv_segment *seg, 4086d7f5d3SJohn Marino const char *type); 4186d7f5d3SJohn Marino 4286d7f5d3SJohn Marino void out_inc_indent(struct formatter *f); 4386d7f5d3SJohn Marino void out_dec_indent(struct formatter *f); 4486d7f5d3SJohn Marino int out_newline(struct formatter *f); 4586d7f5d3SJohn Marino 4686d7f5d3SJohn Marino #endif 47