Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed RemoteIR SuperTweet ConfigFile EthernetNetIf
mylib/appconf/appconf.cpp@0:db299c5a18ba, 2010-10-29 (annotated)
- Committer:
- shintamainjp
- Date:
- Fri Oct 29 23:17:01 2010 +0000
- Revision:
- 0:db299c5a18ba
- Child:
- 1:c4cfd136f9c7
Initial version.
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| shintamainjp | 0:db299c5a18ba | 1 | #include "appconf.h" |
| shintamainjp | 0:db299c5a18ba | 2 | #include "ConfigFile.h" |
| shintamainjp | 0:db299c5a18ba | 3 | |
| shintamainjp | 0:db299c5a18ba | 4 | #define KEY_SUPERTWEET_ACCOUNT "SUPERTWEET_ACCOUNT" |
| shintamainjp | 0:db299c5a18ba | 5 | #define KEY_SUPERTWEET_PASSWORD "SUPERTWEET_PASSWORD" |
| shintamainjp | 0:db299c5a18ba | 6 | |
| shintamainjp | 0:db299c5a18ba | 7 | /** |
| shintamainjp | 0:db299c5a18ba | 8 | * Initialize configuration. |
| shintamainjp | 0:db299c5a18ba | 9 | * |
| shintamainjp | 0:db299c5a18ba | 10 | * @param p A pointer to a application config. |
| shintamainjp | 0:db299c5a18ba | 11 | */ |
| shintamainjp | 0:db299c5a18ba | 12 | void appconf_init(appconf_t *p) { |
| shintamainjp | 0:db299c5a18ba | 13 | memset(p->account, 0, sizeof(p->account)); |
| shintamainjp | 0:db299c5a18ba | 14 | memset(p->password, 0, sizeof(p->password)); |
| shintamainjp | 0:db299c5a18ba | 15 | } |
| shintamainjp | 0:db299c5a18ba | 16 | |
| shintamainjp | 0:db299c5a18ba | 17 | /** |
| shintamainjp | 0:db299c5a18ba | 18 | * Read configuration. |
| shintamainjp | 0:db299c5a18ba | 19 | * |
| shintamainjp | 0:db299c5a18ba | 20 | * @param filename Filename. |
| shintamainjp | 0:db299c5a18ba | 21 | * @param p A pointer to a application config. |
| shintamainjp | 0:db299c5a18ba | 22 | * @return Return zero if it succeed. |
| shintamainjp | 0:db299c5a18ba | 23 | */ |
| shintamainjp | 0:db299c5a18ba | 24 | int appconf_read(char *filename, appconf_t *p) { |
| shintamainjp | 0:db299c5a18ba | 25 | ConfigFile cf; |
| shintamainjp | 0:db299c5a18ba | 26 | if (!cf.read(filename)) { |
| shintamainjp | 0:db299c5a18ba | 27 | return -1; |
| shintamainjp | 0:db299c5a18ba | 28 | } |
| shintamainjp | 0:db299c5a18ba | 29 | if (!cf.getValue(KEY_SUPERTWEET_ACCOUNT, p->account, sizeof(p->account))) { |
| shintamainjp | 0:db299c5a18ba | 30 | return -2; |
| shintamainjp | 0:db299c5a18ba | 31 | } |
| shintamainjp | 0:db299c5a18ba | 32 | if (!cf.getValue(KEY_SUPERTWEET_PASSWORD, p->password, sizeof(p->password))) { |
| shintamainjp | 0:db299c5a18ba | 33 | return -3; |
| shintamainjp | 0:db299c5a18ba | 34 | } |
| shintamainjp | 0:db299c5a18ba | 35 | return 0; |
| shintamainjp | 0:db299c5a18ba | 36 | } |
| shintamainjp | 0:db299c5a18ba | 37 | |
| shintamainjp | 0:db299c5a18ba | 38 | /** |
| shintamainjp | 0:db299c5a18ba | 39 | * Write configuration. |
| shintamainjp | 0:db299c5a18ba | 40 | * |
| shintamainjp | 0:db299c5a18ba | 41 | * @param filename Filename. |
| shintamainjp | 0:db299c5a18ba | 42 | * @param p A pointer to a application config. |
| shintamainjp | 0:db299c5a18ba | 43 | * @return Return zero if it succeed. |
| shintamainjp | 0:db299c5a18ba | 44 | */ |
| shintamainjp | 0:db299c5a18ba | 45 | int appconf_write(char *filename, appconf_t *p) { |
| shintamainjp | 0:db299c5a18ba | 46 | ConfigFile cf; |
| shintamainjp | 0:db299c5a18ba | 47 | if (!cf.setValue(KEY_SUPERTWEET_ACCOUNT, p->account)) { |
| shintamainjp | 0:db299c5a18ba | 48 | return -1; |
| shintamainjp | 0:db299c5a18ba | 49 | } |
| shintamainjp | 0:db299c5a18ba | 50 | if (!cf.setValue(KEY_SUPERTWEET_PASSWORD, p->password)) { |
| shintamainjp | 0:db299c5a18ba | 51 | return -2; |
| shintamainjp | 0:db299c5a18ba | 52 | } |
| shintamainjp | 0:db299c5a18ba | 53 | if (!cf.write(filename)) { |
| shintamainjp | 0:db299c5a18ba | 54 | return -3; |
| shintamainjp | 0:db299c5a18ba | 55 | } |
| shintamainjp | 0:db299c5a18ba | 56 | return 0; |
| shintamainjp | 0:db299c5a18ba | 57 | } |