24 #ifndef MUSICBRAINZ_DISC_ID_H 25 #define MUSICBRAINZ_DISC_ID_H 27 #if (defined(_WIN32) || defined(_WIN64) || defined(__CYGWIN__)) 28 # ifdef libdiscid_EXPORTS 29 # define LIBDISCID_API __declspec(dllexport) 31 # define LIBDISCID_API __declspec(dllimport) 33 # define LIBDISCID_INTERNAL 34 #elif (defined(__GNUC__) && (__GNUC__ >= 4)) || defined(__clang__) 35 # define LIBDISCID_API 36 # define LIBDISCID_INTERNAL __attribute__((visibility("hidden"))) 37 #elif defined(__SUNPRO_C) 38 # define LIBDISCID_API __global 39 # define LIBDISCID_INTERNAL __hidden 41 # define LIBDISCID_API 42 # define LIBDISCID_INTERNAL 45 #if (defined(_WIN32) || defined(_WIN64) || defined(__CYGWIN__)) 46 #define LIBDISCID_DEPRECATED __declspec(deprecated) 47 #elif (defined(__GNUC__) && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))) || defined(__clang__) 48 #define LIBDISCID_DEPRECATED __attribute__((deprecated)) 50 #define LIBDISCID_DEPRECATED 53 #define DISCID_VERSION_MAJOR 0 54 #define DISCID_VERSION_MINOR 6 55 #define DISCID_VERSION_PATCH 2 56 #define DISCID_VERSION_NUM 602 204 unsigned int features);
206 #define DISCID_HAVE_SPARSE_READ 453 #define DISCID_FEATURE_STR_READ "read" 454 #define DISCID_FEATURE_STR_MCN "mcn" 455 #define DISCID_FEATURE_STR_ISRC "isrc" 456 #define DISCID_FEATURE_LENGTH 32 LIBDISCID_API DiscId * discid_new()
Return a handle for a new DiscId object.
discid_feature
PLATFORM-DEPENDENT FEATURES.
Definition: discid.h:436
LIBDISCID_API int discid_get_sectors(DiscId *d)
Return the length of the disc in sectors.
LIBDISCID_API int discid_read(DiscId *d, const char *device)
Read all supported features of the disc in the given CD-ROM/DVD-ROM drive.
LIBDISCID_API char * discid_get_version_string(void)
Return the full version string of this library, including the name.
LIBDISCID_API char * discid_get_submission_url(DiscId *d)
Return an URL for submitting the DiscID to MusicBrainz.
#define LIBDISCID_DEPRECATED
Definition: discid.h:50
LIBDISCID_API char * discid_get_toc_string(DiscId *d)
Return a string representing CD Table Of Contents (TOC).
LIBDISCID_API int discid_get_track_length(DiscId *d, int track_num)
Return the length of a track in sectors.
#define LIBDISCID_API
Definition: discid.h:41
LIBDISCID_API void discid_get_feature_list(char *features[DISCID_FEATURE_LENGTH])
Return a list of features supported by the current platform.
LIBDISCID_API int discid_put(DiscId *d, int first, int last, int *offsets)
Provides the TOC of a known CD.
void * DiscId
A transparent handle for an Audio CD.
Definition: discid.h:122
LIBDISCID_API char * discid_get_id(DiscId *d)
Return a MusicBrainz DiscID.
LIBDISCID_API void discid_free(DiscId *d)
Release the memory allocated for the DiscId object.
LIBDISCID_API int discid_read_sparse(DiscId *d, const char *device, unsigned int features)
Read the disc in the given CD-ROM/DVD-ROM drive extracting only the TOC and additionally specified fe...
LIBDISCID_API char * discid_get_mcn(DiscId *d)
Return the Media Catalogue Number (MCN) for the disc.
LIBDISCID_API int discid_get_track_offset(DiscId *d, int track_num)
Return the sector offset of a track.
LIBDISCID_API int discid_get_last_track_num(DiscId *d)
Return the number of the last audio track on this disc.
LIBDISCID_API char * discid_get_default_device(void)
Return the name of the default disc drive for this machine.
LIBDISCID_API char * discid_get_track_isrc(DiscId *d, int track_num)
Return the ISRC for a track.
#define DISCID_FEATURE_LENGTH
Definition: discid.h:456
LIBDISCID_API LIBDISCID_DEPRECATED char * discid_get_webservice_url(DiscId *d)
Return an URL for retrieving CD information from MusicBrainz' web service.
LIBDISCID_API int discid_get_first_track_num(DiscId *d)
Return the number of the first track on this disc.
LIBDISCID_API int discid_has_feature(enum discid_feature feature)
Check if a certain feature is implemented on the current platform.
LIBDISCID_API char * discid_get_freedb_id(DiscId *d)
Return a FreeDB DiscID.
LIBDISCID_API char * discid_get_error_msg(DiscId *d)
Return a human-readable error message.