#include "libpspp/hmap.h"
#include "output/table.h"
+struct ccase;
+struct dictionary;
struct pivot_value;
struct variable;
union value;
void pivot_dimension_dump (const struct pivot_dimension *,
const struct pivot_table *, int indentation);
\f
+struct pivot_splits *pivot_splits_create (struct pivot_table *,
+ enum pivot_axis_type,
+ const struct dictionary *);
+void pivot_splits_destroy (struct pivot_splits *);
+
+void pivot_splits_new_split (struct pivot_splits *, const struct ccase *);
+size_t pivot_splits_get_dindexes (const struct pivot_splits *,
+ size_t *dindexes);
+
+void pivot_splits_put1 (struct pivot_splits *, struct pivot_table *,
+ size_t idx1, struct pivot_value *);
+void pivot_splits_put2 (struct pivot_splits *, struct pivot_table *,
+ size_t idx1, size_t idx2, struct pivot_value *);
+void pivot_splits_put3 (struct pivot_splits *, struct pivot_table *,
+ size_t idx1, size_t idx2, size_t idx3,
+ struct pivot_value *);
+void pivot_splits_put4 (struct pivot_splits *, struct pivot_table *,
+ size_t idx1, size_t idx2, size_t idx3, size_t idx4,
+ struct pivot_value *);
+
+size_t pivot_splits_count (const struct pivot_splits *);
+\f
/* A pivot_category is a leaf (a category) or a group:
- For a leaf, neither index is SIZE_MAX.