+++ /dev/null
-GLIB_CFLAGS = @GLIB_CFLAGS@
-GLIB_LIBS = @GLIB_LIBS@
-
-GTK_CFLAGS = @GTK_CFLAGS@
-GTK_LIBS = @GTK_LIBS@
-
-XML_CFLAGS = @XML_CFLAGS@
-XML_LIBS = @XML_LIBS@
-
-CC = @CC@
-AR = @AR@
-
-CFLAGS = @CFLAGS@
-CFLAGS += $(GLIB_CFLAGS) $(GTK_CFLAGS) $(XML_CFLAGS) -DISE_LOGGING -DISE_DEBUG
-LIBS = $(GLIB_LIBS) $(GTK_LIBS) $(XML_LIBS)
-
-OBJS = \
- utils.o \
- dialog.o \
- imageutil.o
-
-
-.SUFFIXES: .c
-
-.c.o:
- $(CC) -c $(CFLAGS) -o $@ $<
-
-all: libui.a
-
-libui.a: $(OBJS)
- $(AR) r libui.a $(OBJS)
-
-clean:
- rm -rf *.o *.a
-
-
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-/**
- @file dialog.c
- @brief miscellaneous functions
-*/
-
-#include "dialog.h"
-
-
-/**
- * @brief show message dialog
- * @param dialog title
- * @param dialog message
- * @date Nov 21. 2008
- * */
-gchar current_filename[255];
-
-void show_message(const char *szTitle, const char *szMessage)
-{
- GtkWidget *label;
- GtkWidget *button;
- GtkWidget *dialog_window;
- PangoFontDescription *pPangoFont = NULL;
-
- /* create Dialog */
-
- dialog_window = gtk_dialog_new();
-
- /* Widget Icon set */
-
- GdkPixbuf* tmppixbuf = NULL;
- tmppixbuf=gtk_widget_render_icon((GtkWidget *) (dialog_window), GTK_STOCK_PROPERTIES, GTK_ICON_SIZE_MENU, NULL);
- gtk_window_set_icon(GTK_WINDOW (dialog_window), tmppixbuf);
-
- /* set Title and Border */
-
- gtk_window_set_title(GTK_WINDOW(dialog_window), szTitle);
- gtk_container_set_border_width(GTK_CONTAINER(dialog_window), 0);
-
- /* create OK Button and Set Reponse */
-
- button = gtk_dialog_add_button(GTK_DIALOG(dialog_window), GTK_STOCK_OK, GTK_RESPONSE_OK);
-
- /* set OK Button to Default Button */
-
- GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
- gtk_widget_grab_default(button);
-
- /* create Label */
-
- label = gtk_label_new(szMessage);
-
- /* set Mono Space Font */
-
- pPangoFont = pango_font_description_from_string("Monospace 11");
- gtk_widget_modify_font(label, pPangoFont);
-
- /* set Padding arround Label */
-
- gtk_misc_set_padding(GTK_MISC(label), 10, 10);
-
- /* pack Label to Dialog */
-
- gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog_window)->vbox), label, TRUE, TRUE, 0);
-
- gtk_widget_show_all(dialog_window);
-
- gtk_dialog_run(GTK_DIALOG(dialog_window));
-
- gtk_widget_destroy(dialog_window);
-}
-
-
-void show_message_for_qemu(const char *szTitle, const char *szMessage)
-{
- GtkWidget *label;
- GtkWidget *button;
- GtkWidget *dialog_window;
- PangoFontDescription *pPangoFont = NULL;
-
- /* create Dialog */
-
- dialog_window = gtk_dialog_new();
-
- /* Widget Icon set */
-
- GdkPixbuf* tmppixbuf = NULL;
- tmppixbuf=gtk_widget_render_icon((GtkWidget *) (dialog_window), GTK_STOCK_PROPERTIES, GTK_ICON_SIZE_MENU, NULL);
- gtk_window_set_icon(GTK_WINDOW (dialog_window), tmppixbuf);
-
- /* set Title and Border */
-
- gtk_window_set_title(GTK_WINDOW(dialog_window), szTitle);
- gtk_container_set_border_width(GTK_CONTAINER(dialog_window), 0);
-
- /* create OK Button and Set Reponse */
-
- button = gtk_dialog_add_button(GTK_DIALOG(dialog_window), GTK_STOCK_OK, GTK_RESPONSE_OK);
-
- /* set OK Button to Default Button */
-
- GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
- gtk_widget_grab_default(button);
-
- /* create Label */
-
- label = gtk_label_new(szMessage);
-
- /* set Mono Space Font */
-
- pPangoFont = pango_font_description_from_string("Monospace 11");
- gtk_widget_modify_font(label, pPangoFont);
-
- /* set Padding arround Label */
-
- gtk_misc_set_padding(GTK_MISC(label), 10, 10);
-
- /* pack Label to Dialog */
-
- gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog_window)->vbox), label, TRUE, TRUE, 0);
-
- gtk_widget_show_all(dialog_window);
-
- g_signal_connect_swapped (dialog_window, "response", G_CALLBACK (gtk_widget_destroy),
- (gpointer) dialog_window);
-
- g_signal_connect_swapped (dialog_window, "delete-event", G_CALLBACK (gtk_widget_destroy),
- (gpointer) dialog_window);
-
-// gtk_dialog_run(GTK_DIALOG(dialog_window));
-
-// gtk_widget_destroy(dialog_window);
-}
-
-
-/**
- * @brief remove show message window
- * @param widget: wiget to remove
- * @return data: pointer to data
- * @date Nov 21. 2008
- * */
-void clear_show_message(GtkWidget *widget, gpointer data)
-{
- gtk_grab_remove(widget);
-}
-
-
-/**
- * @brief dialog for file open
- * @param title: title of dialog
- * @param parent: parent window
- * @param ext: extension of file to filter
- * @param call_back: callback function called when OK clicked
- * @date Nov 21. 2008
- * */
-void file_open_dialog (gchar *title, GtkWindow *parent, gchar *ext, void (*call_back) (gchar *))
-{
- GtkWidget *file_chooser = gtk_file_chooser_dialog_new (title,
- parent,
- GTK_FILE_CHOOSER_ACTION_OPEN,
- GTK_STOCK_CANCEL,
- GTK_RESPONSE_CANCEL,
- GTK_STOCK_OPEN,
- GTK_RESPONSE_ACCEPT,
- NULL);
-
- /* path setting (20090310) */
- gchar *ptr = get_bin_path();
-
- if ((ptr != NULL) && (strlen(ptr) > 1))
- if ((current_filename == NULL) || (strlen(current_filename) < 1))
- snprintf(current_filename, sizeof(current_filename), "%s", ptr);
-
- g_free(ptr);
- gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (file_chooser), current_filename);
-
- if (ext) {
- char *t;
- GtkFileFilter *filter;
- filter = gtk_file_filter_new ();
-
- t = g_malloc (strlen (ext) + 1);
- strcpy (t, ext);
-
- gtk_file_filter_add_pattern (filter, t);
- gtk_file_chooser_set_filter (GTK_FILE_CHOOSER (file_chooser), filter);
- }
-
- if (gtk_dialog_run (GTK_DIALOG (file_chooser)) == GTK_RESPONSE_ACCEPT) {
- gchar *filename, *t;
- filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (file_chooser));
-
- t = (gchar *) g_malloc (strlen (filename) + 1);
- strcpy (t, filename);
- call_back (t);
- g_free (filename);
- }
-
- gtk_widget_destroy (file_chooser);
-
-
-}
-
-
-/**
- * @brief dialog for file save
- * @param title: title of dialog
- * @param parent: parent window
- * @param default_filename: default filename for save
- * @param ext: extension of file to filter
- * @param call_back: callback function called when OK clicked
- * @date Nov 21. 2008
- * */
-void file_save_dialog (gchar *title, GtkWindow *parent, gchar *default_filename, gchar *ext, void (*call_back) (gchar *))
-{
- GtkWidget *file_chooser = gtk_file_chooser_dialog_new (title,
- parent,
- GTK_FILE_CHOOSER_ACTION_SAVE,
- GTK_STOCK_CANCEL,
- GTK_RESPONSE_CANCEL,
- GTK_STOCK_SAVE,
- GTK_RESPONSE_ACCEPT,
- NULL);
-
- if (ext) {
- GtkFileFilter *filter;
- filter = gtk_file_filter_new ();
-
- gtk_file_filter_add_pattern (filter, ext);
- gtk_file_chooser_set_filter (GTK_FILE_CHOOSER (file_chooser), filter);
- }
-
- if (default_filename)
- gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (file_chooser), default_filename);
-
- /* path setting (20090310) */
- gchar *ptr = get_bin_path();
-
- if ((ptr != NULL) && (strlen(ptr) > 1))
- if ((current_filename == NULL) || (strlen(current_filename) < 1))
- snprintf(current_filename, sizeof(current_filename), "%s", ptr);
-
- g_free(ptr);
- gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (file_chooser), current_filename);
-
- if (gtk_dialog_run (GTK_DIALOG (file_chooser)) == GTK_RESPONSE_ACCEPT) {
- gchar *filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (file_chooser));
- strncpy(current_filename, filename, sizeof(current_filename));
- call_back (filename);
- g_free (filename);
- }
-
- gtk_widget_destroy (file_chooser);
-}
-
-
-/**
- * @brief dialog for get name
- * @param dlg_title: title of dialog
- * @param dlg_label: label of dialog
- * @param call_back: callback function called when OK clicked
- * @return dialog window widget
- * @date Nov 21. 2008
- * */
-GtkWidget *input_name_dialog (gchar *dlg_title, gchar *dlg_label, void (*call_back) (GtkWidget *, gpointer))
-{
- GtkWidget *dlg;
-
- dlg = gtk_dialog_new ();
-
- gtk_window_set_title (GTK_WINDOW (dlg), (dlg_title));
- gtk_window_set_modal (GTK_WINDOW (dlg), TRUE);
- gtk_window_set_type_hint (GTK_WINDOW (dlg), GDK_WINDOW_TYPE_HINT_DIALOG);
-
- GtkWidget *vbox, *hbox;
- vbox = GTK_DIALOG (dlg)->vbox;
-
-
- GtkWidget *label;
-
- label = gtk_label_new (_(dlg_label));
- gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
-
-
- hbox = gtk_hbox_new (FALSE, 0);
- gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
-
- label = gtk_label_new (_("Name : "));
- gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
- GtkWidget *entry = gtk_entry_new ();
- gtk_box_pack_start (GTK_BOX (hbox), entry, TRUE, TRUE, 0);
-
- GtkWidget *dlg_action_area = GTK_DIALOG (dlg)->action_area;
- gtk_button_box_set_layout (GTK_BUTTON_BOX (dlg_action_area), GTK_BUTTONBOX_END);
-
- GtkWidget *cancel_btn = gtk_button_new_from_stock ("gtk-cancel");
- gtk_dialog_add_action_widget (GTK_DIALOG (dlg), cancel_btn, GTK_RESPONSE_CANCEL);
- GTK_WIDGET_SET_FLAGS (cancel_btn, GTK_CAN_DEFAULT);
-
- GtkWidget *ok_btn = gtk_button_new_from_stock ("gtk-ok");
- gtk_dialog_add_action_widget (GTK_DIALOG (dlg), ok_btn, GTK_RESPONSE_OK);
- gtk_widget_show_all (dlg);
-
- g_signal_connect ((gpointer) ok_btn, "clicked", G_CALLBACK (call_back), (gpointer) entry);
- g_signal_connect_swapped ((gpointer) ok_btn, "clicked", G_CALLBACK (gtk_widget_destroy), (gpointer) dlg);
- g_signal_connect_swapped ((gpointer) cancel_btn, "clicked", G_CALLBACK (gtk_widget_destroy), (gpointer) dlg);
-
- return dlg;
-}
-
-
-/**
- @brief dialog for rename dialog
- @param default_text: default text
- @param dlg_title: diglog title
- @param dlg_label: dialog label
- @param call_back: callback function called when OK clicked
- @return dialog window widget
-*/
-GtkWidget *rename_dialog (gchar *default_text, gchar *dlg_title, gchar *dlg_label, void (*call_back) (GtkWidget *, gpointer))
-{
- GtkWidget *dlg;
-
- dlg = gtk_dialog_new ();
-
- gtk_window_set_title (GTK_WINDOW (dlg), _(dlg_title));
- gtk_window_set_modal (GTK_WINDOW (dlg), TRUE);
- gtk_window_set_type_hint (GTK_WINDOW (dlg), GDK_WINDOW_TYPE_HINT_DIALOG);
-
- GtkWidget *vbox, *hbox;
- vbox = GTK_DIALOG (dlg)->vbox;
-
-
- GtkWidget *label;
-
- label = gtk_label_new (_(dlg_label));
- gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
-
-
- hbox = gtk_hbox_new (FALSE, 0);
- gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
-
- label = gtk_label_new (_("Name : "));
- gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
- GtkWidget *entry = gtk_entry_new ();
- gtk_entry_set_text (GTK_ENTRY (entry), default_text);
- gtk_box_pack_start (GTK_BOX (hbox), entry, TRUE, TRUE, 0);
-
- GtkWidget *dlg_action_area = GTK_DIALOG (dlg)->action_area;
- gtk_button_box_set_layout (GTK_BUTTON_BOX (dlg_action_area),
- GTK_BUTTONBOX_END);
-
- GtkWidget *cancel_btn = gtk_button_new_from_stock ("gtk-cancel");
- gtk_dialog_add_action_widget (GTK_DIALOG (dlg), cancel_btn,
- GTK_RESPONSE_CANCEL);
- GTK_WIDGET_SET_FLAGS (cancel_btn, GTK_CAN_DEFAULT);
-
- GtkWidget *ok_btn = gtk_button_new_from_stock ("gtk-ok");
- gtk_dialog_add_action_widget (GTK_DIALOG (dlg), ok_btn, GTK_RESPONSE_OK);
- gtk_widget_show_all (dlg);
-
-#if 0
- g_signal_connect ((gpointer) entry, "key-press-event", G_CALLBACK (enter_key_pressed), (gpointer) dlg);
-#endif
- g_signal_connect ((gpointer) ok_btn, "clicked", G_CALLBACK (call_back), (gpointer) entry);
- g_signal_connect_swapped ((gpointer) ok_btn, "clicked", G_CALLBACK (gtk_widget_destroy), (gpointer) dlg);
- g_signal_connect_swapped ((gpointer) cancel_btn, "clicked", G_CALLBACK (gtk_widget_destroy), (gpointer) dlg);
-
- return dlg;
-}
-
-/**
- @brief add combo box for plmn status message
- @param combo: combo box to append text
-
-*/
-
-static void
-add_plmn_status_msg (GtkWidget * combo)
-{
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _("PLMN_UNKNOWN"));
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _("PLMN_AVAIL"));
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _("PLMN_CURRENT"));
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _("PLMN_FORBIDDEN"));
-}
-
-
-/**
- @brief add combo box for technology message
- @param combo: combo box to append text
-
-*/
-
-static void
-add_access_technology_msg (GtkWidget * combo)
-{
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _("GSM"));
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _("GSM Compact"));
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _("GPRS"));
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _("UTRAN"));
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _("EGPRS"));
- gtk_combo_box_append_text (GTK_COMBO_BOX (combo), _("NOT SPECIFIED"));
-}
-
-
-/**
- @brief dialog for combo box
- @param dlg_title: title of dialog
- @param select_column: combo box to display
- @param call_back: callback function called when OK clicked
- @return dialog window widget
-*/
-
-GtkWidget *combo_dialog (gchar * dlg_title, gint select_column, void (*call_back) (GtkWidget *, gpointer))
-{
- GtkWidget *dlg;
- GtkWidget *label;
-
- dlg = gtk_dialog_new ();
-
- gtk_window_set_title (GTK_WINDOW (dlg), _(dlg_title));
- gtk_window_set_modal (GTK_WINDOW (dlg), TRUE);
- gtk_window_set_type_hint (GTK_WINDOW (dlg), GDK_WINDOW_TYPE_HINT_DIALOG);
-
- GtkWidget *vbox, *hbox;
- vbox = GTK_DIALOG (dlg)->vbox;
-
- hbox = gtk_hbox_new (FALSE, 0);
- gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 20);
-
- label = gtk_label_new (_("Select : "));
- // gtk_box_pack_start (GTK_BOX(hbox), label, FALSE, FALSE, 0);
- gtk_box_pack_start_defaults (GTK_BOX (hbox), label);
-
- GtkWidget *combo = gtk_combo_box_new_text ();
- // gtk_box_pack_start (GTK_BOX(hbox), combo, FALSE, FALSE, 0);
- gtk_box_pack_start_defaults (GTK_BOX (hbox), combo);
-
- if (select_column == 1) {
- // FIXME
- add_plmn_status_msg (combo);
- }
-
- else {
- // FIXME
- add_access_technology_msg (combo);
- // add_rssi_level_msg(combo);
- }
-
- GtkWidget *dlg_action_area = GTK_DIALOG (dlg)->action_area;
- gtk_button_box_set_layout (GTK_BUTTON_BOX (dlg_action_area),
- GTK_BUTTONBOX_END);
-
- GtkWidget *cancel_btn = gtk_button_new_from_stock ("gtk-cancel");
- gtk_dialog_add_action_widget (GTK_DIALOG (dlg), cancel_btn,
- GTK_RESPONSE_CANCEL);
- GTK_WIDGET_SET_FLAGS (cancel_btn, GTK_CAN_DEFAULT);
-
- GtkWidget *ok_btn = gtk_button_new_from_stock ("gtk-ok");
- gtk_dialog_add_action_widget (GTK_DIALOG (dlg), ok_btn, GTK_RESPONSE_OK);
- gtk_widget_show_all (dlg);
-
- g_signal_connect ((gpointer) ok_btn, "clicked", G_CALLBACK (call_back),
- (gpointer) combo);
-
- g_signal_connect_swapped ((gpointer) ok_btn, "clicked",
- G_CALLBACK (gtk_widget_destroy),
- (gpointer) dlg);
-
- g_signal_connect_swapped ((gpointer) cancel_btn, "clicked",
- G_CALLBACK (gtk_widget_destroy),
- (gpointer) dlg);
-
- return dlg;
-}
-
-
-/**
- @brief callback when enter key pressed in rename_dialgo and set_up_menu_dialog
- @param widget the Widget event happend
- @param event event type
- @param user_data dialog widget
- @return true if event is enter key or false
-*/
-
-gboolean
-enter_key_pressed (GtkWidget * widget, GdkEventKey * event,
- gpointer user_data)
-{
- if (event->keyval == GDK_Return) {
- GtkWidget *entry = GTK_WIDGET (widget);
- GtkWidget *clist = get_widget (EVENT_MANAGER_ID, "ID_CLIST_ES_DESC");
- const gchar *text;
- text = gtk_entry_get_text (GTK_ENTRY (entry));
-
- gtk_clist_set_text (GTK_CLIST (clist), GTK_CLIST (clist)->focus_row,
- 5, text);
- gtk_widget_destroy (GTK_WIDGET (GTK_WIDGET (user_data)));
- return TRUE;
- } else
- return FALSE;
-}
-
-/**
- @brief dialog for message
- @param parent: widget of parent window
- @param type: GTK message type
- @param buttons: type of button
- @param message: mesage for dialog
-
-*/
-
-void
-message_dialog (GtkWindow * parent, GtkMessageType type,
- GtkButtonsType buttons, gchar * message)
-{
- GtkWidget *dialog =
- gtk_message_dialog_new (parent, GTK_DIALOG_DESTROY_WITH_PARENT,
- type,
- buttons, message);
- gtk_dialog_run (GTK_DIALOG (dialog));
- gtk_widget_destroy (dialog);
-}
-
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef __DIALOG_H__
-#define __DIALOG_H__
-
-#include <gtk/gtk.h>
-#include <string.h>
-#include <stdio.h>
-#include <gdk/gdkkeysyms.h>
-
-#include "ui_imageid.h"
-#include "utils.h"
-
-void show_message(const char *szTitle, const char *szMessage);
-void show_message_for_qemu(const char *szTitle, const char *szMessage);
-void clear_show_message(GtkWidget *widget, gpointer data);
-void file_open_dialog (gchar *title, GtkWindow *parent, gchar *ext, void (*call_back) (gchar *));
-void file_save_dialog (gchar *title, GtkWindow *parent, gchar *default_filename, gchar *ext, void (*call_back) (gchar *));
-GtkWidget *input_name_dialog (gchar *dlg_title, gchar *dlg_label, void (*call_back) (GtkWidget *, gpointer));
-GtkWidget *rename_dialog (gchar *default_text, gchar *dlg_title, gchar *dlg_label, void (*call_back) (GtkWidget *, gpointer));
-GtkWidget *combo_dialog(gchar* dlg_title, gint select_column, void (*call_back)(GtkWidget *, gpointer));
-void message_dialog(GtkWindow *parent, GtkMessageType type, GtkButtonsType buttons, gchar *message);
-gboolean enter_key_pressed (GtkWidget * widget, GdkEventKey * event, gpointer user_data);
-
-#define _(String) String
-
-#endif
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#include "imageutil.h"
-
-#if 0 /* deleted by opensource (20090309) */
-static char *folder_xpm[] = {
- "16 16 8 1",
- " c None",
- ". c #909000",
- "+ c #000000",
- "@ c #EFE8EF",
- "# c #FFF8CF",
- "$ c #FFF890",
- "% c #CFC860",
- "& c #FFC890",
- " ",
- " .....+ ",
- " .@##$$.+ ",
- ".%%%%%%%...... ",
- ".###########$%+ ",
- ".#$$$$$$$$$$&%+ ",
- ".#$$$$$$$&$&$%+ ",
- ".#$$$$$$$$&$&%+ ",
- ".#$$$$$&$&$&$%+ ",
- ".#$$$$$$&$&$&%+ ",
- ".#$$$&$&$&$&&%+ ",
- ".#&$&$&$&$&&&%+ ",
- ".%%%%%%%%%%%%%+ ",
- " ++++++++++++++ ",
- " ",
- " "
-};
-
-static char *ofolder_xpm[] = {
- "16 16 12 1",
- " c None",
- ". c #808080",
- "+ c #E0E0D0",
- "@ c #4F484F",
- "# c #909000",
- "$ c #FFF8EF",
- "% c #CFC860",
- "& c #003090",
- "* c #7F7800",
- "= c #FFC890",
- "- c #FFF890",
- "; c #2F3000",
- " . ",
- " .+@ ",
- " ###.$$+@ ",
- " #%%.$$$$+@ ",
- " #%.$$$&$$+@** ",
- " #.+++&+&+++@* ",
- "############++@ ",
- "#$$$$$$$$$=%#++@",
- "#$-------=-=#+; ",
- " #---=--=-==%#; ",
- " #-----=-=-==#; ",
- " #-=--=-=-=-=#; ",
- " #=-=-=-=-==#; ",
- " ############; ",
- " ;;;;;;;;;;; ",
- " "
-};
-#endif
-
-/* XPM */
-static char * ofolder_xpm[] = {
-"16 22 14 1",
-" c None",
-". c #848400",
-"+ c #D6D67B",
-"@ c #CECE7B",
-"# c #CECE73",
-"$ c #C6C66B",
-"% c #BDBD5A",
-"& c #BDBD52",
-"* c #ADAD39",
-"= c #ADAD42",
-"- c #B5B54A",
-"; c #C6C663",
-"> c #CECE6B",
-", c #A5A5C6",
-" ",
-" ",
-" ",
-" ",
-" ",
-" ",
-" .... ",
-".+@@#..... ",
-".@@##$$%%&. ",
-".@#.......... ",
-".#.*==--&%%;;. ",
-".#.==--&%%;;. ",
-"..==--&%%;;$. ",
-"..=--&%%;;$. ",
-".=--&%%;;$>. ",
-"........... ",
-" ",
-" , ",
-" ",
-" , ",
-" ",
-" , "
-};
-
-
-/* XPM */
-static char * folder_xpm[] = {
-"16 22 15 1",
-" c None",
-". c #848400",
-"+ c #E7E79C",
-"@ c #E7E794",
-"# c #DEDE8C",
-"$ c #ADAD39",
-"% c #ADAD42",
-"& c #B5B54A",
-"* c #B5B552",
-"= c #BDBD5A",
-"- c #9C9C29",
-"; c #A5A531",
-"> c #C6C663",
-", c #C6C66B",
-"' c #CECE73",
-" ",
-" ",
-" ",
-" ",
-" ",
-" ",
-" .... ",
-".+@@#....... ",
-".....$%%&&*=. ",
-".-;;$%%&&*==. ",
-".;;$%%&&*===. ",
-".;$%%&&*===>. ",
-".$%%&&*===>,. ",
-".%%&&*===>,,. ",
-".%&&*===>,,'. ",
-"............. ",
-" ",
-" ",
-" ",
-" ",
-" ",
-" "
-};
-
-
-#if 1
-static char *check_page_xpm[] = {
- "16 16 5 1",
- " c None s None",
- ". c black",
- "X c white",
- "o c #808080",
- "r c red",
- " ",
- " ....... ",
- " .XXXXX.. ",
- " .XoooX.X. ",
- " .XXXXX.... ",
- " rrooooXoorr ",
- " rrXXXXXXrro ",
- " .rrooooorro ",
- " .rrXXXXrr.o ",
- " .Xrrooorr.o ",
- " .XXrrXrrX.o ",
- " .XoorrroX.o ",
- " .XXXXrXXX.o ",
- " ..........o ",
- " oooooooooo ",
- " "
-};
-
-
-static char *page_xpm[] = {
- "16 16 4 1",
- " c None s None",
- ". c black",
- "X c white",
- "o c #808080",
- " ",
- " ....... ",
- " .XXXXX.. ",
- " .XoooX.X. ",
- " .XXXXX.... ",
- " .XooooXoo.o ",
- " .XXXXXXXX.o ",
- " .XooooooX.o ",
- " .XXXXXXXX.o ",
- " .XooooooX.o ",
- " .XXXXXXXX.o ",
- " .XooooooX.o ",
- " .XXXXXXXX.o ",
- " ..........o ",
- " oooooooooo ",
- " "
-};
-#endif
-
-
-static char *bk_on_xpm[] = {
- "16 16 3 1",
- " c None",
- ". c red",
- "o c black",
- " ",
- " oooooo ",
- " oo......oo ",
- " o..........o ",
- " o..........o ",
- " oo...........o ",
- " o............o ",
- " o............o ",
- " o............o ",
- " oo..........oo ",
- " o..........o ",
- " o..........o ",
- " oo......oo ",
- " oooooo ",
- " ",
- " "
-};
-
-
-static char *bk_off_xpm[] = {
- "16 16 3 1",
- " c None",
- ". c blue",
- "o c black",
- " ",
- " oooooo ",
- " oo......oo ",
- " o..........o ",
- " o..........o ",
- " oo...........o ",
- " o............o ",
- " o............o ",
- " o............o ",
- " oo..........oo ",
- " o..........o ",
- " o..........o ",
- " oo......oo ",
- " oooooo ",
- " ",
- " "
-};
-
-
-static char *bk_null_xpm[] = {
- "16 16 1 1",
- " c None s None",
- " ",
- " ",
- " ",
- " ",
- " ",
- " ",
- " ",
- " ",
- " ",
- " ",
- " ",
- " ",
- " ",
- " ",
- " ",
- " "
-};
-
-
-#if 0
-static char *pointer_off_xpm[] = {
- "16 16 2 1",
- " c None",
- ". c black",
- " ",
- " ",
- " ............ ",
- " ............ ",
- " .. .. ",
- " .. .. ",
- " .. .. ",
- " .. .. ",
- " .. .. ",
- " .. .. ",
- " .. .. ",
- " .. .. ",
- " ............ ",
- " ............ ",
- " ",
- " "
-};
-
-
-static char *pointer_on_xpm[] = {
- "16 16 2 1",
- " c None",
- ". c black",
- " ",
- " ",
- " ............ ",
- " ............ ",
- " .. .. ",
- " .. .. ",
- " ... ... ",
- " .... .... ",
- " .. ...... .. ",
- " .. .... .. ",
- " .. .. .. ",
- " .. .. ",
- " ............ ",
- " ............ ",
- " ",
- " "
-};
-#endif
-
-
-/* XPM */
-static char * pointer_on_xpm[] = {
-"16 16 3 1",
-" c None",
-". c #FFFFFF",
-"+ c #000000",
-"................",
-".++++++++++++++.",
-".+............+.",
-".+.........++.+.",
-".+.........++.+.",
-".+........++..+.",
-".+........++..+.",
-".+..++...++...+.",
-".+..++...++...+.",
-".+...++.++....+.",
-".+...++.++....+.",
-".+....+++.....+.",
-".+....+++.....+.",
-".+............+.",
-".++++++++++++++.",
-"................"
-};
-
-/* XPM */
-static char * pointer_off_xpm[] = {
-"16 16 3 1",
-" c None",
-". c #FFFFFF",
-"+ c #000000",
-"................",
-".++++++++++++++.",
-".+............+.",
-".+............+.",
-".+............+.",
-".+............+.",
-".+............+.",
-".+............+.",
-".+............+.",
-".+............+.",
-".+............+.",
-".+............+.",
-".+............+.",
-".+............+.",
-".++++++++++++++.",
-"................"
-};
-
-
-GdkColormap *colormap;
-
-GdkPixmap *pointer_on_image, *pointer_off_image;
-GdkBitmap *pointer_on_mask, *pointer_off_mask;
-
-GdkPixmap *bk_null_image = NULL, *bk_on_image = NULL, *bk_off_image = NULL;
-GdkBitmap *bk_null_mask = NULL, *bk_on_mask = NULL, *bk_off_mask = NULL;
-
-GdkPixmap *page_image, *check_image;
-GdkBitmap *page_mask, *check_mask;
-
-GdkPixmap *opened_image, *closed_image;
-GdkBitmap *opened_mask, *closed_mask;
-
-
-/**
- @brief initialize image icon
- @return void
-*/
-void init_icon_image ()
-{
- colormap = gdk_colormap_get_system ();
- pointer_on_image = gdk_pixmap_colormap_create_from_xpm_d (NULL, colormap,
- &pointer_on_mask, NULL, pointer_on_xpm);
- pointer_off_image = gdk_pixmap_colormap_create_from_xpm_d (NULL, colormap,
- &pointer_off_mask, NULL,pointer_off_xpm);
-
- bk_on_image = gdk_pixmap_colormap_create_from_xpm_d (NULL, colormap,
- &bk_on_mask, NULL, bk_on_xpm);
- bk_off_image = gdk_pixmap_colormap_create_from_xpm_d (NULL, colormap,
- &bk_off_mask, NULL, bk_off_xpm);
- bk_null_image = gdk_pixmap_colormap_create_from_xpm_d (NULL, colormap,
- &bk_null_mask, NULL, bk_null_xpm);
-
- page_image = gdk_pixmap_colormap_create_from_xpm_d (NULL, colormap,
- &page_mask, NULL, page_xpm);
- check_image = gdk_pixmap_colormap_create_from_xpm_d (NULL, colormap,
- &check_mask, NULL, check_page_xpm);
-
- opened_image = gdk_pixmap_colormap_create_from_xpm_d (NULL, colormap,
- &opened_mask, NULL, ofolder_xpm);
- closed_image = gdk_pixmap_colormap_create_from_xpm_d (NULL, colormap,
- &closed_mask, NULL, folder_xpm);
-}
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef __IMAGE_UTIL_H__
-#define __IMAGE_UTIL_H__
-
-#include <gtk/gtk.h>
-#include "utils.h"
-
-extern GdkColormap *colormap;
-extern GdkPixmap *pointer_on_image, *pointer_off_image;
-extern GdkBitmap *pointer_on_mask, *pointer_off_mask;
-extern GdkPixmap *bk_null_image, *bk_on_image, *bk_off_image;
-extern GdkBitmap *bk_null_mask, *bk_on_mask, *bk_off_mask;
-extern GdkPixmap *page_image, *check_image;
-extern GdkBitmap *page_mask, *check_mask;
-extern GdkPixmap *opened_image, *closed_image;
-extern GdkBitmap *opened_mask, *closed_mask;
-
-void init_icon_image ();
-
-#endif
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-/**
- @file utils.c
- @brief miscellaneous functions used in ISE
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <glib.h>
-#include <gtk/gtk.h>
-#include <time.h>
-#include <ctype.h>
-#include <unistd.h>
-#include <string.h>
-
-#include "utils.h"
-
-static GHashTable *windows_hash = NULL; /* hash table to get widow and widget of Simulator */
-//GHashTable *attribute_hash = NULL;
-
-gchar *current_es_save_filename; /**<event manager save file */
-gchar *current_testcase_save_filename; /**<testcase save file*/
-GPid simulator_pid = -1; /**<pid of simulator window*/
-
-
-/**
- @brief hash intialization
-*/
-GHashTable *window_hash_init (void)
-{
- windows_hash = g_hash_table_new_full (g_direct_hash, g_direct_equal, NULL, NULL);
- return windows_hash;
-}
-
-
-/**
- @brief add window widget to hash
-*/
-void add_window (GtkWidget *win, gint window_id)
-{
- g_hash_table_insert (windows_hash, GINT_TO_POINTER (window_id), win);
-}
-
-
-/**
- @brief search window widget by using window id as a key
- @return matched window widget
-*/
-GtkWidget *get_window (gint window_id)
-{
- GtkWidget *win = (GtkWidget *) g_hash_table_lookup (windows_hash, GINT_TO_POINTER (window_id));
- return win;
-}
-
-
-/**
- @brief destroy hash
-*/
-void window_hash_destroy (void)
-{
- g_hash_table_destroy (windows_hash);
-}
-
-
-/**
- @brief add widget to hash
- @param window_id: ID of widget
- @param widget_name: widget name
- @param widget: widget to add in hash
-*/
-void add_widget (gint window_id, gchar * widget_name, GtkWidget * widget)
-{
- if (!windows_hash) {
- log_msg(MSGL_WARN,"Parent window not exist!\n");
- return;
- }
-
- GtkWidget *parent = get_window (window_id);
- if (!parent) {
- log_msg(MSGL_WARN,"Parent window not exist!\n");
- return;
- }
-
- g_object_set_data_full (G_OBJECT (parent), widget_name, gtk_widget_ref (widget), (GDestroyNotify) gtk_widget_unref);
-}
-
-
-/**
- @brief get widget from hash
- @param window_id: ID of widget
- @param widget_name: widget name to search in hash
- @return widget: widget to matched widget_name
-*/
-GtkWidget *get_widget (gint window_id, gchar *widget_name)
-{
- GtkWidget *parent;
-
- parent = get_window (window_id);
- if (!parent) {
- log_msg(MSGL_WARN, "Parent window not exist!\n");
- return NULL;
- }
-
- GtkWidget *w = (GtkWidget *) g_object_get_data (G_OBJECT (parent), widget_name);
- if (!w) {
- log_msg(MSGL_INFO, "Widget(%s) not found!\n", widget_name);
- return NULL;
- }
-
- return w;
-}
-
-
-/*
-void
-raise_window (GtkWidget * win)
-{
- if (!gtk_window_has_toplevel_focus (GTK_WINDOW (win)))
- gtk_window_present (GTK_WINDOW (win));
-}
-
-void
-remove_window (gint window_id)
-{
- g_hash_table_remove (windows_hash, GINT_TO_POINTER (window_id));
-}
-*/
-
-
-/*
-void
-print_window (void)
-{
- g_hash_table_foreach (windows_hash, print_entry, NULL);
-}
-*/
-
-
-/*
-void
-process_events (void)
-{
- while (g_main_iteration (FALSE));
-}
-*/
-
-/**
- @brief create icon widget
- @param img_dir: directory of icon file exist
- @param filename: icon file name
- @return newly created image widget
-*/
-
-GtkWidget *create_pixmap (const gchar* img_dir, const gchar * filename)
-{
- gchar* image_file;
- image_file = g_strdup_printf("%s/%s", img_dir, filename);
- GtkWidget *pixmap;
-
- if (!image_file) {
- g_warning ("Couldn't find pixmap file: %s", image_file);
- return gtk_image_new ();
- }
-
- pixmap = gtk_image_new_from_file (image_file);
- g_free(image_file);
- return pixmap;
-}
-
-/*
-//======================= Attribute Hash Table Fuction ================================
-GHashTable *
-attr_tlb_init (void)
-{
- return (GHashTable *) g_hash_table_new_full (g_direct_hash,
- g_direct_equal, NULL, NULL);
-}
-
-int
-attr_tlb_set_ent (GHashTable * hash, gint key, gpointer value, int size)
-{
- AttrTlbEnt *new_entry;
-
- new_entry = g_hash_table_lookup (hash, GINT_TO_POINTER (key));
- if (new_entry != NULL) {
- g_hash_table_remove (hash, GINT_TO_POINTER (key));
- new_entry = NULL;
- }
-
- new_entry = (AttrTlbEnt *) g_malloc (sizeof (AttrTlbEnt));
- if (new_entry == NULL)
- return -1;
-
- new_entry->size = size;
- new_entry->value = (gpointer) g_malloc (size);
- if (new_entry->value == NULL)
- return -1;
- // g_print("%d: key_str: %s\n", ++i, (gchar*)key);
- g_memcpy (new_entry->value, value, size);
- g_hash_table_insert (hash, GINT_TO_POINTER (key), (gpointer) new_entry);
-
- return 0;
-}
-
-int
-attr_tlb_del_ent (GHashTable * hash, gint key)
-{
- AttrTlbEnt *old_entry;
- old_entry = g_hash_table_lookup (hash, GINT_TO_POINTER (key));
- if (old_entry == NULL)
- return -1;
-
- g_free (old_entry->value);
- old_entry->size = 0;
- old_entry->value = NULL;
-
- g_hash_table_remove (hash, GINT_TO_POINTER (key));
- g_free (old_entry);
-
- return 0;
-}
-
-gpointer
-attr_tlb_find_ent (GHashTable * hash, gint key)
-{
- AttrTlbEnt *ret_entry;
-
- ret_entry =
- (AttrTlbEnt *) g_hash_table_lookup (hash, GINT_TO_POINTER (key));
- if (ret_entry == NULL)
- return NULL;
-
- return ret_entry->value;
-}
-
-GHashTable *
-attr_tlb_open (const gchar * fileName)
-{
- FILE *fp;
- GHashTable *hash;
- gint valueSize;
- gint prevValueSize = 0;
- gint key;
- gpointer value;
-
- if ((fp = fopen (fileName, "r")) == NULL) {
- //g_print ("Can't %s file open\n", fileName);
- //g_log(ISE_DOMAIN, G_LOG_LEVEL_DEBUG, "[%s:%s:%5d]Can't %s file open",__FILE__, __func__, __LINE__, fileName);
- return NULL;
- }
-
- hash = attr_tlb_init ();
-
- while (!feof (fp)) {
- fread (&key, sizeof (int), 1, fp);
-
- fread (&valueSize, sizeof (int), 1, fp);
-
- // ff();
- // g_print("key =%s. keyLength=%d. valuesize = %d.\n", (gchar*)key, keyLength, valueSize);
- // ff();
-
- if (prevValueSize == 0) {
- value = (gpointer) g_malloc (valueSize);
- prevValueSize = valueSize;
- } else if (valueSize > prevValueSize) {
- value = (gpointer) g_realloc (value, valueSize);
- prevValueSize = valueSize;
- }
- fread (value, valueSize, 1, fp);
-
- // g_print ("%d: key =%s. keyLength=%d. valuesize = %d.\n", ++i, (gchar*)key, keyLength, valueSize);
- attr_tlb_set_ent (hash, key, value, valueSize);
- }
-
- g_free (value);
- fclose (fp);
-
- return hash;
-}
-
-static void save_entry (gpointer key, gpointer value, gpointer data)
-{
- AttrTlbEnt *entry = (AttrTlbEnt *) value;
- FILE *fp = (FILE *) data;
- gint key_int = (gint) key;
-
- fwrite (&key_int, sizeof (gint), 1, fp);
- fwrite (&entry->size, sizeof (gint), 1, fp);
- fwrite (entry->value, entry->size, 1, fp);
-}
-
-int
-attr_tlb_save (GHashTable * hash, const gchar * fileName)
-{
- FILE *fp;
-
- if ((fp = fopen (fileName, "w")) == NULL) {
- //g_print ("Can't %s file open\n", fileName);
- g_log(ISE_DOMAIN, G_LOG_LEVEL_DEBUG, "[%s:%s:%5d]Can't %s file open",__FILE__, __func__, __LINE__, fileName);
- return -1;
- };
-
- g_hash_table_foreach (hash, save_entry, fp);
- fclose (fp);
-
- return 0;
-}
-
-static void
-del_entry (gpointer key, gpointer value, gpointer data)
-{
- AttrTlbEnt *old_entry;
-
- old_entry = (AttrTlbEnt *) value;
- g_free (old_entry->value);
- g_free (old_entry);
-}
-
-void
-attr_tlb_close (GHashTable * hash)
-{
- g_hash_table_foreach (hash, del_entry, NULL);
- g_hash_table_destroy (hash);
-}
-
-void
-print_entry (gpointer key, gpointer value, gpointer data)
-{
- //g_print ("key=0x%x.\n", (gint) key);
- g_log(ISE_DOMAIN, G_LOG_LEVEL_INFO, "[%s:%s:%5d]key=0x%x.",__FILE__, __func__, __LINE__, (gint)key);
-}
-
-
-//======================= Etc Util Function =======================
-
-*/
-
-/**
- @brief convert string to lower case string
- @param string string to covert
-*/
-#ifndef _WIN32
-void
-strlwr (char *string)
-{
- //while (0 != (*string++ = (char) tolower (*string)));
- while (1)
- {
-
- *string = (char) tolower (*string);
-
- if (*string == 0) {
- return;
- }
-#if 0
- *string++;
-#else
- string++;
-#endif
- }
-}
-#endif
-
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef __UTILS_H__
-#define __UTILS_H__
-#include <gtk/gtk.h>
-
-#include "../libcommon/fileio.h"
-#include "../libcommon/logmsg.h"
-
-extern GHashTable *attribute_hash;
-extern gint menu_id_array[];
-extern gint window_id_array[];
-
-extern gchar *current_es_save_filename;
-extern gchar *current_testcase_save_filename;
-extern GPid simulator_pid;
-
-GHashTable *window_hash_init (void);
-void add_window (GtkWidget * win, gint id);
-void raise_window (GtkWidget * win);
-void remove_window (gint id);
-GtkWidget *get_window (gint id);
-void print_window (void);
-void window_hash_destroy (void);
-void add_widget (gint window_id, gchar * widget_name, GtkWidget * widget);
-GtkWidget *get_widget (gint window_id, gchar * widget_name);
-
-void process_events (void);
-GtkWidget *create_pixmap (const gchar *, const gchar*);
-/*
-typedef struct _AttrTlbEnt {
- gint size;
- gpointer value;
-} AttrTlbEnt;
-
-typedef struct _iseToolkit {
- gint x;
- gint y;
- gint width;
- gint height;
-
- gboolean is_active;
-
- GtkWidget *(*create) (GtkWidget * window);
- GtkWidget *(*destroy) (GtkWidget * window);
-} ISEToolkit;
-
-
-GHashTable *attr_tlb_init (void);
-
-int attr_tlb_set_ent (GHashTable * hash, gint key, gpointer value, int size);
-int attr_tlb_del_ent (GHashTable * hash, gint key);
-gpointer attr_tlb_find_ent (GHashTable * hash, gint key);
-GHashTable *attr_tlb_open (const gchar * fileName);
-int attr_tlb_save (GHashTable * hash, const gchar * fileName);
-void attr_tlb_close (GHashTable * hash);
-void print_entry (gpointer key, gpointer value, gpointer data);
-*/
-// void dynamic_strcpy(gchar** dest, const gchar* src);
-
-#ifndef _WIN32
-void strlwr (char *string);
-#endif
-
-#endif
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-
-
-#ifndef __DB_PHONEBOOK_H__
-#define __DB_PHONEBOOK_H__
-
-#include <sqlite3.h>
-
-typedef struct _PB PB;
-struct _PB {
- int db_st_type;
- //int index;
- char name[30];
- char number[20];
- char address[30];
- int cnt;
-};
-
-typedef enum {
-DB_REQ=0,
-DB_DC =1,
-DB_EN =2,
-DB_FD,
-DB_LD,
-DB_MC,
-DB_ME,
-DB_MT,
-DB_ON,
-DB_RC,
-DB_SIM,
-DB_SDN,
-}PB_ST_type;
-
-
-
-int db_sim_pb_restore_callback(void * ref, int ncol, char ** cols, char ** name);
-
-
-int db_sim_pb_cnt_callback(void * ref, int ncol, char ** cols, char ** name);
-
-
-int db_sim_pb_get_callback(void * ref, int ncol, char ** cols, char ** name);
-
-
-int db_sim_pb_setted_storage_callback(void * ref, int ncol, char ** cols, char ** name);
-
-
-int db_sim_pb_create(void);
-
-
-int db_sim_pb_add(PB *pb);
-
-
-int db_sim_pb_remove(PB *pb);
-
-
-int db_sim_pb_cnt_mgr(sqlite3 * db,int pb_type,int action);
-
-
-int db_sim_pb_restore(PB *pb);
-
-
-int db_sim_pb_get(PB *pb);
-
-
-int db_sim_pb_set_mgr(int pb_type,int action);
-
-
-#endif
-
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef _LINUXTAPI4GSM_H_
-#define _LINUXTAPI4GSM_H_
-
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
-
-// ++++++++++++++++++++++++++++++++++++++++++++++include about standard library
-#include <stdio.h>
-// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++include user define
-#include "linuxtapi4gsm_type.h"
-#include "phoneprotocol4gsm.h"
-// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++define area
-
-// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++global variable area
-
-// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++function prototype
-
-// config =====================================================================
-int lxt_gsm_config_get_call_cost(LXT_HANDLE* handle, LXT_CALL_COST_OPTION option);
-int lxt_gsm_config_reset_call_cost(LXT_HANDLE* handle);
-int lxt_gsm_config_set_max_call_cost(LXT_HANDLE* handle, int max_cost);
-int lxt_gsm_config_get_call_unit_price(LXT_HANDLE* handle);
-int lxt_gsm_config_set_call_unit_price(LXT_HANDLE* handle, char unit, char* price);
-int lxt_gsm_config_get_network_selection_mode(LXT_HANDLE* handle);
-int lxt_gsm_config_automatic_network_selection(LXT_HANDLE* handle);
-int lxt_gsm_config_manual_network_seleciton(LXT_HANDLE* handle, char mode);
-int lxt_gsm_config_manual_network_selection_registration(LXT_HANDLE* handle, char *plmn_id, LXT_GSM_CONFIG_RAT rat);
-int lxt_gsm_config_get_caller_id(LXT_HANDLE* handle);
-int lxt_gsm_config_set_caller_id(LXT_HANDLE* handle, LXT_CALLER_ID_OPTION option);
-int lxt_gsm_config_get_active_line(LXT_HANDLE* handle);
-int lxt_gsm_config_set_active_line(LXT_HANDLE* handle, char line);
-int lxt_gsm_config_set_force_gsm_mode(LXT_HANDLE* handle);
-int lxt_gsm_config_get_system_identity(LXT_HANDLE* handle);
-
-// call =======================================================================
-int lxt_gsm_call_originaton(LXT_HANDLE* handle, char* callnumber);
-int lxt_gsm_call_end(LXT_HANDLE* handle, int call_id_num, char* call_id_list);
-int lxt_gsm_call_reject(LXT_HANDLE* handle, int call_id);
-int lxt_gsm_call_answer(LXT_HANDLE* handle, int call_id);
-int lxt_gsm_call_start_dtmf(LXT_HANDLE* handle, char digit, int call_id);
-int lxt_gsm_call_stop_dtmf(LXT_HANDLE* handle, int call_id);
-
-// sups =======================================================================
-int lxt_gsm_sups_originated_sups(LXT_HANDLE* handle, LXT_GSM_SUPS_ORIGINATED *sups_originated);
-int lxt_gsm_sups_network_originated_sups_user_confirm(LXT_HANDLE* handle, LXT_GSM_SUPS_USER_CONFIRM *sups_user_confirm);
-int lxt_gsm_sups_get_sups_network_confirm_data(LXT_HANDLE* handle, char block_id);
-int lxt_gsm_sups_password_registration(LXT_HANDLE* handle, char* old_pw, char* new_pw, char* new_pw_again, char* ss_code);
-//int lxt_gsm_sups_get_barring_password_confirm(LXT_HANDLE* handle, char* barring_pw);
-int lxt_gsm_sups_handle_within_call(LXT_HANDLE*, LXT_GSM_MPTY_OPERATION, LXT_GSM_MPTY_PARAM_ID, char*);
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif // _LINUXTAPI4GSM_H_
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef _LINUXTAPI4GSM_TYPE_H_
-#define _LINUXTAPI4GSM_TYPE_H_
-
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
-
-// ++++++++++++++++++++++++++++++++++++++++++++++include about standard library
-
-// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++include user define
-
-// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++define area
-
-// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++global variable area
-
-// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++function prototype
-
-// sups. Basic Service Group
-#define BS_GROUP_ALL_TELESERVICES "10"
-#define BS_GROUP_TELEPHONY "11"
-#define BS_GROUP_ALL_DATA_TELESERVICES "12"
-#define BS_GROUP_FACSIMILE_SERVICES "13"
-#define BS_GROUP_SHORT_MESSAGE_SERVICES "16"
-#define BS_GROUP_ALL_TELESERVICES_EXCEPT_SMS "19"
-#define BS_GROUP_VOICE_GROUP_CALL_SERVICE "17"
-#define BS_GROUP_VOICE_BROADCAST_SERVICE "18"
-#define BS_GROUP_ALL_BEARER_SERVICES "20"
-#define BS_GROUP_ALL_ASYNC_SERVICES "21"
-#define BS_GROUP_ALL_SYNC_SERVICES "22"
-#define BS_GROUP_ALL_DATA_CIRCUIT_SYNC "24"
-#define BS_GROUP_ALL_DATA_CIRCUIT_ASYNC "25"
-#define BS_GROUP_ALL_DEDICATED_PACKET_ACCESS "26"
-#define BS_GROUP_ALL_DEDICATED_PAD_ACCESS "27"
-#define BS_GROUP_ALL_GPRS_BEARER_SERVICES "99"
-
-// sups. Service Code
-#define SS_CODE_02_67_EMLPP "75"
-#define SS_CODE_02_72_CD "66"
-#define SS_CODE_02_81_CLIP "30"
-#define SS_CODE_02_81_CLIR "31"
-#define SS_CODE_02_81_COLP "76"
-#define SS_CODE_02_81_COLR "77"
-#define SS_CODE_02_82_CFU "21"
-#define SS_CODE_02_82_CF_BUSY "67"
-#define SS_CODE_02_82_CF_NO_REPLY "61"
-#define SS_CODE_02_82_CF_NOT_REACHABLE "62"
-#define SS_CODE_02_82_ALL_CF "002"
-#define SS_CODE_02_82_ALL_CONDITIONAL_CF "004"
-#define SS_CODE_02_83_WAIT "43"
-#define SS_CODE_02_87_UUS_SERVICE_1 "361"
-#define SS_CODE_02_87_UUS_SERVICE_2 "362"
-#define SS_CODE_02_87_UUS_SERVICE_3 "363"
-#define SS_CODE_02_87_ALL_UUS_SERVICES "360"
-#define SS_CODE_02_88_BAOC "33"
-#define SS_CODE_02_88_BAOIC "331"
-#define SS_CODE_02_88_BAOIC_EXC_HOME "332"
-#define SS_CODE_02_88_BAIC "35"
-#define SS_CODE_02_88_BAIC_ROAMING "351"
-#define SS_CODE_02_88_ALL_BARRING_SERV "330"
-#define SS_CODE_02_88_OUTG_BARR_SERV "333"
-#define SS_CODE_02_88_INC_BARR_SERV "353"
-#define SS_CODE_02_91_ECT "96"
-#define SS_CODE_02_93_CCBS "37"
-#define SS_CODE_02_95_SPNP "07n"
-#define SS_CODE_02_96_CNAP "300"
-#define SS_CODE_02_97_MSP "59n"
-
-// sups. param id(for request)
-#define SUPS_PARAM_ID_SS 0x00000001
-#define SUPS_PARAM_ID_DN 0x00000002
-#define SUPS_PARAM_ID_PW 0x00000004
-#define SUPS_PARAM_ID_BS 0x00000008
-#define SUPS_PARAM_ID_T 0x00000010
-#define SUPS_PARAM_ID_USSD 0x00000020
-
-// sups. user confirm id(for request)
-#define SUPS_USER_CONFIRM_ID_USS_RES_TYPE 0x00000001
-#define SUPS_USER_CONFIRM_ID_USS_RES_MESG 0x00000002
-#define SUPS_USER_CONFIRM_ID_USS_GUIDANCE_INFO 0x00000004
-#define SUPS_USER_CONFIRM_ID_USS_PASSWORD_RES 0x00000008
-
-// sups. user confirm(for request)
-#define SUPS_CONFIRM_ID_USS_NOTIFY_RES 0x00000001
-
-
-// sups. confirm id(for response)
-#define SUPS_CFM_ID_SS 0x00000001
-#define SUPS_CFM_ID_BS 0x00000002
-#define SUPS_CFM_ID_BSG_LIST 0x00000004
-#define SUPS_CFM_ID_SS_STATUS 0x00000008
-#define SUPS_CFM_ID_FWD_BS_CODE 0x00000010
-#define SUPS_CFM_ID_FWD_STATUS 0x00000020
-#define SUPS_CFM_ID_FWD_TO_NUM 0x00000040
-#define SUPS_CFM_ID_FWD_OPTION 0x00000080
-#define SUPS_CFM_ID_NR_TIMER 0x00000100
-#define SUPS_CFM_ID_FWD_INFO_SS_CODE 0x00000200
-#define SUPS_CFM_ID_CLIR_STATUS 0x00000400
-#define SUPS_CFM_ID_CLIR_OPTION 0x00000800
-#define SUPS_CFM_ID_CC_CAUSE 0x00001000
-#define SUPS_CFM_ID_SS_ERROR 0x00002000
-#define SUPS_CFM_ID_BLOCK_IDS 0x00004000
-#define SUPS_CFM_ID_BAR_SS_CODE 0x00008000
-#define SUPS_CFM_ID_BAR_BS_CODE 0x00010000
-#define SUPS_CFM_ID_BAR_STATUS 0x00020000
-#define SUPS_CFM_ID_NEW_PW 0x00040000
-#define SUPS_CFM_ID_LL_CAUSE 0x00080000
-#define SUPS_CFM_ID_USS_DATA 0x00100000
-
-
-// sups. network originated indication(for indication)
-#define SUPS_NETWORK_INDICATION_USS_INVOKE_ID 0x00000001
-#define SUPS_NETWORK_INDICATION_USS_IND_DATA 0x00000002
-#define SUPS_NETWORK_INDICATION_PWD_INVOKE_ID 0x00000004
-#define SUPS_NETWORK_INDICATION_GUIDANCE_INFO 0x00000008
-
-
- // call. status notification
- typedef enum
- {
- GSM_CALL_STATUS_UNKNOWN =0x00,
- GSM_CALL_STATUS_WAITING_CONNECTION =0x01,
- GSM_CALL_STATUS_CONNECTED =0x02,
- GSM_CALL_STATUS_WAITING_FOR_USER_ANSWER =0x03,
- GSM_CALL_STATUS_RECALL =0x04,
- GSM_CALL_STATUS_UNAVAILABLE =0x05,
- GSM_CALL_STATUS_CALL_CLEARED =0x06,
- GSM_CALL_STATUS_RELEASED_OR_FAIL =0x07,
- GSM_CALL_STATUS_PROGRESS =0x08
- }
- LXT_GSM_CALL_STATUS;
-
- // call. alert info
- typedef enum
- {
- GSM_CALL_ALERT_INFO_TYPE_DISPLAY =0x01,
- GSM_CALL_ALERT_INFO_TYPE_CALLED_PARTY =0x02,
- GSM_CALL_ALERT_INFO_TYPE_CALLING_PARTY =0x03,
- GSM_CALL_ALERT_INFO_TYPE_CONNECTED_NUMBER =0x04,
- GSM_CALL_ALERT_INFO_TYPE_REPLACE_BY_SIGNALING_REPORT =0x05,
- GSM_CALL_ALERT_INFO_TYPE_MESSAGE_WAITING =0x06,
- GSM_CALL_ALERT_INFO_TYPE_SERVICE_CONFIGURATION =0x07
- }
- LXT_GSM_CALL_ALERT_INFO_TYPE;
-
- // call. presentation indicator
- typedef enum
- {
- GSM_CALL_PI_ALLOWED =0x00,
- GSM_CALL_PI_RESTRICTED =0x01,
- GSM_CALL_PI_NUMBER_NOT_AVAILABLE =0x02,
- GSM_CALL_PI_RESERVED =0x03
- }
- LXT_GSM_CALL_PI;
-
- // call. sups status
- typedef enum
- {
- GSM_CALL_SUPS_STATUS_CALL_BARRED =0x01,
- GSM_CALL_SUPS_STATUS_CALL_IS_IN_WAITING =0x02,
- GSM_CALL_SUPS_STATUS_CALL_RESTRICTED =0x03,
- GSM_CALL_SUPS_STATUS_DEFLECTED_CALL =0x04,
- GSM_CALL_SUPS_STATUS_TRANSFERRED_CALL =0x05,
- GSM_CALL_SUPS_STATUS_CUG_INFO_RECEIVED =0x06,
- GSM_CALL_SUPS_STATUS_ORIG_FWD_STATE =0x07,
- GSM_CALL_SUPS_STATUS_CALL_FORWARDED =0x08,
- GSM_CALL_SUPS_STATUS_CALL_BEING_FORWARDED =0x09
- }
- LXT_GSM_CALL_SUPS_STATUS;
-
- // mpty. operation
- typedef enum
- {
- ENTERING_NO_OPERATION =0x00,
- ENTERING_0_SEND =0x01,
- ENTERING_1_SEND =0x02,
- ENTERING_1_X_SEND =0x03,
- ENTERING_2_SEND =0x04,
- ENTERING_2_X_SEND =0x05,
- ENTERING_3_SEND =0x06,
- ENTERING_4_SEND =0x07,
- ENTERING_4_DN_SEND =0x08
- }
- LXT_GSM_MPTY_OPERATION;
-
- // mpty. param id
- typedef enum
- {
- MPTY_PARAM_ID_NONE =0x00,
- MPTY_PARAM_ID_X =0x01,
- MPTY_PARAM_ID_DN =0x02
- }
- LXT_GSM_MPTY_PARAM_ID;
-
- // mpty. cfrm id
- typedef enum
- {
- GSM_MPTY_CFM_ID_MPTY_CFRM_DATA_ID_NONE =0x00,
- GSM_MPTY_CFM_ID_ACTIVE_CALL_LIST =0x01,
- GSM_MPTY_CFM_ID_SS_ERROR =0x02
- }
- LXT_GSM_MPTY_CFM_ID;
-
- // sups. operation
- typedef enum
- {
- NO_OPERATION =0x00,
- REGISTRATION =0x01,
- ACTIVATION =0x02,
- DEACTIVATION =0x03,
- ERASURE =0x04,
- INTERROGATION =0x05,
- USSD =0x06,
- USSD_RESPONSE =0x07,
- USSD_NOTIFY_RESPONSE =0x08,
- PASSWORD_REGISTRATION =0x09
- }
- LXT_GSM_SUPS_OPERATION;
-
-
- // sups. network originated indication ooperation
- typedef enum
- {
- USS_INDICATION =0x01,
- USS_NOTIFY_INDICATION =0x02,
- PASSWORD_INDICATION =0x03
- }
- LXT_GSM_SUPS_NETWORK_INDICATION_OPERATION;
-
-
- // sups. user confirm operation
- typedef enum
- {
- USS_RES =0x01,
- USS_NOTIFY_RES =0x02,
- USS_EDIT =0x03,
- USS_ABORT =0x04,
- USS_DISPLAY_TIMEOUT =0x05,
- USS_TIMER =0x06,
- PASSWORD_RES =0x07
- }
- LXT_GSM_SUPS_USER_CONFIRM_OPERATION;
-
- // sups. user confirm -- uss res type
- typedef enum
- {
- USS_RES_TYPE_UNKNOWN_ALPHABET =0x00,
- USS_RES_TYPE_DISPLAY_BUSY =0x01,
- USS_RES_TYPE_OK =0x02,
- USS_RES_TYPE_NONE =0x03
- }
- LXT_GSM_SUPS_USER_CONFIRM_USS_RES_TYPE;
-
- // sups. user confirm -- uss res type
- typedef struct
- {
- char uss_msg_len;
- char uss_msg[64];
- }
- LXT_GSM_SUPS_USER_CONFIRM_USS_RES_MSG_TYPE;
-
- // sups. user confirm -- uss guidance info type
- typedef enum
- {
- USS_GUIDANCE_INFO_TYPE_ENTER_PW =0x00,
- USS_GUIDANCE_INFO_TYPE_ENTER_NEW_PW =0x01,
- USS_GUIDANCE_INFO_TYPE_ENTER_NEW_PW_AGAIN =0x02,
- USS_GUIDANCE_INFO_TYPE_BAD_PW_TRY_AGAIN =0x03,
- USS_GUIDANCE_INFO_TYPE_BAD_PW_FORMAT_TRY_AGAIN =0x04
- }
- LXT_GSM_SUPS_USER_CONFIRM_USS_GUIDANCE_INFO_TYPE;
- // sups. user confirm -- uss password res type
- typedef struct
- {
- char pw_len;
- char pw[8];
- }
- LXT_GSM_SUPS_USER_CONFIRM_USS_PASSWORD_RES_TYPE;
-
-
- // sups. result
- typedef enum
- {
- FAILURE =0x00,
- SUCCESS =0x01,
- }
- LXT_GSM_SUPS_RESULT;
-
- // sups. error class
- typedef enum
- {
- COMMAND_ERROR =0x01,
- USER_DEFINED_ERROR =0x02
- }
- LXT_GSM_SUPS_ERROR_CLASS;
-
- // sups. error reason(command error)
- typedef enum
- {
- LXT_GSM_SUPS_ERROR_REASON_1_NO_ERROR =0x00,
- LXT_GSM_SUPS_ERROR_REASON_1_INVALID_CLIENT_ID =0x01,
- LXT_GSM_SUPS_ERROR_REASON_1_NULL_PARAM =0x02,
- LXT_GSM_SUPS_ERROR_REASON_1_OFFLINE_STATE =0x03,
- LXT_GSM_SUPS_ERROR_REASON_1_SRV_STATE_INVALID =0x04,
- LXT_GSM_SUPS_ERROR_REASON_1_NO_BUFFER =0x05,
- LXT_GSM_SUPS_ERROR_REASON_1_OTHER =0x06,
- LXT_GSM_SUPS_ERROR_REASON_1_UNDEFINED_FEATURE =0x07
- }
- LXT_GSM_SUPS_ERROR_REASON_1;
-
-
- // sups. error reason(user define error)
- typedef enum
- {
- LXT_GSM_SUPS_ERROR_REASON_2_NO_ERROR =0x00,
- LXT_GSM_SUPS_ERROR_REASON_2_UNKNOWN_ERROR =0x01,
- LXT_GSM_SUPS_ERROR_REASON_2_NULL_AT_COM_PTR =0x02,
- LXT_GSM_SUPS_ERROR_REASON_2_INVALID_PARAM =0x03,
- LXT_GSM_SUPS_ERROR_REASON_2_UNKNOWN_MSG =0x04,
- LXT_GSM_SUPS_ERROR_REASON_2_OPER_TIMEOUT =0x05,
- LXT_GSM_SUPS_ERROR_REASON_2_AUTO_NETSEL_ERROR =0x06,
- }
- LXT_GSM_SUPS_ERROR_REASON_2;
-
-
- // sups. structure
- typedef struct _lxt_gsm_sups_originated
- {
- LXT_GSM_SUPS_OPERATION operation; // operation
- int mask; // mask
- char ss[4]; // service code
- char dn[64]; // direct number
- char pw[8]; // password
- char bs[4]; // base group
- int t_nr; // no reply timer
- char ussd[256]; // unstructured ss data
- int length; // data length (for expention)
- void* data; // data (for expention)
- }
- LXT_GSM_SUPS_ORIGINATED;
-
-
- // sups. user confirm
- typedef struct _lxt_gsm_sups_user_confirm
- {
- LXT_GSM_SUPS_USER_CONFIRM_OPERATION operation;
- int mask;
- LXT_GSM_SUPS_USER_CONFIRM_USS_RES_TYPE res_type;
- LXT_GSM_SUPS_USER_CONFIRM_USS_RES_MSG_TYPE res_mesg;
- LXT_GSM_SUPS_USER_CONFIRM_USS_GUIDANCE_INFO_TYPE guidance_info_type;
- LXT_GSM_SUPS_USER_CONFIRM_USS_PASSWORD_RES_TYPE password_res_type;
-
- }
- LXT_GSM_SUPS_USER_CONFIRM;
-
- // sups. originated notification
- typedef struct _lxt_gsm_sups_originated_rx_header_status
- {
- char status; // 1byte
- char error_class; // 1byte
- char error_reason; // 1byte
- char operation; // 1byte
- }
- LXT_GSM_SUPS_ORIGINATED_RX_HEADER_STATUS;
-
- typedef struct _lxt_gsm_sups_originated_rx_header_data
- {
- int id_cfrm_data; // 4byte
- char len_data; // 1byte
- }
- LXT_GSM_SUPS_ORIGINATED_RX_HEADER_DATA;
-
-
- typedef enum
- {
- LXT_SUPS_CALLERID_DEFAULT =0x00,
- LXT_SUPS_CALLERID_HIDE =0x01,
- LXT_SUPS_CALLERID_SEND =0x02
- }
- LXT_CALLER_ID_OPTION;
-
- typedef enum
- {
- LXT_SUPS_CCM =0x01,
- LXT_SUPS_ACM =0x02,
- LXT_SUPS_ACMMAX =0x03
- }
- LXT_CALL_COST_OPTION;
-
- // for register sups ==================
- typedef enum
- {
- NUMBER_IDENTIFICATION =0x01,
- CALL_OFFERING =0x02,
- CALL_COMPLETION =0x03,
- CALL_RESTRICTION =0x04,
- }
- LXT_GSM_SUPS_REG_PARAMS_TYPE;
-
- typedef enum
- {
- FWD_INFO =0x01,
- FWD_TO_NUM_INFO =0x02,
- FWD_FEATURE_LIST_INFO =0x03,
- CALL_BARRING_INFO =0x04,
- CLI_RESTRICTION_INFO =0x05,
- CALLED_PARTY_NUM_INFO =0x06,
- CUG_INFO =0x07,
- BSG_LIST_INFO =0x08,
- USS_DATA_INFO =0x09,
- USSD_DATA_INFO =0x0A,
- NEW_PWD_INFO =0x0B,
- SS_DATA_INFO =0x0C,
- SS_STATUS_INFO =0x0D,
- SS_ERROR_INFO =0x0E,
- CC_CAUSE_INFO =0x0F,
- LL_CAUSE_INFO =0x10,
- UNKNOWN_CONF_INFO =0x11,
- NO_INFO =0x12,
- }
- LXT_GSM_SUPS_CONF_TYPE;
-
-
- typedef enum
- {
- PERMANENT =0x01,
- TEMP_DEFAULT_RESTRICTED =0x02,
- TEMP_DEFAULT_ALLOWED =0x03,
- }
- LXT_GSM_SUPS_CLI_RESTRICTION_OPTION;
-
-
- typedef enum
- {
- GSM_CONFIG_RAT_UNKNOWN =0x00,
- GSM_CONFIG_RAT_GSM900 =0x01,
- GSM_CONFIG_RAT_DCS1800 =0x02,
- GSM_CONFIG_RAT_PCS1900 =0x03,
- GSM_CONFIG_RAT_GSM_SAT =0x04,
- GSM_CONFIG_RAT_UMTS =0x05,
- GSM_CONFIG_RAT_LIMITED_SRVC =0x06
- }
- LXT_GSM_CONFIG_RAT;
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif // _LINUXTAPI4GSM_TYPE_H_
-
-
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-// ++++++++++++++++++++++++++++++++++++++++++++++include about standard library
-#include <string.h>
-// ++++++++++++++++++++++++++++++++++++++++++++++include user define
-#include "lxtsmstypedef.h"
-#include "lxtsms.h"
-// ++++++++++++++++++++++++++++++++++++++++++++++define area
-
-// ++++++++++++++++++++++++++++++++++++++++++++++global variable area
-
-// ++++++++++++++++++++++++++++++++++++++++++++++define public function
-
-
-void lxt_sms_init_message(LXT_SMS *s)
-{
- // // initalize sms header
- // s->header.teleservice_id = 0;
- // s->header.message_type = 0;
- // s->header.message_id = 0;
- // s->header.language_indicator = 0;
- // s->header.destination_number[0] = 0;
- // s->header.call_back_number[0] = 0;
- // s->header.size = 0;
- //
- // // initalize sms body
- // memset(s->body.content, 0, 256);
-
- memset(s,0,sizeof(LXT_SMS));
-}
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef _LXTSMS_H_
-#define _LXTSMS_H_
-
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
-
- // ++++++++++++++++++++++++++++++++++++++++++++++include about standard library
-#include <stdio.h>
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++include user define
-#include "linuxtapi.h"
-#include "lxtsmstypedef.h"
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++define area
-#define DEF_INIT_MAGIC_CODE 0xFF
- // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ type define area
-
- // Global ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- // SMS_TIME_STAMP_RELATIVE
- // offset value | relative time period | validity period | delivery time
- // =============|==========================================|=================|===============
- // 0 ~ 143 | (value + 1) * 5 min | x | x
- // =============|==========================================|=================|===============
- // 144 ~ 167 | 12 hours + ((value -143) * 30 min) | x | x
- // =============|==========================================|=================|===============
- // 168 ~ 196 | (value - 166) days | x | x
- // =============|==========================================|=================|===============
- // 197 ~ 244 | (value - 192) weeks | x | x
- // =============|==========================================|=================|===============
- // 245 | Indefinite | x |
- // =============|==========================================|=================|===============
- // 246 | Immediate [1] | x |
- // =============|==========================================|=================|===============
- // 247 | Valid until mobile becomes inactive | x | x
- // | Deliver when mobile next becomes active | |
- // =============|==========================================|=================|===============
- // 248 | Valid until registration area changes, | x |
- // | discard if not registered | |
- // =============|==========================================|=================|===============
- // 249 ~ 255 | reserved | |
- // =============|==========================================|=================|===============
-
-
- // Teleservice Identifier (0x01) +++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // length of teleservice id
- unsigned char length;
-
- // teleservice identifier
- SMS_TELESERVICE_ID service_id;
-
- }
- SMS_TELESERVICE_IDENTIFIER;
-
-
- // Broadcast Service Category (0x02) +++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // length of broadcast service category
- unsigned char length;
-
- // service category(2byte)
- SMS_BROADCAST_SERVICE_CATEGORY_CATEGORY category;
-
- }
- SMS_BROADCAST_SERVICE_CATEGORY;
-
-
- // Address (0x03) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // parameter length - 5 + num_fields
- unsigned char length;
-
- // digit mode indicator - 0x00 : 4BIT_DTMF, 0x01:8BIT_CODE;
- SMS_ADDRESS_DIGIT_MODE digit_mode;
-
- // number mode indicator - 0x00 : ANSI TI.607, 0x01 : Data Network
- SMS_ADDRESS_NUMBER_MODE number_mode;
-
- // type of number -
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 0 ) ) then use SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 1 ) ) then use SMS_ADDRESS_NUMBER_TYPE_DATA_NETWORK
- // if ( DIGIT_MODE == 0 ) then ignore this field
- SMS_ADDRESS_NUMBER_TYPE number_type;
-
- // numbering plan -
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 0 ) ) then use SMS_ADDRESS_NUMBER_PLAN
- // if ( ( DIGIT_MODE == 0 ) || ( NUMBER_MODE == 1 ) ) then ignore this field
- SMS_ADDRESS_NUMBER_PLAN number_plan;
-
- // the number of digit_number
- unsigned char num_fields;
-
- // digit number
- // if ( DIGIT_MODE == 0 ) then ASCII
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 0 ) ) then ANSI X3.4(7bit code for american standard, all significant bit '0')
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 1 ) && ( NUMBER_TYPE == 2 ) ) mail address
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 1 ) && ( NUMBER_TYPE != 2 ) ) ip address
- unsigned char digit_number[DEF_SMS_MAX_DIGIT_NUMBER];
-
- }
- SMS_ADDRESS;
-
-
- // Subaddress (0x04) +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
-
- // parameter length - 3 + num_fields
- unsigned char length;
-
- // subaddress type - use SMS_SUBADDRESS_TYPE
- SMS_SUBADDRESS_TYPE type;
-
- // odd/even indicator
- // if the last digit_number contains information only in the 4 most sign bit then '1' else '0'
- unsigned char odd;
-
- // the number of digit_number
- unsigned char num_fields;
-
- // subaddress octet
- unsigned char digit_number[DEF_SMS_MAX_DIGIT_NUMBER];
-
- }
- SMS_SUBADDRESS;
-
-
- // Bearer Reply Option (0x05) ++++++++++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // length of rearer reply option
- unsigned char length;
-
- // reply sequence number
- // This field shall be set to a value identifying the SMS message for
- // which acknowledgment is requested. : 0 ~ 63 ( modulo of 8 )
- unsigned char reply_seq;
-
- }
- SMS_BEARER_REPLY_OPTION;
-
-
- // Cause Codes (0x06) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // reply sequence number
- // this field shall be set to the reply sequence number in the
- // Bearer Reply Option parameter of the message being acknowledged.
- unsigned char reply_seq;
-
- // error report class - use SMS_CAUSE_CODES_ERROR_CLASS
- SMS_CAUSE_CODES_ERROR_CLASS error_class;
-
- // error cause identifier - if ERROR_CLASS is 0, then this field is ignored.
- // if ERROR_CLASS is 2 or 3, then use SMS_CAUSE_CODE_CAUSE_CODE_NETWORK
- // if ERROR_CLASS is 4, then use SMS_CAUSE_CODE_CAUSE_CODE_INTERNAL
- SMS_CAUSE_CODE_CAUSE_CODE cause_code;
-
- }
- SMS_CAUSE_CODES;
-
-
- // Message Identifier (0x07) +++++++++++++++++++++++++++++++++++++++++++++++++++
-
-
- typedef struct
- {
- // length of message identifier
- unsigned char length;
-
- // use SMS_MESSAGE_TYPE
- SMS_MESSAGE_TYPE message_type;
-
- // Message ID Number(2 byte)
- unsigned short message_id;
-
- }
- SMS_MESSAGE_IDENTIFIER;
-
-
- // User Data (0x08) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
-
- typedef struct
- {
- // user data length
- unsigned char length;
-
- // encoding - use SMS_USER_DATA_MSG_ENCODING
- SMS_USER_DATA_MSG_ENCODING msg_encoding;
-
- // number of digit_number
- unsigned char num_fields;
-
- // user data
- unsigned char* user_data;
-
- }
- SMS_USER_DATA;
-
-
- // User Response Code (0x09) +++++++++++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // length of user response code
- unsigned char length;
-
- // this field value depends on the teleservices or the carrier
- unsigned char response_code;
-
- }
- SMS_USER_RESPONSE_CODE;
-
-
- // Message Center Time Stamp (0x0A) ++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // length of message center time stamp
- unsigned char length;
-
- // time stamp
- unsigned char time_stamp[6];
-
- }
- SMS_MESSAGE_CENTER_TIME_STAMP;
-
-
- // Validity Period - Absolute (0x0B) +++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // prameter length
- unsigned char length;
-
- // time stamp
- unsigned char validity_period[6];
-
- }
- SMS_VALIDITY_PERIOD_ABSOLUTE;
-
-
- // Validity Period - Relative (0x0C) +++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // relative value
- unsigned char validity;
-
-
- }
- SMS_VALIDITY_PERIOD_RELATIVE;
-
-
- // Deferred Delivery Time - Absolute (0x0D) ++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // time stamp
- unsigned char deferred_delivery_time[6];
-
- }
- SMS_DEFERRED_DELIVERY_TIME_ABSOLUTE;
-
-
- // Deferred Delivery Time - Relative (0x0E) ++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // relative value
- unsigned char deferred_delivery_time;
-
- }
- SMS_DEFERRED_DELIVERY_TIME_RELATIVE;
-
-
- // Priority Indicator (0x0F) +++++++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // level of priority
- SMS_PRIORITY_INDICATOR_PRIORITY priority;
-
- }
- SMS_PRIORITY_INDICATOR;
-
-
- // Privacy Indicator (0x10) ++++++++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // privacy level
- SMS_PRIVACY_INDICATOR_PRIVACY privacy;
-
- }
- SMS_PRIVACY_INDICATOR;
-
-
- // Reply Option (0x11) +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // TRUE if User acknowledgment is requested (0x00 : FALSE, 0x01 : TRUE)
- unsigned char user_ack_req;
-
- // TRUE if Delivery acknowledgment is requested (0x00 : FALSE, 0x01 : TRUE)
- unsigned char dak_req;
-
- }
- SMS_REPLY_OPTION;
-
-
- // Number of Messages (0x12) +++++++++++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // number of voice mail (0 ~ 99)
- unsigned char message_count;
-
- }
- SMS_NUMBER_OF_MESSAGES;
-
-
- // Alert on Message Delivery (0x13) ++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // the type of alerts used to distinguish different priorities of the message
- SMS_ALERT_MESSAGE_DELIVERY_ALERT_PRIORITY alert_priority;
-
- }
- SMS_ALERT_ON_MESSAGE_DELIVERY;
-
-
- // Language Indicator (0x14) +++++++++++++++++++++++++++++++++++++++++++++++++++
-
-
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // language indicator
- SMS_LANGUAGE_INDICATOR_LANGUAGE language;
-
- }
- SMS_LANGUAGE_INDICATOR;
-
-
- // Call Back Number (0x15) +++++++++++++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
-
- // parameter length - 5 + num_fields
- unsigned char length;
-
- // digit mode indicator - 0x00 : 4BIT_DTMF, 0x01:8BIT_CODE;
- SMS_ADDRESS_DIGIT_MODE digit_mode;
-
- // type of number -
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 0 ) ) then use SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 1 ) ) then use SMS_ADDRESS_NUMBER_TYPE_DATA_NETWORK
- // if ( DIGIT_MODE == 0 ) then ignore this field
- SMS_ADDRESS_NUMBER_TYPE number_type;
-
-
- // numbering plan -
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 0 ) ) then use SMS_ADDRESS_NUMBER_PLAN
- // if ( ( DIGIT_MODE == 0 ) || ( NUMBER_MODE == 1 ) ) then ignore this field
- SMS_ADDRESS_NUMBER_PLAN number_plan;
-
- // the number of digit_number
- unsigned char num_fields;
-
- // digit number
- // if ( DIGIT_MODE == 0 ) then ASCII
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 0 ) ) then ANSI X3.4(7bit code for american standard, all significant bit '0')
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 1 ) && ( NUMBER_TYPE == 2 ) ) mail address
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 1 ) && ( NUMBER_TYPE != 2 ) ) ip address
- unsigned char digit_number[DEF_SMS_MAX_DIGIT_NUMBER];
-
-
- }
- SMS_CALL_BACK_NUMBER;
-
-
- // Display Mode (0x16) +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // message display mode
- SMS_MESSAGE_DISPLAY_MODE msg_display_mode;
-
- // prl update
- unsigned char prl_update;
-
- // encoding
- unsigned char encoding;
-
- }
- SMS_DISPLAY_MODE;
-
-
- // Multiple Encoding User Data (0x17) ++++++++++++++++++++++++++++++++++++++++++
- // TBD...
- typedef struct
- {
- // message encoding
- unsigned char msg_encoding;
-
- // user data length
- unsigned char num_fields;
-
- // user data
- unsigned char* user_data;
-
- }
- SMS_MULTIPLE_ENCODING_USER_DATA_ENDCODING_SPECIFIC_FIELDS;
-
-
- typedef struct
- {
- unsigned char length;
- SMS_MULTIPLE_ENCODING_USER_DATA_ENDCODING_SPECIFIC_FIELDS *encoding_specific_fields;
-
- }
- SMS_MULTIPLE_ENCODING_USER_DATA;
-
-
- // Memory Index (0x18) +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // memory address
- unsigned short mem_address;
-
- }
- SMS_MEMORY_INDEX;
-
-
- // SMS Message +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // ruim memory index
- unsigned char uim_memory_index;
-
- // ruim tag
- unsigned char uim_tag;
-
- // Remaining frame count
- unsigned char rfr_cnt;
-
- // 0x00 : SMS Point to Point Message, 0x01 : SMS Broadcast Message
- unsigned char sms_msg_cat;
-
- // parametr mask
- unsigned char sms_param_mask[4];
-
- // One of more occurrences of the following parameter record ------------
-
- // service id (1 byte) -- 0x01
- SMS_TELESERVICE_IDENTIFIER teleserviceIdentifier;
-
- // broadcast service category (2 byte) -- 0x02
- SMS_BROADCAST_SERVICE_CATEGORY broadcastServiceCategory;
-
- // Address-Destination Address or Origination Address -- 0x03
- SMS_ADDRESS address;
-
- // Subaddress-Destination or Origination -- 0x04
- SMS_SUBADDRESS subaddress;
-
- // Bearer reply option - Reply sequence number -- 0x05
- // This field shall be set to a value identifying the SMS message for
- // which acknowledgment is requested. : 0 ~ 63 ( modulo of 8 )
- SMS_BEARER_REPLY_OPTION bearer_reply_option;
-
- // Cause Codes -- 0x06
- SMS_CAUSE_CODES cause_codes;
-
- // message identifier -- 0x07
- SMS_MESSAGE_IDENTIFIER message_identifier;
-
- // user data -- 0x08
- SMS_USER_DATA user_data;
-
- // user response code -
- //This field value depends on the teleservices or the carrier-- 0x09
- SMS_USER_RESPONSE_CODE response_code;
-
- // Message Center Time Stamp -- 0x0A
- SMS_MESSAGE_CENTER_TIME_STAMP message_center_time_stamp;
-
- // Validity Period - Absolute -- 0x0B
- SMS_VALIDITY_PERIOD_ABSOLUTE validity_period_absolute;
-
- // Validity Period - Relative -- 0x0C
- SMS_VALIDITY_PERIOD_RELATIVE validity_period_relative;
-
- // Deferred Delivery Time - Absolute -- 0x0D
- SMS_DEFERRED_DELIVERY_TIME_ABSOLUTE deferred_delivery_time_absolute;
-
- // Deferred Delivery Time - Relative -- 0x0E
- SMS_DEFERRED_DELIVERY_TIME_RELATIVE deferred_delivery_time_relative;
-
- // Priority Indicator - use SMS_PRIORITY_INDICATOR 0x0F
- SMS_PRIORITY_INDICATOR priority_indicator;
-
- // Privacy Indicator - use SMS_PRIVACY_INDICATOR 0x10
- SMS_PRIVACY_INDICATOR privacy_indicator;
-
- // reply option -- 0x11
- SMS_REPLY_OPTION reply_option;
-
- // Number of Messages --0x12 (0 ~ 99)
- // The number of messages element is a 0 to 99 decimal number
- SMS_NUMBER_OF_MESSAGES number_of_messages;
-
- // Alert on Message Delivery -- Ox13 - use SMS_ALERT_MESSAGE_DELIVERY_ALERT_PRIORITY
- SMS_ALERT_ON_MESSAGE_DELIVERY alert_message_delivery;
-
- // language indicator -- 0x14 - use SMS_LANGUAGE_INDICATOR_LANGUAGE
- SMS_LANGUAGE_INDICATOR language_indicator;
-
- // call back number -- 0x15
- SMS_CALL_BACK_NUMBER call_back_number;
-
- // message display mode -- 0x16 - use SMS_MESSAGE_DISPLAY_MODE
- SMS_DISPLAY_MODE message_display_mode;
-
- // multiple encoding user data -- 0x17
- SMS_MULTIPLE_ENCODING_USER_DATA multiple_encoding_user_data;
-
- // memory index -- 0x18
- SMS_MEMORY_INDEX memory_index;
-
-
- }
- TSamsungSMS;
-
- // ++++++++++++++++++++++++++++++++++++++++++++++++++ function prototype define
- void lxt_sms_init_message(LXT_SMS *s);
- int lxt_sms_paramsParser(TSamsungSMS *s, unsigned char *r);
- void lxt_sms_parser(LXT_SMS *s,unsigned char memoryIndex,unsigned char tag,unsigned char rfr_cnt,unsigned char msg_cat,unsigned char *param_mask,unsigned char *rawdata,unsigned char length);
- int lxt_sms_paramsDeparser(TSamsungSMS *s, unsigned char param_id, unsigned char *r);
- unsigned char *lxt_sms_deparser(LXT_SMS *s, unsigned char *length);
-
-#ifdef __cplusplus
-}
-#endif
-
-
-#endif // _LXTSMS_H_
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef _LXTSMSTYPEDEF_H_
-#define _LXTSMSTYPEDEF_H_
-
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
-
- // ++++++++++++++++++++++++++++++++++++++++++++++include about standard library
-
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++include user define
-
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++define area
-
- typedef enum
- {
- SMS_PARAM_ID_TELESERVICE_IDENTIFIER= 0x01,
- SMS_PARAM_ID_BROADCAST_SERVICE_CATEGORY= 0x02,
- SMS_PARAM_ID_ADDRESS= 0x03,
- SMS_PARAM_ID_SUBADDRESS= 0x04,
- SMS_PARAM_ID_BEARER_REPLY_OPTION= 0x05,
- SMS_PARAM_ID_CAUSE_CODES= 0x06,
- SMS_PARAM_ID_MESSAGE_IDENTIFIER= 0x07,
- SMS_PARAM_ID_USER_DATA= 0x08,
- SMS_PARAM_ID_USER_RESPONSE_CODE= 0x09,
- SMS_PARAM_ID_MESSAGE_CENTER_TIME_STAMP= 0x0a,
- SMS_PARAM_ID_VALIDITY_PERIOD_ABSOLUTE= 0x0b,
- SMS_PARAM_ID_VALIDITY_PERIOD_RELATIVE= 0x0c,
- SMS_PARAM_ID_DEFERRED_DELIVERY_TIME_ABSOLUTE= 0x0d,
- SMS_PARAM_ID_DEFERRED_DELIVERY_TIME_RELATIVE= 0x0e,
- SMS_PARAM_ID_PRIORITY_INDICATOR= 0x0f,
- SMS_PARAM_ID_PRIVACY_INDICATOR= 0x10,
- SMS_PARAM_ID_REPLY_OPTION= 0x11,
- SMS_PARAM_ID_NUMBER_OF_MESSAGES= 0x12,
- SMS_PARAM_ID_ALERT_ON_MESSAGE_DELIVERY= 0x13,
- SMS_PARAM_ID_LANGUAGE_INDICATOR= 0x14,
- SMS_PARAM_ID_CALL_BACK_NUMBER= 0x15,
- SMS_PARAM_ID_DISPLAY_MODE= 0x16,
- SMS_PARAM_ID_MULTIPLE_ENCODING_USER_DATA= 0x17,
- SMS_PARAM_ID_MEMORY_INDEX= 0x18
- }SMS_PARAM_ID;
-
-
-
- typedef enum
- {
- SMS_ADDRESS_DIGIT_MODE_4BIT_DTMF= 0x00,
- SMS_ADDRESS_DIGIT_MODE_8BIT_CODE= 0x01
- }SMS_ADDRESS_DIGIT_MODE;
-
- typedef enum
- {
- SMS_ADDRESS_NUMBER_MODE_ANSI_TI_DOT_607= 0x00,
- SMS_ADDRESS_NUMBER_MODE_DATA_NETWORK= 0x01
- }SMS_ADDRESS_NUMBER_MODE;
-
- typedef unsigned char SMS_ADDRESS_NUMBER_TYPE;
-
- typedef enum
- {
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_UNKNOWN= 0x00,
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_INTERNATIONAL_NUMBER= 0x01,
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_NATIONAL_NUMBER= 0x02,
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_NETWORK_SPECIFIC_NUMBER= 0x03,
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_SUBSCRIBER_NUMBER= 0x04,
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_RESERVED= 0x05,
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_ABBREVIATED_NUMBER= 0x06,
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_RESERVED_FOR_EXTENSION= 0x07
- }SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607;
-
- typedef enum
- {
- SMS_ADDRESS_NUMBER_TYPE_DATA_NETWORK_UNKNOWN= 0x00,
- SMS_ADDRESS_NUMBER_TYPE_DATA_NETWORK_INTERNET_PROTOCOL_RFC791= 0x01,
- SMS_ADDRESS_NUMBER_TYPE_DATA_NETWORK_INTERNET_EMAIL_ADDRESS_RFC822= 0x02
- }SMS_ADDRESS_NUMBER_TYPE_DATA_NETWORK;
-
- typedef enum
- {
- SMS_ADDRESS_NUMBER_PLAN_UNKNOWN= 0x00,
- SMS_ADDRESS_NUMBER_PLAN_ISDN_TELEPHONY_NUMBERING_PLAN= 0x01,
- SMS_ADDRESS_NUMBER_PLAN_DATA_NUMBERING_PLAN= 0x02,
- SMS_ADDRESS_NUMBER_PLAN_TELEX_NUMBERING_PLAN= 0x03,
- SMS_ADDRESS_NUMBER_PLAN_PRIVATE_NUMBERING_PLAN= 0x09,
- SMS_ADDRESS_NUMBER_PLAN_RESERVED_FOR_EXTENSION= 0x0F
- }SMS_ADDRESS_NUMBER_PLAN;
-
-
- typedef enum
- {
- SMS_TELESERVICE_ID_TELESRV_CPT_95= 0x00,
- SMS_TELESERVICE_ID_TELESRV_CMT_95= 0x01,
- SMS_TELESERVICE_ID_TELESRV_VMN_95= 0x02,
- SMS_TELESERVICE_ID_TELESRV_CMT_91_CLI= 0x03,
- SMS_TELESERVICE_ID_TELESRV_CMT91_VOICE_MAIL= 0x04,
- SMS_TELESERVICE_ID_TELESRV_CMT_91_SHORT_MSG= 0x05,
- SMS_TELESERVICE_ID_TELESRV_MSG_WAITING= 0x06,
- SMS_TELESERVICE_ID_TELESRV_WAP= 0x07
- }SMS_TELESERVICE_ID;
-
- typedef enum
- {
- SMS_BROADCAST_SERVICE_CATEGORY_UNKNOWN_OR_UNSPECIFIED= 0x0000,
- SMS_BROADCAST_SERVICE_CATEGORY_EMERGENCY_BROADCASTS= 0x0001,
- SMS_BROADCAST_SERVICE_CATEGORY_ADMINISTRATIVE= 0x0002,
- SMS_BROADCAST_SERVICE_CATEGORY_MAINTENANCE= 0x0003,
- SMS_BROADCAST_SERVICE_CATEGORY_GENERAL_NEWS_LOCAL= 0x0004,
- SMS_BROADCAST_SERVICE_CATEGORY_GENERAL_NEWS_REGIONAL= 0x0005,
- SMS_BROADCAST_SERVICE_CATEGORY_GENERAL_NEWS_NATIONAL= 0x0006,
- SMS_BROADCAST_SERVICE_CATEGORY_GENERAL_NEWS_INTERNATIONAL= 0x0007,
- SMS_BROADCAST_SERVICE_CATEGORY_BUSINESS_FINANCIAL_NEWS_LOCAL= 0x0008,
- SMS_BROADCAST_SERVICE_CATEGORY_BUSINESS_FINANCIAL_NEWS_REGIONAL= 0x0009,
- SMS_BROADCAST_SERVICE_CATEGORY_BUSINESS_FINANCIAL_NEWS_NATIONAL= 0x000A,
- SMS_BROADCAST_SERVICE_CATEGORY_BUSINESS_FINANCIAL_NEWS_INTERNATIONAL= 0x000B,
- SMS_BROADCAST_SERVICE_CATEGORY_SPORTS_NEWS_LOCAL= 0x000C,
- SMS_BROADCAST_SERVICE_CATEGORY_SPORTS_NEWS_REGIONAL= 0x000D,
- SMS_BROADCAST_SERVICE_CATEGORY_SPORTS_NEWS_NATIONAL= 0x000E,
- SMS_BROADCAST_SERVICE_CATEGORY_SPORTS_NEWS_INTERNATIONAL= 0x000F,
- SMS_BROADCAST_SERVICE_CATEGORY_ENTERTAINMENT_NEWS_LOCAL= 0x0010,
- SMS_BROADCAST_SERVICE_CATEGORY_ENTERTAINMENT_NEWS_REGIONAL= 0x0011,
- SMS_BROADCAST_SERVICE_CATEGORY_ENTERTAINMENT_NEWS_NATIONAL= 0x0012,
- SMS_BROADCAST_SERVICE_CATEGORY_ENTERTAINMENT_NEWS_INTERNATIONAL= 0x0013,
- SMS_BROADCAST_SERVICE_CATEGORY_LOCAL_WEATHER= 0x0014,
- SMS_BROADCAST_SERVICE_CATEGORY_AREA_TRAFFIC_REPORTS= 0x0015,
- SMS_BROADCAST_SERVICE_CATEGORY_LOCAL_AIRPORT_FLIGHT_SCHEDULES= 0x0016,
- SMS_BROADCAST_SERVICE_CATEGORY_RESTAURANTS= 0x0017,
- SMS_BROADCAST_SERVICE_CATEGORY_LODGINGS= 0x0018,
- SMS_BROADCAST_SERVICE_CATEGORY_RETAIL_DIRECTORY= 0x0019,
- SMS_BROADCAST_SERVICE_CATEGORY_ADVERTISEMENTS= 0x001A,
- SMS_BROADCAST_SERVICE_CATEGORY_STOCK_QUOTES= 0x001B,
- SMS_BROADCAST_SERVICE_CATEGORY_EMPLOYMENT_OPPORTUNITIES= 0x001C,
- SMS_BROADCAST_SERVICE_CATEGORY_MEDICAL_HEALTH_HOSPITALS= 0x001D,
- SMS_BROADCAST_SERVICE_CATEGORY_TECHNOLOGY_NEWS= 0x001E,
- SMS_BROADCAST_SERVICE_CATEGORY_MULTI_CATEGORY= 0x001F
- }SMS_BROADCAST_SERVICE_CATEGORY_CATEGORY;
-
-
- typedef enum
- {
- SMS_SUBADDRESS_TYPE_NSAP= 0x00,
- SMS_SUBADDRESS_TYPE_USER_SPECIFIED= 0x01
- }SMS_SUBADDRESS_TYPE;
-
-
- typedef enum
- {
- SMS_CAUSE_CODES_ERROR_CLASS_NONE_ERROR= 0x00,
- SMS_CAUSE_CODES_ERROR_CLASS_TEMPORARY_ERROR= 0x02,
- SMS_CAUSE_CODES_ERROR_CLASS_PERMANENT_ERROR= 0x03,
- SMS_CAUSE_CODES_ERROR_CLASS_PHONE_INTERNAL_STATUS= 0x04
- }SMS_CAUSE_CODES_ERROR_CLASS;
-
- typedef unsigned char SMS_CAUSE_CODE_CAUSE_CODE;
-
- typedef enum
- {
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_ADDRESS_VACANT= 0,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_ADDRESS_TRANSLATION_FAILURE= 1,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_NETWORK_RESOURCE_SHORTAGE= 2,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_NETWORK_FAILURE= 3,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_INVALID_TELESERVICE_ID= 4,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_NETWORK_PROBLEM= 5,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_NETWORK_PROBLEM_MORE_FIRST= 6,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_NETWORK_PROBLEM_MORE_LAST= 31,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_NO_PAGE_RESPONSE= 32,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_DESTINATION_BUSY= 33,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_NO_ACK= 34,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_DESTINATION_RESOURCE_SHORTAGE= 35,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_SMS_DELIVERY_POSTPONED= 36,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_DESTINATION_OUT_OF_SERVICE= 37,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_DESTINATION_NO_LONGER_AT_THIS_ADDRESS= 38,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_TERMINAL_PROBLEM= 39,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_TERMINAL_PROBLEM_MORE_FIRST= 40,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_TERMINAL_PROBLEM_MORE_LAST= 47,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_SMS_DELIVERY_POSTPONED_MORE_FIRST= 48,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_SMS_DELIVERY_POSTPONED_MORE_LAST= 63,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_RADIO_IF_RESOURCE_SHORTAGE= 64,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_RADIO_IF_INCOMPATIBLE= 65,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_RADIO_IF_PROBLEM= 66,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_RADIO_IF_PROBLEM_MORE_FIRST= 67,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_RADIO_IF_PROBLEM_MORE_LAST= 95,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_UNEXPECTED_PARM_SIZE_S= 96,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_SMS_ORIGINATION_DENIED= 97,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_SMS_TERMINATION_DENIED= 98,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_SUPPLMENTARY_SERVICE_NOT_SUPPORTED= 99,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_SMS_NOT_SUPPORTED= 100,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_RESERVED_101= 101,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_MISSING_EXPECTED_PARM= 102,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_MISSING_MANDATORY_PARM= 103,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_UNRECOGNIZED_PARM_VALUE= 104,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_UNEXPECTED_PARM_VALUE= 105,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_USER_DATA_SIZE_ERROR= 106,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_GENERAL_PROBLEMS= 107,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_GENERAL_PROBLEMS_MORE_FIRST= 108,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_GENERAL_PROBLEMS_MORE_LAST= 255
- }SMS_CAUSE_CODE_CAUSE_CODE_NETWORK;
-
- typedef enum
- {
- // 0x00 : layer 2 acknowledgment received
- // 0x02 : SMS transmission failed because a transmission time is expired
- // or phone internal error occurred during the SMS transmission
-
- SMS_CAUSE_CODE_CAUSE_CODE_INTERNAL_STATUS_L2ACK_RCVD= 0x00,
- SMS_CAUSE_CODE_CAUSE_CODE_INTERNAL_STATUS_FAIL= 0x01,
- SMS_CAUSE_CODE_CAUSE_CODE_INTERNAL_STATUS_FAIL_NO_SVC= 0x02,
- SMS_CAUSE_CODE_CAUSE_CODE_INTERNAL_STATUS_FAIL_PHONE_BUSY= 0x03,
- SMS_CAUSE_CODE_CAUSE_CODE_INTERNAL_STATUS_FAIL_OTHER= 0x04
- }SMS_CAUSE_CODE_CAUSE_CODE_INTERNAL;
-
-
-
- typedef enum
- {
- SMS_MESSAGE_TYPE_RESERVED= 0x00,
- SMS_MESSAGE_TYPE_SMS_DELIVER_MESSAGE= 0x01,
- SMS_MESSAGE_TYPE_SMS_SUBMIT_MESSAGE= 0x02,
- SMS_MESSAGE_TYPE_SMS_CANCELLATION_MESSAGE= 0x03,
- SMS_MESSAGE_TYPE_SMS_DELIVERY_ACKNOWLEDGMENT_MESSAGE= 0x04,
- SMS_MESSAGE_TYPE_SMS_USER_ACKNOWLEDGMENT_MESSAGE= 0x05,
- SMS_MESSAGE_TYPE_ALL_MESSAGE= 0x0F
- }SMS_MESSAGE_TYPE;
-
-
-
- typedef enum
- {
- SMS_USER_DATA_MSG_ENCODING_OCTET= 0x00,
- SMS_USER_DATA_MSG_ENCODING_IS_91_EXTENDED_PROTOCOL= 0x01,
- SMS_USER_DATA_MSG_ENCODING_7BIT_ASCII= 0x02,
- SMS_USER_DATA_MSG_ENCODING_IA5= 0x03,
- SMS_USER_DATA_MSG_ENCODING_UNICODE= 0x04,
- SMS_USER_DATA_MSG_ENCODING_SHIFT_JIS= 0x05,
- SMS_USER_DATA_MSG_ENCODING_KSC5601= 0x06,
- SMS_USER_DATA_MSG_ENCODING_ISO_8859_8= 0x07,
- SMS_USER_DATA_MSG_ENCODING_ISO_8859_1= 0x08,
- SMS_USER_DATA_MSG_ENCODING_KSC5601_KOREAN= 0x10
- }SMS_USER_DATA_MSG_ENCODING;
-
-
- typedef enum
- {
- SMS_PRIORITY_INDICATOR_NORMAL= 0x00,
- SMS_PRIORITY_INDICATOR_INTERACTIVE= 0x01,
- SMS_PRIORITY_INDICATOR_URGENT= 0x02,
- SMS_PRIORITY_INDICATOR_EMERGENCY= 0x03
- }SMS_PRIORITY_INDICATOR_PRIORITY;
-
-
-
- typedef enum
- {
- SMS_PRIVACY_INDICATOR_NOT_RESTRICTED= 0x00,
- SMS_PRIVACY_INDICATOR_RESTRICTED= 0x01,
- SMS_PRIVACY_INDICATOR_CONFIDENTIAL= 0x02,
- SMS_PRIVACY_INDICATOR_SECRET= 0x03
- }SMS_PRIVACY_INDICATOR_PRIVACY;
-
-
-
- typedef enum
- {
- SMS_ALERT_MESSAGE_DELIVERY_ALERT_PRIORITY_MOBILE_DEFAULT_ALERT= 0x00,
- SMS_ALERT_MESSAGE_DELIVERY_ALERT_PRIORITY_LOW_PRIORITY_ALERT= 0x01,
- SMS_ALERT_MESSAGE_DELIVERY_ALERT_PRIORITY_MEDIUM_PRIORITY_ALERT= 0x02,
- SMS_ALERT_MESSAGE_DELIVERY_ALERT_PRIORITY_HIGH_PRIORITY_ALERT= 0x03
- }SMS_ALERT_MESSAGE_DELIVERY_ALERT_PRIORITY;
-
-
-
- typedef enum
- {
- SMS_LANGUAGE_INDICATOR_LANGUAGE_UNKNOWN= 0x00,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_ENGLISH= 0x01,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_FRENCH= 0x02,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_SPANISH= 0x03,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_JAPANESE= 0x04,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_KOREAN= 0x05,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_CHINESE= 0x06,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_HEBREW= 0x07,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_KOREAN_1= 0x40,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_KOREAN_SKT= 0xFE
- }SMS_LANGUAGE_INDICATOR_LANGUAGE;
-
-
-
- typedef enum
- {
- SMS_MESSAGE_DISPLAY_MODE_IMMEDIATE_DISPLAY= 0x00,
- SMS_MESSAGE_DISPLAY_MODE_MOBILE_DEFAULT_SETTING= 0x01,
- SMS_MESSAGE_DISPLAY_MODE_USER_INVOKE= 0x03,
- SMS_MESSAGE_DISPLAY_MODE_RESERVED= 0x04
- }SMS_MESSAGE_DISPLAY_MODE;
-
-
-
-
-
-
- // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++global variable area
-
- // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++function prototype
-
-
-
-#ifdef __cplusplus
-}
-#endif
-
-
-#endif // _LXTSMSTYPEDEF_H_
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#if 0
-
-#ifndef _SAMSUNGTAPI_H_
-#define _SAMSUNGTAPI_H_
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
- // ++++++++++++++++++++++++++++++++++++++++++++++include about standard library
-
- // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++include about qt
-
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++include user define
-#include "linuxtapi.h"
-#include "phoneprotocol.h"
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++define area
-
- typedef enum
- {
- SAMSUNG_SERVICE_MODE_MANUAL_TEST = 0x01,
- SAMSUNG_SERVICE_MODE_NAM_EDITING = 0x02,
- SAMSUNG_SERVICE_MODE_DEBUG = 0x03,
- SAMSUNG_SERVICE_MODE_AUTO_TEST = 0x04,
- SAMSUNG_SERVICE_MODE_BASIC_NAM_EDITING = 0x05,
- SAMSUNG_SERVICE_MODE_PHONE_TEST = 0x06
- }
- SAMSUNG_SERVICE_MODE;
-
- /*
- typedef enum
- {
- SAMSUNG_DEFAULT_CONFIGURATION_MODE_WARM = 0x00,
- SAMSUNG_DEFAULT_CONFIGURATION_MODE_COOL = 0x01,
- SAMSUNG_DEFAULT_CONFIGURATION_MODE_COLD = 0x02
- }
- SAMSUNG_DEFAULT_CONFIGURATION_MODE;
-
-
- typedef enum
- {
- SAMSUNG_SIOMODE_BAUDRATE_38400 = 0x00,
- SAMSUNG_SIOMODE_BAUDRATE_57600 = 0x01,
- SAMSUNG_SIOMODE_BAUDRATE_115200 = 0x02
- }
- SAMSUNG_SIOMODE_BAUDRATE;
-
- typedef enum
- {
- SAMSUNG_SIOMODE_SLOT_MODE_ON = 0x00,
- SAMSUNG_SIOMODE_SLOT_MODE_NON = 0x01
-
- } SAMSUNG_SIOMODE_SLOT_MODE;
-
- typedef enum
- {
- SAMSUNG_SIOMODE_VOICE_OP_8K = 0x00,
- SAMSUNG_SIOMODE_VOICE_OP_EVRC = 0x01,
- SAMSUNG_SIOMODE_VOICE_OP_13K = 0x02,
- SAMSUNG_SIOMODE_VOICE_OP_DEFAULT = 0x03
- }
- SAMSUNG_SIOMODE_VOICE_OP;
-
- typedef enum
- {
- SAMSUNG_SIOMODE_MODE_HFK = 0x00,
- SAMSUNG_SIOMODE_MODE_DIAG = 0x01
-
- } SAMSUNG_SIOMODE_MODE;
-
- typedef enum
- {
- SAMSUNG_FACTORY_MODE_DISABLED = 0x00,
- SAMSUNG_FACTORY_MODE_ENABLED = 0x01
- }
- SAMSUNG_FACTORY_MODE;
- */
-
-
- // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++global variable area
- int samsung_servicemode_enterServiceMode(LXT_HANDLE* handle, SAMSUNG_SERVICE_MODE mode);
- int samsung_servicemode_endServiceMode(LXT_HANDLE* handle);
- int samsung_servicemode_processKeyCode(LXT_HANDLE* handle, char ascii);
-
- /*
- int samsung_servicemode_factoryModeEnable(LXT_HANDLE* handle, SAMSUNG_FACTORY_MODE enable);
-
- int samsung_configuration_setDefaultConfiguration(LXT_HANDLE* handle, SAMSUNG_DEFAULT_CONFIGURATION_MODE mode);
- int samsung_siomode_getSIOBaudRate(LXT_HANDLE* handle);
- int samsung_siomode_setSIOBaudRate(LXT_HANDLE* handle, SAMSUNG_SIOMODE_BAUDRATE baud_rate);
- int samsung_siomode_getSlotMode(LXT_HANDLE* handle);
- int samsung_siomode_setSlotMode(LXT_HANDLE* handle, SAMSUNG_SIOMODE_SLOT_MODE slot_mode);
- int samsung_siomode_getVoiceOp(LXT_HANDLE* handle);
- int samsung_siomode_setVoiceOp(LXT_HANDLE* handle, SAMSUNG_SIOMODE_VOICE_OP voice_op);
- int samsung_siomode_getSIOMode(LXT_HANDLE* handle);
- int samsung_siomode_setSIOMode(LXT_HANDLE* handle, SAMSUNG_SIOMODE_MODE sio_mode);
- int samsung_siomode_setLifeTimeClear(LXT_HANDLE* handle);
- */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif // _SAMSUNGTAPI_H_
-
-#endif // if 0
-
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-/*
-** 2001 September 15
-**
-** The author disclaims copyright to this source code. In place of
-** a legal notice, here is a blessing:
-**
-** May you do good and not evil.
-** May you find forgiveness for yourself and forgive others.
-** May you share freely, never taking more than you give.
-**
-*************************************************************************
-** This header file defines the interface that the SQLite library
-** presents to client programs.
-**
-** @(#) $Id: sqlite3.h,v 1.1.1.1 2008-12-08 04:45:34 okdear Exp $
-*/
-#ifndef _SQLITE3_H_
-#define _SQLITE3_H_
-#include <stdarg.h> /* Needed for the definition of va_list */
-
-/*
-** Make sure we can call this stuff from C++.
-*/
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
-** The version of the SQLite library.
-*/
-#ifdef SQLITE_VERSION
-# undef SQLITE_VERSION
-#endif
-#define SQLITE_VERSION "3.3.7"
-
-/*
-** The format of the version string is "X.Y.Z<trailing string>", where
-** X is the major version number, Y is the minor version number and Z
-** is the release number. The trailing string is often "alpha" or "beta".
-** For example "3.1.1beta".
-**
-** The SQLITE_VERSION_NUMBER is an integer with the value
-** (X*100000 + Y*1000 + Z). For example, for version "3.1.1beta",
-** SQLITE_VERSION_NUMBER is set to 3001001. To detect if they are using
-** version 3.1.1 or greater at compile time, programs may use the test
-** (SQLITE_VERSION_NUMBER>=3001001).
-*/
-#ifdef SQLITE_VERSION_NUMBER
-# undef SQLITE_VERSION_NUMBER
-#endif
-#define SQLITE_VERSION_NUMBER 3003007
-
-/*
-** The version string is also compiled into the library so that a program
-** can check to make sure that the lib*.a file and the *.h file are from
-** the same version. The sqlite3_libversion() function returns a pointer
-** to the sqlite3_version variable - useful in DLLs which cannot access
-** global variables.
-*/
-extern const char sqlite3_version[];
-const char *sqlite3_libversion(void);
-
-/*
-** Return the value of the SQLITE_VERSION_NUMBER macro when the
-** library was compiled.
-*/
-int sqlite3_libversion_number(void);
-
-/*
-** Each open sqlite database is represented by an instance of the
-** following opaque structure.
-*/
-typedef struct sqlite3 sqlite3;
-
-
-/*
-** Some compilers do not support the "long long" datatype. So we have
-** to do a typedef that for 64-bit integers that depends on what compiler
-** is being used.
-*/
-#ifdef SQLITE_INT64_TYPE
- typedef SQLITE_INT64_TYPE sqlite_int64;
- typedef unsigned SQLITE_INT64_TYPE sqlite_uint64;
-#elif defined(_MSC_VER) || defined(__BORLANDC__)
- typedef __int64 sqlite_int64;
- typedef unsigned __int64 sqlite_uint64;
-#else
- typedef long long int sqlite_int64;
- typedef unsigned long long int sqlite_uint64;
-#endif
-
-/*
-** If compiling for a processor that lacks floating point support,
-** substitute integer for floating-point
-*/
-#ifdef SQLITE_OMIT_FLOATING_POINT
-# define double sqlite_int64
-#endif
-
-/*
-** A function to close the database.
-**
-** Call this function with a pointer to a structure that was previously
-** returned from sqlite3_open() and the corresponding database will by closed.
-**
-** All SQL statements prepared using sqlite3_prepare() or
-** sqlite3_prepare16() must be deallocated using sqlite3_finalize() before
-** this routine is called. Otherwise, SQLITE_BUSY is returned and the
-** database connection remains open.
-*/
-int sqlite3_close(sqlite3 *);
-
-/*
-** The type for a callback function.
-*/
-typedef int (*sqlite3_callback)(void*,int,char**, char**);
-
-/*
-** A function to executes one or more statements of SQL.
-**
-** If one or more of the SQL statements are queries, then
-** the callback function specified by the 3rd parameter is
-** invoked once for each row of the query result. This callback
-** should normally return 0. If the callback returns a non-zero
-** value then the query is aborted, all subsequent SQL statements
-** are skipped and the sqlite3_exec() function returns the SQLITE_ABORT.
-**
-** The 4th parameter is an arbitrary pointer that is passed
-** to the callback function as its first parameter.
-**
-** The 2nd parameter to the callback function is the number of
-** columns in the query result. The 3rd parameter to the callback
-** is an array of strings holding the values for each column.
-** The 4th parameter to the callback is an array of strings holding
-** the names of each column.
-**
-** The callback function may be NULL, even for queries. A NULL
-** callback is not an error. It just means that no callback
-** will be invoked.
-**
-** If an error occurs while parsing or evaluating the SQL (but
-** not while executing the callback) then an appropriate error
-** message is written into memory obtained from malloc() and
-** *errmsg is made to point to that message. The calling function
-** is responsible for freeing the memory that holds the error
-** message. Use sqlite3_free() for this. If errmsg==NULL,
-** then no error message is ever written.
-**
-** The return value is is SQLITE_OK if there are no errors and
-** some other return code if there is an error. The particular
-** return value depends on the type of error.
-**
-** If the query could not be executed because a database file is
-** locked or busy, then this function returns SQLITE_BUSY. (This
-** behavior can be modified somewhat using the sqlite3_busy_handler()
-** and sqlite3_busy_timeout() functions below.)
-*/
-int sqlite3_exec(
- sqlite3*, /* An open database */
- const char *sql, /* SQL to be executed */
- sqlite3_callback, /* Callback function */
- void *, /* 1st argument to callback function */
- char **errmsg /* Error msg written here */
-);
-
-/*
-** Return values for sqlite3_exec() and sqlite3_step()
-*/
-#define SQLITE_OK 0 /* Successful result */
-/* beginning-of-error-codes */
-#define SQLITE_ERROR 1 /* SQL error or missing database */
-#define SQLITE_INTERNAL 2 /* NOT USED. Internal logic error in SQLite */
-#define SQLITE_PERM 3 /* Access permission denied */
-#define SQLITE_ABORT 4 /* Callback routine requested an abort */
-#define SQLITE_BUSY 5 /* The database file is locked */
-#define SQLITE_LOCKED 6 /* A table in the database is locked */
-#define SQLITE_NOMEM 7 /* A malloc() failed */
-#define SQLITE_READONLY 8 /* Attempt to write a readonly database */
-#define SQLITE_INTERRUPT 9 /* Operation terminated by sqlite3_interrupt()*/
-#define SQLITE_IOERR 10 /* Some kind of disk I/O error occurred */
-#define SQLITE_CORRUPT 11 /* The database disk image is malformed */
-#define SQLITE_NOTFOUND 12 /* NOT USED. Table or record not found */
-#define SQLITE_FULL 13 /* Insertion failed because database is full */
-#define SQLITE_CANTOPEN 14 /* Unable to open the database file */
-#define SQLITE_PROTOCOL 15 /* Database lock protocol error */
-#define SQLITE_EMPTY 16 /* Database is empty */
-#define SQLITE_SCHEMA 17 /* The database schema changed */
-#define SQLITE_TOOBIG 18 /* NOT USED. Too much data for one row */
-#define SQLITE_CONSTRAINT 19 /* Abort due to contraint violation */
-#define SQLITE_MISMATCH 20 /* Data type mismatch */
-#define SQLITE_MISUSE 21 /* Library used incorrectly */
-#define SQLITE_NOLFS 22 /* Uses OS features not supported on host */
-#define SQLITE_AUTH 23 /* Authorization denied */
-#define SQLITE_FORMAT 24 /* Auxiliary database format error */
-#define SQLITE_RANGE 25 /* 2nd parameter to sqlite3_bind out of range */
-#define SQLITE_NOTADB 26 /* File opened that is not a database file */
-#define SQLITE_ROW 100 /* sqlite3_step() has another row ready */
-#define SQLITE_DONE 101 /* sqlite3_step() has finished executing */
-/* end-of-error-codes */
-
-/*
-** Each entry in an SQLite table has a unique integer key. (The key is
-** the value of the INTEGER PRIMARY KEY column if there is such a column,
-** otherwise the key is generated at random. The unique key is always
-** available as the ROWID, OID, or _ROWID_ column.) The following routine
-** returns the integer key of the most recent insert in the database.
-**
-** This function is similar to the mysql_insert_id() function from MySQL.
-*/
-sqlite_int64 sqlite3_last_insert_rowid(sqlite3*);
-
-/*
-** This function returns the number of database rows that were changed
-** (or inserted or deleted) by the most recent called sqlite3_exec().
-**
-** All changes are counted, even if they were later undone by a
-** ROLLBACK or ABORT. Except, changes associated with creating and
-** dropping tables are not counted.
-**
-** If a callback invokes sqlite3_exec() recursively, then the changes
-** in the inner, recursive call are counted together with the changes
-** in the outer call.
-**
-** SQLite implements the command "DELETE FROM table" without a WHERE clause
-** by dropping and recreating the table. (This is much faster than going
-** through and deleting individual elements form the table.) Because of
-** this optimization, the change count for "DELETE FROM table" will be
-** zero regardless of the number of elements that were originally in the
-** table. To get an accurate count of the number of rows deleted, use
-** "DELETE FROM table WHERE 1" instead.
-*/
-int sqlite3_changes(sqlite3*);
-
-/*
-** This function returns the number of database rows that have been
-** modified by INSERT, UPDATE or DELETE statements since the database handle
-** was opened. This includes UPDATE, INSERT and DELETE statements executed
-** as part of trigger programs. All changes are counted as soon as the
-** statement that makes them is completed (when the statement handle is
-** passed to sqlite3_reset() or sqlite_finalise()).
-**
-** SQLite implements the command "DELETE FROM table" without a WHERE clause
-** by dropping and recreating the table. (This is much faster than going
-** through and deleting individual elements form the table.) Because of
-** this optimization, the change count for "DELETE FROM table" will be
-** zero regardless of the number of elements that were originally in the
-** table. To get an accurate count of the number of rows deleted, use
-** "DELETE FROM table WHERE 1" instead.
-*/
-int sqlite3_total_changes(sqlite3*);
-
-/* This function causes any pending database operation to abort and
-** return at its earliest opportunity. This routine is typically
-** called in response to a user action such as pressing "Cancel"
-** or Ctrl-C where the user wants a long query operation to halt
-** immediately.
-*/
-void sqlite3_interrupt(sqlite3*);
-
-
-/* These functions return true if the given input string comprises
-** one or more complete SQL statements. For the sqlite3_complete() call,
-** the parameter must be a nul-terminated UTF-8 string. For
-** sqlite3_complete16(), a nul-terminated machine byte order UTF-16 string
-** is required.
-**
-** The algorithm is simple. If the last token other than spaces
-** and comments is a semicolon, then return true. otherwise return
-** false.
-*/
-int sqlite3_complete(const char *sql);
-int sqlite3_complete16(const void *sql);
-
-/*
-** This routine identifies a callback function that is invoked
-** whenever an attempt is made to open a database table that is
-** currently locked by another process or thread. If the busy callback
-** is NULL, then sqlite3_exec() returns SQLITE_BUSY immediately if
-** it finds a locked table. If the busy callback is not NULL, then
-** sqlite3_exec() invokes the callback with three arguments. The
-** second argument is the name of the locked table and the third
-** argument is the number of times the table has been busy. If the
-** busy callback returns 0, then sqlite3_exec() immediately returns
-** SQLITE_BUSY. If the callback returns non-zero, then sqlite3_exec()
-** tries to open the table again and the cycle repeats.
-**
-** The default busy callback is NULL.
-**
-** Sqlite is re-entrant, so the busy handler may start a new query.
-** (It is not clear why anyone would every want to do this, but it
-** is allowed, in theory.) But the busy handler may not close the
-** database. Closing the database from a busy handler will delete
-** data structures out from under the executing query and will
-** probably result in a coredump.
-*/
-int sqlite3_busy_handler(sqlite3*, int(*)(void*,int), void*);
-
-/*
-** This routine sets a busy handler that sleeps for a while when a
-** table is locked. The handler will sleep multiple times until
-** at least "ms" milleseconds of sleeping have been done. After
-** "ms" milleseconds of sleeping, the handler returns 0 which
-** causes sqlite3_exec() to return SQLITE_BUSY.
-**
-** Calling this routine with an argument less than or equal to zero
-** turns off all busy handlers.
-*/
-int sqlite3_busy_timeout(sqlite3*, int ms);
-
-/*
-** This next routine is really just a wrapper around sqlite3_exec().
-** Instead of invoking a user-supplied callback for each row of the
-** result, this routine remembers each row of the result in memory
-** obtained from malloc(), then returns all of the result after the
-** query has finished.
-**
-** As an example, suppose the query result where this table:
-**
-** Name | Age
-** -----------------------
-** Alice | 43
-** Bob | 28
-** Cindy | 21
-**
-** If the 3rd argument were &azResult then after the function returns
-** azResult will contain the following data:
-**
-** azResult[0] = "Name";
-** azResult[1] = "Age";
-** azResult[2] = "Alice";
-** azResult[3] = "43";
-** azResult[4] = "Bob";
-** azResult[5] = "28";
-** azResult[6] = "Cindy";
-** azResult[7] = "21";
-**
-** Notice that there is an extra row of data containing the column
-** headers. But the *nrow return value is still 3. *ncolumn is
-** set to 2. In general, the number of values inserted into azResult
-** will be ((*nrow) + 1)*(*ncolumn).
-**
-** After the calling function has finished using the result, it should
-** pass the result data pointer to sqlite3_free_table() in order to
-** release the memory that was malloc-ed. Because of the way the
-** malloc() happens, the calling function must not try to call
-** free() directly. Only sqlite3_free_table() is able to release
-** the memory properly and safely.
-**
-** The return value of this routine is the same as from sqlite3_exec().
-*/
-int sqlite3_get_table(
- sqlite3*, /* An open database */
- const char *sql, /* SQL to be executed */
- char ***resultp, /* Result written to a char *[] that this points to */
- int *nrow, /* Number of result rows written here */
- int *ncolumn, /* Number of result columns written here */
- char **errmsg /* Error msg written here */
-);
-
-/*
-** Call this routine to free the memory that sqlite3_get_table() allocated.
-*/
-void sqlite3_free_table(char **result);
-
-/*
-** The following routines are variants of the "sprintf()" from the
-** standard C library. The resulting string is written into memory
-** obtained from malloc() so that there is never a possiblity of buffer
-** overflow. These routines also implement some additional formatting
-** options that are useful for constructing SQL statements.
-**
-** The strings returned by these routines should be freed by calling
-** sqlite3_free().
-**
-** All of the usual printf formatting options apply. In addition, there
-** is a "%q" option. %q works like %s in that it substitutes a null-terminated
-** string from the argument list. But %q also doubles every '\'' character.
-** %q is designed for use inside a string literal. By doubling each '\''
-** character it escapes that character and allows it to be inserted into
-** the string.
-**
-** For example, so some string variable contains text as follows:
-**
-** char *zText = "It's a happy day!";
-**
-** We can use this text in an SQL statement as follows:
-**
-** char *z = sqlite3_mprintf("INSERT INTO TABLES('%q')", zText);
-** sqlite3_exec(db, z, callback1, 0, 0);
-** sqlite3_free(z);
-**
-** Because the %q format string is used, the '\'' character in zText
-** is escaped and the SQL generated is as follows:
-**
-** INSERT INTO table1 VALUES('It''s a happy day!')
-**
-** This is correct. Had we used %s instead of %q, the generated SQL
-** would have looked like this:
-**
-** INSERT INTO table1 VALUES('It's a happy day!');
-**
-** This second example is an SQL syntax error. As a general rule you
-** should always use %q instead of %s when inserting text into a string
-** literal.
-*/
-char *sqlite3_mprintf(const char*,...);
-char *sqlite3_vmprintf(const char*, va_list);
-char *sqlite3_snprintf(int,char*,const char*, ...);
-
-/*
-** SQLite uses its own memory allocator. On many installations, this
-** memory allocator is identical to the standard malloc()/realloc()/free()
-** and can be used interchangable. On others, the implementations are
-** different. For maximum portability, it is best not to mix calls
-** to the standard malloc/realloc/free with the sqlite versions.
-*/
-void *sqlite3_malloc(int);
-void *sqlite3_realloc(void*, int);
-void sqlite3_free(void*);
-
-#ifndef SQLITE_OMIT_AUTHORIZATION
-/*
-** This routine registers a callback with the SQLite library. The
-** callback is invoked (at compile-time, not at run-time) for each
-** attempt to access a column of a table in the database. The callback
-** returns SQLITE_OK if access is allowed, SQLITE_DENY if the entire
-** SQL statement should be aborted with an error and SQLITE_IGNORE
-** if the column should be treated as a NULL value.
-*/
-int sqlite3_set_authorizer(
- sqlite3*,
- int (*xAuth)(void*,int,const char*,const char*,const char*,const char*),
- void *pUserData
-);
-#endif
-
-/*
-** The second parameter to the access authorization function above will
-** be one of the values below. These values signify what kind of operation
-** is to be authorized. The 3rd and 4th parameters to the authorization
-** function will be parameters or NULL depending on which of the following
-** codes is used as the second parameter. The 5th parameter is the name
-** of the database ("main", "temp", etc.) if applicable. The 6th parameter
-** is the name of the inner-most trigger or view that is responsible for
-** the access attempt or NULL if this access attempt is directly from
-** input SQL code.
-**
-** Arg-3 Arg-4
-*/
-#define SQLITE_COPY 0 /* Table Name File Name */
-#define SQLITE_CREATE_INDEX 1 /* Index Name Table Name */
-#define SQLITE_CREATE_TABLE 2 /* Table Name NULL */
-#define SQLITE_CREATE_TEMP_INDEX 3 /* Index Name Table Name */
-#define SQLITE_CREATE_TEMP_TABLE 4 /* Table Name NULL */
-#define SQLITE_CREATE_TEMP_TRIGGER 5 /* Trigger Name Table Name */
-#define SQLITE_CREATE_TEMP_VIEW 6 /* View Name NULL */
-#define SQLITE_CREATE_TRIGGER 7 /* Trigger Name Table Name */
-#define SQLITE_CREATE_VIEW 8 /* View Name NULL */
-#define SQLITE_DELETE 9 /* Table Name NULL */
-#define SQLITE_DROP_INDEX 10 /* Index Name Table Name */
-#define SQLITE_DROP_TABLE 11 /* Table Name NULL */
-#define SQLITE_DROP_TEMP_INDEX 12 /* Index Name Table Name */
-#define SQLITE_DROP_TEMP_TABLE 13 /* Table Name NULL */
-#define SQLITE_DROP_TEMP_TRIGGER 14 /* Trigger Name Table Name */
-#define SQLITE_DROP_TEMP_VIEW 15 /* View Name NULL */
-#define SQLITE_DROP_TRIGGER 16 /* Trigger Name Table Name */
-#define SQLITE_DROP_VIEW 17 /* View Name NULL */
-#define SQLITE_INSERT 18 /* Table Name NULL */
-#define SQLITE_PRAGMA 19 /* Pragma Name 1st arg or NULL */
-#define SQLITE_READ 20 /* Table Name Column Name */
-#define SQLITE_SELECT 21 /* NULL NULL */
-#define SQLITE_TRANSACTION 22 /* NULL NULL */
-#define SQLITE_UPDATE 23 /* Table Name Column Name */
-#define SQLITE_ATTACH 24 /* Filename NULL */
-#define SQLITE_DETACH 25 /* Database Name NULL */
-#define SQLITE_ALTER_TABLE 26 /* Database Name Table Name */
-#define SQLITE_REINDEX 27 /* Index Name NULL */
-#define SQLITE_ANALYZE 28 /* Table Name NULL */
-#define SQLITE_CREATE_VTABLE 29 /* Table Name Module Name */
-#define SQLITE_DROP_VTABLE 30 /* Table Name Module Name */
-
-/*
-** The return value of the authorization function should be one of the
-** following constants:
-*/
-/* #define SQLITE_OK 0 // Allow access (This is actually defined above) */
-#define SQLITE_DENY 1 /* Abort the SQL statement with an error */
-#define SQLITE_IGNORE 2 /* Don't allow access, but don't generate an error */
-
-/*
-** Register a function for tracing SQL command evaluation. The function
-** registered by sqlite3_trace() is invoked at the first sqlite3_step()
-** for the evaluation of an SQL statement. The function registered by
-** sqlite3_profile() runs at the end of each SQL statement and includes
-** information on how long that statement ran.
-**
-** The sqlite3_profile() API is currently considered experimental and
-** is subject to change.
-*/
-void *sqlite3_trace(sqlite3*, void(*xTrace)(void*,const char*), void*);
-void *sqlite3_profile(sqlite3*,
- void(*xProfile)(void*,const char*,sqlite_uint64), void*);
-
-/*
-** This routine configures a callback function - the progress callback - that
-** is invoked periodically during long running calls to sqlite3_exec(),
-** sqlite3_step() and sqlite3_get_table(). An example use for this API is to
-** keep a GUI updated during a large query.
-**
-** The progress callback is invoked once for every N virtual machine opcodes,
-** where N is the second argument to this function. The progress callback
-** itself is identified by the third argument to this function. The fourth
-** argument to this function is a void pointer passed to the progress callback
-** function each time it is invoked.
-**
-** If a call to sqlite3_exec(), sqlite3_step() or sqlite3_get_table() results
-** in less than N opcodes being executed, then the progress callback is not
-** invoked.
-**
-** To remove the progress callback altogether, pass NULL as the third
-** argument to this function.
-**
-** If the progress callback returns a result other than 0, then the current
-** query is immediately terminated and any database changes rolled back. If the
-** query was part of a larger transaction, then the transaction is not rolled
-** back and remains active. The sqlite3_exec() call returns SQLITE_ABORT.
-**
-******* THIS IS AN EXPERIMENTAL API AND IS SUBJECT TO CHANGE ******
-*/
-void sqlite3_progress_handler(sqlite3*, int, int(*)(void*), void*);
-
-/*
-** Register a callback function to be invoked whenever a new transaction
-** is committed. The pArg argument is passed through to the callback.
-** callback. If the callback function returns non-zero, then the commit
-** is converted into a rollback.
-**
-** If another function was previously registered, its pArg value is returned.
-** Otherwise NULL is returned.
-**
-** Registering a NULL function disables the callback.
-**
-******* THIS IS AN EXPERIMENTAL API AND IS SUBJECT TO CHANGE ******
-*/
-void *sqlite3_commit_hook(sqlite3*, int(*)(void*), void*);
-
-/*
-** Open the sqlite database file "filename". The "filename" is UTF-8
-** encoded for sqlite3_open() and UTF-16 encoded in the native byte order
-** for sqlite3_open16(). An sqlite3* handle is returned in *ppDb, even
-** if an error occurs. If the database is opened (or created) successfully,
-** then SQLITE_OK is returned. Otherwise an error code is returned. The
-** sqlite3_errmsg() or sqlite3_errmsg16() routines can be used to obtain
-** an English language description of the error.
-**
-** If the database file does not exist, then a new database is created.
-** The encoding for the database is UTF-8 if sqlite3_open() is called and
-** UTF-16 if sqlite3_open16 is used.
-**
-** Whether or not an error occurs when it is opened, resources associated
-** with the sqlite3* handle should be released by passing it to
-** sqlite3_close() when it is no longer required.
-*/
-int sqlite3_open(
- const char *filename, /* Database filename (UTF-8) */
- sqlite3 **ppDb /* OUT: SQLite db handle */
-);
-int sqlite3_open16(
- const void *filename, /* Database filename (UTF-16) */
- sqlite3 **ppDb /* OUT: SQLite db handle */
-);
-
-/*
-** Return the error code for the most recent sqlite3_* API call associated
-** with sqlite3 handle 'db'. SQLITE_OK is returned if the most recent
-** API call was successful.
-**
-** Calls to many sqlite3_* functions set the error code and string returned
-** by sqlite3_errcode(), sqlite3_errmsg() and sqlite3_errmsg16()
-** (overwriting the previous values). Note that calls to sqlite3_errcode(),
-** sqlite3_errmsg() and sqlite3_errmsg16() themselves do not affect the
-** results of future invocations.
-**
-** Assuming no other intervening sqlite3_* API calls are made, the error
-** code returned by this function is associated with the same error as
-** the strings returned by sqlite3_errmsg() and sqlite3_errmsg16().
-*/
-int sqlite3_errcode(sqlite3 *db);
-
-/*
-** Return a pointer to a UTF-8 encoded string describing in english the
-** error condition for the most recent sqlite3_* API call. The returned
-** string is always terminated by an 0x00 byte.
-**
-** The string "not an error" is returned when the most recent API call was
-** successful.
-*/
-const char *sqlite3_errmsg(sqlite3*);
-
-/*
-** Return a pointer to a UTF-16 native byte order encoded string describing
-** in english the error condition for the most recent sqlite3_* API call.
-** The returned string is always terminated by a pair of 0x00 bytes.
-**
-** The string "not an error" is returned when the most recent API call was
-** successful.
-*/
-const void *sqlite3_errmsg16(sqlite3*);
-
-/*
-** An instance of the following opaque structure is used to represent
-** a compiled SQL statment.
-*/
-typedef struct sqlite3_stmt sqlite3_stmt;
-
-/*
-** To execute an SQL query, it must first be compiled into a byte-code
-** program using one of the following routines. The only difference between
-** them is that the second argument, specifying the SQL statement to
-** compile, is assumed to be encoded in UTF-8 for the sqlite3_prepare()
-** function and UTF-16 for sqlite3_prepare16().
-**
-** The first parameter "db" is an SQLite database handle. The second
-** parameter "zSql" is the statement to be compiled, encoded as either
-** UTF-8 or UTF-16 (see above). If the next parameter, "nBytes", is less
-** than zero, then zSql is read up to the first nul terminator. If
-** "nBytes" is not less than zero, then it is the length of the string zSql
-** in bytes (not characters).
-**
-** *pzTail is made to point to the first byte past the end of the first
-** SQL statement in zSql. This routine only compiles the first statement
-** in zSql, so *pzTail is left pointing to what remains uncompiled.
-**
-** *ppStmt is left pointing to a compiled SQL statement that can be
-** executed using sqlite3_step(). Or if there is an error, *ppStmt may be
-** set to NULL. If the input text contained no SQL (if the input is and
-** empty string or a comment) then *ppStmt is set to NULL.
-**
-** On success, SQLITE_OK is returned. Otherwise an error code is returned.
-*/
-int sqlite3_prepare(
- sqlite3 *db, /* Database handle */
- const char *zSql, /* SQL statement, UTF-8 encoded */
- int nBytes, /* Length of zSql in bytes. */
- sqlite3_stmt **ppStmt, /* OUT: Statement handle */
- const char **pzTail /* OUT: Pointer to unused portion of zSql */
-);
-int sqlite3_prepare16(
- sqlite3 *db, /* Database handle */
- const void *zSql, /* SQL statement, UTF-16 encoded */
- int nBytes, /* Length of zSql in bytes. */
- sqlite3_stmt **ppStmt, /* OUT: Statement handle */
- const void **pzTail /* OUT: Pointer to unused portion of zSql */
-);
-
-/*
-** Pointers to the following two opaque structures are used to communicate
-** with the implementations of user-defined functions.
-*/
-typedef struct sqlite3_context sqlite3_context;
-typedef struct Mem sqlite3_value;
-
-/*
-** In the SQL strings input to sqlite3_prepare() and sqlite3_prepare16(),
-** one or more literals can be replace by parameters "?" or ":AAA" or
-** "$VVV" where AAA is an identifer and VVV is a variable name according
-** to the syntax rules of the TCL programming language.
-** The value of these parameters (also called "host parameter names") can
-** be set using the routines listed below.
-**
-** In every case, the first parameter is a pointer to the sqlite3_stmt
-** structure returned from sqlite3_prepare(). The second parameter is the
-** index of the parameter. The first parameter as an index of 1. For
-** named parameters (":AAA" or "$VVV") you can use
-** sqlite3_bind_parameter_index() to get the correct index value given
-** the parameters name. If the same named parameter occurs more than
-** once, it is assigned the same index each time.
-**
-** The fifth parameter to sqlite3_bind_blob(), sqlite3_bind_text(), and
-** sqlite3_bind_text16() is a destructor used to dispose of the BLOB or
-** text after SQLite has finished with it. If the fifth argument is the
-** special value SQLITE_STATIC, then the library assumes that the information
-** is in static, unmanaged space and does not need to be freed. If the
-** fifth argument has the value SQLITE_TRANSIENT, then SQLite makes its
-** own private copy of the data.
-**
-** The sqlite3_bind_* routine must be called before sqlite3_step() after
-** an sqlite3_prepare() or sqlite3_reset(). Unbound parameterss are
-** interpreted as NULL.
-*/
-int sqlite3_bind_blob(sqlite3_stmt*, int, const void*, int n, void(*)(void*));
-int sqlite3_bind_double(sqlite3_stmt*, int, double);
-int sqlite3_bind_int(sqlite3_stmt*, int, int);
-int sqlite3_bind_int64(sqlite3_stmt*, int, sqlite_int64);
-int sqlite3_bind_null(sqlite3_stmt*, int);
-int sqlite3_bind_text(sqlite3_stmt*, int, const char*, int n, void(*)(void*));
-int sqlite3_bind_text16(sqlite3_stmt*, int, const void*, int, void(*)(void*));
-int sqlite3_bind_value(sqlite3_stmt*, int, const sqlite3_value*);
-
-/*
-** Return the number of parameters in a compiled SQL statement. This
-** routine was added to support DBD::SQLite.
-*/
-int sqlite3_bind_parameter_count(sqlite3_stmt*);
-
-/*
-** Return the name of the i-th parameter. Ordinary parameters "?" are
-** nameless and a NULL is returned. For parameters of the form :AAA or
-** $VVV the complete text of the parameter name is returned, including
-** the initial ":" or "$". NULL is returned if the index is out of range.
-*/
-const char *sqlite3_bind_parameter_name(sqlite3_stmt*, int);
-
-/*
-** Return the index of a parameter with the given name. The name
-** must match exactly. If no parameter with the given name is found,
-** return 0.
-*/
-int sqlite3_bind_parameter_index(sqlite3_stmt*, const char *zName);
-
-/*
-** Set all the parameters in the compiled SQL statement to NULL.
-*/
-int sqlite3_clear_bindings(sqlite3_stmt*);
-
-/*
-** Return the number of columns in the result set returned by the compiled
-** SQL statement. This routine returns 0 if pStmt is an SQL statement
-** that does not return data (for example an UPDATE).
-*/
-int sqlite3_column_count(sqlite3_stmt *pStmt);
-
-/*
-** The first parameter is a compiled SQL statement. This function returns
-** the column heading for the Nth column of that statement, where N is the
-** second function parameter. The string returned is UTF-8 for
-** sqlite3_column_name() and UTF-16 for sqlite3_column_name16().
-*/
-const char *sqlite3_column_name(sqlite3_stmt*,int);
-const void *sqlite3_column_name16(sqlite3_stmt*,int);
-
-/*
-** The first parameter to the following calls is a compiled SQL statement.
-** These functions return information about the Nth column returned by
-** the statement, where N is the second function argument.
-**
-** If the Nth column returned by the statement is not a column value,
-** then all of the functions return NULL. Otherwise, the return the
-** name of the attached database, table and column that the expression
-** extracts a value from.
-**
-** As with all other SQLite APIs, those postfixed with "16" return UTF-16
-** encoded strings, the other functions return UTF-8. The memory containing
-** the returned strings is valid until the statement handle is finalized().
-**
-** These APIs are only available if the library was compiled with the
-** SQLITE_ENABLE_COLUMN_METADATA preprocessor symbol defined.
-*/
-const char *sqlite3_column_database_name(sqlite3_stmt*,int);
-const void *sqlite3_column_database_name16(sqlite3_stmt*,int);
-const char *sqlite3_column_table_name(sqlite3_stmt*,int);
-const void *sqlite3_column_table_name16(sqlite3_stmt*,int);
-const char *sqlite3_column_origin_name(sqlite3_stmt*,int);
-const void *sqlite3_column_origin_name16(sqlite3_stmt*,int);
-
-/*
-** The first parameter is a compiled SQL statement. If this statement
-** is a SELECT statement, the Nth column of the returned result set
-** of the SELECT is a table column then the declared type of the table
-** column is returned. If the Nth column of the result set is not at table
-** column, then a NULL pointer is returned. The returned string is always
-** UTF-8 encoded. For example, in the database schema:
-**
-** CREATE TABLE t1(c1 VARIANT);
-**
-** And the following statement compiled:
-**
-** SELECT c1 + 1, c1 FROM t1;
-**
-** Then this routine would return the string "VARIANT" for the second
-** result column (i==1), and a NULL pointer for the first result column
-** (i==0).
-*/
-const char *sqlite3_column_decltype(sqlite3_stmt *, int i);
-
-/*
-** The first parameter is a compiled SQL statement. If this statement
-** is a SELECT statement, the Nth column of the returned result set
-** of the SELECT is a table column then the declared type of the table
-** column is returned. If the Nth column of the result set is not at table
-** column, then a NULL pointer is returned. The returned string is always
-** UTF-16 encoded. For example, in the database schema:
-**
-** CREATE TABLE t1(c1 INTEGER);
-**
-** And the following statement compiled:
-**
-** SELECT c1 + 1, c1 FROM t1;
-**
-** Then this routine would return the string "INTEGER" for the second
-** result column (i==1), and a NULL pointer for the first result column
-** (i==0).
-*/
-const void *sqlite3_column_decltype16(sqlite3_stmt*,int);
-
-/*
-** After an SQL query has been compiled with a call to either
-** sqlite3_prepare() or sqlite3_prepare16(), then this function must be
-** called one or more times to execute the statement.
-**
-** The return value will be either SQLITE_BUSY, SQLITE_DONE,
-** SQLITE_ROW, SQLITE_ERROR, or SQLITE_MISUSE.
-**
-** SQLITE_BUSY means that the database engine attempted to open
-** a locked database and there is no busy callback registered.
-** Call sqlite3_step() again to retry the open.
-**
-** SQLITE_DONE means that the statement has finished executing
-** successfully. sqlite3_step() should not be called again on this virtual
-** machine.
-**
-** If the SQL statement being executed returns any data, then
-** SQLITE_ROW is returned each time a new row of data is ready
-** for processing by the caller. The values may be accessed using
-** the sqlite3_column_*() functions described below. sqlite3_step()
-** is called again to retrieve the next row of data.
-**
-** SQLITE_ERROR means that a run-time error (such as a constraint
-** violation) has occurred. sqlite3_step() should not be called again on
-** the VM. More information may be found by calling sqlite3_errmsg().
-**
-** SQLITE_MISUSE means that the this routine was called inappropriately.
-** Perhaps it was called on a virtual machine that had already been
-** finalized or on one that had previously returned SQLITE_ERROR or
-** SQLITE_DONE. Or it could be the case the the same database connection
-** is being used simulataneously by two or more threads.
-*/
-int sqlite3_step(sqlite3_stmt*);
-
-/*
-** Return the number of values in the current row of the result set.
-**
-** After a call to sqlite3_step() that returns SQLITE_ROW, this routine
-** will return the same value as the sqlite3_column_count() function.
-** After sqlite3_step() has returned an SQLITE_DONE, SQLITE_BUSY or
-** error code, or before sqlite3_step() has been called on a
-** compiled SQL statement, this routine returns zero.
-*/
-int sqlite3_data_count(sqlite3_stmt *pStmt);
-
-/*
-** Values are stored in the database in one of the following fundamental
-** types.
-*/
-#define SQLITE_INTEGER 1
-#define SQLITE_FLOAT 2
-/* #define SQLITE_TEXT 3 // See below */
-#define SQLITE_BLOB 4
-#define SQLITE_NULL 5
-
-/*
-** SQLite version 2 defines SQLITE_TEXT differently. To allow both
-** version 2 and version 3 to be included, undefine them both if a
-** conflict is seen. Define SQLITE3_TEXT to be the version 3 value.
-*/
-#ifdef SQLITE_TEXT
-# undef SQLITE_TEXT
-#else
-# define SQLITE_TEXT 3
-#endif
-#define SQLITE3_TEXT 3
-
-/*
-** The next group of routines returns information about the information
-** in a single column of the current result row of a query. In every
-** case the first parameter is a pointer to the SQL statement that is being
-** executed (the sqlite_stmt* that was returned from sqlite3_prepare()) and
-** the second argument is the index of the column for which information
-** should be returned. iCol is zero-indexed. The left-most column as an
-** index of 0.
-**
-** If the SQL statement is not currently point to a valid row, or if the
-** the colulmn index is out of range, the result is undefined.
-**
-** These routines attempt to convert the value where appropriate. For
-** example, if the internal representation is FLOAT and a text result
-** is requested, sprintf() is used internally to do the conversion
-** automatically. The following table details the conversions that
-** are applied:
-**
-** Internal Type Requested Type Conversion
-** ------------- -------------- --------------------------
-** NULL INTEGER Result is 0
-** NULL FLOAT Result is 0.0
-** NULL TEXT Result is an empty string
-** NULL BLOB Result is a zero-length BLOB
-** INTEGER FLOAT Convert from integer to float
-** INTEGER TEXT ASCII rendering of the integer
-** INTEGER BLOB Same as for INTEGER->TEXT
-** FLOAT INTEGER Convert from float to integer
-** FLOAT TEXT ASCII rendering of the float
-** FLOAT BLOB Same as FLOAT->TEXT
-** TEXT INTEGER Use atoi()
-** TEXT FLOAT Use atof()
-** TEXT BLOB No change
-** BLOB INTEGER Convert to TEXT then use atoi()
-** BLOB FLOAT Convert to TEXT then use atof()
-** BLOB TEXT Add a \000 terminator if needed
-**
-** The following access routines are provided:
-**
-** _type() Return the datatype of the result. This is one of
-** SQLITE_INTEGER, SQLITE_FLOAT, SQLITE_TEXT, SQLITE_BLOB,
-** or SQLITE_NULL.
-** _blob() Return the value of a BLOB.
-** _bytes() Return the number of bytes in a BLOB value or the number
-** of bytes in a TEXT value represented as UTF-8. The \000
-** terminator is included in the byte count for TEXT values.
-** _bytes16() Return the number of bytes in a BLOB value or the number
-** of bytes in a TEXT value represented as UTF-16. The \u0000
-** terminator is included in the byte count for TEXT values.
-** _double() Return a FLOAT value.
-** _int() Return an INTEGER value in the host computer's native
-** integer representation. This might be either a 32- or 64-bit
-** integer depending on the host.
-** _int64() Return an INTEGER value as a 64-bit signed integer.
-** _text() Return the value as UTF-8 text.
-** _text16() Return the value as UTF-16 text.
-*/
-const void *sqlite3_column_blob(sqlite3_stmt*, int iCol);
-int sqlite3_column_bytes(sqlite3_stmt*, int iCol);
-int sqlite3_column_bytes16(sqlite3_stmt*, int iCol);
-double sqlite3_column_double(sqlite3_stmt*, int iCol);
-int sqlite3_column_int(sqlite3_stmt*, int iCol);
-sqlite_int64 sqlite3_column_int64(sqlite3_stmt*, int iCol);
-const unsigned char *sqlite3_column_text(sqlite3_stmt*, int iCol);
-const void *sqlite3_column_text16(sqlite3_stmt*, int iCol);
-int sqlite3_column_type(sqlite3_stmt*, int iCol);
-int sqlite3_column_numeric_type(sqlite3_stmt*, int iCol);
-sqlite3_value *sqlite3_column_value(sqlite3_stmt*, int iCol);
-
-/*
-** The sqlite3_finalize() function is called to delete a compiled
-** SQL statement obtained by a previous call to sqlite3_prepare()
-** or sqlite3_prepare16(). If the statement was executed successfully, or
-** not executed at all, then SQLITE_OK is returned. If execution of the
-** statement failed then an error code is returned.
-**
-** This routine can be called at any point during the execution of the
-** virtual machine. If the virtual machine has not completed execution
-** when this routine is called, that is like encountering an error or
-** an interrupt. (See sqlite3_interrupt().) Incomplete updates may be
-** rolled back and transactions cancelled, depending on the circumstances,
-** and the result code returned will be SQLITE_ABORT.
-*/
-int sqlite3_finalize(sqlite3_stmt *pStmt);
-
-/*
-** The sqlite3_reset() function is called to reset a compiled SQL
-** statement obtained by a previous call to sqlite3_prepare() or
-** sqlite3_prepare16() back to it's initial state, ready to be re-executed.
-** Any SQL statement variables that had values bound to them using
-** the sqlite3_bind_*() API retain their values.
-*/
-int sqlite3_reset(sqlite3_stmt *pStmt);
-
-/*
-** The following two functions are used to add user functions or aggregates
-** implemented in C to the SQL langauge interpreted by SQLite. The
-** difference only between the two is that the second parameter, the
-** name of the (scalar) function or aggregate, is encoded in UTF-8 for
-** sqlite3_create_function() and UTF-16 for sqlite3_create_function16().
-**
-** The first argument is the database handle that the new function or
-** aggregate is to be added to. If a single program uses more than one
-** database handle internally, then user functions or aggregates must
-** be added individually to each database handle with which they will be
-** used.
-**
-** The third parameter is the number of arguments that the function or
-** aggregate takes. If this parameter is negative, then the function or
-** aggregate may take any number of arguments.
-**
-** The fourth parameter is one of SQLITE_UTF* values defined below,
-** indicating the encoding that the function is most likely to handle
-** values in. This does not change the behaviour of the programming
-** interface. However, if two versions of the same function are registered
-** with different encoding values, SQLite invokes the version likely to
-** minimize conversions between text encodings.
-**
-** The seventh, eighth and ninth parameters, xFunc, xStep and xFinal, are
-** pointers to user implemented C functions that implement the user
-** function or aggregate. A scalar function requires an implementation of
-** the xFunc callback only, NULL pointers should be passed as the xStep
-** and xFinal parameters. An aggregate function requires an implementation
-** of xStep and xFinal, but NULL should be passed for xFunc. To delete an
-** existing user function or aggregate, pass NULL for all three function
-** callback. Specifying an inconstent set of callback values, such as an
-** xFunc and an xFinal, or an xStep but no xFinal, SQLITE_ERROR is
-** returned.
-*/
-int sqlite3_create_function(
- sqlite3 *,
- const char *zFunctionName,
- int nArg,
- int eTextRep,
- void*,
- void (*xFunc)(sqlite3_context*,int,sqlite3_value**),
- void (*xStep)(sqlite3_context*,int,sqlite3_value**),
- void (*xFinal)(sqlite3_context*)
-);
-int sqlite3_create_function16(
- sqlite3*,
- const void *zFunctionName,
- int nArg,
- int eTextRep,
- void*,
- void (*xFunc)(sqlite3_context*,int,sqlite3_value**),
- void (*xStep)(sqlite3_context*,int,sqlite3_value**),
- void (*xFinal)(sqlite3_context*)
-);
-
-/*
-** This function is deprecated. Do not use it. It continues to exist
-** so as not to break legacy code. But new code should avoid using it.
-*/
-int sqlite3_aggregate_count(sqlite3_context*);
-
-/*
-** The next group of routines returns information about parameters to
-** a user-defined function. Function implementations use these routines
-** to access their parameters. These routines are the same as the
-** sqlite3_column_* routines except that these routines take a single
-** sqlite3_value* pointer instead of an sqlite3_stmt* and an integer
-** column number.
-*/
-const void *sqlite3_value_blob(sqlite3_value*);
-int sqlite3_value_bytes(sqlite3_value*);
-int sqlite3_value_bytes16(sqlite3_value*);
-double sqlite3_value_double(sqlite3_value*);
-int sqlite3_value_int(sqlite3_value*);
-sqlite_int64 sqlite3_value_int64(sqlite3_value*);
-const unsigned char *sqlite3_value_text(sqlite3_value*);
-const void *sqlite3_value_text16(sqlite3_value*);
-const void *sqlite3_value_text16le(sqlite3_value*);
-const void *sqlite3_value_text16be(sqlite3_value*);
-int sqlite3_value_type(sqlite3_value*);
-int sqlite3_value_numeric_type(sqlite3_value*);
-
-/*
-** Aggregate functions use the following routine to allocate
-** a structure for storing their state. The first time this routine
-** is called for a particular aggregate, a new structure of size nBytes
-** is allocated, zeroed, and returned. On subsequent calls (for the
-** same aggregate instance) the same buffer is returned. The implementation
-** of the aggregate can use the returned buffer to accumulate data.
-**
-** The buffer allocated is freed automatically by SQLite.
-*/
-void *sqlite3_aggregate_context(sqlite3_context*, int nBytes);
-
-/*
-** The pUserData parameter to the sqlite3_create_function()
-** routine used to register user functions is available to
-** the implementation of the function using this call.
-*/
-void *sqlite3_user_data(sqlite3_context*);
-
-/*
-** The following two functions may be used by scalar user functions to
-** associate meta-data with argument values. If the same value is passed to
-** multiple invocations of the user-function during query execution, under
-** some circumstances the associated meta-data may be preserved. This may
-** be used, for example, to add a regular-expression matching scalar
-** function. The compiled version of the regular expression is stored as
-** meta-data associated with the SQL value passed as the regular expression
-** pattern.
-**
-** Calling sqlite3_get_auxdata() returns a pointer to the meta data
-** associated with the Nth argument value to the current user function
-** call, where N is the second parameter. If no meta-data has been set for
-** that value, then a NULL pointer is returned.
-**
-** The sqlite3_set_auxdata() is used to associate meta data with a user
-** function argument. The third parameter is a pointer to the meta data
-** to be associated with the Nth user function argument value. The fourth
-** parameter specifies a 'delete function' that will be called on the meta
-** data pointer to release it when it is no longer required. If the delete
-** function pointer is NULL, it is not invoked.
-**
-** In practice, meta-data is preserved between function calls for
-** expressions that are constant at compile time. This includes literal
-** values and SQL variables.
-*/
-void *sqlite3_get_auxdata(sqlite3_context*, int);
-void sqlite3_set_auxdata(sqlite3_context*, int, void*, void (*)(void*));
-
-
-/*
-** These are special value for the destructor that is passed in as the
-** final argument to routines like sqlite3_result_blob(). If the destructor
-** argument is SQLITE_STATIC, it means that the content pointer is constant
-** and will never change. It does not need to be destroyed. The
-** SQLITE_TRANSIENT value means that the content will likely change in
-** the near future and that SQLite should make its own private copy of
-** the content before returning.
-*/
-#define SQLITE_STATIC ((void(*)(void *))0)
-#define SQLITE_TRANSIENT ((void(*)(void *))-1)
-
-/*
-** User-defined functions invoke the following routines in order to
-** set their return value.
-*/
-void sqlite3_result_blob(sqlite3_context*, const void*, int, void(*)(void*));
-void sqlite3_result_double(sqlite3_context*, double);
-void sqlite3_result_error(sqlite3_context*, const char*, int);
-void sqlite3_result_error16(sqlite3_context*, const void*, int);
-void sqlite3_result_int(sqlite3_context*, int);
-void sqlite3_result_int64(sqlite3_context*, sqlite_int64);
-void sqlite3_result_null(sqlite3_context*);
-void sqlite3_result_text(sqlite3_context*, const char*, int, void(*)(void*));
-void sqlite3_result_text16(sqlite3_context*, const void*, int, void(*)(void*));
-void sqlite3_result_text16le(sqlite3_context*, const void*, int,void(*)(void*));
-void sqlite3_result_text16be(sqlite3_context*, const void*, int,void(*)(void*));
-void sqlite3_result_value(sqlite3_context*, sqlite3_value*);
-
-/*
-** These are the allowed values for the eTextRep argument to
-** sqlite3_create_collation and sqlite3_create_function.
-*/
-#define SQLITE_UTF8 1
-#define SQLITE_UTF16LE 2
-#define SQLITE_UTF16BE 3
-#define SQLITE_UTF16 4 /* Use native byte order */
-#define SQLITE_ANY 5 /* sqlite3_create_function only */
-#define SQLITE_UTF16_ALIGNED 8 /* sqlite3_create_collation only */
-
-/*
-** These two functions are used to add new collation sequences to the
-** sqlite3 handle specified as the first argument.
-**
-** The name of the new collation sequence is specified as a UTF-8 string
-** for sqlite3_create_collation() and a UTF-16 string for
-** sqlite3_create_collation16(). In both cases the name is passed as the
-** second function argument.
-**
-** The third argument must be one of the constants SQLITE_UTF8,
-** SQLITE_UTF16LE or SQLITE_UTF16BE, indicating that the user-supplied
-** routine expects to be passed pointers to strings encoded using UTF-8,
-** UTF-16 little-endian or UTF-16 big-endian respectively.
-**
-** A pointer to the user supplied routine must be passed as the fifth
-** argument. If it is NULL, this is the same as deleting the collation
-** sequence (so that SQLite cannot call it anymore). Each time the user
-** supplied function is invoked, it is passed a copy of the void* passed as
-** the fourth argument to sqlite3_create_collation() or
-** sqlite3_create_collation16() as its first parameter.
-**
-** The remaining arguments to the user-supplied routine are two strings,
-** each represented by a [length, data] pair and encoded in the encoding
-** that was passed as the third argument when the collation sequence was
-** registered. The user routine should return negative, zero or positive if
-** the first string is less than, equal to, or greater than the second
-** string. i.e. (STRING1 - STRING2).
-*/
-int sqlite3_create_collation(
- sqlite3*,
- const char *zName,
- int eTextRep,
- void*,
- int(*xCompare)(void*,int,const void*,int,const void*)
-);
-int sqlite3_create_collation16(
- sqlite3*,
- const char *zName,
- int eTextRep,
- void*,
- int(*xCompare)(void*,int,const void*,int,const void*)
-);
-
-/*
-** To avoid having to register all collation sequences before a database
-** can be used, a single callback function may be registered with the
-** database handle to be called whenever an undefined collation sequence is
-** required.
-**
-** If the function is registered using the sqlite3_collation_needed() API,
-** then it is passed the names of undefined collation sequences as strings
-** encoded in UTF-8. If sqlite3_collation_needed16() is used, the names
-** are passed as UTF-16 in machine native byte order. A call to either
-** function replaces any existing callback.
-**
-** When the user-function is invoked, the first argument passed is a copy
-** of the second argument to sqlite3_collation_needed() or
-** sqlite3_collation_needed16(). The second argument is the database
-** handle. The third argument is one of SQLITE_UTF8, SQLITE_UTF16BE or
-** SQLITE_UTF16LE, indicating the most desirable form of the collation
-** sequence function required. The fourth parameter is the name of the
-** required collation sequence.
-**
-** The collation sequence is returned to SQLite by a collation-needed
-** callback using the sqlite3_create_collation() or
-** sqlite3_create_collation16() APIs, described above.
-*/
-int sqlite3_collation_needed(
- sqlite3*,
- void*,
- void(*)(void*,sqlite3*,int eTextRep,const char*)
-);
-int sqlite3_collation_needed16(
- sqlite3*,
- void*,
- void(*)(void*,sqlite3*,int eTextRep,const void*)
-);
-
-/*
-** Specify the key for an encrypted database. This routine should be
-** called right after sqlite3_open().
-**
-** The code to implement this API is not available in the public release
-** of SQLite.
-*/
-int sqlite3_key(
- sqlite3 *db, /* Database to be rekeyed */
- const void *pKey, int nKey /* The key */
-);
-
-/*
-** Change the key on an open database. If the current database is not
-** encrypted, this routine will encrypt it. If pNew==0 or nNew==0, the
-** database is decrypted.
-**
-** The code to implement this API is not available in the public release
-** of SQLite.
-*/
-int sqlite3_rekey(
- sqlite3 *db, /* Database to be rekeyed */
- const void *pKey, int nKey /* The new key */
-);
-
-/*
-** Sleep for a little while. The second parameter is the number of
-** miliseconds to sleep for.
-**
-** If the operating system does not support sleep requests with
-** milisecond time resolution, then the time will be rounded up to
-** the nearest second. The number of miliseconds of sleep actually
-** requested from the operating system is returned.
-*/
-int sqlite3_sleep(int);
-
-/*
-** Return TRUE (non-zero) if the statement supplied as an argument needs
-** to be recompiled. A statement needs to be recompiled whenever the
-** execution environment changes in a way that would alter the program
-** that sqlite3_prepare() generates. For example, if new functions or
-** collating sequences are registered or if an authorizer function is
-** added or changed.
-**
-*/
-int sqlite3_expired(sqlite3_stmt*);
-
-/*
-** Move all bindings from the first prepared statement over to the second.
-** This routine is useful, for example, if the first prepared statement
-** fails with an SQLITE_SCHEMA error. The same SQL can be prepared into
-** the second prepared statement then all of the bindings transfered over
-** to the second statement before the first statement is finalized.
-*/
-int sqlite3_transfer_bindings(sqlite3_stmt*, sqlite3_stmt*);
-
-/*
-** If the following global variable is made to point to a
-** string which is the name of a directory, then all temporary files
-** created by SQLite will be placed in that directory. If this variable
-** is NULL pointer, then SQLite does a search for an appropriate temporary
-** file directory.
-**
-** Once sqlite3_open() has been called, changing this variable will invalidate
-** the current temporary database, if any.
-*/
-extern char *sqlite3_temp_directory;
-
-/*
-** This function is called to recover from a malloc() failure that occured
-** within the SQLite library. Normally, after a single malloc() fails the
-** library refuses to function (all major calls return SQLITE_NOMEM).
-** This function restores the library state so that it can be used again.
-**
-** All existing statements (sqlite3_stmt pointers) must be finalized or
-** reset before this call is made. Otherwise, SQLITE_BUSY is returned.
-** If any in-memory databases are in use, either as a main or TEMP
-** database, SQLITE_ERROR is returned. In either of these cases, the
-** library is not reset and remains unusable.
-**
-** This function is *not* threadsafe. Calling this from within a threaded
-** application when threads other than the caller have used SQLite is
-** dangerous and will almost certainly result in malfunctions.
-**
-** This functionality can be omitted from a build by defining the
-** SQLITE_OMIT_GLOBALRECOVER at compile time.
-*/
-int sqlite3_global_recover(void);
-
-/*
-** Test to see whether or not the database connection is in autocommit
-** mode. Return TRUE if it is and FALSE if not. Autocommit mode is on
-** by default. Autocommit is disabled by a BEGIN statement and reenabled
-** by the next COMMIT or ROLLBACK.
-*/
-int sqlite3_get_autocommit(sqlite3*);
-
-/*
-** Return the sqlite3* database handle to which the prepared statement given
-** in the argument belongs. This is the same database handle that was
-** the first argument to the sqlite3_prepare() that was used to create
-** the statement in the first place.
-*/
-sqlite3 *sqlite3_db_handle(sqlite3_stmt*);
-
-/*
-** Register a callback function with the database connection identified by the
-** first argument to be invoked whenever a row is updated, inserted or deleted.
-** Any callback set by a previous call to this function for the same
-** database connection is overridden.
-**
-** The second argument is a pointer to the function to invoke when a
-** row is updated, inserted or deleted. The first argument to the callback is
-** a copy of the third argument to sqlite3_update_hook. The second callback
-** argument is one of SQLITE_INSERT, SQLITE_DELETE or SQLITE_UPDATE, depending
-** on the operation that caused the callback to be invoked. The third and
-** fourth arguments to the callback contain pointers to the database and
-** table name containing the affected row. The final callback parameter is
-** the rowid of the row. In the case of an update, this is the rowid after
-** the update takes place.
-**
-** The update hook is not invoked when internal system tables are
-** modified (i.e. sqlite_master and sqlite_sequence).
-**
-** If another function was previously registered, its pArg value is returned.
-** Otherwise NULL is returned.
-*/
-void *sqlite3_update_hook(
- sqlite3*,
- void(*)(void *,int ,char const *,char const *,sqlite_int64),
- void*
-);
-
-/*
-** Register a callback to be invoked whenever a transaction is rolled
-** back.
-**
-** The new callback function overrides any existing rollback-hook
-** callback. If there was an existing callback, then it's pArg value
-** (the third argument to sqlite3_rollback_hook() when it was registered)
-** is returned. Otherwise, NULL is returned.
-**
-** For the purposes of this API, a transaction is said to have been
-** rolled back if an explicit "ROLLBACK" statement is executed, or
-** an error or constraint causes an implicit rollback to occur. The
-** callback is not invoked if a transaction is automatically rolled
-** back because the database connection is closed.
-*/
-void *sqlite3_rollback_hook(sqlite3*, void(*)(void *), void*);
-
-/*
-** This function is only available if the library is compiled without
-** the SQLITE_OMIT_SHARED_CACHE macro defined. It is used to enable or
-** disable (if the argument is true or false, respectively) the
-** "shared pager" feature.
-*/
-int sqlite3_enable_shared_cache(int);
-
-/*
-** Attempt to free N bytes of heap memory by deallocating non-essential
-** memory allocations held by the database library (example: memory
-** used to cache database pages to improve performance).
-**
-** This function is not a part of standard builds. It is only created
-** if SQLite is compiled with the SQLITE_ENABLE_MEMORY_MANAGEMENT macro.
-*/
-int sqlite3_release_memory(int);
-
-/*
-** Place a "soft" limit on the amount of heap memory that may be allocated by
-** SQLite within the current thread. If an internal allocation is requested
-** that would exceed the specified limit, sqlite3_release_memory() is invoked
-** one or more times to free up some space before the allocation is made.
-**
-** The limit is called "soft", because if sqlite3_release_memory() cannot free
-** sufficient memory to prevent the limit from being exceeded, the memory is
-** allocated anyway and the current operation proceeds.
-**
-** This function is only available if the library was compiled with the
-** SQLITE_ENABLE_MEMORY_MANAGEMENT option set.
-** memory-management has been enabled.
-*/
-void sqlite3_soft_heap_limit(int);
-
-/*
-** This routine makes sure that all thread-local storage has been
-** deallocated for the current thread.
-**
-** This routine is not technically necessary. All thread-local storage
-** will be automatically deallocated once memory-management and
-** shared-cache are disabled and the soft heap limit has been set
-** to zero. This routine is provided as a convenience for users who
-** want to make absolutely sure they have not forgotten something
-** prior to killing off a thread.
-*/
-void sqlite3_thread_cleanup(void);
-
-/*
-** Return meta information about a specific column of a specific database
-** table accessible using the connection handle passed as the first function
-** argument.
-**
-** The column is identified by the second, third and fourth parameters to
-** this function. The second parameter is either the name of the database
-** (i.e. "main", "temp" or an attached database) containing the specified
-** table or NULL. If it is NULL, then all attached databases are searched
-** for the table using the same algorithm as the database engine uses to
-** resolve unqualified table references.
-**
-** The third and fourth parameters to this function are the table and column
-** name of the desired column, respectively. Neither of these parameters
-** may be NULL.
-**
-** Meta information is returned by writing to the memory locations passed as
-** the 5th and subsequent parameters to this function. Any of these
-** arguments may be NULL, in which case the corresponding element of meta
-** information is ommitted.
-**
-** Parameter Output Type Description
-** -----------------------------------
-**
-** 5th const char* Data type
-** 6th const char* Name of the default collation sequence
-** 7th int True if the column has a NOT NULL constraint
-** 8th int True if the column is part of the PRIMARY KEY
-** 9th int True if the column is AUTOINCREMENT
-**
-**
-** The memory pointed to by the character pointers returned for the
-** declaration type and collation sequence is valid only until the next
-** call to any sqlite API function.
-**
-** If the specified table is actually a view, then an error is returned.
-**
-** If the specified column is "rowid", "oid" or "_rowid_" and an
-** INTEGER PRIMARY KEY column has been explicitly declared, then the output
-** parameters are set for the explicitly declared column. If there is no
-** explicitly declared IPK column, then the output parameters are set as
-** follows:
-**
-** data type: "INTEGER"
-** collation sequence: "BINARY"
-** not null: 0
-** primary key: 1
-** auto increment: 0
-**
-** This function may load one or more schemas from database files. If an
-** error occurs during this process, or if the requested table or column
-** cannot be found, an SQLITE error code is returned and an error message
-** left in the database handle (to be retrieved using sqlite3_errmsg()).
-**
-** This API is only available if the library was compiled with the
-** SQLITE_ENABLE_COLUMN_METADATA preprocessor symbol defined.
-*/
-int sqlite3_table_column_metadata(
- sqlite3 *db, /* Connection handle */
- const char *zDbName, /* Database name or NULL */
- const char *zTableName, /* Table name */
- const char *zColumnName, /* Column name */
- char const **pzDataType, /* OUTPUT: Declared data type */
- char const **pzCollSeq, /* OUTPUT: Collation sequence name */
- int *pNotNull, /* OUTPUT: True if NOT NULL constraint exists */
- int *pPrimaryKey, /* OUTPUT: True if column part of PK */
- int *pAutoinc /* OUTPUT: True if colums is auto-increment */
-);
-
-/*
-****** EXPERIMENTAL - subject to change without notice **************
-**
-** Attempt to load an SQLite extension library contained in the file
-** zFile. The entry point is zProc. zProc may be 0 in which case the
-** name of the entry point defaults to "sqlite3_extension_init".
-**
-** Return SQLITE_OK on success and SQLITE_ERROR if something goes wrong.
-**
-** If an error occurs and pzErrMsg is not 0, then fill *pzErrMsg with
-** error message text. The calling function should free this memory
-** by calling sqlite3_free().
-**
-** Extension loading must be enabled using sqlite3_enable_load_extension()
-** prior to calling this API or an error will be returned.
-**
-****** EXPERIMENTAL - subject to change without notice **************
-*/
-int sqlite3_load_extension(
- sqlite3 *db, /* Load the extension into this database connection */
- const char *zFile, /* Name of the shared library containing extension */
- const char *zProc, /* Entry point. Derived from zFile if 0 */
- char **pzErrMsg /* Put error message here if not 0 */
-);
-
-/*
-** So as not to open security holes in older applications that are
-** unprepared to deal with extension load, and as a means of disabling
-** extension loading while executing user-entered SQL, the following
-** API is provided to turn the extension loading mechanism on and
-** off. It is off by default. See ticket #1863.
-**
-** Call this routine with onoff==1 to turn extension loading on
-** and call it with onoff==0 to turn it back off again.
-*/
-int sqlite3_enable_load_extension(sqlite3 *db, int onoff);
-
-/*
-****** EXPERIMENTAL - subject to change without notice **************
-**
-** The interface to the virtual-table mechanism is currently considered
-** to be experimental. The interface might change in incompatible ways.
-** If this is a problem for you, do not use the interface at this time.
-**
-** When the virtual-table mechanism stablizes, we will declare the
-** interface fixed, support it indefinitely, and remove this comment.
-*/
-
-/*
-** Structures used by the virtual table interface
-*/
-typedef struct sqlite3_vtab sqlite3_vtab;
-typedef struct sqlite3_index_info sqlite3_index_info;
-typedef struct sqlite3_vtab_cursor sqlite3_vtab_cursor;
-typedef struct sqlite3_module sqlite3_module;
-
-/*
-** A module is a class of virtual tables. Each module is defined
-** by an instance of the following structure. This structure consists
-** mostly of methods for the module.
-*/
-struct sqlite3_module {
- int iVersion;
- int (*xCreate)(sqlite3*, void *pAux,
- int argc, char **argv,
- sqlite3_vtab **ppVTab);
- int (*xConnect)(sqlite3*, void *pAux,
- int argc, char **argv,
- sqlite3_vtab **ppVTab);
- int (*xBestIndex)(sqlite3_vtab *pVTab, sqlite3_index_info*);
- int (*xDisconnect)(sqlite3_vtab *pVTab);
- int (*xDestroy)(sqlite3_vtab *pVTab);
- int (*xOpen)(sqlite3_vtab *pVTab, sqlite3_vtab_cursor **ppCursor);
- int (*xClose)(sqlite3_vtab_cursor*);
- int (*xFilter)(sqlite3_vtab_cursor*, int idxNum, const char *idxStr,
- int argc, sqlite3_value **argv);
- int (*xNext)(sqlite3_vtab_cursor*);
- int (*xEof)(sqlite3_vtab_cursor*);
- int (*xColumn)(sqlite3_vtab_cursor*, sqlite3_context*, int);
- int (*xRowid)(sqlite3_vtab_cursor*, sqlite_int64 *pRowid);
- int (*xUpdate)(sqlite3_vtab *, int, sqlite3_value **, sqlite_int64 *);
- int (*xBegin)(sqlite3_vtab *pVTab);
- int (*xSync)(sqlite3_vtab *pVTab);
- int (*xCommit)(sqlite3_vtab *pVTab);
- int (*xRollback)(sqlite3_vtab *pVTab);
- int (*xFindFunction)(sqlite3_vtab *pVtab, int nArg, const char *zName,
- void (**pxFunc)(sqlite3_context*,int,sqlite3_value**),
- void **ppArg);
-};
-
-/*
-** The sqlite3_index_info structure and its substructures is used to
-** pass information into and receive the reply from the xBestIndex
-** method of an sqlite3_module. The fields under **Inputs** are the
-** inputs to xBestIndex and are read-only. xBestIndex inserts its
-** results into the **Outputs** fields.
-**
-** The aConstraint[] array records WHERE clause constraints of the
-** form:
-**
-** column OP expr
-**
-** Where OP is =, <, <=, >, or >=. The particular operator is stored
-** in aConstraint[].op. The index of the column is stored in
-** aConstraint[].iColumn. aConstraint[].usable is TRUE if the
-** expr on the right-hand side can be evaluated (and thus the constraint
-** is usable) and false if it cannot.
-**
-** The optimizer automatically inverts terms of the form "expr OP column"
-** and makes other simplificatinos to the WHERE clause in an attempt to
-** get as many WHERE clause terms into the form shown above as possible.
-** The aConstraint[] array only reports WHERE clause terms in the correct
-** form that refer to the particular virtual table being queried.
-**
-** Information about the ORDER BY clause is stored in aOrderBy[].
-** Each term of aOrderBy records a column of the ORDER BY clause.
-**
-** The xBestIndex method must fill aConstraintUsage[] with information
-** about what parameters to pass to xFilter. If argvIndex>0 then
-** the right-hand side of the corresponding aConstraint[] is evaluated
-** and becomes the argvIndex-th entry in argv. If aConstraintUsage[].omit
-** is true, then the constraint is assumed to be fully handled by the
-** virtual table and is not checked again by SQLite.
-**
-** The idxNum and idxPtr values are recorded and passed into xFilter.
-** sqlite3_free() is used to free idxPtr if needToFreeIdxPtr is true.
-**
-** The orderByConsumed means that output from xFilter will occur in
-** the correct order to satisfy the ORDER BY clause so that no separate
-** sorting step is required.
-**
-** The estimatedCost value is an estimate of the cost of doing the
-** particular lookup. A full scan of a table with N entries should have
-** a cost of N. A binary search of a table of N entries should have a
-** cost of approximately log(N).
-*/
-struct sqlite3_index_info {
- /* Inputs */
- const int nConstraint; /* Number of entries in aConstraint */
- const struct sqlite3_index_constraint {
- int iColumn; /* Column on left-hand side of constraint */
- unsigned char op; /* Constraint operator */
- unsigned char usable; /* True if this constraint is usable */
- int iTermOffset; /* Used internally - xBestIndex should ignore */
- } *const aConstraint; /* Table of WHERE clause constraints */
- const int nOrderBy; /* Number of terms in the ORDER BY clause */
- const struct sqlite3_index_orderby {
- int iColumn; /* Column number */
- unsigned char desc; /* True for DESC. False for ASC. */
- } *const aOrderBy; /* The ORDER BY clause */
-
- /* Outputs */
- struct sqlite3_index_constraint_usage {
- int argvIndex; /* if >0, constraint is part of argv to xFilter */
- unsigned char omit; /* Do not code a test for this constraint */
- } *const aConstraintUsage;
- int idxNum; /* Number used to identify the index */
- char *idxStr; /* String, possibly obtained from sqlite3_malloc */
- int needToFreeIdxStr; /* Free idxStr using sqlite3_free() if true */
- int orderByConsumed; /* True if output is already ordered */
- double estimatedCost; /* Estimated cost of using this index */
-};
-#define SQLITE_INDEX_CONSTRAINT_EQ 2
-#define SQLITE_INDEX_CONSTRAINT_GT 4
-#define SQLITE_INDEX_CONSTRAINT_LE 8
-#define SQLITE_INDEX_CONSTRAINT_LT 16
-#define SQLITE_INDEX_CONSTRAINT_GE 32
-#define SQLITE_INDEX_CONSTRAINT_MATCH 64
-
-/*
-** This routine is used to register a new module name with an SQLite
-** connection. Module names must be registered before creating new
-** virtual tables on the module, or before using preexisting virtual
-** tables of the module.
-*/
-int sqlite3_create_module(
- sqlite3 *db, /* SQLite connection to register module with */
- const char *zName, /* Name of the module */
- const sqlite3_module *, /* Methods for the module */
- void * /* Client data for xCreate/xConnect */
-);
-
-/*
-** Every module implementation uses a subclass of the following structure
-** to describe a particular instance of the module. Each subclass will
-** be taylored to the specific needs of the module implementation. The
-** purpose of this superclass is to define certain fields that are common
-** to all module implementations.
-*/
-struct sqlite3_vtab {
- const sqlite3_module *pModule; /* The module for this virtual table */
- int nRef; /* Used internally */
- /* Virtual table implementations will typically add additional fields */
-};
-
-/* Every module implementation uses a subclass of the following structure
-** to describe cursors that point into the virtual table and are used
-** to loop through the virtual table. Cursors are created using the
-** xOpen method of the module. Each module implementation will define
-** the content of a cursor structure to suit its own needs.
-**
-** This superclass exists in order to define fields of the cursor that
-** are common to all implementations.
-*/
-struct sqlite3_vtab_cursor {
- sqlite3_vtab *pVtab; /* Virtual table of this cursor */
- /* Virtual table implementations will typically add additional fields */
-};
-
-/*
-** The xCreate and xConnect methods of a module use the following API
-** to declare the format (the names and datatypes of the columns) of
-** the virtual tables they implement.
-*/
-int sqlite3_declare_vtab(sqlite3*, const char *zCreateTable);
-
-/*
-** The interface to the virtual-table mechanism defined above (back up
-** to a comment remarkably similar to this one) is currently considered
-** to be experimental. The interface might change in incompatible ways.
-** If this is a problem for you, do not use the interface at this time.
-**
-** When the virtual-table mechanism stablizes, we will declare the
-** interface fixed, support it indefinitely, and remove this comment.
-**
-****** EXPERIMENTAL - subject to change without notice **************
-*/
-
-/*
-** Undo the hack that converts floating point types to integer for
-** builds on processors without floating point support.
-*/
-#ifdef SQLITE_OMIT_FLOATING_POINT
-# undef double
-#endif
-
-#ifdef __cplusplus
-} /* End of the 'extern "C"' block */
-#endif
-#endif
-
-
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef _TYPES4CARDBOOT_H_
-#define _TYPES4CARDBOOT_H_
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
- // ++++++++++++++++++++++++++++++++++++++++++++++include about standard library
-#include <stdio.h>
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++include user define
-
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++define area
-
- // selected slot
- typedef enum
- {
- LXT_RUIM_SLOT_1 = 0x00,
- LXT_RUIM_SLOT_2 = 0x01,
- LXT_RUIM_SLOT_ALL = 0x02
- }
- LXT_RUIM_SLOT;
-
- // sim code id
- typedef enum
- {
- LXT_SIM_CODE_ID_PIN1 = 0x00,
- LXT_SIM_CODE_ID_PIN2 = 0x01,
- LXT_SIM_CODE_ID_PUK1 = 0x02,
- LXT_SIM_CODE_ID_PUK2 = 0x03,
- LXT_SIM_CODE_ID_SIM_LOCK = 0x04,
- LXT_SIM_CODE_ID_PHONE_LOCK = 0x05
- }
- LXT_SIM_CODE_ID;
-
- // selected network mode
- typedef enum
- {
- LXT_SELECTED_NETWORK_MODE_SLOT1_CDMA = 0x00,
- LXT_SELECTED_NETWORK_MODE_SLOT1__GSM = 0x01,
- LXT_SELECTED_NETWORK_MODE_SLOT2_CDMA = 0x02,
- LXT_SELECTED_NETWORK_MODE_SLOT2__GSM = 0x03
- }
- LXT_SELECTED_NETWORK_MODE;
-
- // network selection method
- typedef enum
- {
- LXT_NETWORK_SELECTION_MODE_DEFAULT = 0x00,
- LXT_NETWORK_SELECTION_MODE_MENU = 0x01
- }
- LXT_NETWORK_SELECTION_MODE;
-
- // pin check status
- typedef enum
- {
- LXT_PIN_STATUS_DISABLE = 0x00,
- LXT_PIN_STATUS_ENABLE = 0x01
- }
- LXT_PIN_STATUS;
-
- // phone status
- typedef enum
- {
- LXT_CARD_STATUS_CARD1_SEARCHING_START = 0x00,
- LXT_CARD_STATUS_CARD2_SEARCHING_START = 0x01,
- LXT_CARD_STATUS_CARD_SEARCHING_END = 0x02,
- LXT_CARD_STATUS_FORCE_GSM_MODE_RUN = 0x03,
- LXT_CARD_STATUS_FORCE_CDMA_MODE_RUN = 0x04,
- LXT_CARD_STATUS_ALL_EMPTY = 0x05,
- LXT_CARD_STATUS_CARD1_PERM_BLOCKED = 0x06,
- LXT_CARD_STATUS_CARD2_PERM_BLOCKED = 0x07,
- LXT_CARD_STATUS_ALL_PERM_BLOCKED = 0x08,
- LXT_CARD_STATUS_CARD1_BLOCKED = 0x09,
- LXT_CARD_STATUS_CARD2_BLOCKED = 0x0A,
- LXT_CARD_STATUS_ALL_BLOCKED = 0x0B
- }
- LXT_CARD_STATUS;
-
- // current status
- typedef enum
- {
- LXT_PIN_PROCESS_STATUS_NETWORK_LIST = 0x00,
- LXT_PIN_PROCESS_STATUS_PIN_CHECK = 0x01
- }
- LXT_PIN_PROCESS_STATUS;
-
-
- // slot capability
- typedef enum
- {
- LXT_SLOT_CAPABILITY_UNKNOWN = 0x00,
- LXT_SLOT_CAPABILITY_USIM = 0x01
- LXT_SLOT_CAPABILITY_GSM = 0x02,
- LXT_SLOT_CAPABILITY_GSM_USIM = 0x03,
- LXT_SLOT_CAPABILITY_RUIM = 0x04,
- LXT_SLOT_CAPABILITY_GSM_RUIM = 0x05,
- LXT_SLOT_CAPABILITY_EMV = 0x06
- }
- LXT_SLOT_CAPABILITY;
-
-
- // slot state
- typedef enum
- {
- LXT_SLOT_STATE_NOT_INITIALIZE = 0x00,
- LXT_SLOT_STATE_DISABLED = 0x01,
- LXT_SLOT_STATE_ENABLED = 0x02,
- LXT_SLOT_STATE_BLOCKED = 0x03,
- LXT_SLOT_STATE_PERM_BLOCKED = 0x04
- }
- LXT_SLOT_STATE;
-
-
- // network mode (internal)
- typedef enum
- {
- LXT_NETWORK_MODE_SLOT1_CDMA = 0x00,
- LXT_NETWORK_MODE_SLOT1_GSM = 0x01,
- LXT_NETWORK_MODE_SLOT2_CDMA = 0x02,
- LXT_NETWORK_MODE_SLOT2_GSM = 0x03,
- LXT_NETWORK_MODE_UNDEFINED = 0xFF,
- }
- LXT_NETWORK_MODE;
-
- typedef struct _lxt_card_authentication
- {
- LXT_RUIM_SLOT slot_name;
- LXT_SIM_CODE_ID sim_code_id;
- char size_current_code;
- char current_code[8];
- char size_new_code;
- char new_code[8];
- char is_boot_time;
- }
- LXT_CARD_AUTHENTICATION;
-
-
-
-#ifdef __cplusplus
-}
-#endif
-
-
-#endif // _TYPES4CARDBOOT_H_
-
-
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef _LXTSMS_H_
-#define _LXTSMS_H_
-
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
-
- // ++++++++++++++++++++++++++++++++++++++++++++++include about standard library
-#include <stdio.h>
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++include user define
-#include "linuxtapi.h"
-#include "lxtsmstypedef.h"
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++define area
-#define DEF_INIT_MAGIC_CODE 0xFF
- // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ type define area
-
-
-
- // Global ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
-
- // SMS_TIME_STAMP_RELATIVE
- // offset value | relative time period | validity period | delivery time
- // =============|==========================================|=================|===============
- // 0 ~ 143 | (value + 1) * 5 min | x | x
- // =============|==========================================|=================|===============
- // 144 ~ 167 | 12 hours + ((value -143) * 30 min) | x | x
- // =============|==========================================|=================|===============
- // 168 ~ 196 | (value - 166) days | x | x
- // =============|==========================================|=================|===============
- // 197 ~ 244 | (value - 192) weeks | x | x
- // =============|==========================================|=================|===============
- // 245 | Indefinite | x |
- // =============|==========================================|=================|===============
- // 246 | Immediate [1] | x |
- // =============|==========================================|=================|===============
- // 247 | Valid until mobile becomes inactive | x | x
- // | Deliver when mobile next becomes active | |
- // =============|==========================================|=================|===============
- // 248 | Valid until registration area changes, | x |
- // | discard if not registered | |
- // =============|==========================================|=================|===============
- // 249 ~ 255 | reserved | |
- // =============|==========================================|=================|===============
-
-
-
-
-
-
- // Teleservice Identifier (0x01) +++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // length of teleservice id
- unsigned char length;
-
- // teleservice identifier
- SMS_TELESERVICE_ID service_id;
-
- }
- SMS_TELESERVICE_IDENTIFIER;
-
-
-
-
-
-
-
-
-
-
- // Broadcast Service Category (0x02) +++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // length of broadcast service category
- unsigned char length;
-
- // service category(2byte)
- SMS_BROADCAST_SERVICE_CATEGORY_CATEGORY category;
-
- }
- SMS_BROADCAST_SERVICE_CATEGORY;
-
-
-
-
-
-
-
-
-
-
-
- // Address (0x03) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // parameter length - 5 + num_fields
- unsigned char length;
-
- // digit mode indicator - 0x00 : 4BIT_DTMF, 0x01:8BIT_CODE;
- SMS_ADDRESS_DIGIT_MODE digit_mode;
-
- // number mode indicator - 0x00 : ANSI TI.607, 0x01 : Data Network
- SMS_ADDRESS_NUMBER_MODE number_mode;
-
- // type of number -
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 0 ) ) then use SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 1 ) ) then use SMS_ADDRESS_NUMBER_TYPE_DATA_NETWORK
- // if ( DIGIT_MODE == 0 ) then ignore this field
- SMS_ADDRESS_NUMBER_TYPE number_type;
-
- // numbering plan -
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 0 ) ) then use SMS_ADDRESS_NUMBER_PLAN
- // if ( ( DIGIT_MODE == 0 ) || ( NUMBER_MODE == 1 ) ) then ignore this field
- SMS_ADDRESS_NUMBER_PLAN number_plan;
-
- // the number of digit_number
- unsigned char num_fields;
-
- // digit number
- // if ( DIGIT_MODE == 0 ) then ASCII
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 0 ) ) then ANSI X3.4(7bit code for american standard, all significant bit '0')
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 1 ) && ( NUMBER_TYPE == 2 ) ) mail address
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 1 ) && ( NUMBER_TYPE != 2 ) ) ip address
- unsigned char digit_number[DEF_SMS_MAX_DIGIT_NUMBER];
-
- }
- SMS_ADDRESS;
-
-
-
-
-
-
-
-
-
-
-
- // Subaddress (0x04) +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
-
- // parameter length - 3 + num_fields
- unsigned char length;
-
- // subaddress type - use SMS_SUBADDRESS_TYPE
- SMS_SUBADDRESS_TYPE type;
-
- // odd/even indicator
- // if the last digit_number contains information only in the 4 most sign bit then '1' else '0'
- unsigned char odd;
-
- // the number of digit_number
- unsigned char num_fields;
-
- // subaddress octet
- unsigned char digit_number[DEF_SMS_MAX_DIGIT_NUMBER];
-
- }
- SMS_SUBADDRESS;
-
-
-
-
-
-
-
-
-
-
-
- // Bearer Reply Option (0x05) ++++++++++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // length of rearer reply option
- unsigned char length;
-
- // reply sequence number
- // This field shall be set to a value identifying the SMS message for
- // which acknowledgment is requested. : 0 ~ 63 ( modulo of 8 )
- unsigned char reply_seq;
-
- }
- SMS_BEARER_REPLY_OPTION;
-
-
-
-
-
-
-
-
-
-
-
- // Cause Codes (0x06) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // reply sequence number
- // this field shall be set to the reply sequence number in the
- // Bearer Reply Option parameter of the message being acknowledged.
- unsigned char reply_seq;
-
- // error report class - use SMS_CAUSE_CODES_ERROR_CLASS
- SMS_CAUSE_CODES_ERROR_CLASS error_class;
-
- // error cause identifier - if ERROR_CLASS is 0, then this field is ignored.
- // if ERROR_CLASS is 2 or 3, then use SMS_CAUSE_CODE_CAUSE_CODE_NETWORK
- // if ERROR_CLASS is 4, then use SMS_CAUSE_CODE_CAUSE_CODE_INTERNAL
- SMS_CAUSE_CODE_CAUSE_CODE cause_code;
-
- }
- SMS_CAUSE_CODES;
-
-
-
-
-
-
-
-
-
-
-
- // Message Identifier (0x07) +++++++++++++++++++++++++++++++++++++++++++++++++++
-
-
- typedef struct
- {
- // length of message identifier
- unsigned char length;
-
- // use SMS_MESSAGE_TYPE
- SMS_MESSAGE_TYPE message_type;
-
- // Message ID Number(2 byte)
- unsigned short message_id;
-
- }
- SMS_MESSAGE_IDENTIFIER;
-
-
-
-
-
-
-
-
-
-
-
- // User Data (0x08) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
-
- typedef struct
- {
- // user data length
- unsigned char length;
-
- // encoding - use SMS_USER_DATA_MSG_ENCODING
- SMS_USER_DATA_MSG_ENCODING msg_encoding;
-
- // number of digit_number
- unsigned char num_fields;
-
- // user data
- unsigned char* user_data;
-
- }
- SMS_USER_DATA;
-
-
-
-
-
-
-
-
-
-
-
- // User Response Code (0x09) +++++++++++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // length of user response code
- unsigned char length;
-
- // this field value depends on the teleservices or the carrier
- unsigned char response_code;
-
- }
- SMS_USER_RESPONSE_CODE;
-
-
-
-
-
-
-
-
-
-
-
- // Message Center Time Stamp (0x0A) ++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // length of message center time stamp
- unsigned char length;
-
- // time stamp
- unsigned char time_stamp[6];
-
- }
- SMS_MESSAGE_CENTER_TIME_STAMP;
-
-
-
-
-
-
-
-
-
-
- // Validity Period - Absolute (0x0B) +++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // prameter length
- unsigned char length;
-
- // time stamp
- unsigned char validity_period[6];
-
- }
- SMS_VALIDITY_PERIOD_ABSOLUTE;
-
-
-
-
-
-
-
-
-
-
-
- // Validity Period - Relative (0x0C) +++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // relative value
- unsigned char validity;
-
-
- }
- SMS_VALIDITY_PERIOD_RELATIVE;
-
-
-
-
-
-
-
-
-
-
- // Deferred Delivery Time - Absolute (0x0D) ++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // time stamp
- unsigned char deferred_delivery_time[6];
-
- }
- SMS_DEFERRED_DELIVERY_TIME_ABSOLUTE;
-
-
-
-
-
-
-
-
-
-
- // Deferred Delivery Time - Relative (0x0E) ++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // relative value
- unsigned char deferred_delivery_time;
-
- }
- SMS_DEFERRED_DELIVERY_TIME_RELATIVE;
-
-
-
-
-
-
-
-
-
-
- // Priority Indicator (0x0F) +++++++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // level of priority
- SMS_PRIORITY_INDICATOR_PRIORITY priority;
-
- }
- SMS_PRIORITY_INDICATOR;
-
-
-
-
-
-
-
-
-
-
- // Privacy Indicator (0x10) ++++++++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // privacy level
- SMS_PRIVACY_INDICATOR_PRIVACY privacy;
-
- }
- SMS_PRIVACY_INDICATOR;
-
-
-
-
-
-
-
-
-
-
- // Reply Option (0x11) +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // TRUE if User acknowledgment is requested (0x00 : FALSE, 0x01 : TRUE)
- unsigned char user_ack_req;
-
- // TRUE if Delivery acknowledgment is requested (0x00 : FALSE, 0x01 : TRUE)
- unsigned char dak_req;
-
- }
- SMS_REPLY_OPTION;
-
-
-
-
-
-
-
-
-
-
- // Number of Messages (0x12) +++++++++++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // number of voice mail (0 ~ 99)
- unsigned char message_count;
-
- }
- SMS_NUMBER_OF_MESSAGES;
-
-
-
-
-
-
-
-
-
-
- // Alert on Message Delivery (0x13) ++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // the type of alerts used to distinguish different priorities of the message
- SMS_ALERT_MESSAGE_DELIVERY_ALERT_PRIORITY alert_priority;
-
- }
- SMS_ALERT_ON_MESSAGE_DELIVERY;
-
-
-
-
-
-
-
-
-
-
- // Language Indicator (0x14) +++++++++++++++++++++++++++++++++++++++++++++++++++
-
-
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // language indicator
- SMS_LANGUAGE_INDICATOR_LANGUAGE language;
-
- }
- SMS_LANGUAGE_INDICATOR;
-
-
-
-
-
-
-
-
-
-
- // Call Back Number (0x15) +++++++++++++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
-
- // parameter length - 5 + num_fields
- unsigned char length;
-
- // digit mode indicator - 0x00 : 4BIT_DTMF, 0x01:8BIT_CODE;
- SMS_ADDRESS_DIGIT_MODE digit_mode;
-
- // type of number -
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 0 ) ) then use SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 1 ) ) then use SMS_ADDRESS_NUMBER_TYPE_DATA_NETWORK
- // if ( DIGIT_MODE == 0 ) then ignore this field
- SMS_ADDRESS_NUMBER_TYPE number_type;
-
-
- // numbering plan -
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 0 ) ) then use SMS_ADDRESS_NUMBER_PLAN
- // if ( ( DIGIT_MODE == 0 ) || ( NUMBER_MODE == 1 ) ) then ignore this field
- SMS_ADDRESS_NUMBER_PLAN number_plan;
-
- // the number of digit_number
- unsigned char num_fields;
-
- // digit number
- // if ( DIGIT_MODE == 0 ) then ASCII
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 0 ) ) then ANSI X3.4(7bit code for american standard, all significant bit '0')
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 1 ) && ( NUMBER_TYPE == 2 ) ) mail address
- // if ( ( DIGIT_MODE == 1 ) && ( NUMBER_MODE == 1 ) && ( NUMBER_TYPE != 2 ) ) ip address
- unsigned char digit_number[DEF_SMS_MAX_DIGIT_NUMBER];
-
-
- }
- SMS_CALL_BACK_NUMBER;
-
-
-
-
-
-
-
-
-
-
- // Display Mode (0x16) +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // message display mode
- SMS_MESSAGE_DISPLAY_MODE msg_display_mode;
-
- // prl update
- unsigned char prl_update;
-
- // encoding
- unsigned char encoding;
-
- }
- SMS_DISPLAY_MODE;
-
-
-
-
-
-
-
-
-
-
- // Multiple Encoding User Data (0x17) ++++++++++++++++++++++++++++++++++++++++++
- // TBD...
- typedef struct
- {
- // message encoding
- unsigned char msg_encoding;
-
- // user data length
- unsigned char num_fields;
-
- // user data
- unsigned char* user_data;
-
- }
- SMS_MULTIPLE_ENCODING_USER_DATA_ENDCODING_SPECIFIC_FIELDS;
-
-
- typedef struct
- {
- unsigned char length;
- SMS_MULTIPLE_ENCODING_USER_DATA_ENDCODING_SPECIFIC_FIELDS *encoding_specific_fields;
-
- }
- SMS_MULTIPLE_ENCODING_USER_DATA;
-
-
-
-
-
-
-
-
-
-
- // Memory Index (0x18) +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- typedef struct
- {
- // parameter length
- unsigned char length;
-
- // memory address
- unsigned short mem_address;
-
- }
- SMS_MEMORY_INDEX;
-
-
-
-
-
-
-
-
-
-
-
-
- // SMS Message +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
- typedef struct
- {
- // ruim memory index
- unsigned char uim_memory_index;
-
- // ruim tag
- unsigned char uim_tag;
-
- // Remaining frame count
- unsigned char rfr_cnt;
-
- // 0x00 : SMS Point to Point Message, 0x01 : SMS Broadcast Message
- unsigned char sms_msg_cat;
-
- // parametr mask
- unsigned char sms_param_mask[4];
-
- // One of more occurrences of the following parameter record ------------
-
- // service id (1 byte) -- 0x01
- SMS_TELESERVICE_IDENTIFIER teleserviceIdentifier;
-
- // broadcast service category (2 byte) -- 0x02
- SMS_BROADCAST_SERVICE_CATEGORY broadcastServiceCategory;
-
- // Address-Destination Address or Origination Address -- 0x03
- SMS_ADDRESS address;
-
- // Subaddress-Destination or Origination -- 0x04
- SMS_SUBADDRESS subaddress;
-
- // Bearer reply option - Reply sequence number -- 0x05
- // This field shall be set to a value identifying the SMS message for
- // which acknowledgment is requested. : 0 ~ 63 ( modulo of 8 )
- SMS_BEARER_REPLY_OPTION bearer_reply_option;
-
- // Cause Codes -- 0x06
- SMS_CAUSE_CODES cause_codes;
-
- // message identifier -- 0x07
- SMS_MESSAGE_IDENTIFIER message_identifier;
-
- // user data -- 0x08
- SMS_USER_DATA user_data;
-
- // user response code -
- //This field value depends on the teleservices or the carrier-- 0x09
- SMS_USER_RESPONSE_CODE response_code;
-
- // Message Center Time Stamp -- 0x0A
- SMS_MESSAGE_CENTER_TIME_STAMP message_center_time_stamp;
-
- // Validity Period - Absolute -- 0x0B
- SMS_VALIDITY_PERIOD_ABSOLUTE validity_period_absolute;
-
- // Validity Period - Relative -- 0x0C
- SMS_VALIDITY_PERIOD_RELATIVE validity_period_relative;
-
- // Deferred Delivery Time - Absolute -- 0x0D
- SMS_DEFERRED_DELIVERY_TIME_ABSOLUTE deferred_delivery_time_absolute;
-
- // Deferred Delivery Time - Relative -- 0x0E
- SMS_DEFERRED_DELIVERY_TIME_RELATIVE deferred_delivery_time_relative;
-
- // Priority Indicator - use SMS_PRIORITY_INDICATOR 0x0F
- SMS_PRIORITY_INDICATOR priority_indicator;
-
- // Privacy Indicator - use SMS_PRIVACY_INDICATOR 0x10
- SMS_PRIVACY_INDICATOR privacy_indicator;
-
- // reply option -- 0x11
- SMS_REPLY_OPTION reply_option;
-
- // Number of Messages --0x12 (0 ~ 99)
- // The number of messages element is a 0 to 99 decimal number
- SMS_NUMBER_OF_MESSAGES number_of_messages;
-
- // Alert on Message Delivery -- Ox13 - use SMS_ALERT_MESSAGE_DELIVERY_ALERT_PRIORITY
- SMS_ALERT_ON_MESSAGE_DELIVERY alert_message_delivery;
-
- // language indicator -- 0x14 - use SMS_LANGUAGE_INDICATOR_LANGUAGE
- SMS_LANGUAGE_INDICATOR language_indicator;
-
- // call back number -- 0x15
- SMS_CALL_BACK_NUMBER call_back_number;
-
- // message display mode -- 0x16 - use SMS_MESSAGE_DISPLAY_MODE
- SMS_DISPLAY_MODE message_display_mode;
-
- // multiple encoding user data -- 0x17
- SMS_MULTIPLE_ENCODING_USER_DATA multiple_encoding_user_data;
-
- // memory index -- 0x18
- SMS_MEMORY_INDEX memory_index;
-
-
- }
- TSamsungSMS;
-
-
-
-
- // ++++++++++++++++++++++++++++++++++++++++++++++++++ function prototype define
- void lxt_sms_init_message(LXT_SMS *s);
- int lxt_sms_paramsParser(TSamsungSMS *s, unsigned char *r);
- void lxt_sms_parser(LXT_SMS *s,unsigned char memoryIndex,unsigned char tag,unsigned char rfr_cnt,unsigned char msg_cat,unsigned char *param_mask,unsigned char *rawdata,unsigned char length);
- int lxt_sms_paramsDeparser(TSamsungSMS *s, unsigned char param_id, unsigned char *r);
- unsigned char *lxt_sms_deparser(LXT_SMS *s, unsigned char *length);
-
-
-
-
-
-
-
-
-#ifdef __cplusplus
-}
-#endif
-
-
-#endif // _LXTSMS_H_
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef _LXTSMSTYPEDEF_H_
-#define _LXTSMSTYPEDEF_H_
-
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
-
- // ++++++++++++++++++++++++++++++++++++++++++++++include about standard library
-
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++include user define
-
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++define area
-
- typedef enum
- {
- SMS_PARAM_ID_TELESERVICE_IDENTIFIER= 0x01,
- SMS_PARAM_ID_BROADCAST_SERVICE_CATEGORY= 0x02,
- SMS_PARAM_ID_ADDRESS= 0x03,
- SMS_PARAM_ID_SUBADDRESS= 0x04,
- SMS_PARAM_ID_BEARER_REPLY_OPTION= 0x05,
- SMS_PARAM_ID_CAUSE_CODES= 0x06,
- SMS_PARAM_ID_MESSAGE_IDENTIFIER= 0x07,
- SMS_PARAM_ID_USER_DATA= 0x08,
- SMS_PARAM_ID_USER_RESPONSE_CODE= 0x09,
- SMS_PARAM_ID_MESSAGE_CENTER_TIME_STAMP= 0x0a,
- SMS_PARAM_ID_VALIDITY_PERIOD_ABSOLUTE= 0x0b,
- SMS_PARAM_ID_VALIDITY_PERIOD_RELATIVE= 0x0c,
- SMS_PARAM_ID_DEFERRED_DELIVERY_TIME_ABSOLUTE= 0x0d,
- SMS_PARAM_ID_DEFERRED_DELIVERY_TIME_RELATIVE= 0x0e,
- SMS_PARAM_ID_PRIORITY_INDICATOR= 0x0f,
- SMS_PARAM_ID_PRIVACY_INDICATOR= 0x10,
- SMS_PARAM_ID_REPLY_OPTION= 0x11,
- SMS_PARAM_ID_NUMBER_OF_MESSAGES= 0x12,
- SMS_PARAM_ID_ALERT_ON_MESSAGE_DELIVERY= 0x13,
- SMS_PARAM_ID_LANGUAGE_INDICATOR= 0x14,
- SMS_PARAM_ID_CALL_BACK_NUMBER= 0x15,
- SMS_PARAM_ID_DISPLAY_MODE= 0x16,
- SMS_PARAM_ID_MULTIPLE_ENCODING_USER_DATA= 0x17,
- SMS_PARAM_ID_MEMORY_INDEX= 0x18
- }SMS_PARAM_ID;
-
-
-
- typedef enum
- {
- SMS_ADDRESS_DIGIT_MODE_4BIT_DTMF= 0x00,
- SMS_ADDRESS_DIGIT_MODE_8BIT_CODE= 0x01
- }SMS_ADDRESS_DIGIT_MODE;
-
- typedef enum
- {
- SMS_ADDRESS_NUMBER_MODE_ANSI_TI_DOT_607= 0x00,
- SMS_ADDRESS_NUMBER_MODE_DATA_NETWORK= 0x01
- }SMS_ADDRESS_NUMBER_MODE;
-
- typedef unsigned char SMS_ADDRESS_NUMBER_TYPE;
-
- typedef enum
- {
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_UNKNOWN= 0x00,
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_INTERNATIONAL_NUMBER= 0x01,
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_NATIONAL_NUMBER= 0x02,
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_NETWORK_SPECIFIC_NUMBER= 0x03,
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_SUBSCRIBER_NUMBER= 0x04,
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_RESERVED= 0x05,
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_ABBREVIATED_NUMBER= 0x06,
- SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607_RESERVED_FOR_EXTENSION= 0x07
- }SMS_ADDRESS_NUMBER_TYPE_ANSI_TI_DOT_607;
-
- typedef enum
- {
- SMS_ADDRESS_NUMBER_TYPE_DATA_NETWORK_UNKNOWN= 0x00,
- SMS_ADDRESS_NUMBER_TYPE_DATA_NETWORK_INTERNET_PROTOCOL_RFC791= 0x01,
- SMS_ADDRESS_NUMBER_TYPE_DATA_NETWORK_INTERNET_EMAIL_ADDRESS_RFC822= 0x02
- }SMS_ADDRESS_NUMBER_TYPE_DATA_NETWORK;
-
- typedef enum
- {
- SMS_ADDRESS_NUMBER_PLAN_UNKNOWN= 0x00,
- SMS_ADDRESS_NUMBER_PLAN_ISDN_TELEPHONY_NUMBERING_PLAN= 0x01,
- SMS_ADDRESS_NUMBER_PLAN_DATA_NUMBERING_PLAN= 0x02,
- SMS_ADDRESS_NUMBER_PLAN_TELEX_NUMBERING_PLAN= 0x03,
- SMS_ADDRESS_NUMBER_PLAN_PRIVATE_NUMBERING_PLAN= 0x09,
- SMS_ADDRESS_NUMBER_PLAN_RESERVED_FOR_EXTENSION= 0x0F
- }SMS_ADDRESS_NUMBER_PLAN;
-
-
- typedef enum
- {
- SMS_TELESERVICE_ID_TELESRV_CPT_95= 0x00,
- SMS_TELESERVICE_ID_TELESRV_CMT_95= 0x01,
- SMS_TELESERVICE_ID_TELESRV_VMN_95= 0x02,
- SMS_TELESERVICE_ID_TELESRV_CMT_91_CLI= 0x03,
- SMS_TELESERVICE_ID_TELESRV_CMT91_VOICE_MAIL= 0x04,
- SMS_TELESERVICE_ID_TELESRV_CMT_91_SHORT_MSG= 0x05,
- SMS_TELESERVICE_ID_TELESRV_MSG_WAITING= 0x06,
- SMS_TELESERVICE_ID_TELESRV_WAP= 0x07
- }SMS_TELESERVICE_ID;
-
- typedef enum
- {
- SMS_BROADCAST_SERVICE_CATEGORY_UNKNOWN_OR_UNSPECIFIED= 0x0000,
- SMS_BROADCAST_SERVICE_CATEGORY_EMERGENCY_BROADCASTS= 0x0001,
- SMS_BROADCAST_SERVICE_CATEGORY_ADMINISTRATIVE= 0x0002,
- SMS_BROADCAST_SERVICE_CATEGORY_MAINTENANCE= 0x0003,
- SMS_BROADCAST_SERVICE_CATEGORY_GENERAL_NEWS_LOCAL= 0x0004,
- SMS_BROADCAST_SERVICE_CATEGORY_GENERAL_NEWS_REGIONAL= 0x0005,
- SMS_BROADCAST_SERVICE_CATEGORY_GENERAL_NEWS_NATIONAL= 0x0006,
- SMS_BROADCAST_SERVICE_CATEGORY_GENERAL_NEWS_INTERNATIONAL= 0x0007,
- SMS_BROADCAST_SERVICE_CATEGORY_BUSINESS_FINANCIAL_NEWS_LOCAL= 0x0008,
- SMS_BROADCAST_SERVICE_CATEGORY_BUSINESS_FINANCIAL_NEWS_REGIONAL= 0x0009,
- SMS_BROADCAST_SERVICE_CATEGORY_BUSINESS_FINANCIAL_NEWS_NATIONAL= 0x000A,
- SMS_BROADCAST_SERVICE_CATEGORY_BUSINESS_FINANCIAL_NEWS_INTERNATIONAL= 0x000B,
- SMS_BROADCAST_SERVICE_CATEGORY_SPORTS_NEWS_LOCAL= 0x000C,
- SMS_BROADCAST_SERVICE_CATEGORY_SPORTS_NEWS_REGIONAL= 0x000D,
- SMS_BROADCAST_SERVICE_CATEGORY_SPORTS_NEWS_NATIONAL= 0x000E,
- SMS_BROADCAST_SERVICE_CATEGORY_SPORTS_NEWS_INTERNATIONAL= 0x000F,
- SMS_BROADCAST_SERVICE_CATEGORY_ENTERTAINMENT_NEWS_LOCAL= 0x0010,
- SMS_BROADCAST_SERVICE_CATEGORY_ENTERTAINMENT_NEWS_REGIONAL= 0x0011,
- SMS_BROADCAST_SERVICE_CATEGORY_ENTERTAINMENT_NEWS_NATIONAL= 0x0012,
- SMS_BROADCAST_SERVICE_CATEGORY_ENTERTAINMENT_NEWS_INTERNATIONAL= 0x0013,
- SMS_BROADCAST_SERVICE_CATEGORY_LOCAL_WEATHER= 0x0014,
- SMS_BROADCAST_SERVICE_CATEGORY_AREA_TRAFFIC_REPORTS= 0x0015,
- SMS_BROADCAST_SERVICE_CATEGORY_LOCAL_AIRPORT_FLIGHT_SCHEDULES= 0x0016,
- SMS_BROADCAST_SERVICE_CATEGORY_RESTAURANTS= 0x0017,
- SMS_BROADCAST_SERVICE_CATEGORY_LODGINGS= 0x0018,
- SMS_BROADCAST_SERVICE_CATEGORY_RETAIL_DIRECTORY= 0x0019,
- SMS_BROADCAST_SERVICE_CATEGORY_ADVERTISEMENTS= 0x001A,
- SMS_BROADCAST_SERVICE_CATEGORY_STOCK_QUOTES= 0x001B,
- SMS_BROADCAST_SERVICE_CATEGORY_EMPLOYMENT_OPPORTUNITIES= 0x001C,
- SMS_BROADCAST_SERVICE_CATEGORY_MEDICAL_HEALTH_HOSPITALS= 0x001D,
- SMS_BROADCAST_SERVICE_CATEGORY_TECHNOLOGY_NEWS= 0x001E,
- SMS_BROADCAST_SERVICE_CATEGORY_MULTI_CATEGORY= 0x001F
- }SMS_BROADCAST_SERVICE_CATEGORY_CATEGORY;
-
-
- typedef enum
- {
- SMS_SUBADDRESS_TYPE_NSAP= 0x00,
- SMS_SUBADDRESS_TYPE_USER_SPECIFIED= 0x01
- }SMS_SUBADDRESS_TYPE;
-
-
- typedef enum
- {
- SMS_CAUSE_CODES_ERROR_CLASS_NONE_ERROR= 0x00,
- SMS_CAUSE_CODES_ERROR_CLASS_TEMPORARY_ERROR= 0x02,
- SMS_CAUSE_CODES_ERROR_CLASS_PERMANENT_ERROR= 0x03,
- SMS_CAUSE_CODES_ERROR_CLASS_PHONE_INTERNAL_STATUS= 0x04
- }SMS_CAUSE_CODES_ERROR_CLASS;
-
- typedef unsigned char SMS_CAUSE_CODE_CAUSE_CODE;
-
- typedef enum
- {
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_ADDRESS_VACANT= 0,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_ADDRESS_TRANSLATION_FAILURE= 1,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_NETWORK_RESOURCE_SHORTAGE= 2,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_NETWORK_FAILURE= 3,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_INVALID_TELESERVICE_ID= 4,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_NETWORK_PROBLEM= 5,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_NETWORK_PROBLEM_MORE_FIRST= 6,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_NETWORK_PROBLEM_MORE_LAST= 31,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_NO_PAGE_RESPONSE= 32,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_DESTINATION_BUSY= 33,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_NO_ACK= 34,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_DESTINATION_RESOURCE_SHORTAGE= 35,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_SMS_DELIVERY_POSTPONED= 36,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_DESTINATION_OUT_OF_SERVICE= 37,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_DESTINATION_NO_LONGER_AT_THIS_ADDRESS= 38,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_TERMINAL_PROBLEM= 39,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_TERMINAL_PROBLEM_MORE_FIRST= 40,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_TERMINAL_PROBLEM_MORE_LAST= 47,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_SMS_DELIVERY_POSTPONED_MORE_FIRST= 48,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_SMS_DELIVERY_POSTPONED_MORE_LAST= 63,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_RADIO_IF_RESOURCE_SHORTAGE= 64,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_RADIO_IF_INCOMPATIBLE= 65,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_RADIO_IF_PROBLEM= 66,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_RADIO_IF_PROBLEM_MORE_FIRST= 67,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_RADIO_IF_PROBLEM_MORE_LAST= 95,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_UNEXPECTED_PARM_SIZE_S= 96,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_SMS_ORIGINATION_DENIED= 97,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_SMS_TERMINATION_DENIED= 98,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_SUPPLMENTARY_SERVICE_NOT_SUPPORTED= 99,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_SMS_NOT_SUPPORTED= 100,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_RESERVED_101= 101,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_MISSING_EXPECTED_PARM= 102,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_MISSING_MANDATORY_PARM= 103,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_UNRECOGNIZED_PARM_VALUE= 104,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_UNEXPECTED_PARM_VALUE= 105,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_USER_DATA_SIZE_ERROR= 106,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_GENERAL_PROBLEMS= 107,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_GENERAL_PROBLEMS_MORE_FIRST= 108,
- SMS_CAUSE_CODE_CAUSE_CODE_NETWORK_OTHER_GENERAL_PROBLEMS_MORE_LAST= 255
- }SMS_CAUSE_CODE_CAUSE_CODE_NETWORK;
-
- typedef enum
- {
- // 0x00 : layer 2 acknowledgment received
- // 0x02 : SMS transmission failed because a transmission time is expired
- // or phone internal error occurred during the SMS transmission
-
- SMS_CAUSE_CODE_CAUSE_CODE_INTERNAL_STATUS_L2ACK_RCVD= 0x00,
- SMS_CAUSE_CODE_CAUSE_CODE_INTERNAL_STATUS_FAIL= 0x01,
- SMS_CAUSE_CODE_CAUSE_CODE_INTERNAL_STATUS_FAIL_NO_SVC= 0x02,
- SMS_CAUSE_CODE_CAUSE_CODE_INTERNAL_STATUS_FAIL_PHONE_BUSY= 0x03,
- SMS_CAUSE_CODE_CAUSE_CODE_INTERNAL_STATUS_FAIL_OTHER= 0x04
- }SMS_CAUSE_CODE_CAUSE_CODE_INTERNAL;
-
-
-
- typedef enum
- {
- SMS_MESSAGE_TYPE_RESERVED= 0x00,
- SMS_MESSAGE_TYPE_SMS_DELIVER_MESSAGE= 0x01,
- SMS_MESSAGE_TYPE_SMS_SUBMIT_MESSAGE= 0x02,
- SMS_MESSAGE_TYPE_SMS_CANCELLATION_MESSAGE= 0x03,
- SMS_MESSAGE_TYPE_SMS_DELIVERY_ACKNOWLEDGMENT_MESSAGE= 0x04,
- SMS_MESSAGE_TYPE_SMS_USER_ACKNOWLEDGMENT_MESSAGE= 0x05,
- SMS_MESSAGE_TYPE_ALL_MESSAGE= 0x0F
- }SMS_MESSAGE_TYPE;
-
-
-
- typedef enum
- {
- SMS_USER_DATA_MSG_ENCODING_OCTET= 0x00,
- SMS_USER_DATA_MSG_ENCODING_IS_91_EXTENDED_PROTOCOL= 0x01,
- SMS_USER_DATA_MSG_ENCODING_7BIT_ASCII= 0x02,
- SMS_USER_DATA_MSG_ENCODING_IA5= 0x03,
- SMS_USER_DATA_MSG_ENCODING_UNICODE= 0x04,
- SMS_USER_DATA_MSG_ENCODING_SHIFT_JIS= 0x05,
- SMS_USER_DATA_MSG_ENCODING_KSC5601= 0x06,
- SMS_USER_DATA_MSG_ENCODING_ISO_8859_8= 0x07,
- SMS_USER_DATA_MSG_ENCODING_ISO_8859_1= 0x08,
- SMS_USER_DATA_MSG_ENCODING_KSC5601_KOREAN= 0x10
- }SMS_USER_DATA_MSG_ENCODING;
-
-
- typedef enum
- {
- SMS_PRIORITY_INDICATOR_NORMAL= 0x00,
- SMS_PRIORITY_INDICATOR_INTERACTIVE= 0x01,
- SMS_PRIORITY_INDICATOR_URGENT= 0x02,
- SMS_PRIORITY_INDICATOR_EMERGENCY= 0x03
- }SMS_PRIORITY_INDICATOR_PRIORITY;
-
-
-
- typedef enum
- {
- SMS_PRIVACY_INDICATOR_NOT_RESTRICTED= 0x00,
- SMS_PRIVACY_INDICATOR_RESTRICTED= 0x01,
- SMS_PRIVACY_INDICATOR_CONFIDENTIAL= 0x02,
- SMS_PRIVACY_INDICATOR_SECRET= 0x03
- }SMS_PRIVACY_INDICATOR_PRIVACY;
-
-
-
- typedef enum
- {
- SMS_ALERT_MESSAGE_DELIVERY_ALERT_PRIORITY_MOBILE_DEFAULT_ALERT= 0x00,
- SMS_ALERT_MESSAGE_DELIVERY_ALERT_PRIORITY_LOW_PRIORITY_ALERT= 0x01,
- SMS_ALERT_MESSAGE_DELIVERY_ALERT_PRIORITY_MEDIUM_PRIORITY_ALERT= 0x02,
- SMS_ALERT_MESSAGE_DELIVERY_ALERT_PRIORITY_HIGH_PRIORITY_ALERT= 0x03
- }SMS_ALERT_MESSAGE_DELIVERY_ALERT_PRIORITY;
-
-
-
- typedef enum
- {
- SMS_LANGUAGE_INDICATOR_LANGUAGE_UNKNOWN= 0x00,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_ENGLISH= 0x01,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_FRENCH= 0x02,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_SPANISH= 0x03,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_JAPANESE= 0x04,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_KOREAN= 0x05,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_CHINESE= 0x06,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_HEBREW= 0x07,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_KOREAN_1= 0x40,
- SMS_LANGUAGE_INDICATOR_LANGUAGE_KOREAN_SKT= 0xFE
- }SMS_LANGUAGE_INDICATOR_LANGUAGE;
-
-
-
- typedef enum
- {
- SMS_MESSAGE_DISPLAY_MODE_IMMEDIATE_DISPLAY= 0x00,
- SMS_MESSAGE_DISPLAY_MODE_MOBILE_DEFAULT_SETTING= 0x01,
- SMS_MESSAGE_DISPLAY_MODE_USER_INVOKE= 0x03,
- SMS_MESSAGE_DISPLAY_MODE_RESERVED= 0x04
- }SMS_MESSAGE_DISPLAY_MODE;
-
-
-
-
-
-
- // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++global variable area
-
- // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++function prototype
-
-
-
-#ifdef __cplusplus
-}
-#endif
-
-
-#endif // _LXTSMSTYPEDEF_H_
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef _LXTUTIL_H_
-#define _LXTUTIL_H_
-
-#include <stdio.h>
-#include <stdlib.h>
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
-void* lxt_util_malloc(int size);
-void lxt_util_free(void *p);
-int lxt_util_readRawBytes(int fd, void *data, int size);
-int lxt_util_writeRawBytes(int fd, void *data, int size);
-void lxt_util_rawdataPrint(void *rawdata, int rawdatasize, const char *title);
-int lxt_msg_send_to_server(int fd, void *data, int size);
-int lxt_msg_send_message(int fd, unsigned char g, unsigned char a, unsigned short len, void *data);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif // _LXTUTIL_H_
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef _PHONEPROTOCOL_H_
-#define _PHONEPROTOCOL_H_
-
-
-// define of environment+++++++++++++++++++++++++++++++++++++++++++++++++++++++
-
-
-// define of phone state+++++++++++++++++++++++++++++++++++++++++++++++++++++++
-typedef enum
-{
- LXT_STATE_OFF = 0x01,
- LXT_STATE_ON = 0x02,
- LXT_STATE_UIM_NOT_READY = 0x03,
- LXT_STATE_UIM_READY = 0x08,
- LXT_STATE_NO_SERVICE = 0x10,
- LXT_STATE_STANDBY = 0x20,
- LXT_STATE_WAITING_OUTGOING_CALL = 0x31,
- LXT_STATE_WAITING_INCOMING_CALL = 0x32,
- LXT_STATE_WAITING_DATA_SERVICE = 0x33,
- LXT_STATE_CONVERSATION = 0x40,
- LXT_STATE_DATA_SERVICED = 0x50,
- LXT_STATE_DIAL_UP_DATA_SERVICED = 0x55,
- LXT_STATE_RELEASED = 0x60,
- LXT_STATE_RESERVED = 0x1F
-
-} LXT_PHONE_STATE;
-
-
-// define of message cast method++++++++++++++++++++++++++++++++++++++++++++++
-enum LXT_MESSAGE_CAST_METHOD
-{
- LXT_MESSAGE_CAST_METHOD_BY_MYSELF = 0x40, // ID of by me(comsumption by server)
- LXT_MESSAGE_CAST_METHOD_BY_OWNER = 0x41, // ID of by owner(decide by server)
- LXT_MESSAGE_CAST_METHOD_BROADCAST = 0x42 // ID of all(broadcast by server)
-};
-
-
-// define of id+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-typedef enum
-{
- LXT_ID_CLIENT_RESERVED = 0x00, // ID of Reserved
- LXT_ID_CLIENT_INDICATOR = 0x01, // ID of GUI Server
- LXT_ID_CLIENT_PHONE = 0x02, // ID of Phone Client
- LXT_ID_CLIENT_SMS = 0x03, // ID of SMS Client
- LXT_ID_CLIENT_RUIM = 0x04, // ID of RUIM Manager
- LXT_ID_CLIENT_SERVICEMODE = 0x05, // ID of Service Mode
- LXT_ID_CLIENT_DATASERVICE = 0x06, // ID of Data service
- LXT_ID_CLIENT_DIAL_ON_DEMAND = 0x07, // ID of Dial on demand
- LXT_ID_CLIENT_UTK = 0x08, // ID of UTK Client
- LXT_ID_CLIENT_ADDRESS = 0x09, // ID of Address Book
- LXT_ID_CLIENT_PHONE_SETUP = 0x0A, // ID of Phone setup
- LXT_ID_CLIENT_CARD_MANAGER = 0x0B, // ID of CARD Manager
- LXT_ID_CLIENT_SMS_DAEMON = 0x0C, // ID of SMS Daemon
- LXT_ID_CLIENT_GPS = 0x0D, // ID of GPS
- LXT_ID_CLIENT_SECURITY_SETUP = 0x0E, // ID of Security Setup
- LXT_ID_CLIENT_SAT = 0x0F, // ID of sim application toolkit
- LXT_ID_CLIENT_DATA_1 = 0x10, // ID of data 1
- LXT_ID_CLIENT_DATA_2 = 0x11, // ID of data 2
- LXT_ID_CLIENT_DATA_3 = 0x12, // ID of data 3
- LXT_ID_CLIENT_DATA_4 = 0x13, // ID of data 4
- LXT_ID_CLIENT_DATA_5 = 0x14, // ID of data 5
- LXT_ID_CLIENT_DATA_6 = 0x15, // ID of data 6
- LXT_ID_CLIENT_EVENT_INJECTOR = 0x16, //ID of event injector
- LXT_ID_CLIENT_EVENT_MANAGER_RX = 0x17, //ID of event injector
- LXT_ID_CLIENT_EVENT_MANAGER_TX = 0x18, //ID of event injector
- LXT_ID_CLIENT_EVENT_MANAGER = 0x19, //ID of event manager
- LXT_ID_CLIENT_INVALID = 0x39, // ID of invalid
- LXT_ID_CLIENT_ANY = 0xff
-}
-LXT_ID_CLIENT;
-
-
-
-
-
-// define of main group+++++++++++++++++++++++++++++++++++++++++++++++++++++++
-enum LXT_GRP
-{
- LXT_GRP_INTERNAL = 0x40, // Internal
- LXT_GRP_POWER = 0x51, // power
- LXT_GRP_CONFIGURATION = 0x52, // configuration
- LXT_GRP_CALL = 0x53, // call
- LXT_GRP_DISPLAY = 0x54, // display
- LXT_GRP_SMS = 0x55, // sms
- LXT_GRP_SERVICEMODE = 0x56, // service mode
- LXT_GRP_SOUND = 0x57, // sound
- LXT_GRP_UIM = 0x58, // UIM
- LXT_GRP_DATASERVICE = 0x59, // Data service
- LXT_GRP_UTK = 0x5A, // UTK
- LXT_GRP_SIOMODE = 0x5B, // SIO Mode
- LXT_GRP_RESPONSE = 0x5F, // response
- LXT_GRP_PHONE_BOOK = 0x61, // phone book
- LXT_GRP_CARD_SMS = 0x62, // card sms
- LXT_GRP_GPS = 0x63, // GPS
- LXT_GRP_EOT = 0x80 // eot
-
-};
-
-
-// define of ppp status +++++++++++++++++++++++++++++++++++++++++++++++++++++++
-typedef enum
-{
- PPP_STATUS_IDLE = 0x01,
- PPP_STATUS_WORKING = 0x02,
- PPP_STATUS_BUSY = 0x04,
- PPP_STATUS_DORMANT = 0x05,
- PPP_STATUS_SUPER = 0x06,
- PPP_EVENT_IP_REASSIGNED = 0x10
-
-}
-PPP_STATUS;
-
-// define of action group (client info)++++++++++++++++++++++++++++++++++++++++++
-enum LXT_PDA_CLIENT_INFO
-{
- LXT_PDA_INTERNAL_ID_REQUEST = 0x41, // save id
- LXT_PDA_INTERNAL_STATE_REQUEST = 0x42,
- LXT_PDA_INTERNAL_PHONE_NUMBER_REQUEST = 0x43,
- LXT_PDA_INTERNAL_AUDIO_TO_SPEAKER_REQUEST = 0x44,
- LXT_PDA_INTERNAL_AUDIO_TO_RECEIVER_REQUEST = 0x45,
- LXT_PDA_INTERNAL_FACTORY_MODE_REQUEST = 0x46,
- LXT_PDA_INTERNAL_MISSED_MESSAGE_REQUEST = 0x47,
- LXT_PDA_INTERNAL_SEND_RAWDATA_REQUEST = 0x50,
- LXT_PDA_INTERNAL_LOOP_BACK_REQEUST = 0x51,
- LXT_PHN_INTERNAL_NOTIFY_PHONEBOOK_LOADING_COMPLETION_REQUEST = 0x52,
- LXT_PHN_INTERNAL_PHONEBOOK_LOADING_COMPLETION_STATUS_REQUEST = 0x53,
- LXT_PHN_INTERNAL_BACKUP_BATTERY_CONTROL_REQUEST = 0x55,
- LXT_PHN_INTERNAL_EARJACK_STATUS_REQUEST = 0x56,
- LXT_PDA_INTERNAL_LAUNCH_SAT_APP_REQUEST = 0x57,
- LXT_PDA_INTERNAL_SETUP_SAT_APP_REQUEST = 0x58,
- LXT_PDA_INTERNAL_PHONE_BATTERY_REQUEST = 0x59,
-};
-
-enum LXT_PHN_PHONE_INFO
-{
- LXT_PHN_INTERNAL_STATE_RESPONSE = 0x42, // state change
- LXT_PHN_INTERNAL_STATE_CHANGE_NOTIFICATION = 0x43, // state change
- LXT_PHN_INTERNAL_PHONE_NUMBER_RESPONSE = 0x44,
- LXT_PHN_INTERNAL_PDA_SLEEP_NOTIFICATION = 0x45,
- LXT_PHN_INTERNAL_SERVER_DIE_EMERGENCY = 0x49,
- LXT_PHN_INTERNAL_SERVER_SIM_COVER_OPENED = 0x50,
- LXT_PHN_INTERNAL_SERVER_SIM_COVER_CLOSED = 0x51,
- LXT_PHN_INTERNAL_SERVER_PHONE_REBUILD_START = 0x52,
- LXT_PHN_INTERNAL_SERVER_PHONE_REBUILD_END = 0x53,
- LXT_PHN_INTERNAL_SERVER_PHONE_FATAL_ERROR = 0x54,
- LXT_PHN_INTERNAL_SERVER_PHONE_NV_BACKUP_NOTIFICATION = 0x55,
- LXT_PHN_INTERNAL_PHONEBOOK_LOADING_COMPLETION_NOTIFICATION = 0x56,
- LXT_PHN_INTERNAL_EARJACK_STATUS_RESPONSE = 0x57,
- LXT_PDA_INTERNAL_LAUNCH_SAT_APP_RESPONSE = 0x58,
- LXT_PDA_INTERNAL_SETUP_SAT_APP_RESPONSE = 0x59,
-};
-
-// define of action group (power)+++++++++++++++++++++++++++++++++++++++++++++
-enum LXT_PDA_POWER
-{
- LXT_PDA_POWER_ON_REQUEST = 0x41, // power on
- LXT_PDA_POWER_RESET_REQUEST = 0x42, // power reset
- LXT_PDA_POWER_OFF_REQUEST = 0x43 // power off
-
-};
-
-enum LXT_PHN_POWER
-{
- LXT_PHN_POWER_BATTERY_STATUS_NOTIFICATION = 0x41,
- LXT_PHN_POWER_PHONE_BOOT_COMPLETED_NOTIFICATION = 0x42
-};
-
-
-// define of action group (configuration)+++++++++++++++++++++++++++++++++++++
-/*
-enum LXT_PDA_CONFIGURATION
-{
- LXT_PDA_CONFIGURATION_SET_DEFAULT_CONFIGURATION_REQUEST = 0x41,
- LXT_PDA_CONFIGURATION_CURRENT_TIME_REQUEST = 0x42, // current time request
- LXT_PDA_CONFIGURATION_PHONE_NUMBER_REQUEST = 0x43,
- LXT_PDA_CONFIGURATION_PHONE_VERSION_REQUEST = 0x44,
- LXT_PDA_CONFIGURATION_GET_PHONE_LOCK_REQUEST = 0x45,
- LXT_PDA_CONFIGURATION_SET_PHONE_LOCK_REQUEST = 0x46,
- LXT_PDA_CONFIGURATION_GET_RADIO_CONFIGURATION_REQUEST = 0x47,
- LXT_PDA_CONFIGURATION_SET_RADIO_CONFIGURATION_REQUEST = 0x48,
- LXT_PDA_CONFIGURATION_GET_SYSTEM_PREFERENCE_REQUEST = 0x49,
- LXT_PDA_CONFIGURATION_SET_SYSTEM_PREFERENCE_REQUEST = 0x4A,
- LXT_PDA_CONFIGURATION_GET_SYSTEM_PARAMETER_REQUEST = 0x4B,
- LXT_PDA_CONFIGURATION_SET_SYSTEM_PARAMETER_REQUEST = 0x4C,
- LXT_PDA_CONFIGURATION_GET_NAM_INFORMATION_REQUEST = 0x4D,
- LXT_PDA_CONFIGURATION_GET_NAM_DATA_REQUEST = 0x4E,
- LXT_PDA_CONFIGURATION_GET_PHONE_STATE_CHANGING_REQUEST = 0x4F,
- LXT_PDA_CONFIGURATION_SET_PHONE_STATE_CHANGING_REQUEST = 0x50,
- LXT_PDA_CONFIGURATION_BATTERY_MEDIATENESS_CONFIRM = 0x51,
- LXT_PDA_CONFIGURATION_GET_PDA_BATTERY_REQUEST = 0x52
-};
-
-enum LXT_PHN_CONFIGURATION
-{
- LXT_PHN_CONFIGURATION_SET_DEFAULT_CONFIGURATION_RESPONSE = 0x41,
- LXT_PHN_CONFIGURATION_CURRENT_TIME_RESPONSE = 0x42,
- LXT_PHN_CONFIGURATION_CURRENT_TIME_NOTIFICATION = 0x43,
- LXT_PHN_CONFIGURATION_PHONE_NUMBER_RESPONSE = 0x44,
- LXT_PHN_CONFIGURATION_PHONE_VERSION_RESPONSE = 0x45,
- LXT_PHN_CONFIGURATION_PHONE_STATE_CHANGE_NOTIFICATION = 0x46,
- LXT_PHN_CONFIGURATION_PHONE_SERVICE_READY_NOTIFICATION = 0x47,
- LXT_PHN_CONFIGURATION_GET_PHONE_LOCK_RESPONSE = 0x48,
- LXT_PHN_CONFIGURATION_PHONE_LOCK_NOTIFICATION = 0x49,
- LXT_PHN_CONFIGURATION_GET_RADIO_CONFIGURATION_RESPONSE = 0x4A,
- LXT_PHN_CONFIGURATION_GET_SYSTEM_PREFERENCE_RESPONSE = 0x4B,
- LXT_PHN_CONFIGURATION_GET_SYSTEM_PARAMETER_RESPONSE = 0x4C,
- LXT_PHN_CONFIGURATION_SYSTEM_PARAMETER_CHANGE_NOTIFICATION = 0x4D,
- LXT_PHN_CONFIGURATION_GET_NAM_INFORMATION_RESPONSE = 0x4E,
- LXT_PHN_CONFIGURATION_GET_NAM_DATA_RESPONSE = 0x4F,
- LXT_PHN_CONFIGURATION_GET_PHONE_STATE_CHANGING_RESPONSE = 0x50,
- LXT_PHN_CONFIGURATION_SET_PHONE_STATE_CHANGING_RESPONSE = 0x51,
- LXT_PHN_CONFIGURATION_HFK2_PDA_PASSWORD_INDICATION = 0x52,
- LXT_PHN_CONFIGURATION_BATTERY_MEDIATENESS_INDICATION = 0x53,
- LXT_PHN_CONFIGURATION_GET_PDA_BATTERY_RESPONSE = 0x54
-};
-*/
-
-enum LXT_PDA_CONFIGURATION2
-{
- LXT_PDA_CONFIGURATION2_GET_PHONE_LOCK_REQUEST = 0x40,
- LXT_PDA_CONFIGURATION2_SET_PHONE_LOCK_REQUEST = 0x41,
- LXT_PDA_CONFIGURATION2_SET_DEFAULT_CONFIGURATION_REQUEST = 0x42,
- LXT_PDA_CONFIGURATION2_GET_SIO_MODE_REQUEST = 0x43,
- LXT_PDA_CONFIGURATION2_SET_SIO_MODE_REQUEST = 0x44,
- LXT_PDA_CONFIGURATION2_CURRENT_TIME_REQUEST = 0x45,
- LXT_PDA_CONFIGURATION2_PHONE_NUMBER_REQUEST = 0x46,
- LXT_PDA_CONFIGURATION2_PHONE_VERSION_REQUEST = 0x47,
- LXT_PDA_CONFIGURATION2_GET_SYSTEM_PARAMETER_REQUEST = 0x48,
- LXT_PDA_CONFIGURATION2_SET_SYSTEM_PARAMETER_REQUEST = 0x49,
- LXT_PDA_CONFIGURATION2_GET_MODE_PREFERENCE_REQUEST = 0x4A,
- LXT_PDA_CONFIGURATION2_SET_MODE_PREFERENCE_REQUEST = 0x4B,
- LXT_PDA_CONFIGURATION2_GET_SYSTEM_PREFERENCE_REQUEST = 0x4C,
- LXT_PDA_CONFIGURATION2_SET_SYSTEM_PREFERENCE_REQUEST = 0x4D,
- LXT_PDA_CONFIGURATION2_GET_NAM_INFORMATION_REQUEST = 0x4E,
- LXT_PDA_CONFIGURATION2_GET_NAM_DATA_REQUEST = 0x4F,
- LXT_PDA_CONFIGURATION2_GET_PHONE_STATE_CHANGING_REQUEST = 0x50,
- LXT_PDA_CONFIGURATION2_SET_PHONE_STATE_CHANGING_REQUEST = 0x51,
- LXT_PDA_CONFIGURATION2_GET_GPS_MODE_REQUEST = 0x52,
- LXT_PDA_CONFIGURATION2_SET_GPS_MODE_REQUEST = 0x53,
- LXT_PDA_CONFIGURATION2_GET_RADIO_CONFIGURATION_REQUEST = 0x54,
- LXT_PDA_CONFIGURATION2_SET_RADIO_CONFIGURATION_REQUEST = 0x55,
- LXT_PDA_CONFIGURATION2_GET_VOCODER_OPTION_REQUEST = 0x56,
- LXT_PDA_CONFIGURATION2_SET_VOCODER_OPTION_REQUEST = 0x57,
- LXT_PDA_CONFIGURATION2_BATTERY_TYPE_CONFIRM = 0x58,
- LXT_PDA_CONFIGURATION2_BATTERY_CALIBRATION_CONFIRM = 0x59,
- LXT_PDA_CONFIGURATION2_GET_SLOT_MODE_REQUEST = 0x5A,
- LXT_PDA_CONFIGURATION2_SET_SLOT_MODE_REQUEST = 0x5B,
- LXT_PDA_CONFIGURATION2_GET_ESN_REQUEST = 0x5C,
- LXT_PDA_CONFIGURATION2_PDA_CURR_BATT_ADC_CONFIRM = 0x5D,
- LXT_PDA_CONFIGURATION2_GET_PDA_LOW_BATT_ADC_REQUEST = 0x5E,
- LXT_PDA_CONFIGURATION2_SET_PDA_LOW_BATT_ADC_REQUEST = 0x5F,
- LXT_PDA_CONFIGURATION2_MAC_ADDRESS_REQUEST = 0x60,
- LXT_PDA_CONFIGURATION2_GET_IMEI_REQUEST = 0x61,
- LXT_PDA_CONFIGURATION2_PDA_VERIFY_RESET_DONE_CONFIRM = 0x62,
- LXT_PHN_CONFIGURATION2_PDA_PASSWORD_CONFIRM = 0x63,
- LXT_PHN_CONFIGURATION2_DEVICE_AUTO_TEST_CONFIRM = 0x64,
- LXT_PHN_CONFIGURATION2_SERVICE_LED_ONOFF_CONFIRM = 0x65,
- LXT_PHN_CONFIGURATION2_SET_PDA_VERSION_REQUEST = 0x66
- /*
- LXT_PDA_CONFIGURATION2_BATTRY_MEDIATENESS_CONFIRM = 0x51,
- LXT_PDA_CONFIGURATION2_GET_PDA_BATTERY_REQUEST = 0x52
- */
-};
-
-enum LXT_PHN_CONFIGURATION2
-{
- LXT_PHN_CONFIGURATION2_PHONE_SERVICE_READY_NOTIFICATION = 0x40,
- LXT_PHN_CONFIGURATION2_PHONE_LOCK_RESPONSE = 0x41,
- LXT_PHN_CONFIGURATION2_PHONE_LOCK_NOTIFICATION = 0x42,
- LXT_PHN_CONFIGURATION2_CURRENT_TIME_RESPONSE = 0x43,
- LXT_PHN_CONFIGURATION2_CURRENT_TIME_NOTIFICATION = 0x44,
- LXT_PHN_CONFIGURATION2_PHONE_NUMBER_RESPONSE = 0x45,
- LXT_PHN_CONFIGURATION2_PHONE_VERSION_RESPONSE = 0x46,
- LXT_PHN_CONFIGURATION2_GET_NAM_INFORMATION_RESPONSE = 0x47,
- LXT_PHN_CONFIGURATION2_GET_NAM_DATA_RESPONSE = 0x48,
- LXT_PHN_CONFIGURATION2_PHONE_STATE_CHANGED_RESPONSE = 0x49,
- LXT_PHN_CONFIGURATION2_PHONE_STATE_CHANGED_NOTIFICATION = 0x4A,
- LXT_PHN_CONFIGURATION2_MODE_PREFERENCE_RESPONSE = 0x4B,
- LXT_PHN_CONFIGURATION2_SYSTEM_PREFERENCE_RESPONSE = 0x4C,
- LXT_PHN_CONFIGURATION2_SYSTEM_PARAMETER_RESPONSE = 0x4D,
- LXT_PHN_CONFIGURATION2_SYSTEM_PARAMETER_CHANGE_NOTIFICATION = 0x4E,
- LXT_PHN_CONFIGURATION2_SIO_MODE_RESPONSE = 0x4F,
- LXT_PHN_CONFIGURATION2_GET_GPS_MODE_RESPONSE = 0x50,
- LXT_PHN_CONFIGURATION2_GET_RADIO_CONFIGURATION_RESPONSE = 0x51,
- LXT_PHN_CONFIGURATION2_GET_VOCODER_OPTION_RESPONSE = 0x52,
- LXT_PHN_CONFIGURATION2_SET_DEFAULT_CONFIGURATION_RESPONSE = 0x53,
- LXT_PHN_CONFIGURATION2_BATTERY_TYPE_INDICATION = 0x54,
- LXT_PHN_CONFIGURATION2_BATTERY_CALIBRATION_INDICATION = 0x55,
- LXT_PHN_CONFIGURATION2_BATTERY_CALIBRATION_NOTIFICATION = 0x56,
- LXT_PHN_CONFIGURATION2_BATTERY_WRITE_CALIBRATION_NOTIFICATION = 0x57,
- LXT_PHN_CONFIGURATION2_GET_SLOT_MODE_RESPONSE = 0x58,
- LXT_PDA_CONFIGURATION2_GET_ESN_RESPONSE = 0x59,
- LXT_PHN_CONFIGURATION2_PDA_CURR_BATT_ADC_INDICATION = 0x5A,
- LXT_PHN_CONFIGURATION2_GET_PDA_LOW_BATT_ADC_RESPONSE = 0x5B,
- LXT_PHN_CONFIGURATION2_PDA_DEVICE_AUT_TEST_INDICATION = 0x5C,
- LXT_PHN_CONFIGURATION2_MAC_ADDRESS_RESPONSE = 0x5D,
- LXT_PHN_CONFIGURATION2_GET_IMEI_RESPONSE = 0x5E,
- LXT_PHN_CONFIGURATION2_SET_DEFAULT_CONFIGURATION_INDICATION = 0x5F,
- LXT_PHN_CONFIGURATION2_PDA_PASSWORD_INDICATION = 0x60,
- LXT_PHN_CONFIGURATION2_BT_EQUIPMENT_TEST_ADDRESS_NOTIFICATION = 0x61
- /*
- LXT_PHN_CONFIGURATION2_BATTERY_MEDIATENESS_INDICATION = 0x53,
- LXT_PHN_CONFIGURATION2_GET_PDA_BATTERY_RESPONSE = 0x54
- */
-};
-
-// define of action group (call)++++++++++++++++++++++++++++++++++++++++++++++
-enum LXT_PDA_CALL
-{
- LXT_PDA_CALL_CALL_ORIGINATION_REQUEST = 0x41, // call originnation
- LXT_PDA_CALL_END_CALL_REQUEST = 0x42, // end call
- LXT_PDA_CALL_ANSWER_REQUEST = 0x43, // call answer
- LXT_PDA_CALL_SEND_BURST_DTMF_REQUEST = 0x44,
- LXT_PDA_CALL_SEND_CONTINUOUS_DTMF_REQUEST = 0x45,
- LXT_PDA_CALL_STOP_CONTINUOUS_DTMF_REQUEST = 0x46,
- LXT_PDA_CALL_FLASH_INFORMATION_REQUEST = 0x47,
- LXT_PDA_CALL_GET_CALL_TIME_REQUEST = 0x4E,
- LXT_PDA_CALL_SET_E911_NUMBER_REGISTRATION_REQUEST = 0x4F,
- LXT_PDA_CALL_RETRY_REQUEST = 0x50,
- LXT_PDA_CALL_CALL_ORIGINATION2_REQUEST = 0x51,
- LXT_PDA_CALL_GET_VOICE_PRIVACY_OPTION_REQUEST = 0x52,
- LXT_PDA_CALL_SET_VOICE_PRIVACY_OPTION_REQUEST = 0x53,
- LXT_PDA_CALL_CURRENT_VOICE_PRIVACY_STATUS_REQUEST = 0x54,
- LXT_PDA_CALL_SOS_CALL_REQUEST = 0x55,
- LXT_PDA_CALL_REJECT_CALL_REQUEST = 0x56
-};
-
-enum LXT_PHN_CALL
-{
- LXT_PHN_CALL_INCOMING_CALL_NOTIFICATION = 0x41,
- LXT_PHN_CALL_CALL_STATUS_NOTIFICATION = 0x42,
- LXT_PHN_CALL_SEND_BURST_DTMF_TONE_NOTIFICATION = 0x43,
- LXT_PHN_CALL_START_END_ALERT_INFORMATION_NOTIFICATION = 0x44,
- LXT_PHN_CALL_ALERT_INFORMATION_NOTIFICATION = 0x45,
- LXT_PHN_CALL_SIGNALING_INFORMATION_NOTIFICATION = 0x46,
- LXT_PHN_CALL_OTA_STATE_CHANGE_NOTIFICATION = 0x47,
- LXT_PHN_CALL_IOTA_PROCESSING_RESPONSE = 0x48,
- LXT_PHN_CALL_VOICE_PRIVACY_OPTION_RESPONSE = 0x49,
- LXT_PHN_CALL_CURRENT_VOICE_PRIVACY_AVAIABLE_STATUS_RESPONSE = 0x4A,
- LXT_PHN_CALL_VOICE_PRIVACY_SERVICED_NOTIFICATION = 0x4B,
- LXT_PHN_CALL_CURRENT_CALL_INFORMATION_RESPONSE = 0x4C,
- LXT_PHN_CALL_DIAGNOSTIC_CALL_ORIGINATION_NOTIFICATION = 0x4D,
- LXT_PHN_CALL_GET_CALL_TIME_RESPONSE = 0x4E
-
-
-
-
-
-};
-
-// define of action group (display)+++++++++++++++++++++++++++++++++++++++++++
-enum LXT_PDA_DISPLAY
-{
- LXT_PDA_DISPLAY_RING_TYPE_ICON_REQUEST = 0x41,
- LXT_PDA_DISPLAY_ICON_REQUEST = 0x47,
- LXT_PDA_DISPLAY_MISSED_ICON_CHANGED = 0x48,
-};
-
-enum LXT_PHN_DISPLAY
-{
-
- LXT_PHN_DISPLAY_RING_TYPE_ICON_NOTIFICATION = 0x41,
- LXT_PHN_DISPLAY_PHONE_ICON_CHANGED_NOTIFICATION = 0x42,
- LXT_PHN_DISPLAY_RSSI_ICON_CHANGED_NOTIFICATION = 0x43,
- LXT_PHN_DISPLAY_ROAM_ICON_CHANGED_NOTIFICATION = 0x44,
- LXT_PHN_DISPLAY_BATTERY_ICON_CHANGED_NOTIFICATION = 0x45,
- LXT_PHN_DISPLAY_MESSAGE_ICON_CHANGED_NOTIFICATION = 0x46,
- LXT_PHN_DISPLAY_ICON_RESPONSE = 0x47,
- LXT_PHN_DISPLAY_MISSED_ICON_NOTIFICATION = 0x48,
-
-};
-
-
-// define of action group (sms)+++++++++++++++++++++++++++++++++++++++++++++++
-enum LXT_PDA_SMS
-{
- LXT_PDA_SMS_SMS_SEND_MESSAGE_REQUEST = 0x41,
- LXT_PDA_SMS_SMS_SET_LOCAL_COUNT_INDICATION = 0x42,
- LXT_PDA_SMS_SMS_GET_LOCAL_STORAGE_SIZE_REQUEST = 0x43,
- LXT_PDA_SMS_SMS_SET_LOCAL_STORAGE_SIZE_INDICATION = 0x44
-};
-
-enum LXT_PHN_SMS
-{
- // CDMA
- LXT_PHN_SMS_PHONE_SMS_INCOMING_NOTIFICATION = 0x41,
- LXT_PHN_SMS_PHONE_UIM_SMS_INCOMING_NOTIFICATION = 0x42,
- LXT_PHN_SMS_PHONE_WAP_SMS_INCOMING_NOTIFICATION = 0x43,
- LXT_PHN_SMS_PHONE_VOICE_SMS_INCOMING_NOTIFICATION = 0x44,
- LXT_PHN_SMS_PHONE_SMS_INCOMING_ALERT_NOTIFICATION = 0x45,
- LXT_PHN_SMS_PHONE_SMS_ACKNOWLEDGMENT_MESSAGE_NOTIFICATON = 0x46,
- LXT_PHN_SMS_PHONE_SMS_MESSAGE_COUNT_NOTIFICATON = 0x47,
- LXT_PHN_SMS_PHONE_SMS_LOCAL_STORAGE_SIZE_RESPONSE = 0x48,
- LXT_PHN_SMS_PHONE_SMS_DELIVERY_ACKNOWLEDGMENT_NOTIFICATION = 0x49,
- LXT_PHN_SMS_PHONE_SMS_REJECT_NOTIFICATION = 0x4A,
- // GSM
- LXT_PHN_SMS_PHONE_GSM_SMS_DELIVER_NOTIFICATION = 0x51,
- LXT_PHN_SMS_PHONE_GSM_SMS_STATUS_REPORT_NOTIFICATION = 0x52,
- LXT_PHN_SMS_PHONE_GSM_SMS_SUBMIT_REPORT_NOTIFICATION = 0x53,
- LXT_PHN_SMS_PHONE_GSM_SMS_SMMA_NOTIFICATION = 0x54,
- LXT_PHN_SMS_PHONE_EOT
-};
-
-
-// define of action group (sms)+++++++++++++++++++++++++++++++++++++++++++++++
-enum LXT_PDA_CARD_SMS
-{
- LXT_PDA_CARD_SMS_EOT
-};
-
-enum LXT_PHN_CARD_SMS
-{
- // CDMA
- LXT_PHN_CARD_SMS_INFORMATION_RESPONSE = 0x41,
- LXT_PHN_CARD_SMS_READ_RESPONSE = 0x42,
- LXT_PHN_CARD_SMS_WRITE_RESPONSE = 0x43,
- LXT_PHN_CARD_SMS_DELETE_RESPONSE = 0x44,
- LXT_PHN_CARD_SMS_SET_TAG_RESPONSE = 0x45,
- LXT_PHN_CARD_SMS_CLEAR_RESPONSE = 0x46,
- LXT_PHN_CARD_SMS_MESSAGE_READY_NOTIFICATION = 0x47,
- LXT_PHN_CARD_SMS_COMPLETE_NOTIFICATION = 0x48,
-
- // GSM
- LXT_PHN_CARD_GSM_SMS_INFORMATION_RESPONSE = 0x61,
- LXT_PHN_CARD_GSM_SMS_READ_RESPONSE = 0x62,
- LXT_PHN_CARD_GSM_SMS_WRITE_RESPONSE = 0x63,
- LXT_PHN_CARD_GSM_SMS_DELETE_RESPONSE = 0x64,
- LXT_PHN_CARD_GSM_SMS_SET_TAG_RESPONSE = 0x65,
- LXT_PHN_CARD_GSM_SMS_CLEAR_RESPONSE = 0x66,
- LXT_PHN_CARD_GSM_SMS_COMPLETE_NOTIFICATION = 0x67,
- LXT_PHN_CARD_GSM_SMS_PARAMETER_READ_RESPONSE = 0x68,
- LXT_PHN_CARD_GSM_SMS_PARAMETER_WRITE_RESPONSE = 0x69,
- LXT_PHN_CARD_GSM_SMS_MESSAGE_REFERENCE_WRITE_RESPONSE = 0x6A,
-};
-
-
-// define of action group (service mode)++++++++++++++++++++++++++++++++++++++
-
-enum LXT_PDA_SERVICEMODE
-{
- LXT_PDA_SERVICEMODE_ENTER_SERVICE_MODE_REQUEST = 0x41,
- LXT_PDA_SERVICEMODE_END_SERVICE_MODE_REQUEST = 0x42,
- LXT_PDA_SERVICEMODE_PROCESS_KEY_CODE_REQUEST = 0x43,
- LXT_PDA_SERVICEMODE_FACTORY_MODE_ENABLE_REQUEST = 0x44
-};
-
-
-enum LXT_PHN_SERVICEMODE
-{
- LXT_PHN_SERVICEMODE_END_SERVICE_MODE_NOTIFICATION = 0x41,
- LXT_PHN_SERVICEMODE_DISPLAY_MONITOR_NOTIFICATION = 0x42,
- LXT_PHN_SERVICEMODE_PHONE_LCD_MODE_NOTIFICATION = 0x43,
- LXT_PHN_SERVICEMODE_DISPLAY_PHONE_LCD_NOTIFICATION = 0x44,
- LXT_PHN_SERVICEMODE_DEDICATE_LCD_MODE_NOTIFICATION = 0x45,
-
-
- LXT_PHN_SERVICEMODE_DISPLAY_DEDICATE_LCD_NOTIFICATION = 0x46,
- LXT_PHN_SERVICEMODE_DOWNLOAD_TYPE_NOTIFICATION = 0x47,
- LXT_PDA_SERVICEMODE_FACTORY_MODE_ENABLE_RESPONSE = 0x48
-};
-
-// define of action group (sound)+++++++++++++++++++++++++++++++++++++++++++++
-enum LXT_PDA_SOUND
-{
- LXT_PDA_SOUND_START_KEY_TONE_REQUEST = 0x41,
- LXT_PDA_SOUND_STOP_KEY_TONE_REQUEST = 0x42,
- LXT_PDA_SOUND_START_NOTIFICATION_TONE_REQUEST = 0x43,
- LXT_PDA_SOUND_START_LAMP_REQUEST = 0x44,
- LXT_PDA_SOUND_START_VIBRATE_REQUEST = 0x45,
- LXT_PDA_SOUND_STOP_SOUND_REQUEST = 0x47,
- LXT_PDA_SOUND_SET_VOLUME_CONTROL_REQUEST = 0x48,
- LXT_PDA_SOUND_SET_MUTE_REQUEST = 0x49,
- LXT_PDA_SOUND_GET_MUTING_STATUS_REQUEST = 0x4A,
- LXT_PDA_SOUND_SET_SPEAKER_PHONE_REQUEST = 0x4B,
- LXT_PDA_SOUND_SET_AUDIO_PATH_CONTROL_REQUEST = 0x4C
-};
-
-enum LXT_PHN_SOUND
-{
- LXT_PHN_SOUND_MUTING_STATUS_RESPONSE = 0x41,
- LXT_PHN_SOUND_SOUND_PDA_PATH_ON_OFF_NOTIFICATION = 0x42
-};
-
-
-
-
-// define of action group (UIM) ++++++++++++++++++++++++++++++++++++++++++++++
-enum LXT_PDA_UIM
-{
-
- // i819
- LXT_PDA_RUIMCONF_AUTHENTICATION_REQUEST = 0x11,
- LXT_PDA_RUIMCONF_SELECT_NETWORK_REQUEST = 0x12,
- LXT_PDA_RUIMCONF_ICCID_REQUEST = 0x13,
- LXT_PDA_RUIMCONF_SELECTION_MODE_REQUEST = 0x14,
- LXT_PDA_RUIMCONF_CHANGE_AUTHENTICATION_REQUEST = 0x15,
- LXT_PDA_RUIMCONF_CURRENT_PIN_CHECK_STATE_REQUEST = 0x16,
- LXT_PDA_RUIMCONF_CHANGE_PIN_CHECK_STATE_REQUEST = 0x17,
- LXT_PDA_RUIMCONF_RUNTIME_CHANGE_NETWORK_REQUEST = 0x18,
- LXT_PDA_RUIMCONF_DIR_NAME_REQUEST = 0x19,
- LXT_PDA_RUIMCONF_DIR_NAME_WRITE_REQUEST = 0x1A,
- LXT_PDA_RUIMCONF_CHANGE_FDN_STATE_REQUEST = 0x1B,
- LXT_PDA_RUIMCONF_CURRENT_FDN_STATE_REQUEST = 0x1C,
- LXT_PDA_RUIMCONF_CHECK_SERVICE_AVAILABLE_REQUEST = 0x1D,
- LXT_PDA_RUIMCONF_IMSI_REQUEST = 0x1E,
-
- // i519
- LXT_PDA_UIM_GET_UIM_LOCK_REQUEST = 0x31,
- LXT_PDA_UIM_SET_UIM_LOCK_REQUEST = 0x32,
- LXT_PDA_UIM_UIM_LOCK_VERIFY_INDICATION = 0x33,
- LXT_PDA_UIM_UIM_LOCK_PASSWORD_WRITE_REQUEST = 0x34,
- LXT_PDA_UIM_CARD_STATUS_REQUEST = 0x41,
- LXT_PDA_UIM_GET_PIN_CODE_STATUS_REQUEST = 0x42,
- LXT_PDA_UIM_SET_PIN_CHECK_REQUEST = 0x43,
- LXT_PDA_UIM_RUIM_PIN_VERIFY_REQUEST = 0x44,
- LXT_PDA_UIM_CHANGE_PIN_REQUEST = 0x45,
- LXT_PDA_UIM_GET_ICCID_REQUEST = 0x46,
- LXT_PDA_UIM_CHV_UNLOCK_REQUEST = 0x47,
- LXT_PDA_UIM_PDA_CARD_SMS_MESSAGE_INFORMATION_REQUEST = 0x51,
- LXT_PDA_UIM_PDA_CARD_SMS_MESSAGE_READ_REQUEST = 0x52,
- LXT_PDA_UIM_PDA_CARD_SMS_MESSAGE_WRITE_REQUEST = 0x53,
- LXT_PDA_UIM_PDA_CARD_SMS_MESSAGE_ERASE_REQUEST = 0x54,
- LXT_PDA_UIM_PDA_CARD_SMS_MESSAGE_CLEAR_REQUEST = 0x55,
- LXT_PDA_UIM_PDA_CARD_SMS_MESSAGE_ALL_LIST_REQUEST = 0x56,
- LXT_PDA_UIM_PDA_CARD_SMS_MESSAGE_MIRRORING_REQUEST = 0x57,
- LXT_PDA_UIM_PDA_CARD_SMS_MESSAGE_SET_TAG_REQUEST = 0x58,
- LXT_PDA_UIM_PDA_CARD_PHONE_BOOK_INFORMATION_REQUEST = 0x61,
- LXT_PDA_UIM_PDA_CARD_PHONE_BOOK_READ_REQUEST = 0x62,
- LXT_PDA_UIM_PDA_CARD_PHONE_BOOK_WRITE_REQUEST = 0x63,
- LXT_PDA_UIM_PDA_CARD_PHONE_BOOK_ERASE_REQUEST = 0x64,
- LXT_PDA_UIM_PDA_CARD_PHONE_BOOK_CLEAR_REQUEST = 0x65,
- LXT_PDA_UIM_PDA_CARD_PHONE_BOOK_ALL_LIST_REQUEST = 0x66,
- LXT_PDA_UIM_PDA_CARD_PHONE_BOOK_MIRRORING_REQUEST = 0x67,
- LXT_PDA_UIM_DIR_NAME_READ_REQUEST = 0x68,
- LXT_PDA_UIM_DIR_NAME_WRITE_REQUEST = 0x69,
- LXT_PDA_UIM_PDA_CARD_SMS_CLEAR_REQUEST = 0x70,
- LXT_PDA_UIM_GET_PERMISSION_STATUS_REQUEST = 0x80
-};
-
-enum LXT_PHN_UIM
-{
-
- // i819
- LXT_PHN_RUIMCONF_STATUS_NOTIFICATION = 0x11,
- LXT_PHN_RUIMCONF_BLOCK_STATUS_NOTIFICATION = 0x12,
- LXT_PHN_RUIMCONF_AUTHENTICATION_RESPONSE = 0x13,
- LXT_PHN_RUIMCONF_CARD_STATUS_NOTIFICATION = 0x14,
- LXT_PHN_RUIMCONF_SELECT_NETWORK_RESPONSE = 0x15,
- LXT_PHN_RUIMCONF_SELECTION_MODE_NOTIFICATION = 0x16,
- LXT_PHN_RUIMCONF_ICCID_RESPONSE = 0x17,
- LXT_PHN_RUIMCONF_NETWORK_START_NOTIFICATION = 0x18,
- LXT_PHN_RUIMCONF_SELECTION_MODE_RESPONSE = 0x19,
- LXT_PHN_RUIMCONF_CHANGE_AUTHENTICATION_RESPONSE = 0x1A,
- LXT_PHN_RUIMCONF_CURRENT_PIN_CHECK_STATE_RESPONSE = 0x1B,
- LXT_PHN_RUIMCONF_CHANGE_PIN_CHECK_STATE_RESPONSE = 0x1C,
- LXT_PHN_RUIMCONF_RUNTIME_CHANGE_NETWORK_RESPONSE = 0x1D,
- LXT_PHN_RUIMCONF_DIR_NAME_RESPONSE = 0x1E,
- LXT_PHN_RUIMCONF_DIR_NAME_WRITE_RESPONSE = 0x1F,
- LXT_PHN_RUIMCONF_CHANGE_FDN_STATE_RESPONSE = 0x20,
- LXT_PHN_RUIMCONF_CURRENT_FDN_STATE_RESPONSE = 0x21,
- LXT_PHN_RUIMCONF_CHECK_SERVICE_AVAILABE_RESPONSE = 0x22,
- LXT_PDA_RUIMCONF_IMSI_RESPONSE = 0x23,
-
- // i519
- LXT_PHN_UIM_GET_UIM_LOCK_RESPONSE = 0x31,
- LXT_PDA_UIM_UIM_LOCK_PASSWORD_WRITE_RESPONSE = 0x32,
- LXT_PHN_UIM_CARD_STATUS_RESPONSE = 0x41,
- LXT_PHN_UIM_GET_PIN_CODE_STATUS_RESPONSE = 0x42,
- LXT_PHN_UIM_SET_PIN_CHECK_RESPONSE = 0x43,
- LXT_PHN_UIM_PIN_VERIFY_RESPONSE = 0x44,
- LXT_PHN_UIM_CHANGE_PIN_RESPONSE = 0x45,
- LXT_PHN_UIM_GET_ICCID_RESPONSE = 0x46,
- LXT_PHN_UIM_UIM_LOCK_RESPONSE = 0x47,
- LXT_PHN_UIM_CHV_UNBLOCK_RESPONSE = 0x48,
- LXT_PDA_UIM_DIR_NAME_WRITE_RESPONSE = 0x49,
- LXT_PHN_UIM_PHONE_CARD_SMS_MESSAGE_INFORMATION_RESPONSE = 0x51,
- LXT_PHN_UIM_PHONE_CARD_SMS_MESSAGE_READ_RESPONSE = 0x52,
- LXT_PHN_UIM_PHONE_CARD_SMS_MESSAGE_WRITE_RESPONSE = 0x53,
- LXT_PHN_UIM_PHONE_CARD_SMS_MESSAGE_ERASE_RESPONSE = 0x54,
- LXT_PHN_UIM_PHONE_CARD_SMS_MESSAGE_CLEAR_RESPONSE = 0x55,
- LXT_PHN_UIM_PHONE_CARD_SMS_MESSAGE_ALL_LIST_RESPONSE = 0x56,
- LXT_PHN_UIM_PHONE_CARD_SMS_MESSAGE_MIRRORING_RESPONSE = 0x57,
- LXT_PHN_UIM_PHONE_CARD_SMS_MESSAGE_MIRRORING_DONE_NOTIFICATION = 0x58,
- LXT_PHN_UIM_PHONE_CARD_PHONE_BOOK_INFORMATION_RESPONSE = 0x61,
- LXT_PHN_UIM_PHONE_CARD_PHONE_BOOK_READ_RESPONSE = 0x62,
- LXT_PHN_UIM_PHONE_CARD_PHONE_BOOK_WRITE_RESPONSE = 0x63,
- LXT_PHN_UIM_PHONE_CARD_PHONE_BOOK_ERASE_RESPONSE = 0x64,
- LXT_PHN_UIM_PHONE_CARD_PHONE_BOOK_CLEAR_RESPONSE = 0x65,
- LXT_PHN_UIM_PHONE_CARD_PHONE_BOOK_ALL_LIST_RESPONSE = 0x66,
- LXT_PHN_UIM_PHONE_CARD_PHONE_BOOK_MIRRORING_RESPONSE = 0x67,
- LXT_PHN_UIM_PHONE_CARD_PHONE_BOOK_MIRRORING_DONE_NOTIFICATION = 0x68,
- LXT_PHN_UIM_DIR_NAME_READ_RESPONSE = 0x69,
- LXT_PHN_UIM_DIR_NAME_WRITE_RESPONSE = 0x70,
- LXT_PHN_UIM_PHONE_CARD_SMS_CLEAR_RESPONSE = 0x71,
- LXT_PDA_UIM_GET_PERMISSION_STATUS_RESPONSE = 0x80
-};
-
-
-enum LXT_PDA_PHONE_BOOK
-{
- LXT_PDA_PHONE_BOOK_INFORMATION_REQUEST = 0x51,
- LXT_PDA_PHONE_BOOK_READ_REQUEST = 0x52,
- LXT_PDA_PHONE_BOOK_READ_ENTRIES_REQUEST = 0x53,
- LXT_PDA_PHONE_BOOK_WRITE_REQUEST = 0x54,
- LXT_PDA_PHONE_BOOK_ERASE_REQUEST = 0x55,
- LXT_PDA_PHONE_BOOK_CLEAR_REQUEST = 0x56,
- LXT_PDA_PHONE_BOOK_GET_ENTRY_LIST_REQUEST = 0x57,
- LXT_PDA_PHONE_BOOK_GET_CACHED_REQUEST = 0x58
-};
-
-enum LXT_PHN_PHONE_BOOK
-{
- LXT_PHN_PHONE_BOOK_INFORMATION_RESPONSE = 0x51,
- LXT_PHN_PHONE_BOOK_READ_RESPONSE = 0x52,
- LXT_PHN_PHONE_BOOK_READ_ENTRIES_RESPONSE = 0x53,
- LXT_PHN_PHONE_BOOK_GET_ENTRY_LIST_RESPONSE = 0x54,
- LXT_PHN_PHONE_BOOK_ACTION_NOTIFICATION = 0x55,
- LXT_PHN_PHONE_BOOK_COMPLETE_NOTIFICATION = 0x56,
- LXT_PHN_PHONE_BOOK_GET_CACHED_RESPONSE = 0x57,
- LXT_PHN_PHONE_BOOK_MIRRORING_START_NOTIFICATION = 0xA1,
- LXT_PHN_PHONE_BOOK_MIRRORING_DONE_NOTIFICATION = 0xA2,
-};
-
-// define of action group (UTK) ++++++++++++++++++++++++++++++++++++++++++++++
-
-enum LXT_PDA_UTK
-{
- LXT_PDA_UTK_START_REQUEST = 0x41,
- LXT_PDA_UTK_GET_KEY_REQUEST = 0x42,
- LXT_PDA_UTK_END_INPUT_REQUEST = 0x43,
- LXT_PDA_UTK_SET_UP_MAIN_MENU_REQUEST = 0x44
-};
-
-
-enum LXT_PHN_UTK
-{
- LXT_PHN_UTK_MENU_TITLE_NOTIFICATION = 0x41,
- LXT_PHN_UTK_NENU_ITEM_NOTIFICATION = 0x42,
- LXT_PHN_UTK_SEND_SMS_NOTIFICATION = 0x43,
- LXT_PHN_UTK_GET_START_INPUT_NOTIFICATION = 0x44,
- LXT_PHN_UTK_DISPLAY_TEXT_NOTIFICATION = 0x45,
- LXT_PHN_UTK_END_NOTIFICATION = 0x46,
- LXT_PHN_UTK_CARD_START_RESPONSE = 0x47
-};
-
-
-// define of action group () ++++++++++++++++++++++++++++++++++++++++++++++
-enum LXT_PDA_GPS
-{
- LXT_PDA_GPS_MO_SMS_REQUEST = 0x41,
- LXT_PDA_GPS_MT_SMS_REQUEST = 0x42,
- LXT_PDA_GPS_SPP_REQUEST = 0x43,
- LXT_PDA_GPS_URL_INFO_REQUEST = 0x44,
- LXT_PDA_GPS_END_REQUEST = 0x45
-};
-
-enum LXT_PHN_GPS
-{
- LXT_PHN_GPS_MT_SMS_ARRIVAL_NOTIFICATION = 0x41,
- LXT_PHN_GPS_MT_SMS_RESPONSE = 0x42,
- LXT_PHN_GPS_WAP_BASED_SESSION_STATUS_NOTIFICATION = 0x43,
- LXT_PHN_GPS_URL_INFO_RESPONSE = 0x44,
- LXT_PHN_GPS_SMS_BASED_SESSION_STATUS_NOTIFICATION = 0x45
-};
-
-
-// define of action group (Data service) +++++++++++++++++++++++++++++++++++++
-enum LXT_PDA_DATASERVICE
-{
- LXT_PDA_DATASERVICE_PIN_CONTROL_REQUEST = 0x41
-};
-
-
-enum LXT_PHN_DATASERVICE
-{
-
- LXT_PHN_DATASERVICE_PIN_CONTROL_NOTIFICATION = 0x41,
- LXT_PHN_DATASERVICE_DS_TE2_DIALING_INDICATION = 0x42,
- LXT_PHN_DATASERVICE_PPP_CONTROL_DISCONNECTING_NOTIFICATION = 0x43,
- LXT_PHN_DATASERVICE_PPP_CONTROL_DONE_NOTIFICATION = 0x44,
- LXT_PHN_DATASERVICE_DS_TE2_DATA_RATE_INFO_NOTIFICATION = 0x45,
- LXT_PHN_DATASERVICE_TE2_STATUS_NOTIFICATION = 0x46,
- LXT_PHN_DATASERVICE_DISPLAY_NOTIFICATION = 0x47
-};
-
-// define of action group (response)++++++++++++++++++++++++++++++++++++++++++
-
-enum LXT_PHN_RESPONSE
-{
- LXT_PHN_RESPONSE_GENERAL_RESPONSE = 0x41
-};
-
-
-
-
-// define of action group (SIO Mode)++++++++++++++++++++++++++++++++++++++++++
-enum LXT_PDA_SIOMODE
-{
- LXT_PDA_SIOMODE_SIO_BAUDRATE_GET_REQUEST = 0x41,
- LXT_PDA_SIOMODE_SIO_BAUDRATE_SET_REQUEST = 0x42,
- LXT_PDA_SIOMODE_SLOT_MODE_GET_REQUEST = 0x43,
- LXT_PDA_SIOMODE_SLOT_MODE_SET_REQUEST = 0x44,
- LXT_PDA_SIOMODE_VOICE_OP_GET_REQUEST = 0x45,
- LXT_PDA_SIOMODE_VOICE_OP_SET_REQUEST = 0x46,
- LXT_PDA_SIOMODE_SIO_MODE_GET_REQUEST = 0x47,
- LXT_PDA_SIOMODE_SIO_MODE_SET_REQUEST = 0x48,
- LXT_PDA_SIOMODE_LIFETIME_CLEAR_REQUEST = 0x49,
-};
-
-// define of action group (SIO Mode)++++++++++++++++++++++++++++++++++++++++++
-enum LXT_PHN_SIOMODE
-{
- LXT_PHN_SIOMODE_SIO_BAUDRATE_GET_RESPONSE = 0x41,
- LXT_PHN_SIOMODE_SLOT_MODE_GET_RESPONSE = 0x42,
- LXT_PHN_SIOMODE_VOICE_OP_GET_RESPONSE = 0x43,
- LXT_PHN_SIOMODE_SIO_MODE_GET_RESPONSE = 0x44
-};
-
-
-
-
-
-
-
-
-
-#endif // _PHONEPROTOCOL_H_
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef _PHONEPROTOCOL4GSM_H_
-#define _PHONEPROTOCOL4GSM_H_
-
-// ===========================================================================
-//
-// define of main group
-//
-// ===========================================================================
-enum LXT_GRP_GSM
-{
- LXT_GRP_GSM_CONFIG = 0xA3,
- LXT_GRP_GSM_CALL = 0xA4,
- LXT_GRP_GSM_SUPS = 0xA5,
- LXT_GRP_GSM_EOT = 0xff
-};
-
-// ===========================================================================
-//
-// define of sub command
-//
-// ===========================================================================
-
-// define of action group (configuration) +++++++++++++++++++++++++++++++++++
-enum LXT_PDA_GSM_CONFIG
-{
- LXT_PDA_GSM_CONFIG_GET_CALL_COST_REQUEST = 0x41,
- LXT_PDA_GSM_CONFIG_RESET_CALL_COST_REQUEST = 0x42,
- LXT_PDA_GSM_CONFIG_SET_MAX_CALL_COST_REQUEST = 0x43,
- LXT_PDA_GSM_CONFIG_GET_CALL_UNIT_PRICE_REQUEST = 0x44,
- LXT_PDA_GSM_CONFIG_SET_CALL_UNIT_PRICE_REQUEST = 0x45,
- LXT_PDA_GSM_CONFIG_GET_NETWORK_SELECTION_MODE_REQUEST = 0x46,
- LXT_PDA_GSM_CONFIG_AUTOMATIC_NETWORK_SELECTION_REQUEST = 0x47,
- LXT_PDA_GSM_CONFIG_MANUAL_NETWORK_SELECTION_REQUEST = 0x48,
- LXT_PDA_GSM_CONFIG_MANUAL_NETWORK_SELECTION_REG_REQUEST = 0x49,
- LXT_PDA_GSM_CONFIG_GET_CALLER_ID_REQUEST = 0x4A,
- LXT_PDA_GSM_CONFIG_SET_CALLER_ID_REQUEST = 0x4B,
- LXT_PDA_GSM_CONFIG_GET_ACTIVE_LINE_REQUEST = 0x4C,
- LXT_PDA_GSM_CONFIG_SET_ACTIVE_LINE_REQUEST = 0x4D,
- LXT_PDA_GSM_CONFIG_SET_FORCE_GSM_MODE_REQUEST = 0x4E,
- LXT_PDA_GSM_CONFIG_GET_SYSTEM_IDENTITY = 0x4F
-};
-
-enum LXT_PHN_GSM_CONFIG
-{
- LXT_PHN_GSM_CONFIG_GET_CALL_COST_RESONSE = 0x41,
- LXT_PHN_GSM_CONFIG_RESET_CALL_COST_RESONSE = 0x42,
- LXT_PHN_GSM_CONFIG_SET_MAX_CALL_COST_NOTIFICATION = 0x43,
- LXT_PHN_GSM_CONFIG_GET_CALL_UNIT_PRICE_RESONSE = 0x44,
- LXT_PHN_GSM_CONFIG_SET_CALL_UNIT_PRICE_RESONSE = 0x45,
- LXT_PHN_GSM_CONFIG_GET_NETWORK_SELECTION_MODE_NOTIFICATION = 0x46,
- LXT_PHN_GSM_CONFIG_AUTOMATIC_NETWORK_SELECTION_NOTIFICATION = 0x47,
- LXT_PHN_GSM_CONFIG_MANUAL_NETWORK_SELECTION_NOTIFICATION = 0x48,
- LXT_PHN_GSM_CONFIG_MANUAL_NETWORK_REGISTRATION_NOTIFICATION = 0x49,
- LXT_PHN_GSM_CONFIG_GET_CALLER_ID_RESPONSE = 0x4A,
- LXT_PHN_GSM_CONFIG_SET_CALLER_ID_RESPONSE = 0x4B,
- LXT_PHN_GSM_CONFIG_GET_ACTIVE_LINE_RESPONSE = 0x4C,
- LXT_PHN_GSM_CONFIG_SET_ACTIVE_LINE_RESPONSE = 0x4D,
- LXT_PHN_GSM_CONFIG_SERVING_SYSTEM_IDENTITY_INDICATION = 0x4E
-};
-
-// define of action group (call)+++++++++++++++++++++++++++++++++++++++++++++
-enum LXT_PDA_GSM_CALL
-{
- LXT_PDA_GSM_CALL_CALL_ORIGINATION_REQUEST = 0x41,
- LXT_PDA_GSM_CALL_END_CALL_REQUEST = 0x42,
- LXT_PDA_GSM_CALL_ANSWER_REQUEST = 0x43,
- LXT_PDA_GSM_CALL_START_DTMF_REQUEST = 0x44,
- LXT_PDA_GSM_CALL_STOP_DTMF_REQUEST = 0x45,
- LXT_PDA_GSM_CALL_REJECT_REQUEST = 0x46
-};
-
-enum LXT_PHN_GSM_CALL
-{
- LXT_PHN_GSM_CALL_INCOMING_CALL_NOTIFICATION = 0x41,
- LXT_PHN_GSM_CALL_CALL_STATUS_NOTIFICATION = 0x42,
- LXT_PHN_GSM_CALL_START_DTMF_ACK_RESPONSE = 0x43,
- LXT_PHN_GSM_CALL_STOP_DTMF_ACK_RESPONSE = 0x44,
- LXT_PHN_GSM_CALL_DIAGNOSTIC_CALL_ORIGINATION_NOTIFICATION = 0x45
-};
-
-// define of action group (supplementary)++++++++++++++++++++++++++++++++++++
-enum LXT_PDA_GSM_SUPS
-{
- LXT_PDA_GSM_SUPS_USER_ORIGINATED_SUPS_REQUEST = 0x41,
- LXT_PDA_GSM_SUPS_NETWORK_ORIGINATED_SUPS_USER_CONFIRM = 0x42,
- LXT_PDA_GSM_SUPS_GET_SUPS_NETWORK_CONFIRM_DATA_REQUEST = 0x43,
- LXT_PDA_GSM_SUPS_PASSWORD_REGISTRATION_REQUEST = 0x44,
- LXT_PDA_GSM_SUPS_CALL_HANDLE_SUPS_WITHIN_CALL_REQUEST = 0x45
-// LXT_PDA_GSM_SUPS_GET_BARRING_PASSWORD_CONFIRM = 0x45,
-};
-
-enum LXT_PHN_GSM_SUPS
-{
- LXT_PHN_GSM_SUPS_USER_ORIGINATED_SUPS_NOTIFICATION = 0x41,
- LXT_PHN_GSM_SUPS_NETWORK_ORIGINATED_SUPS_INDICATION = 0x42,
- LXT_PHN_GSM_SUPS_GET_SUPS_NETWORK_CONFIRM_DATA_RESPONSE = 0x43,
- LXT_PHN_GSM_SUPS_PASSWORD_REGISTRATION_NOTIFICATION = 0x44,
- LXT_PHN_GSM_SUPS_GET_BARRING_PASSWORD_INDICATION = 0x45,
- LXT_PHN_GSM_SUPS_MANAGE_SUPS_WITHIN_CALL_NOTIFICATION = 0x46,
- LXT_PHN_GSM_SUPS_STATUS_NOTIFICATION = 0x47,
- LXT_PHN_GSM_SUPS_CALL_PUT_ON_HOLD_BY_REMOTE_INDICATION = 0x48,
- LXT_PHN_GSM_SUPS_CALL_RETRIEVED_BY_REMOTE_INDICATION = 0x49,
- LXT_PHN_GSM_SUPS_EXPLICIT_CALL_TRANSFER_BY_REMOTE_INDICATION = 0x4A
-};
-
-
-
-#endif // _PHONEPROTOCOL4GSM_H_
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef _TAPI4PHONEBOOK_H_
-#define _TAPI4PHONEBOOK_H_
-
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
-// ++++++++++++++++++++++++++++++++++++++++++++++include about standard library
-#include <stdio.h>
-// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++include user define
-
-// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++define area
-
-
-
-
-
-
-
-
-
-
-
-
-#define MAX_ALPHA_SIZE 32
-#define MAX_DIGITS_SIZE 32
-#define MAX_PHONEBOOK_ITEM 256
-
-typedef enum
-{
- LXT_PHONEBOOK_PBM_DEFAULT = 0x00, // do not use
- LXT_PHONEBOOK_PBM_SLOT1_ADN = 0x01, // adn of slot1
- LXT_PHONEBOOK_PBM_SLOT2_ADN = 0x02, // adn of slot2
- LXT_PHONEBOOK_PBM_SLOT1_FDN = 0x03, // fdn of slot1
- LXT_PHONEBOOK_PBM_SLOT2_FDN = 0x04, // fdn of slot2
- LXT_PHONEBOOK_PBM_MAX = 0x05, // do not use
- LXT_PHONEBOOK_PBM_EOT = 0x0f // do not use
-}
-LXT_PHONEBOOK_PBM;
-
-
-// card phone book
-typedef struct
-{
- int index; // 4 byte
- int alpha_size; // 4 byte
- int num_digits; // 4 byte
- char alpha[MAX_ALPHA_SIZE]; // 32 byte
- char digits[MAX_DIGITS_SIZE]; // 32 byte
-}
-LXT_PHONEBOOK_ONE_ITEM;
-
-// phone book set
-typedef struct
-{
- int mpb_id; // 4 byte
- int num_total; // 4 byte
- int num_used; // 4 byte
- int max_entry_alpha_size; // 4 byte
- LXT_PHONEBOOK_ONE_ITEM phonebook_item[MAX_PHONEBOOK_ITEM];
-}
-LXT_PHONEBOOK_ALL;
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif // _TAPI4PHONEBOOK_H_
-
-
-// ============================================================================ end of file
-
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef _SMS_HEADER_H_
-#define _SMS_HEADER_H_
-
-typedef unsigned char BYTE;
-typedef unsigned short UINT8;
-typedef unsigned short UINT;
-typedef unsigned int UINT32;
-typedef int BOOL;
-
-#define TAPI_NETTEXT_CB_SIZE_MAX 255
-#define TAPI_NETTEXT_MSG_SIZE_MAX 500
-#define TAPI_NETTEXT_SCADDRESS_LEN_MAX 20
-#define TAPI_NETTEXT_SMDATA_SIZE_MAX 255
-#define TAPI_NETTEXT_ADDRESS_LEN_MAX 255
-
-#ifndef TRUE
-#define TRUE 1
-#endif /* TRUE */
-
-#ifndef FALSE
-#define FALSE 0
-#endif /* FALSE */
-
-/**
- * @enum TapiNetTextVPType
- * This enumeration defines the validity period type.
- */
-typedef enum
-{
- TAPI_NETTEXT_VP_NOT_USED = 0, /**< validity period not used */
- TAPI_NETTEXT_VP_RELATIVE = 2, /**< after a predetermined time period after the service center has received the message */
- TAPI_NETTEXT_VP_ABSOLUTE = 3,
- TAPI_NETTEXT_VP_ENHANCED = 1,
-
- TAPI_NETTEXT_VP_MAX
-} TapiNetTextVPType;
-
-/**
- * @enum TapiNetTextVPRelValue
- * This structure defines the validity period type.
- */
-typedef enum
-{
- TAPI_NETTEXT_VP_REL_1H, /**< One hour */
- TAPI_NETTEXT_VP_REL_6H, /**< Six hours */
- TAPI_NETTEXT_VP_REL_12H, /**< Twelve hours */
- TAPI_NETTEXT_VP_REL_1D, /**< One day */
- TAPI_NETTEXT_VP_REL_3D, /**< Three days */
- TAPI_NETTEXT_VP_REL_1W, /**< One week */
- TAPI_NETTEXT_VP_REL_1M, /**< One Month */
- TAPI_NETTEXT_VP_REL_MAX /**< Max = 63 weeks */
-} TapiNetTextVPRelValue;
-
-typedef struct
-{
- TapiNetTextVPType vpType; /**< Validity period format */
- TapiNetTextVPRelValue vpRelativeType; /**< Validity period value duration the message must retain in the service center while application attempts delivery */
- UINT32 vpValue; /** Validity period value */
-} TapiNetTextVP;
-
-/**
- * @enum TapiNetTextCodingGroupType
- */
-typedef enum
-{
- TAPI_NETTEXT_CODGRP_SM_GENERAL_DCS, /**< Bits 7..4 00xx */
- TAPI_NETTEXT_CODGRP_CB_GENERAL_LANG, /**< 0000 */
- TAPI_NETTEXT_CODGRP_CB_ALPHA, /**< 0001 */
- TAPI_NETTEXT_CODGRP_CB_RES1, /**< 0010 */
- TAPI_NETTEXT_CODGRP_CB_RES2, /**< 0011 */
- TAPI_NETTEXT_CODGRP_SM_AUTO_DELETION, /**< 01xx Bits 5..0 are coded the same as SM_GENERAL_DCS */
- TAPI_NETTEXT_CODGRP_CB_GENERAL_DCS, /**< 01xx behavior is as SM_GENERAL_DCS */
- TAPI_NETTEXT_CODGRP_SM_WAITING_DISCARD, /**< 1100 */
- TAPI_NETTEXT_CODGRP_SM_WAITING_STORE, /**< 1101 */
- TAPI_NETTEXT_CODGRP_SM_WAITING_STORE_UCS2, /**< 1110 */
- TAPI_NETTEXT_CODGRP_CB_WAP, /**< 1110 Cell Broadcast */
- TAPI_NETTEXT_CODGRP_SM_CLASS_CODING, /**< 1111 */
- TAPI_NETTEXT_CODGRP_CB_CLASS_CODING, /**< 1111 Cell Broadcast */
- TAPI_NETTEXT_CODGRP_SM_RESERVED, /* reserved coding group */
- TAPI_NETTEXT_CODGRP_MAX
-} TapiNetTextCodingGroupType;
-
-/**
- * @enum TapiNetTextWaitingType
- */
-typedef enum
-{
- TAPI_NETTEXT_WAITING_VOICE_MSG, /**< voice message waiting */
- TAPI_NETTEXT_WAITING_FAX_MSG, /**< FAX message waiting */
- TAPI_NETTEXT_WAITING_EMAIL_MSG, /**< E-mail waiting */
- TAPI_NETTEXT_WAITING_OTHER_MSG, /**< Other message waiting */
-
- TAPI_NETTEXT_WAITING_MAX
-} TapiNetTextWaitingType;
-
-/**
- * @enum TapiNetTextAlphabetType
- */
-typedef enum
-{
- TAPI_NETTEXT_ALPHABET_DEFAULT, /**< GSM alphabet default 7bit */
- TAPI_NETTEXT_ALPHABET_8BIT, /**< 8bit */
- TAPI_NETTEXT_ALPHABET_UCS2, /**< 16bit ucs2 */
-
- TAPI_NETTEXT_ALPHABET_KSC5601, /**< for Korean */
-
- TAPI_NETTEXT_ALPHABET_MAX
-} TapiNetTextAlphabetType;
-
-/**
- * @enum TapiNetTextClassType
- */
-typedef enum
-{
- TAPI_NETTEXT_CLASS_0, /**< display immediately */
- TAPI_NETTEXT_CLASS_1, /**< may be stored */
- TAPI_NETTEXT_CLASS_2, /**< store in SIM */
- TAPI_NETTEXT_CLASS_3, /**< transfer to TE */
- TAPI_NETTEXT_CLASS_NONE,
-
- TAPI_NETTEXT_CLASS_MAX
-} TapiNetTextClassType;
-
-typedef struct
-{
- BOOL bCompressed; /**< if text is compressed this is TRUE */
- BOOL bMsgClassSet; /**< message class indication. if TRUE = bits 1..0, if FALSE = reserved */
- BOOL bMsgIndActive; /**< message indication group. if TRUE = on, FALSE = off */
- TapiNetTextCodingGroupType codingGroupType; /**< Coding group, GSM 03.38 */
- TapiNetTextWaitingType waitingType; /**< Type of message waiting */
- TapiNetTextAlphabetType alphabetType; /**< How to encode a message. */
- TapiNetTextClassType classType; /**< The message class */
- BYTE codingGroup; /* reserved coding group 7...4 */
- BYTE code; /* code 3...0 */
-} TapiNetTextCodingScheme;
-
-////////////////////////////////Adddress Field/////////////////////////////////
-#define ADDRESS_LEN_MAX 20
-
-//type of number
-typedef enum
-{
- TYPEOFNUMBER_UNKNOWN =0x00,
- TYPEOFNUMBER_INTERNATION_NUMER =0x01,
- TYPEOFNUMBER_NATIONAL_NUMBER =0x02,
- TYPEOFNUMBER_NETWORK_SPECIFIC_NUMBER =0x03,
- TYPEOFNUMBER_SUBSCRIBER_NUMBER =0x04,
- TYPEOFNUMBER_ALPHANUMERIC =0x05,
- TYPEOFNUMBER_ABBREVIATED =0x06,
- TYPEOFNUMBER_RESERVED_FOR_EXTENSION =0x07
-
-}NumberType;
-
-// Numbering-plan-identification (applies for type of number 000,001,010)
-typedef enum
-{
- NUMBERING_PLAN_IDENTIFICATION_UNKNOWN =0x00,
- NUMBERING_PLAN_IDENTIFICATION_ISDN_TELEPHONE =0x01,
- NUMBERING_PLAN_IDENTIFICATION_DATA =0x03,
- NUMBERING_PLAN_IDENTIFICATION_TELEX =0x04,
- NUMBERING_PLAN_IDENTIFICATION_NATIONAL =0x08,
- NUMBERING_PLAN_IDENTIFICATION_PRIVATE =0x09,
- NUMBERING_PLAN_IDENTIFICATION_ERMES =0x0B,
- NUMBERING_PLAN_IDENTIFICATION_RESERVED =0x0F
-
-}NumberingPlan;
-
-typedef struct
-{
- NumberType ton;
-
- NumberingPlan npi;
-
- UINT32 dialnumLen;
-
- unsigned char diallingNum[ADDRESS_LEN_MAX+1];
-
-} SmsAddressInfo;
-
-#endif /* _SMS_HEADER_H_ */
+++ /dev/null
-/*
- * telephony-emulator
- *
- * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Contact:
- * Sooyoung Ha <yoosah.ha@samsung.com>
- * Sungmin Ha <sungmin82.ha@samsung.com>
- * YeongKyoon Lee <yeongkyoon.lee@samsung.com>
- *
- * This library is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This library is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this library; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Contributors:
- * - S-Core Co., Ltd
- *
- */
-
-#ifndef _SMS_UTIL_H_
-#define _SMS_UTIL_H_
-
-#include "sms_header.h"
-
-//#include <linuxtapi.h>
-
-#define SIM_TON_UNKNOWN 0 //unknown
-#define SIM_TON_INTERNATIONAL 1 //international number
-#define SIM_TON_NATIONAL 2 //national number
-#define SIM_TON_NETWORK_SPECIFIC 3 //natwork specific number
-#define SIM_TON_DEDICATED_ACCESS 4 //subscriber number
-#define SIM_TON_ALPHA_NUMERIC 5//alphanumeric, GSM 7-bit default alphabet)
-#define SIM_TON_ABBREVIATED_NUMBER 6 //abbreviated number
-#define SIM_TON_RESERVED_FOR_EXT 7 //reserved for extension
-
-
-#define MAX_UDH_LEN 137
-#define UDH_MAX 7
-#define SMDATA_SIZE_MAX 160
-
-
-#define FAIL 0x00
-#define SUCCESS 0x01
-//////////////////////////////////TPDU type////////////////////////////////
-typedef enum
-{
- SMS_TPDU_DELIVER = 0x00, // sc -> ms
- SMS_TPDU_DELIVER_REPORT = 0x00, // ms -> sc
- SMS_TPDU_SUBMIT = 0x01, // ms -> sc
- SMS_TPDU_SUBMIT_REPORT = 0x01, // sc -> ms
- SMS_TPDU_STATUS_REPORT = 0x02, // sc -> ms
- SMS_TPDU_COMMAND = 0x02, // ms -> sc
- SMS_PDU_INVALID_TYPE
-
-} SmsTPDUType;
-
-typedef struct
-{
- int year;
- int month;
- int day;
- int hour;
- int minute;
- int second;
-
-} TmDateTime;
-
-
-#define BASE_YEAR 70L /* 1970 is the base year */
-#define MAX_YEAR 130L /* 2030 is the max year */
-
-
-#define SIM_SMSP_ADDRESS_LEN 20 // digit length
-
-#define SET_TON_NPI(dest, ton, npi) { \
- dest = 0x80; \
- dest |= (ton & 0x07) << 4; \
- dest |= npi & 0x0F; \
-}
-
-
-
-
-typedef struct
-{
- /************HEADER************/
-
- // message type [M]
- SmsTPDUType msgType ; //bit 0 ,1
-
- // reject duplicates [M]
- BOOL rd ; // bit 2
-
- // validity period format [M]
- TapiNetTextVPType vpf ; // bits 3, 4
-
- // reply path [M]
- BOOL rp ; //bit 7
-
- // user data header indication
- BOOL udhi ; //bit 6
-
- // status report request
- BOOL srr ; // bit 5
-
- /************BODY************/
-
- //message reference [M]
- UINT mr;
-
- // destination address [M]
- SmsAddressInfo desAddr;
-
- // protocol identifier [M]
- BYTE pId;
-
- // data coding scheme [M]
- TapiNetTextCodingScheme dcs;
-
- // validity period
- TapiNetTextVP vp;
-
- // user data length [M]
- UINT udl;
-
- // user data
- BYTE * userData;
-
-
-}TPDU_SMS_SUBMIT;
-
-typedef struct
-{
- /************HEADER************/
-
- // message type [M]
- SmsTPDUType msgType; //bit 0 ,1
-
- // user data header indication
- BOOL udhi ; //bit 6
-
- /************BODY************/
-
- // failure Cause [M]
- UINT fcs;
-
- // parameter indicator [M]
- BYTE paraInd;
-
- // service centre time stamp [M]
- TmDateTime scts;
-
- // protocol identifier [M]
- BYTE pId;
-
- // data coding scheme
- TapiNetTextCodingScheme dcs;
-
- // user data length [M]
- UINT udl;
-
- // user data
- BYTE * userData;
-
-}TPDU_SMS_SUBMIT_REPORT;
-
-
-typedef struct
-{
- /************HEADER************/
- SmsTPDUType msgType; //bit 0 ,1
-
- BOOL mms; // bit 2
-
- BOOL rp; // bit 7
-
- BOOL udhi; //bit 6
-
- BOOL sri; // bit , 5status_report_indication
-
- /************BODY************/
-
- SmsAddressInfo orgAddr;
-
- BYTE pId;
-
- TmDateTime scts;
-
- TapiNetTextCodingScheme dcs;
-
- UINT udl;
-
- BYTE * userData;
-
-}TPDU_SMS_DELIVER;
-
-typedef struct
-{
- /************HEADER************/
- SmsTPDUType msgType ; //bit 0 ,1
-
- BOOL udhi ; //bit 6
-
- /************BODY************/
-
- UINT fcs;
-
- BYTE paraInd;
-
- BYTE pId;
-
- TapiNetTextCodingScheme dcs;
-
- UINT udl;
-
- BYTE * userData;
-
-}TPDU_SMS_DELIVER_REPORT;
-
-
-typedef struct
-{
- /************HEADER************/
- SmsTPDUType msgType ; //bit 0 ,1
-
- BOOL udhi ; //bit 6
-
- BOOL srr; //bit 5, status_report_request
-
- /************BODY************/
-
- UINT mr; //message_ref
-
- BYTE pId;
-
- BYTE cmdType;
-
- BYTE msgNum;
-
- SmsAddressInfo destAddr;
-
- UINT udl;
-
- BYTE * userData;
-
-}TPDU_SMS_COMMAND;
-
-
-typedef struct
-{
- /************HEADER************/
-
- SmsTPDUType msgType ; //bit 0 ,1
-
- BOOL udhi ; //bit 6
-
- BOOL mms ; //bit 2
-
- BOOL srq; //bit 5, status_report_qualifier
-
- /************BODY************/
-
- UINT mr;
-
- SmsAddressInfo rcpAddr; //recipient_addr
-
- TmDateTime scts;
-
- TmDateTime dt; //discharge_time
-
- BYTE status;
-
- BYTE paraInd;
-
- BYTE pId;
-
- TapiNetTextCodingScheme dcs;
-
- UINT udl;
-
- BYTE * userData;
-
-}TPDU_SMS_STATUS_REPORT;
-
-#define CB_GSM 0x01
-#define CB_UMTS 0x02
-
-typedef struct
-{
- BYTE accessNetwork; //GSM or UMTS
- BYTE messageType; //!< The type of cellbroadcast message. [only UMTS use]
- UINT messageId; //!< The source and type of cellbroadcast message.
- BYTE geographicalScope; //!< The geographical area over which the cellbroadcast message is sent.
- BYTE updateNumber; //!< Identifies a change of the message content of the same cellbroadcast message.
- UINT messageCode; //!< Identifies different message themes.
- BYTE language; //!< Language of the cellbroadcast message content.
- BYTE messageClass; //!< Class of the cellbroadcast message.
- BYTE page;
-
- BYTE * message;
-
-}CELLBROADCASTING; //june
-
-
-
-/**************************************************************************************
-*** (main.c) function header****************************************************************
-***************************************************************************************
-***************************************************************************************/
-
-BOOL EncodeSmsDeliverTpdu(SmsAddressInfo SCA, TPDU_SMS_DELIVER tpdu_deliver, char *rawdata, int *rawdata_len, BYTE pid, BYTE dcs);
-//BOOL EncodeSmsDeliverTpdu(char *rawdata, int *rawdata_len, char* diallingNum, int dialNumLen, char* msg, int msg_len) ;
-BOOL EncodeSmsSubmitReportTpdu(char *rawdata, int *rawdata_len);
-BOOL DecodeSmsSubmitTpdu(TPDU_SMS_SUBMIT *tpdu_submit, int pdu_len , char * pPDU);
-
-/*
-int SendMessage();
-int ReadMessage();
-int DeleteMessage();
-int ReceiveMessage(int pdu_len, char * pPDU);
-int GetInformation();
-int Setting();
-
-BOOL DecodeCellBroadcastMsg(int length,char * pPDU);
-BOOL EncodeSmsSubmitTpdu(char* diallingNum, int dialNumLen, char* msg, int msg_len) ;
-//BOOL DecodeSmsSubmitTpdu(int pdu_len , char * pPDU);
-int DecodeSmsDeliverTpdu(int pdu_len , char * pPDU);
-BOOL EncodeSmsDeliverReportTpdu();
-BOOL DecodeSmsSubmitReportTpdu(int length , char *data);
-BOOL DecodeSmsStatusReportTpdu(int pdu_len, char * pPDU);
-*/
-
-/***************************************************************************************/
-void reverse(char* x, int len);
-char* AcItoa(int n, char* str, int b) ;
-int AcToupper(int ch);
-
-int SmsUtilUnpackGSMCode( char* szData, const BYTE* pIn, int in_len );
-int SmsUtilPackGSMCode( BYTE* pOut, const char* szData, int in_len );
-
-void SmsUtilConvertBCD2Digit( char* pDigits, char* pBCD, int digitLen );
-void SmsUtilConvertDigit2BCD( char* pBCD, char* pDigits, int digitLen );
-
-TmDateTime* SmsUtilDecodeTimeStamp( unsigned char* pTimeStamp, TmDateTime *tmDateTime );
-unsigned char* SmsUtilEncodeTimeStamp( TmDateTime* tmDateTime, unsigned char* pTimeStamp );
-
-
-void SmsUtilDecodeAddrField(char *diallingNum, unsigned char * pAddrField, int *result_ton, int *result_npi );
-int SmsUtilEncodeAddrField( unsigned char* pAddrField, unsigned char* diallingNum, int dialnumLen, int ton, int npi );
-
-int SmsUtilDecodeScAddrField( SmsAddressInfo* pSmsAddrField, BYTE* pAddrField );
-int SmsUtilEncodeScAddrField( BYTE* pAddrField, SmsAddressInfo * pSmsAddrField );
-
-void SmsUtilDecodeDCS( TapiNetTextCodingScheme* pCodingScheme, unsigned char dcs );
-void SmsUtilEncodeDCS( BYTE* pDCS, TapiNetTextCodingScheme* pCodingScheme);
-
-UINT8 SmsUtilEncodeValidity( BYTE* pValidity, TapiNetTextVP* pVP );
-
-#endif /* _SMS_UTIL_H_ */
-