00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00029 #ifndef __CDIO_CD_TYPES_H__
00030 #define __CDIO_CD_TYPES_H__
00031
00032 #ifdef __cplusplus
00033 extern "C" {
00034 #endif
00035
00040 typedef enum {
00041 CDIO_FS_AUDIO = 1,
00043 CDIO_FS_HIGH_SIERRA = 2,
00044 CDIO_FS_ISO_9660 = 3,
00045 CDIO_FS_INTERACTIVE = 4,
00046 CDIO_FS_HFS = 5,
00049 CDIO_FS_UFS = 6,
00057 CDIO_FS_EXT2 = 7,
00058
00059 CDIO_FS_ISO_HFS = 8,
00060 CDIO_FS_ISO_9660_INTERACTIVE = 9,
00069 CDIO_FS_3DO = 10,
00070
00071
00075 CDIO_FS_XISO = 11,
00076 CDIO_FS_UDFX = 12,
00077 CDIO_FS_UDF = 13,
00078 CDIO_FS_ISO_UDF = 14
00079 } cdio_fs_t;
00080
00081
00085 #define CDIO_FSTYPE(fs) (fs & CDIO_FS_MASK)
00086
00092 typedef enum {
00093 CDIO_FS_MASK = 0x000f,
00096 CDIO_FS_ANAL_XA = 0x0010,
00097 CDIO_FS_ANAL_MULTISESSION = 0x0020,
00098 CDIO_FS_ANAL_PHOTO_CD = 0x0040,
00099 CDIO_FS_ANAL_HIDDEN_TRACK = 0x0080,
00101 CDIO_FS_ANAL_CDTV = 0x0100,
00102 CDIO_FS_ANAL_BOOTABLE = 0x0200,
00103 CDIO_FS_ANAL_VIDEOCD = 0x0400,
00104 CDIO_FS_ANAL_ROCKRIDGE = 0x0800,
00106 CDIO_FS_ANAL_JOLIET = 0x1000,
00108 CDIO_FS_ANAL_SVCD = 0x2000,
00109 CDIO_FS_ANAL_CVD = 0x4000,
00110 CDIO_FS_ANAL_XISO = 0x8000,
00111 CDIO_FS_MATCH_ALL = ~CDIO_FS_MASK
00116 } cdio_fs_cap_t;
00117
00118
00119 #define CDIO_FS_UNKNOWN CDIO_FS_MASK
00120
00124 #define CDIO_FS_MATCH_ALL (cdio_fs_anal_t) (~CDIO_FS_MASK)
00125
00126
00133 typedef struct
00134 {
00135 unsigned int joliet_level;
00137 char iso_label[33];
00139 unsigned int isofs_size;
00140 uint8_t UDFVerMinor;
00141 uint8_t UDFVerMajor;
00142 } cdio_iso_analysis_t;
00143
00149 cdio_fs_anal_t cdio_guess_cd_type(const CdIo_t *cdio, int start_session,
00150 track_t track_num,
00151 cdio_iso_analysis_t *iso_analysis);
00152
00153 #ifdef __cplusplus
00154 }
00155 #endif
00156
00162 extern cdio_fs_cap_t debug_cdio_fs_cap;
00163 extern cdio_fs_t debug_cdio_fs;
00164
00165 #endif
00166
00167
00168
00169
00170
00171
00172
00173