Files
ropkg/libropkg/include/ropkg/writer.h

37 lines
861 B
C

#ifndef ROPKG_WRITER_H_
#define ROPKG_WRITER_H_
#include <ropkg/misc.h>
#include <ropkg/status.h>
#include <stdio.h>
#define ROPKG_PATH_DATA "data.tar"
#define ROPKG_PATH_CONTROL "control.tar"
#define ROPKG_PATH_META "meta.tar"
struct ropkg_writer;
struct b_cstream;
struct ropkg_writer_file_info {
size_t f_length;
};
ROPKG_API enum ropkg_status ropkg_writer_open(
struct b_cstream *fp,
struct ropkg_writer **out);
ROPKG_API enum ropkg_status ropkg_writer_close(struct ropkg_writer *pkg);
ROPKG_API enum ropkg_status ropkg_writer_begin_file(
struct ropkg_writer *pkg,
const char *path,
const struct ropkg_writer_file_info *info);
ROPKG_API enum ropkg_status ropkg_writer_end_file(struct ropkg_writer *pkg);
ROPKG_API enum ropkg_status ropkg_writer_write(
struct ropkg_writer *pkg,
const void *p,
size_t len,
size_t *nr_written);
#endif