2 * 2ooM: The Master of Orion II Reverse Engineering Project
3 * Helper functions for liblbx command-line applications.
4 * Copyright © 2013 Nick Bowler
6 * This program is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this program. If not, see <http://www.gnu.org/licenses/>.
25 void tool_init(const char *name, int argc, char **argv);
26 void tool_version(void);
28 const char *tool_invocation(void);
31 * Error messaging routines. Similar to printf, but writes to standard error
32 * and prefixes the output with the program invocation name, automatically
33 * appending a newline. If err is 0, the result of strerror(errno) is also
34 * printed in a similar manner as perror. If err is positive, then that
35 * value is used instead of errno.
37 int tool_verr(int err, const char *fmt, va_list ap);
38 int tool_err(int err, const char *fmt, ...);
41 * Messaging routines similar to the above, except that they write to standard
42 * output and there is no option to include strerror(errno).
44 int tool_vmsg(const char *fmt, va_list ap);
45 int tool_msg(const char *fmt, ...);