cdrom.h
author nathan
Sat, 29 Dec 2007 15:23:49 +0100
branchtrunk
changeset 2 6bcb44b9edb1
parent 0 d85c12073dea
child 4 79da91042fcc
permissions -rw-r--r--
release 0.6.3
nathan@0
     1
/* cdrom.h
nathan@0
     2
Copyright (c) 2000-2002 Craig Condit, Stefan Hülswitt.
nathan@0
     3
nathan@0
     4
Redistribution and use in source and binary forms, with or without
nathan@0
     5
modification, are permitted provided that the following conditions are met: 
nathan@0
     6
nathan@0
     7
1. Redistributions of source code must retain the above copyright notice,
nathan@0
     8
   this list of conditions and the following disclaimer. 
nathan@0
     9
2. Redistributions in binary form must reproduce the above copyright notice,
nathan@0
    10
   this list of conditions and the following disclaimer in the documentation
nathan@0
    11
   and/or other materials provided with the distribution. 
nathan@0
    12
nathan@0
    13
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
nathan@0
    14
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
nathan@0
    15
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
nathan@0
    16
DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR
nathan@0
    17
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
nathan@0
    18
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
nathan@0
    19
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
nathan@0
    20
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
nathan@0
    21
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
nathan@0
    22
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
nathan@0
    23
SUCH DAMAGE.
nathan@0
    24
*/
nathan@0
    25
nathan@0
    26
#ifndef _CDBACKUP_CDROM_H
nathan@0
    27
#define _CDBACKUP_CDROM_H
nathan@0
    28
nathan@0
    29
extern struct toc_entry *toc;
nathan@0
    30
extern long long cd_used, cd_avail;
nathan@0
    31
nathan@2
    32
struct toc_entry {
nathan@2
    33
  u_char track_no;	/* track number */
nathan@2
    34
  char is_data;		/* 1 = data track */
nathan@2
    35
  char is_cdbackup;	/* was it created by CD-Backup? */
nathan@2
    36
  int sec_start;	/* start sector */
nathan@2
    37
  int sec_end;		/* last sector */
nathan@2
    38
  char id_str[33];	/* recorder id string (32 chars) */
nathan@2
    39
  char vol_id[33];	/* volume label (32 characters) */
nathan@2
    40
  char t_stamp[13];	/* time stamp: yyyymmddhhmm */
nathan@2
    41
  char disk_set;	/* disk number */
nathan@2
    42
};
nathan@2
    43
nathan@0
    44
int open_cdr(char *device);
nathan@0
    45
void close_cdr(int cd_fd);
nathan@2
    46
void get_param(int fd, unsigned long *ahead, unsigned long *fahead);
nathan@2
    47
void set_param(int fd, unsigned long ahead, unsigned long fahead);
nathan@0
    48
int full_read(int fd, void *buf, int count);
nathan@0
    49
int read_toc(int cd_fd, int trackinfos);
nathan@0
    50
void free_toc();
nathan@0
    51
void print_space();
nathan@0
    52
nathan@0
    53
#endif