/*
* NAME: dbsaver.c
* DESCRIPTION: routines for saving a MOO db file
*/
# define DEBUG 0
inherit "/std/core";
inherit "/std/string";
# if DEBUG
inherit "/std/vartext";
# else
# define var2str(x) ""
# endif
# include <objects.h>
# include <moo/data.h>
# include <moo/config.h>
# include <dgd/limits.h>
# include <dgd/status.h>
# define DELAY 2
# define CHUNK 500
# define SIZE (7 * MAX_STRING_SIZE / 8)
# define MEMUSED() (status()[ST_DMEMUSED])
# define MEMFREE() (MEMUSED() < maxmem)
object driver; /* the driver object */
int maxmem; /* memory threshold to begin swapping */
string dbfile; /* name of the db file */
/*
* NAME: main()
* DESCRIPTION: write the database to a file
*/
void main(string file)
{
dbfile = file;
maxmem = CONFIG->query(CF_MEMORY_THRESH);
}