pspp-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Pspp-cvs] Changes to pspp/src/cat.c


From: Jason H Stover
Subject: [Pspp-cvs] Changes to pspp/src/cat.c
Date: Thu, 13 Oct 2005 15:25:01 -0400

Index: pspp/src/cat.c
diff -u pspp/src/cat.c:1.2 pspp/src/cat.c:1.3
--- pspp/src/cat.c:1.2  Wed Oct 12 21:09:04 2005
+++ pspp/src/cat.c      Thu Oct 13 19:25:01 2005
@@ -53,8 +53,8 @@
 #define CR_VALUE_NOT_FOUND -2
 #define CR_INDEX_NOT_FOUND -3
 
-static gsl_vector_const_view cr_value_to_vector (const union value *,
-                                                struct recoded_categorical *);
+static gsl_vector_view cr_value_to_vector (const union value *,
+                                          struct recoded_categorical *);
 
 struct recoded_categorical *
 cr_recoded_categorical_create (const struct variable *v)
@@ -65,8 +65,8 @@
   rc->v = v;
   rc->n_categories = 0;
   rc->n_allocated_categories = N_INITIAL_CATEGORIES;
-  rc->vals = (union value **) xmalloc (N_INITIAL_CATEGORIES *
-                                      sizeof (*rc->vals));
+  rc->vals = xmalloc (N_INITIAL_CATEGORIES *
+                     sizeof (*rc->vals));
 
   return rc;
 }
@@ -126,7 +126,7 @@
 
   for (i = 0; i < rc->n_categories; i++)
     {
-      val = *(rc->vals + i);
+      val = rc->vals + i;
       if (!compare_values (val, v, rc->v->width))
        {
          return i;
@@ -146,11 +146,10 @@
       if (rc->n_categories >= rc->n_allocated_categories)
        {
          rc->n_allocated_categories *= 2;
-         rc->vals = (union value **)
-           xrealloc (rc->vals, rc->n_allocated_categories
-                     * sizeof (*(rc->vals)));
+         rc->vals =  xrealloc (rc->vals, rc->n_allocated_categories
+                               * sizeof (*(rc->vals)));
        }
-      *(rc->vals + rc->n_categories) = v;
+      rc->vals[rc->n_categories] = *v;
       rc->n_categories++;
     }
 }
@@ -193,7 +192,7 @@
   subscript = cr->n_categories - 1;
   while (subscript > 0)
     {
-      v = *(cr->vals + subscript);
+      v = cr->vals + subscript;
       different = compare_values (val, v, cr->v->width);
       if (!different)
        {
@@ -204,12 +203,12 @@
   return subscript;
 }
 
-static const union value *
+static union value *
 cr_subscript_to_value (const size_t s, struct recoded_categorical *cr)
 {
   if (s < cr->n_categories)
     {
-      return cr->vals[s];
+      return (cr->vals + s);
     }
   else
     {
@@ -221,12 +220,12 @@
   Return the row of the matrix corresponding
   to the value v.
  */
-static gsl_vector_const_view
+static gsl_vector_view
 cr_value_to_vector (const union value * v, struct recoded_categorical * cr)
 {
   size_t row;
   row = cr_value_to_subscript (v, cr);
-  return gsl_matrix_const_row (cr->m, row);
+  return gsl_matrix_row (cr->m, row);
 }
 
 /*
@@ -268,7 +267,7 @@
   when i is between 1 and cr->n_categories - 1 and
   i is 0 otherwise.
  */
-const union value *
+union value *
 cr_vector_to_value (const gsl_vector * vec, struct recoded_categorical *cr)
 {
   size_t i;
@@ -384,7 +383,7 @@
   Return the index of the variable for the
   given column.
  */
-static const size_t
+static size_t
 design_matrix_col_to_var_index (const struct design_matrix *dm, size_t col)
 {
   size_t i;
@@ -403,22 +402,20 @@
   Return a pointer to the variable whose values
   are stored in column col.
  */
-const struct variable *
+struct variable *
 design_matrix_col_to_var (const struct design_matrix *dm, size_t col)
 {
   size_t index;
   size_t i;
   struct design_matrix_var dmv;
-  const struct variable *v;
 
   index = design_matrix_col_to_var_index (dm, col);
   for (i = 0; i < dm->n_vars; i++)
     {
       dmv = dm->vars[i];
-      v = (dmv.v)->index;
-      if (v->index == index)
+      if ((dmv.v)->index == index)
        {
-         return v;
+         return dmv.v;
        }
     }
   return NULL;
@@ -469,7 +466,7 @@
   double x;
 
   assert (var->type == ALPHA);
-  gsl_vector_const_view vec = cr_value_to_vector (val, rc);
+  const gsl_vector_view vec = cr_value_to_vector (val, rc);
 
   /*
      Copying values here is not the 'most efficient' way,




reply via email to

[Prev in Thread] Current Thread [Next in Thread]