libcdio  0.90
udf_file.h
Go to the documentation of this file.
00001 /*  
00002     Copyright (C) 2005, 2006, 2008 Rocky Bernstein <rocky@gnu.org>
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 */
00017 
00025 #ifndef UDF_FILE_H
00026 #define UDF_FILE_H 
00027 
00028 #ifdef __cplusplus
00029 extern "C" {
00030 #endif /* __cplusplus */
00031 
00035   bool udf_get_fileid_descriptor(const udf_dirent_t *p_udf_dirent, 
00036                                  /*out*/ udf_fileid_desc_t *p_udf_fid);
00037 
00041   const char *udf_get_filename(const udf_dirent_t *p_udf_dirent);
00042   
00046   bool udf_get_file_entry(const udf_dirent_t *p_udf_dirent, 
00047                           /*out*/ udf_file_entry_t *p_udf_fe);
00048 
00052   uint16_t udf_get_link_count(const udf_dirent_t *p_udf_dirent);
00053 
00057   uint64_t udf_get_file_length(const udf_dirent_t *p_udf_dirent);
00058 
00062   mode_t udf_get_posix_filemode(const udf_dirent_t *p_udf_dirent);
00063 
00067   udf_dirent_t *udf_opendir(const udf_dirent_t *p_udf_dirent);
00068   
00088   ssize_t udf_read_block(const udf_dirent_t *p_udf_dirent, 
00089                          void * buf, size_t count);
00090 
00099   udf_dirent_t *udf_readdir(udf_dirent_t *p_udf_dirent);
00100   
00104   bool udf_dirent_free(udf_dirent_t *p_udf_dirent);
00105   
00109   bool udf_is_dir(const udf_dirent_t *p_udf_dirent);
00110   
00111 #ifdef __cplusplus
00112 }
00113 #endif /* __cplusplus */
00114 
00115 #endif /*UDF_FILE_H*/