00001 /* Copyright 2009 (c) ENSI de Bourges 00002 * 88 boulevard Lahitolle, 18020 Bourges Cedex, France 00003 * 00004 * This program is free software: you can redistribute it and/or modify 00005 * it under the terms of the GNU General Public License as published by 00006 * the Free Software Foundation, either version 3 of the License, or 00007 * (at your option) any later version. 00008 * 00009 * This program is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 * GNU General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU General Public License 00015 * along with this program. If not, see <http://www.gnu.org/licenses/>. 00016 */ 00025 #ifndef __MACHINE_H 00026 #define __MACHINE_H 00027 #ifdef __cplusplus 00028 extern "C" { 00029 #endif 00030 00031 #include <glib.h> 00032 00033 00034 00042 typedef struct __machine_t { 00043 gboolean _virtual; 00044 gchar *display_name; 00045 gchar *folder_name; 00046 GList *monitoring_tools; 00047 } machine_t; 00048 00049 00050 00060 GList *machine_list_new (const gchar *, GList *); 00061 00062 00063 00071 void machine_list_free (GList *); 00072 00073 00074 00084 gint machine_list_remove (GList **, machine_t *); 00085 00086 00087 00098 machine_t *machine_list_find_by_name (GList *, const gchar *); 00099 00100 00101 00112 gint machine_cmp (machine_t *, machine_t *); 00113 00114 00115 00124 const gchar *machine_get_display_name (machine_t *); 00125 00126 00127 00136 const gchar *machine_get_folder_name (machine_t *); 00137 00138 00139 00148 gint machine_is_all_machines (machine_t *); 00149 00150 00151 00162 GList *machine_get_list_for_plugin (const gchar *, gboolean); 00163 00164 #ifdef __cplusplus 00165 } 00166 #endif 00167 #endif