X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Foutput%2Fpivot-table.c;fp=src%2Foutput%2Fpivot-table.c;h=3e54d776bec128a7c4ea9f92b8e8b452ead93fa1;hb=6531faae1faddd300ba8ab7e996477ba642e4b6d;hp=f8f917d9dd1d965b3d5b2830b725c7c12004eee1;hpb=ae2444732c85010baa41e44e9b6183ba403a4e86;p=pspp diff --git a/src/output/pivot-table.c b/src/output/pivot-table.c index f8f917d9dd..3e54d776be 100644 --- a/src/output/pivot-table.c +++ b/src/output/pivot-table.c @@ -3028,3 +3028,30 @@ pivot_value_ex_destroy (struct pivot_value_ex *ex) free (ex); } } + +/* pivot_splits */ + +struct pivot_splits + { + const struct dictionary *dict; + struct hmap splits[MAX_SPLITS]; + }; + +struct pivot_splits * +pivot_splits_create (struct pivot_table *pt, + enum pivot_axis_type axis, + const struct dictionary *dict) +{ + if (dict_get_split_type (dict) != SPLIT_LAYERED) + return NULL; + + struct pivot_splits *ps = xmalloc (sizeof *ps); + *ps = (struct pivot_splits) { .dict = dict }; + for (size_t i = 0; i < dict_get_n_splits (dict); i++) + { + hmap_init (&ps->splits[i]); + struct pivot_dimension *d = pivot_dimension_create__ ( + pt, axis, pivot_value_new_variable (dict_get_split_vars (dict)[i])); + } + return ps; +}