/* PSPP - a program for statistical analysis.
- Copyright (C) 2004, 2007, 2009, 2010, 2011 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2007, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
#include "data/case.h"
#include "data/dict-class.h"
-struct string;
struct ccase;
+struct pxd;
+struct string;
/* Creating dictionaries. */
struct dictionary *dict_create (const char *encoding);
struct dictionary *dict_clone (const struct dictionary *);
-
/* Clearing and destroying dictionaries. */
void dict_clear (struct dictionary *);
-void dict_clear_aux (struct dictionary *);
void dict_destroy (struct dictionary *);
/* Common ways to access variables. */
const struct variable *,
const char *);
+struct variable *dict_clone_var_in_place_assert (struct dictionary *,
+ const struct variable *);
+
/* Deleting variables. */
void dict_delete_var (struct dictionary *, struct variable *);
void dict_delete_vars (struct dictionary *,
struct dict_callbacks
{
void (*var_added) (struct dictionary *, int, void *);
- void (*var_deleted) (struct dictionary *, int, int, int, void *);
- void (*var_changed) (struct dictionary *, int, void *);
- void (*var_resized) (struct dictionary *, int, int, void *);
+ void (*var_deleted) (struct dictionary *, const struct variable *,
+ int dict_index, int case_index, void *);
+ void (*var_changed) (struct dictionary *, int, unsigned int, const struct variable *, void *);
void (*weight_changed) (struct dictionary *, int, void *);
void (*filter_changed) (struct dictionary *, int, void *);
void (*split_changed) (struct dictionary *, void *);
- void (*var_display_width_changed) (struct dictionary *, int, void *);
};
void dict_set_callbacks (struct dictionary *, const struct dict_callbacks *,
/* Debug use only. */
void dict_dump (const struct dictionary *);
+/* Saving and loading. */
+struct pxd_object *dict_save (const struct dictionary *, struct pxd *);
+struct dictionary *dict_load (struct pxd_object *, const struct pxd *);
+
#endif /* data/dictionary.h */