示例#1
0
disp_t *
disp_table_copy (const disp_t *src)
{
  disp_t *res = disp_base_copy (src);
  data_table_ref (res->disp.table.table_ref);
  return res;
}
示例#2
0
disp_t *
disp_sample_table_copy (const disp_t *src)
{
  disp_t *res = disp_base_copy (src);
  struct disp_sample_table *dt = &res->disp.sample_table;
  if (dt->nb > 0)
    data_table_ref (dt->table_ref);
  return res;
}
示例#3
0
void
data_view_copy (struct data_view *dest, const struct data_view *src)
{
  dest->rows    = src->rows;
  dest->columns = src->columns;

  dest->idx_start = src->idx_start;
  dest->idx_end   = src->idx_end;

  if (src->map)
    {
      dest->map = emalloc (src->rows * sizeof(int));
      memcpy (dest->map, src->map, src->rows * sizeof(int));
    }
  else
    {
      dest->map = NULL;
    }

  dest->table = src->table;
  data_table_ref (src->table);
}