File: settings.h

package info (click to toggle)
startalk 0.4-5
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 820 kB
  • ctags: 394
  • sloc: ansic: 4,864; sh: 951; makefile: 65
file content (134 lines) | stat: -rw-r--r-- 5,185 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134

/* $Id: settings.h,v 400.1 2002/07/25 08:43:16 sgifford Exp $ */

#ifndef SETTINGS_H
#define SETTINGS_H

#include <stdio.h>

#include "startalk.h"

#define STARTALK_SET_TYPE_BOOL     0
#define STARTALK_SET_TYPE_UCHAR    1
#define STARTALK_SET_TYPE_STRING   2
#define STARTALK_SET_TYPE_UINT     3
#define STARTALK_SET_TYPE_LANG     4
#define STARTALK_SET_TYPE_SUINT    5
#define STARTALK_SET_TYPE_LAST     5

/* Boolean */
#define STARTALK_SET_RING          0
#define STARTALK_SET_VIBRATE       1
#define STARTALK_SET_MSG_RMD_TONE  2
#define STARTALK_SET_DTMF_IS_LONG  3
#define STARTALK_SET_DTMF_ON       4
#define STARTALK_SET_SVC_TONE      5
#define STARTALK_SET_SILENT_MODE   6
#define STARTALK_SET_ROAM_RING     7
#define STARTALK_SET_CALL_RMD_TONE 8
#define STARTALK_SET_KEYPAD_TONE   9
#define STARTALK_SET_INSTREDIAL    10
#define STARTALK_SET_MULTKEYANS    11
#define STARTALK_SET_CALLGUARD     12
#define STARTALK_SET_ANSWEROPEN    13
#define STARTALK_SET_AUTOANSWER    14
#define STARTALK_SET_QUICKMENU     15
#define STARTALK_SET_AUTOHYPHEN    16
#define STARTALK_SET_24HRCLOCK     17
#define STARTALK_SET_SVCLIGHT      18
#define STARTALK_SET_CONFIRMBROWSE 19
#define STARTALK_SET_ANALOGONLY    20
#define STARTALK_SET_INDIVTIMER    21
#define STARTALK_SET_1MINTIMER     22
#define STARTALK_SET_USE_REPTIMER  23
#define STARTALK_SET_USE_SNGLTIMER 24

#define STARTALK_SET_AUTOLOCK      25
#define STARTALK_SET_PRIOCALL      26
#define STARTALK_SET_BOOL_LAST     26

/* UCHAR */
#define STARTALK_SET_RINGER_STYLE  0
#define STARTALK_SET_SVCLEVEL      1
#define STARTALK_SET_BKLIGHT_MODE  2
#define STARTALK_SET_UCHAR_LAST    2

/* STRING */
#define STARTALK_SET_GREETING      0
#define STARTALK_SET_STRING_LAST   0

/* UINT */
#define STARTALK_SET_REPTIMER_DUR  0
#define STARTALK_SET_SINGTIMER_DUR 1
#define STARTALK_SET_LOCKCODE      2
#define STARTALK_SET_UINT_LAST     2

/* LANG - Special case for language setting */
#define STARTALK_SET_LANG          0
#define STARTALK_SET_LANG_LAST     0

/* SUINT - Super Unsigned Integer! (3 bytes) */
#define STARTALK_SET_SECURECODE    0
#define STARTALK_SET_SUINT_LAST    0

struct startalk_settings {
  signed char ss_bool[STARTALK_SET_BOOL_LAST+1];
  signed int  ss_uchar[STARTALK_SET_UCHAR_LAST+1];
  signed long ss_uint[STARTALK_SET_UINT_LAST+1];
  signed int  ss_lang[STARTALK_SET_LANG_LAST+1];
  signed long ss_suint[STARTALK_SET_SUINT_LAST+1];
  char *      ss_string[STARTALK_SET_STRING_LAST+1];
  
  char ss_greeting_buf[13];

  signed char gotbuf;
  /* The actual setting buffers used by the phone. */
  unsigned char *databuf[3];
  unsigned char buf1[17];
  unsigned char buf2[64];
  unsigned char buf3[1];
};


/* Creating */
struct startalk_settings *startalk_new_settings(void);
void startalk_delete_settings(struct startalk_settings *n);

/* Reading data */
signed char startalk_get_setting_bool(struct startalk_settings *n, unsigned int setting_num);
signed int startalk_get_setting_uchar(struct startalk_settings *n, unsigned int setting_num);
char * startalk_get_setting_string(struct startalk_settings *n, unsigned int setting_num);
signed long startalk_get_setting_uint(struct startalk_settings *n, unsigned int setting_num);
signed int startalk_get_setting_lang(struct startalk_settings *n, unsigned int setting_num);
signed long startalk_get_setting_suint(struct startalk_settings *n, unsigned int setting_num);


/* Storing data */
void startalk_set_setting_bool(struct startalk_settings *n, unsigned int setting_num, signed char val);
void startalk_set_setting_uchar(struct startalk_settings *n, unsigned int setting_num, unsigned int val);
void startalk_set_setting_string(struct startalk_settings *n, unsigned int setting_num, char *val);
void startalk_set_setting_uint(struct startalk_settings *n, unsigned int setting_num, unsigned long val);
void startalk_set_setting_lang(struct startalk_settings *n, unsigned int setting_num, unsigned int val);
void startalk_set_setting_suint(struct startalk_settings *n, unsigned int setting_num, unsigned long val);


/* Validating data */
char *startalk_validate_setting_bool(struct startalk_settings *n, unsigned int setting_num, signed char value);
char *startalk_validate_setting_uchar(struct startalk_settings *n, unsigned int setting_num, signed int value);
char *startalk_validate_setting_string(struct startalk_settings *n, unsigned int setting_num, char *val);
char *startalk_validate_setting_uint(struct startalk_settings *n, unsigned int setting_num, unsigned long val);
char *startalk_validate_setting_lang(struct startalk_settings *n, unsigned int setting_num, unsigned int val);
char *startalk_validate_setting_suint(struct startalk_settings *n, unsigned int setting_num, unsigned long val);


/* Printing */
void startalk_print_settings(struct startalk_settings *n);
void startalk_print_setting(struct startalk_settings *n,unsigned int setting_type, unsigned int setting_num);
char *startalk_get_setting_name(unsigned int setting_type, unsigned int setting_num);


/* Other */
int startalk_setting_readonly(unsigned int setting_type, unsigned int setting_num);
int startalk_setting_find(char *name, int *setting_type, int *setting_num);

#endif