1 /*======================================================================*
2 * Copyright (C) 2008 Light Weight Event System *
3 * All rights reserved. *
5 * This program is free software; you can redistribute it and/or modify *
6 * it under the terms of the GNU General Public License as published by *
7 * the Free Software Foundation; either version 2 of the License, or *
8 * (at your option) any later version. *
10 * This program is distributed in the hope that it will be useful, *
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 * GNU General Public License for more details. *
15 * You should have received a copy of the GNU General Public License *
16 * along with this program; if not, write to the Free Software *
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, *
18 * Boston, MA 02110-1301 USA. *
19 *======================================================================*/
28 * open() -- opens a journal file, return 0 on success, -1 on error
30 * close() -- closes a journal file, return 0 on success, -1 on error
32 * read() -- reads "count" bytes from a journal into "buf", return the
33 * number of bytes read on success, -1 on error
35 * write() -- writes "count" bytes from "buf" into a journal, return
36 * the number of bytes written on success, -1 on error
43 void (*destructor
) (struct journal
* this_journal
);
45 int (*open
) (struct journal
* this_journal
, int flags
);
46 int (*close
) (struct journal
* this_journal
);
48 int (*read
) (struct journal
* this_journal
, void* buf
, size_t count
);
49 int (*write
) (struct journal
* this_journal
, void* buf
, size_t count
);
53 struct journal_vtbl
* vtbl
;
57 int journal_factory(struct journal
* jrn
, const char* name
);
58 typedef int (*lwes_journaller_journal_init_t
)(struct journal
*, const char*) ;
60 #endif /* JOURNAL_DOT_H */