libcdio
0.82
|
00001 /* 00002 $Id: udf_file.h,v 1.12 2008/03/25 15:59:09 karl Exp $ 00003 00004 Copyright (C) 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org> 00005 00006 This program is free software: you can redistribute it and/or modify 00007 it under the terms of the GNU General Public License as published by 00008 the Free Software Foundation, either version 3 of the License, or 00009 (at your option) any later version. 00010 00011 This program is distributed in the hope that it will be useful, 00012 but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 GNU General Public License for more details. 00015 00016 You should have received a copy of the GNU General Public License 00017 along with this program. If not, see <http://www.gnu.org/licenses/>. 00018 */ 00019 00027 #ifndef UDF_FILE_H 00028 #define UDF_FILE_H 00029 00030 #ifdef __cplusplus 00031 extern "C" { 00032 #endif /* __cplusplus */ 00033 00037 bool udf_get_fileid_descriptor(const udf_dirent_t *p_udf_dirent, 00038 /*out*/ udf_fileid_desc_t *p_udf_fid); 00039 00043 const char *udf_get_filename(const udf_dirent_t *p_udf_dirent); 00044 00048 bool udf_get_file_entry(const udf_dirent_t *p_udf_dirent, 00049 /*out*/ udf_file_entry_t *p_udf_fe); 00050 00054 uint16_t udf_get_link_count(const udf_dirent_t *p_udf_dirent); 00055 00059 uint64_t udf_get_file_length(const udf_dirent_t *p_udf_dirent); 00060 00064 mode_t udf_get_posix_filemode(const udf_dirent_t *p_udf_dirent); 00065 00069 udf_dirent_t *udf_opendir(const udf_dirent_t *p_udf_dirent); 00070 00090 ssize_t udf_read_block(const udf_dirent_t *p_udf_dirent, 00091 void * buf, size_t count); 00092 00101 udf_dirent_t *udf_readdir(udf_dirent_t *p_udf_dirent); 00102 00106 bool udf_dirent_free(udf_dirent_t *p_udf_dirent); 00107 00111 bool udf_is_dir(const udf_dirent_t *p_udf_dirent); 00112 00113 #ifdef __cplusplus 00114 } 00115 #endif /* __cplusplus */ 00116 00117 #endif /*UDF_FILE_H*/