The Android Open Source Project | 8b23a6c | 2009-03-03 19:30:32 -0800 | [diff] [blame] | 1 | /* Copyright (C) 2009 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_USER_CONFIG_H |
| 13 | #define _ANDROID_USER_CONFIG_H |
| 14 | |
| 15 | #include "android/avd/info.h" |
| 16 | #include <stdint.h> |
| 17 | |
| 18 | /* a structure used to model the user-configuration settings |
| 19 | * |
| 20 | * At the moment, this is only used to store the last position |
| 21 | * of the emulator window and a unique 64-bit UUID. We might |
| 22 | * add more AVD-specific preferences here in the future. |
| 23 | * |
| 24 | * By definition, these settings should be optional and we |
| 25 | * should be able to work without them, unlike the AVD |
| 26 | * configuration information found in config.ini |
| 27 | */ |
| 28 | typedef struct AUserConfig AUserConfig; |
| 29 | |
| 30 | /* Create a new AUserConfig object from a given AvdInfo */ |
| 31 | AUserConfig* auserConfig_new( AvdInfo* info ); |
| 32 | |
| 33 | /* Retrieve the unique UID for this AVD */ |
| 34 | uint64_t auserConfig_getUUID( AUserConfig* uconfig ); |
| 35 | |
| 36 | /* Retrieve the stored window position for this AVD */ |
| 37 | void auserConfig_getWindowPos( AUserConfig* uconfig, int *pX, int *pY ); |
| 38 | |
| 39 | /* Change the stored window position for this AVD */ |
| 40 | void auserConfig_setWindowPos( AUserConfig* uconfig, int x, int y ); |
| 41 | |
| 42 | /* Save the user configuration back to the content directory. |
| 43 | * Should be used in an atexit() handler. This will effectively |
| 44 | * only save the user configuration to disk if its content |
| 45 | * has changed. |
| 46 | */ |
| 47 | void auserConfig_save( AUserConfig* uconfig ); |
| 48 | |
| 49 | /* */ |
| 50 | |
| 51 | #endif /* _ANDROID_USER_CONFIG_H */ |