libcdio  0.90
disc.h
Go to the documentation of this file.
00001 /* -*- c -*-
00002 
00003     Copyright (C) 2004, 2005, 2006, 2008, 2010, 2012 Rocky Bernstein
00004     <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 
00024 #ifndef CDIO_DISC_H_
00025 #define CDIO_DISC_H_
00026 
00027 #ifdef __cplusplus
00028 extern "C" {
00029 #endif /* __cplusplus */
00030 
00036   typedef enum {
00037     CDIO_DISC_MODE_CD_DA,           
00038     CDIO_DISC_MODE_CD_DATA,         
00039     CDIO_DISC_MODE_CD_XA,           
00040     CDIO_DISC_MODE_CD_MIXED,        
00041     CDIO_DISC_MODE_DVD_ROM,         
00042     CDIO_DISC_MODE_DVD_RAM,         
00043     CDIO_DISC_MODE_DVD_R,           
00044     CDIO_DISC_MODE_DVD_RW,          
00045     CDIO_DISC_MODE_HD_DVD_ROM,      
00046     CDIO_DISC_MODE_HD_DVD_RAM,      
00047     CDIO_DISC_MODE_HD_DVD_R,        
00048     CDIO_DISC_MODE_DVD_PR,          
00049     CDIO_DISC_MODE_DVD_PRW,         
00050     CDIO_DISC_MODE_DVD_PRW_DL,      
00051     CDIO_DISC_MODE_DVD_PR_DL,       
00052     CDIO_DISC_MODE_DVD_OTHER,       
00053     CDIO_DISC_MODE_NO_INFO,
00054     CDIO_DISC_MODE_ERROR,
00055     CDIO_DISC_MODE_CD_I         
00056   } discmode_t;
00057 
00058   extern const char *discmode2str[];
00059 
00068   uint8_t * cdio_get_cdtext_raw (CdIo_t *p_cdio);
00069 
00077   cdtext_t *cdio_get_cdtext (CdIo_t *p_cdio);
00078 
00084   discmode_t cdio_get_discmode (CdIo_t *p_cdio);
00085 
00091   lsn_t cdio_get_disc_last_lsn(const CdIo_t *p_cdio);
00092   
00096   uint8_t cdio_get_joliet_level(const CdIo_t *p_cdio);
00097 
00108   char * cdio_get_mcn (const CdIo_t *p_cdio);
00109 
00116   track_t cdio_get_num_tracks (const CdIo_t *p_cdio);
00117   
00121   bool cdio_is_discmode_cdrom (discmode_t discmode);
00122   
00126   bool cdio_is_discmode_dvd (discmode_t discmode);
00127   
00131 #define cdio_stat_size cdio_get_disc_last_lsn
00132 
00133 #ifdef __cplusplus
00134 }
00135 #endif /* __cplusplus */
00136 
00137 #endif /* CDIO_DISC_H_ */