Mercurial > libdvdnav.hg
changeset 36:04070bfba69b src
We don't need this file anymore, it's dynamically created now.
author | f1rmb |
---|---|
date | Thu, 30 May 2002 14:26:59 +0000 |
parents | fbf85034a242 |
children | 832ca4921e04 |
files | dvdnav_internal.h |
diffstat | 1 files changed, 0 insertions(+), 167 deletions(-) [+] |
line wrap: on
line diff
--- a/dvdnav_internal.h Thu May 30 14:25:53 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,167 +0,0 @@ -/* - * Copyright (C) 2001 Rich Wareham <richwareham@users.sourceforge.net> - * - * This file is part of libdvdnav, a DVD navigation library. - * - * libdvdnav is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * libdvdnav is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA - * - * $Id$ - * - */ - -#ifndef DVDNAV_INTERNAL_H_INCLUDED -#define DVDNAV_INTERNAL_H_INCLUDED - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include "dvdnav.h" -#include "vm.h" - -#include <stdlib.h> -#include <stdio.h> -#include <unistd.h> -#include <limits.h> -#include <string.h> -#include <pthread.h> - -#undef WORDS_BIGENDIAN - -#include <dvdread/dvd_reader.h> -#include <dvdread/ifo_read.h> -#include <dvdread/ifo_types.h> - - -/* Maximum length of an error string */ -#define MAX_ERR_LEN 255 - -/* Use the POSIX PATH_MAX if available */ -#ifdef PATH_MAX -#define MAX_PATH_LEN PATH_MAX -#else -#define MAX_PATH_LEN 255 /* Arbitary */ -#endif - -#ifndef DVD_VIDEO_LB_LEN -#define DVD_VIDEO_LB_LEN 2048 -#endif - -typedef struct read_cache_s read_cache_t; - -/* - * These are defined here because they are - * not in ifo_types.h, they maybe one day - */ - -#ifndef audio_status_t -typedef struct { -#ifdef WORDS_BIGENDIAN - unsigned int available : 1; - unsigned int zero1 : 4; - unsigned int stream_number : 3; - uint8_t zero2; -#else - uint8_t zero2; - unsigned int stream_number : 3; - unsigned int zero1 : 4; - unsigned int available : 1; -#endif -} ATTRIBUTE_PACKED audio_status_t; -#endif - -#ifndef spu_status_t -typedef struct { -#ifdef WORDS_BIGENDIAN - unsigned int available : 1; - unsigned int zero1 : 2; - unsigned int stream_number_4_3 : 5; - unsigned int zero2 : 3; - unsigned int stream_number_wide : 5; - unsigned int zero3 : 3; - unsigned int stream_number_letterbox : 5; - unsigned int zero4 : 3; - unsigned int stream_number_pan_scan : 5; -#else - unsigned int stream_number_pan_scan : 5; - unsigned int zero4 : 3; - unsigned int stream_number_letterbox : 5; - unsigned int zero3 : 3; - unsigned int stream_number_wide : 5; - unsigned int zero2 : 3; - unsigned int stream_number_4_3 : 5; - unsigned int zero1 : 2; - unsigned int available : 1; -#endif -} ATTRIBUTE_PACKED spu_status_t; -#endif - -typedef struct dvdnav_vobu_s { - int32_t vobu_start; /* Logical Absolute. MAX needed is 0x300000 */ - int32_t vobu_length; /* Relative offset */ - int32_t blockN; /* Relative offset */ - int32_t vobu_next; /* Relative offset */ -} dvdnav_vobu_t; - -/* The main DVDNAV type */ - -struct dvdnav_s { - /* General data */ - char path[MAX_PATH_LEN]; /* Path to DVD device/dir */ - dvd_file_t *file; /* Currently opened file */ - int open_vtsN; /* The domain and number of the... */ - int open_domain; /* ..currently opened VOB */ - - /* Position data */ - vm_position_t position_next; - vm_position_t position_current; - dvdnav_vobu_t vobu; - - /* NAV data */ - pci_t pci; - dsi_t dsi; - - /* Flags */ - int skip_still; /* Set when skipping a still */ - int stop; /* Are we stopped? (note not paused, actually stopped) */ - int spu_clut_changed; /* The SPU CLUT changed */ - int started; /* vm_start has been called? */ - int use_read_ahead; /* 1 - use read-ahead cache, 0 - don't */ - /* VM */ - vm_t* vm; - pthread_mutex_t vm_lock; - - /* Highlight */ - int hli_state; /* State of highlight: 0 - disabled, - 1 - selected, - 2 - activated */ - - /* Read-ahead cache */ - read_cache_t *cache; - - /* Errors */ - char err_str[MAX_ERR_LEN]; -}; - -/** USEFUL MACROS **/ - -#define printerrf(format, args...) snprintf(this->err_str, MAX_ERR_LEN, format, ## args); -#define printerr(str) strncpy(this->err_str, str, MAX_ERR_LEN); -/* Save my typing */ - -#define S_ERR DVDNAV_STATUS_ERR -#define S_OK DVDNAV_STATUS_OK - -#endif /* DVDNAV_INTERNAL_H_INCLUDED */