X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fdata%2Fvardict.h;h=ecef88274bf26bfc13c063906f142fc098307a6a;hb=0755b9a4256554906377f2db62e25ac09255a790;hp=dfde1bffc0b3802d553c7717da47b82a4300908b;hpb=14aac9fe7a7efbb6c9bded2ed5969a643cb76645;p=pspp diff --git a/src/data/vardict.h b/src/data/vardict.h index dfde1bffc0..ecef88274b 100644 --- a/src/data/vardict.h +++ b/src/data/vardict.h @@ -1,5 +1,5 @@ /* PSPP - a program for statistical analysis. - Copyright (C) 1997-9, 2000 Free Software Foundation, Inc. + Copyright (C) 1997-9, 2000, 2009 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 @@ -23,24 +23,36 @@ struct dictionary ; -/* Dictionary data stored in variable. */ +/* Binds a variable to a dictionary. */ struct vardict_info { - int dict_index; /* Dictionary index containing the variable. */ + struct dictionary *dict; + struct variable *var; + struct hmap_node name_node; /* In struct dictionary's name_map. */ int case_index; /* Index into case of variable data. */ - struct dictionary *dict; /* The dictionary containing the variable */ }; /* Called by dictionary code, defined in variable.c. */ -const struct vardict_info *var_get_vardict (const struct variable *); -void var_set_vardict (struct variable *, const struct vardict_info *); +struct vardict_info *var_get_vardict (const struct variable *); +void var_set_vardict (struct variable *, struct vardict_info *); bool var_has_vardict (const struct variable *); void var_clear_vardict (struct variable *); - /* Called by variable.c, defined in dictionary.c. */ -void dict_var_changed (const struct variable *v); -void dict_var_resized (const struct variable *v, int delta); -void dict_var_display_width_changed (const struct variable *v); +void dict_var_changed (const struct variable *v, unsigned int what, struct variable *ov); + +int vardict_get_dict_index (const struct vardict_info *); + +static inline int +vardict_get_case_index (const struct vardict_info *vardict) +{ + return vardict->case_index; +} + +static inline struct dictionary * +vardict_get_dictionary (const struct vardict_info *vardict) +{ + return vardict->dict; +} #endif /* data/vardict.h */