00001 /** 00002 * This file is part of alarmd 00003 * 00004 * Contact Person: David Weinehall <david.weinehall@nokia.com> 00005 * 00006 * Copyright (C) 2006 Nokia Corporation 00007 * alarmd and libalarm are free software; you can redistribute them 00008 * and/or modify them under the terms of the GNU Lesser General Public 00009 * License version 2.1 as published by the Free Software Foundation. 00010 * 00011 * alarmd and libalarm are distributed in the hope that they will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Lesser General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Lesser General Public 00017 * License along with this software; if not, write to the Free 00018 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 00019 * 02110-1301 USA 00020 */ 00021 00022 #ifndef _RPC_IC_H_ 00023 #define _RPC_IC_H_ 00024 00025 #include <glib/gtypes.h> 00026 00027 /** 00028 * SECTION:rpc-ic 00029 * @short_description: Helper functions to communicate with ic. 00030 * 00031 * Here there be helper functions that can be used to get conncetivity 00032 * status from ic. 00033 **/ 00034 00035 /** 00036 * ICDConnectedNotifyCb: 00037 * @user_data: user data set when the signal handler was connected. 00038 * 00039 * Callback to be called when a connection is connected. 00040 **/ 00041 typedef void (*ICConnectedNotifyCb)(gpointer user_data); 00042 00043 /** 00044 * ic_get_connected: 00045 * 00046 * Gets the connection status from ic. 00047 * Returns: TRUE if there is an active connection. 00048 **/ 00049 gboolean ic_get_connected(void); 00050 00051 /** 00052 * ic_wait_connection: 00053 * @cb: Callback to call when a connection is established. 00054 * @user_data: User data to pass to the @cb. 00055 * 00056 * Waits for internet connection and calls cb when one comes. 00057 **/ 00058 void ic_wait_connection(ICConnectedNotifyCb cb, gpointer user_data); 00059 00060 /** 00061 * ic_unwait_connection: 00062 * @cb: Callback that should be removed. 00063 * @user_data: user daata for callback that should be removed. 00064 * 00065 * Stopds waiting for internet connection for given callback and data. 00066 **/ 00067 void ic_unwait_connection(ICConnectedNotifyCb cb, gpointer user_data); 00068 00069 #endif