You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
1.3 KiB

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

/*
* Copyright (c) 2007 Vreixo Formoso
*
* This file is part of the libisofs project; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation. See COPYING file for details.
*/
/**
* Structures related to ISO/IEC 9660:1999, that is version 2 of ISO-9660
* "See doc/devel/cookbook/ISO 9660-1999" and
* ISO/IEC DIS 9660:1999(E) "Information processing. Volume and file structure
* of CD­-ROM for Information Interchange"
* for further details.
*/
#ifndef LIBISO_ISO1999_H
#define LIBISO_ISO1999_H
#include "libisofs.h"
#include "ecma119.h"
enum iso1999_node_type {
ISO1999_FILE,
ISO1999_DIR
};
struct iso1999_dir_info {
Iso1999Node **children;
size_t nchildren;
size_t len;
size_t block;
};
struct iso1999_node
{
char *name; /**< Name chosen output charset. */
Iso1999Node *parent;
IsoNode *node; /*< reference to the iso node */
enum iso1999_node_type type;
union {
IsoFileSrc *file;
struct iso1999_dir_info *dir;
} info;
};
/**
* Create a IsoWriter to deal with ISO 9660:1999 estructures, and add it to
* the given target.
*
* @return
* 1 on success, < 0 on error
*/
int iso1999_writer_create(Ecma119Image *target);
#endif /* LIBISO_ISO1999_H */