projects
/
pspp
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added automake.mk files in src/language
[pspp]
/
src
/
frequencies.q
diff --git
a/src/frequencies.q
b/src/frequencies.q
index b5da79bde62b83545e563e5bbd0fde8a5bde8171..5754be7e61e6de277491488c814ba99af96c2057 100644
(file)
--- a/
src/frequencies.q
+++ b/
src/frequencies.q
@@
-14,8
+14,8
@@
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
- Foundation, Inc., 5
9 Temple Place - Suite 330
, Boston, MA
- 0211
1-1307
, USA. */
+ Foundation, Inc., 5
1 Franklin Street, Fifth Floor
, Boston, MA
+ 0211
0-1301
, USA. */
/*
TODO:
/*
TODO:
@@
-51,6
+51,11
@@
#include "vfm.h"
#include "settings.h"
#include "chart.h"
#include "vfm.h"
#include "settings.h"
#include "chart.h"
+
+#include "gettext.h"
+#define _(msgid) gettext (msgid)
+#define N_(msgid) msgid
+
/* (headers) */
#include "debug-print.h"
/* (headers) */
#include "debug-print.h"
@@
-183,7
+188,7
@@
static double scale, incr; /* FIXME */
static int normal; /* FIXME */
/* Variables for which to calculate statistics. */
static int normal; /* FIXME */
/* Variables for which to calculate statistics. */
-static
in
t n_variables;
+static
size_
t n_variables;
static struct variable **v_variables;
/* Arenas used to store semi-permanent storage. */
static struct variable **v_variables;
/* Arenas used to store semi-permanent storage. */
@@
-488,7
+493,7
@@
static int
calc (struct ccase *c, void *aux UNUSED)
{
double weight;
calc (struct ccase *c, void *aux UNUSED)
{
double weight;
-
in
t i;
+
size_
t i;
int bad_warn = 1;
weight = dict_get_case_weight (default_dict, c, &bad_warn);
int bad_warn = 1;
weight = dict_get_case_weight (default_dict, c, &bad_warn);
@@
-542,7
+547,7
@@
calc (struct ccase *c, void *aux UNUSED)
static void
precalc (void *aux UNUSED)
{
static void
precalc (void *aux UNUSED)
{
-
in
t i;
+
size_
t i;
pool_destroy (gen_pool);
gen_pool = pool_create ();
pool_destroy (gen_pool);
gen_pool = pool_create ();
@@
-586,7
+591,7
@@
precalc (void *aux UNUSED)
static void
postcalc (void *aux UNUSED)
{
static void
postcalc (void *aux UNUSED)
{
-
in
t i;
+
size_
t i;
for (i = 0; i < n_variables; i++)
{
for (i = 0; i < n_variables; i++)
{
@@
-627,7
+632,7
@@
postcalc (void *aux UNUSED)
dump_statistics (v, !dumped_freq_tab);
dump_statistics (v, !dumped_freq_tab);
-#ifndef NO_CHARTS
+
if ( chart == GFT_HIST)
{
double d[frq_n_stats];
if ( chart == GFT_HIST)
{
double d[frq_n_stats];
@@
-653,7
+658,7
@@
postcalc (void *aux UNUSED)
{
do_piechart(v_variables[i], ft);
}
{
do_piechart(v_variables[i], ft);
}
-#endif
+
cleanup_freq_tab (v);
cleanup_freq_tab (v);
@@
-692,7
+697,7
@@
not_missing (const void *f_, void *v_)
const struct freq *f = f_;
struct variable *v = v_;
const struct freq *f = f_;
struct variable *v = v_;
- return !
is_missing (&f->v,
v);
+ return !
mv_is_value_missing (&v->miss, &f->
v);
}
/* Summarizes the frequency table data for variable V. */
}
/* Summarizes the frequency table data for variable V. */
@@
-702,7
+707,7
@@
postprocess_freq_tab (struct variable *v)
hsh_compare_func *compare;
struct freq_tab *ft;
size_t count;
hsh_compare_func *compare;
struct freq_tab *ft;
size_t count;
- void **data;
+ void *
const
*data;
struct freq *freqs, *f;
size_t i;
struct freq *freqs, *f;
size_t i;
@@
-715,7
+720,7
@@
postprocess_freq_tab (struct variable *v)
data = hsh_data (ft->data);
/* Copy dereferenced data into freqs. */
data = hsh_data (ft->data);
/* Copy dereferenced data into freqs. */
- freqs = x
malloc (count *
sizeof *freqs);
+ freqs = x
nmalloc (count,
sizeof *freqs);
for (i = 0; i < count; i++)
{
struct freq *f = data[i];
for (i = 0; i < count; i++)
{
struct freq *f = data[i];
@@
-768,8
+773,8
@@
frq_custom_variables (struct cmd_frequencies *cmd UNUSED)
int mode;
int min = 0, max = 0;
int mode;
int min = 0, max = 0;
-
in
t old_n_variables = n_variables;
-
in
t i;
+
size_
t old_n_variables = n_variables;
+
size_
t i;
lex_match ('=');
if (token != T_ALL && (token != T_ID
lex_match ('=');
if (token != T_ALL && (token != T_ID
@@
-830,8
+835,8
@@
frq_custom_variables (struct cmd_frequencies *cmd UNUSED)
{
vf->tab.min = min;
vf->tab.max = max;
{
vf->tab.min = min;
vf->tab.max = max;
- vf->tab.vector = pool_alloc (int_pool,
-
sizeof (struct freq) * (max - min + 1)
);
+ vf->tab.vector = pool_
n
alloc (int_pool,
+
max - min + 1, sizeof *vf->tab.vector
);
}
else
vf->tab.vector = NULL;
}
else
vf->tab.vector = NULL;
@@
-851,14
+856,14
@@
frq_custom_grouped (struct cmd_frequencies *cmd UNUSED)
|| token == T_ID)
for (;;)
{
|| token == T_ID)
for (;;)
{
-
in
t i;
+
size_
t i;
/* Max, current size of list; list itself. */
int nl, ml;
double *dl;
/* Variable list. */
/* Max, current size of list; list itself. */
int nl, ml;
double *dl;
/* Variable list. */
-
in
t n;
+
size_
t n;
struct variable **v;
if (!parse_variables (default_dict, &v, &n,
struct variable **v;
if (!parse_variables (default_dict, &v, &n,
@@
-868,12
+873,12
@@
frq_custom_grouped (struct cmd_frequencies *cmd UNUSED)
{
nl = ml = 0;
dl = NULL;
{
nl = ml = 0;
dl = NULL;
- while (
token == T_NUM
)
+ while (
lex_integer ()
)
{
if (nl >= ml)
{
ml += 16;
{
if (nl >= ml)
{
ml += 16;
- dl = pool_
realloc (int_pool, dl, ml * sizeof (double)
);
+ dl = pool_
nrealloc (int_pool, dl, ml, sizeof *dl
);
}
dl[nl++] = tokval;
lex_get ();
}
dl[nl++] = tokval;
lex_get ();
@@
-944,9
+949,8
@@
add_percentile (double x)
if (i >= n_percentiles || tokval != percentiles[i].p)
{
if (i >= n_percentiles || tokval != percentiles[i].p)
{
- percentiles
- = pool_realloc (int_pool, percentiles,
- (n_percentiles + 1) * sizeof (struct percentile ));
+ percentiles = pool_nrealloc (int_pool, percentiles,
+ n_percentiles + 1, sizeof *percentiles);
if (i < n_percentiles)
memmove (&percentiles[i + 1], &percentiles[i],
if (i < n_percentiles)
memmove (&percentiles[i + 1], &percentiles[i],
@@
-1559,7
+1563,7
@@
freq_tab_to_hist(const struct freq_tab *ft, const struct variable *var)
/* Find out the extremes of the x value */
for ( frq = hsh_first(fh, &hi); frq != 0; frq = hsh_next(fh, &hi) )
{
/* Find out the extremes of the x value */
for ( frq = hsh_first(fh, &hi); frq != 0; frq = hsh_next(fh, &hi) )
{
- if (
is_missing(&frq->v, var
))
+ if (
mv_is_value_missing(&var->miss, &frq->v
))
continue;
if ( frq->v.f < x_min ) x_min = frq->v.f ;
continue;
if ( frq->v.f < x_min ) x_min = frq->v.f ;
@@
-1598,7
+1602,7
@@
freq_tab_to_slice_array(const struct freq_tab *frq_tab,
*n_slices = frq_tab->n_valid;
*n_slices = frq_tab->n_valid;
- slices = x
malloc ( *n_slices * sizeof (struct slice )
);
+ slices = x
nmalloc (*n_slices, sizeof *slices
);
for (i = 0 ; i < *n_slices ; ++i )
{
for (i = 0 ; i < *n_slices ; ++i )
{
@@
-1614,7
+1618,7
@@
freq_tab_to_slice_array(const struct freq_tab *frq_tab,
-#ifndef NO_CHARTS
+
static void
do_piechart(const struct variable *var, const struct freq_tab *frq_tab)
{
static void
do_piechart(const struct variable *var, const struct freq_tab *frq_tab)
{
@@
-1627,7
+1631,7
@@
do_piechart(const struct variable *var, const struct freq_tab *frq_tab)
free(slices);
}
free(slices);
}
-#endif
+
/*
Local Variables:
/*
Local Variables: