00001 /* $Id: dvdid.h 2192 2009-06-11 17:04:14Z chris $ */ 00002 00003 #ifndef DVDID__DVDID_H 00004 #define DVDID__DVDID_H 00005 00006 00007 #include <stdint.h> 00008 00009 00010 #include "export.h" 00011 00012 00013 #ifdef __cplusplus 00014 extern "C" { 00015 #endif 00016 00017 00018 enum dvdid_status_e { 00019 DVDID_STATUS_OK = 0, 00020 DVDID_STATUS_MALLOC_ERROR, 00021 00022 /* Error that should only be returned by dvdid_calculate (but not test of API) */ 00023 DVDID_STATUS_PLATFORM_UNSUPPORTED, 00024 DVDID_STATUS_READ_VIDEO_TS_ERROR, 00025 DVDID_STATUS_READ_VMGI_ERROR, 00026 DVDID_STATUS_READ_VTS01I_ERROR, 00027 }; 00028 00029 00030 typedef enum dvdid_status_e dvdid_status_t; 00031 00032 /* 00033 If unsucessful, errn will be set to a platform specific error number, or zero if no 00034 such information is available. If errn is NULL, the parameter will be ignored. 00035 */ 00036 DVDID_API(dvdid_status_t) dvdid_calculate(uint64_t *dvdid, const char* dvdpath, int *errn); 00037 00038 00039 #ifdef __cplusplus 00040 } 00041 #endif 00042 00043 00044 #endif