xref: /aosp_15_r20/external/giflib/getarg.h (revision 324bb76b8d05e2a05aa88511fff61cf3f9ca5892)
1*324bb76bSAndroid Build Coastguard Worker /***************************************************************************
2*324bb76bSAndroid Build Coastguard Worker 
3*324bb76bSAndroid Build Coastguard Worker getarg.h - Support routines for the giflib utilities
4*324bb76bSAndroid Build Coastguard Worker 
5*324bb76bSAndroid Build Coastguard Worker SPDX-License-Identifier: MIT
6*324bb76bSAndroid Build Coastguard Worker 
7*324bb76bSAndroid Build Coastguard Worker  **************************************************************************/
8*324bb76bSAndroid Build Coastguard Worker 
9*324bb76bSAndroid Build Coastguard Worker #ifndef _GETARG_H
10*324bb76bSAndroid Build Coastguard Worker #define _GETARG_H
11*324bb76bSAndroid Build Coastguard Worker 
12*324bb76bSAndroid Build Coastguard Worker #include "gif_lib.h"
13*324bb76bSAndroid Build Coastguard Worker #include <stdbool.h>
14*324bb76bSAndroid Build Coastguard Worker 
15*324bb76bSAndroid Build Coastguard Worker #define VERSION_COOKIE " Version %d.%d, "
16*324bb76bSAndroid Build Coastguard Worker 
17*324bb76bSAndroid Build Coastguard Worker /***************************************************************************
18*324bb76bSAndroid Build Coastguard Worker    Error numbers as returned by GAGetArg routine:
19*324bb76bSAndroid Build Coastguard Worker ***************************************************************************/
20*324bb76bSAndroid Build Coastguard Worker #define CMD_ERR_NotAnOpt 1  /* None Option found. */
21*324bb76bSAndroid Build Coastguard Worker #define CMD_ERR_NoSuchOpt 2 /* Undefined Option Found. */
22*324bb76bSAndroid Build Coastguard Worker #define CMD_ERR_WildEmpty 3 /* Empty input for !*? seq. */
23*324bb76bSAndroid Build Coastguard Worker #define CMD_ERR_NumRead 4   /* Failed on reading number. */
24*324bb76bSAndroid Build Coastguard Worker #define CMD_ERR_AllSatis 5  /* Fail to satisfy (must-'!') option. */
25*324bb76bSAndroid Build Coastguard Worker 
26*324bb76bSAndroid Build Coastguard Worker bool GAGetArgs(int argc, char **argv, char *CtrlStr, ...);
27*324bb76bSAndroid Build Coastguard Worker void GAPrintErrMsg(int Error);
28*324bb76bSAndroid Build Coastguard Worker void GAPrintHowTo(char *CtrlStr);
29*324bb76bSAndroid Build Coastguard Worker 
30*324bb76bSAndroid Build Coastguard Worker /******************************************************************************
31*324bb76bSAndroid Build Coastguard Worker  From qprintf.c
32*324bb76bSAndroid Build Coastguard Worker ******************************************************************************/
33*324bb76bSAndroid Build Coastguard Worker extern void GifQprintf(char *Format, ...);
34*324bb76bSAndroid Build Coastguard Worker extern void PrintGifError(int ErrorCode);
35*324bb76bSAndroid Build Coastguard Worker 
36*324bb76bSAndroid Build Coastguard Worker /******************************************************************************
37*324bb76bSAndroid Build Coastguard Worker  Color table quantization
38*324bb76bSAndroid Build Coastguard Worker ******************************************************************************/
39*324bb76bSAndroid Build Coastguard Worker int GifQuantizeBuffer(unsigned int Width, unsigned int Height,
40*324bb76bSAndroid Build Coastguard Worker                       int *ColorMapSize, GifByteType *RedInput,
41*324bb76bSAndroid Build Coastguard Worker                       GifByteType *GreenInput, GifByteType *BlueInput,
42*324bb76bSAndroid Build Coastguard Worker                       GifByteType *OutputBuffer, GifColorType *OutputColorMap);
43*324bb76bSAndroid Build Coastguard Worker 
44*324bb76bSAndroid Build Coastguard Worker /* These used to live in the library header */
45*324bb76bSAndroid Build Coastguard Worker #define GIF_MESSAGE(Msg) fprintf(stderr, "\n%s: %s\n", PROGRAM_NAME, Msg)
46*324bb76bSAndroid Build Coastguard Worker #define GIF_EXIT(Msg)                                                          \
47*324bb76bSAndroid Build Coastguard Worker 	{                                                                      \
48*324bb76bSAndroid Build Coastguard Worker 		GIF_MESSAGE(Msg);                                              \
49*324bb76bSAndroid Build Coastguard Worker 		exit(-3);                                                      \
50*324bb76bSAndroid Build Coastguard Worker 	}
51*324bb76bSAndroid Build Coastguard Worker 
52*324bb76bSAndroid Build Coastguard Worker #endif /* _GETARG_H */
53*324bb76bSAndroid Build Coastguard Worker 
54*324bb76bSAndroid Build Coastguard Worker /* end */
55