cmdline-option.h revision 9c0c515a32e74a12cc7fb4d65481d20ebf027147
1/* Copyright (C) 2008 The Android Open Source Project
2**
3** This software is licensed under the terms of the GNU General Public
4** License version 2, as published by the Free Software Foundation, and
5** may be copied, distributed, and modified under those terms.
6**
7** This program is distributed in the hope that it will be useful,
8** but WITHOUT ANY WARRANTY; without even the implied warranty of
9** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10** GNU General Public License for more details.
11*/
12#ifndef _ANDROID_OPTION_H
13#define _ANDROID_OPTION_H
14
15/* a structure used to model a linked list of parameters
16 */
17typedef struct ParamList {
18    char*              param;
19    struct ParamList*  next;
20} ParamList;
21
22/* define a structure that will hold all option variables
23 */
24typedef struct {
25#define OPT_LIST(n,t,d)    ParamList*  n;
26#define OPT_PARAM(n,t,d)   char*  n;
27#define OPT_FLAG(n,d)      int    n;
28#include "android/cmdline-options.h"
29} AndroidOptions;
30
31
32/* parse command-line arguments options and remove them from (argc,argv)
33 * 'opt' will be set to the content of parsed options
34 * returns 0 on success, -1 on error (unknown option)
35 */
36extern int
37android_parse_options( int  *pargc, char**  *pargv, AndroidOptions*  opt );
38
39/* name of default keyset file */
40#define  KEYSET_FILE    "default.keyset"
41
42/* the default device DPI if none is specified by the skin
43 */
44#define  DEFAULT_DEVICE_DPI  165
45
46/* default network settings for emulator */
47#define  DEFAULT_NETSPEED  "full"
48#define  DEFAULT_NETDELAY  "none"
49
50#endif /* _ANDROID_OPTION_H */
51