Mercurial > libdvdnav.hg
diff vm.h @ 22:3c1df0cb3aee src
Start of rewrite of libdvdnav. Still need to re-implement seeking.
author | jcdutton |
---|---|
date | Mon, 22 Apr 2002 22:01:28 +0000 |
parents | a68c6da98b73 |
children | df024077cbc1 |
line wrap: on
line diff
--- a/vm.h Mon Apr 22 20:57:15 2002 +0000 +++ b/vm.h Mon Apr 22 22:01:28 2002 +0000 @@ -61,12 +61,30 @@ int rsm_cellN; } dvd_state_t; +typedef struct vm_position_s { + int16_t button; /* Button highlighted */ + uint32_t clut; /* CLUT to use, not needed in this struct */ + int32_t vts; /* vts number to use */ + int32_t domain; /* domain to use */ + int32_t spu_channel; /* spu channel to use */ + int32_t angle_channel; /* angle channel to use */ + int32_t audio_channel; /* audio channel to use */ + int32_t hop_channel; /* channel hopping. E.g menu button pressed */ + int32_t title; /* title number */ + int32_t chapter; /* chapter number */ + int32_t cell; /* cell number */ + int32_t still; /* is cell still */ + int32_t vobu_start; /* block number of start of current VOBU in use */ + int32_t vobu_next; /* block number within VOBU in use */ +} vm_position_t; + typedef struct { dvd_reader_t *dvd; ifo_handle_t *vmgi; ifo_handle_t *vtsi; dvd_state_t state; int badness_counter; + int32_t hop_channel; } vm_t; @@ -107,6 +125,8 @@ /* Other calls */ int vm_reset(vm_t *vm, char *dvdroot); /* , register_t regs); */ int vm_start(vm_t *vm); +int vm_position_get(vm_t *vm, vm_position_t *position); +int vm_position_print(vm_t *vm, vm_position_t *position); int vm_eval_cmd(vm_t *vm, vm_cmd_t *cmd); int vm_get_next_cell(vm_t *vm); int vm_menu_call(vm_t *vm, DVDMenuID_t menuid, int block);