23#ifndef LIBDVDREAD_DVD_READER_H
24#define LIBDVDREAD_DVD_READER_H
27#ifndef _LARGEFILE64_SOURCE
28#define _LARGEFILE64_SOURCE
35#if defined(_MSC_VER) && !defined(ssize_t)
37typedef SSIZE_T ssize_t;
40#include <dvdread/attributes.h>
52#include <dvdread/version.h>
57#include "dvd_filesystem.h"
63#define DVD_VIDEO_LB_LEN 2048
68#define MAX_UDF_FILE_NAME_LEN 2048
77typedef struct dvd_reader_s dvd_reader_t;
78typedef struct dvd_reader_device_s dvd_reader_device_t;
83typedef struct dvd_file_s dvd_file_t;
87 int ( *pf_seek ) (
void *p_stream, uint64_t i_pos);
88 int ( *pf_read ) (
void *p_stream,
void* buffer,
int i_read);
89 int ( *pf_readv ) (
void *p_stream,
void *p_iovec,
int i_blocks);
103 DVD_LOGGER_LEVEL_INFO,
104 DVD_LOGGER_LEVEL_ERROR,
105 DVD_LOGGER_LEVEL_WARN,
106 DVD_LOGGER_LEVEL_DEBUG,
111 void ( *pf_log ) (
void *, dvd_logger_level_t,
const char *, va_list );
150DVDREAD_API dvd_reader_t *DVDOpen(
const char * );
165DVDREAD_API dvd_reader_t *DVDOpen2(
void *,
const dvd_logger_cb *,
const char *);
170DVDREAD_API dvd_reader_t *DVDOpenAudio(
void *,
const dvd_logger_cb *,
const char *);
174DVDREAD_API dvd_reader_t *DVDOpenVideoRecording(
void *,
const dvd_logger_cb *,
const char *);
193DVDREAD_API dvd_reader_t *DVDOpenFiles(
void *priv,
const dvd_logger_cb *logcb,
const char * path, dvd_reader_filesystem_h *fs);
204DVDREAD_API
void DVDClose( dvd_reader_t * );
211 DVD_READ_INFO_BACKUP_FILE,
218 DVD_READ_ASVS_INFO_BACKUP,
246DVDREAD_API
int DVDFileStat(dvd_reader_t *,
int, dvd_read_domain_t,
dvd_stat_t *);
261DVDREAD_API dvd_file_t *DVDOpenFile( dvd_reader_t *,
int, dvd_read_domain_t );
270DVDREAD_API
void DVDCloseFile( dvd_file_t * );
287DVDREAD_API ssize_t DVDReadBlocks( dvd_file_t *,
int,
size_t,
unsigned char * );
301DVDREAD_API int32_t DVDFileSeek( dvd_file_t *, int32_t );
315DVDREAD_API ssize_t DVDReadBytes( dvd_file_t *,
void *,
size_t );
325DVDREAD_API ssize_t DVDFileSize( dvd_file_t * );
340DVDREAD_API
int DVDDiscID( dvd_reader_t *,
unsigned char * );
360DVDREAD_API
int DVDUDFVolumeInfo( dvd_reader_t *,
char *,
unsigned int,
361 unsigned char *,
unsigned int );
363DVDREAD_API
int DVDFileSeekForce( dvd_file_t *,
int offset,
int force_size);
386DVDREAD_API
int DVDISOVolumeInfo( dvd_reader_t *,
char *,
unsigned int,
387 unsigned char *,
unsigned int );
401DVDREAD_API
int DVDUDFCacheLevel( dvd_reader_t *,
int );
Definition dvd_reader.h:110
Definition dvd_reader.h:86
Definition dvd_reader.h:117
off_t size
Definition dvd_reader.h:118
off_t parts_size[9]
Definition dvd_reader.h:120
int nr_parts
Definition dvd_reader.h:119