Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

file.h

Go to the documentation of this file.
00001 /*
00002  * $Id: file.h,v 1.6 2005/06/25 01:37:42 daichik Exp $
00003  *
00004  * Copyright (c) 2002-2003, Raphael Manfredi
00005  *
00006  *----------------------------------------------------------------------
00007  * This file is part of gtk-gnutella.
00008  *
00009  *  gtk-gnutella is free software; you can redistribute it and/or modify
00010  *  it under the terms of the GNU General Public License as published by
00011  *  the Free Software Foundation; either version 2 of the License, or
00012  *  (at your option) any later version.
00013  *
00014  *  gtk-gnutella is distributed in the hope that it will be useful,
00015  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00016  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017  *  GNU General Public License for more details.
00018  *
00019  *  You should have received a copy of the GNU General Public License
00020  *  along with gtk-gnutella; if not, write to the Free Software
00021  *  Foundation, Inc.:
00022  *      59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00023  *----------------------------------------------------------------------
00024  */
00025 
00036 #ifndef _file_h_
00037 #define _file_h_
00038 
00039 #include "common.h"
00040 
00044 typedef struct {
00045     const gchar *dir;               
00046     const gchar *name;              
00047 } file_path_t;
00048 
00049 /*
00050  * Public interface.
00051  */
00052 
00053 void file_register_fd_reclaimer(reclaim_fd_t callback);
00054 
00055 FILE *file_config_open_read(
00056     const gchar *what, const file_path_t *fv, gint fvcnt);
00057 FILE *file_config_open_read_norename(
00058     const gchar *what, const file_path_t *fv, gint fvcnt);
00059 FILE *file_config_open_read_norename_chosen(
00060     const gchar *what, const file_path_t *fv, gint fvcnt, gint *chosen);
00061 FILE *file_config_open_write(const gchar *what, const file_path_t *fv);
00062 gboolean file_config_close(FILE *out, const file_path_t *fv);
00063 
00064 void file_config_preamble(FILE *out, const gchar *what);
00065 void file_path_set(file_path_t *fp, const char *dir, const char *name);
00066 
00067 gint file_open(const gchar *path, gint flags);
00068 gint file_open_missing(const gchar *path, gint flags);
00069 gint file_create(const gchar *path, gint flags, gint mode);
00070 FILE *file_fopen(const gchar *path, const gchar *mode);
00071 FILE *file_fopen_missing(const gchar *path, const gchar *mode);
00072 
00073 #endif /* _file_ */
00074 /* vi: set ts=4 sw=4 cindent: */

Generated on Sun Feb 12 10:49:56 2006 for Gtk-Gnutella by doxygen 1.3.6