/* read an array from tvb and add it to tree  */
static void read_array(unsigned int *offset, tvbuff_t *tvb, proto_tree *etch_tree)
/* read an array from tvb and add it to tree  */
static void read_array(unsigned int *offset, tvbuff_t *tvb, proto_tree *etch_tree)
{
  int length;
  read_type(offset, tvb, etch_tree);
  read_array_type(offset, tvb, etch_tree);
  proto_tree_add_item(etch_tree, hf_etch_dim, tvb, *offset, 1, ENC_BIG_ENDIAN);
  (*offset)++;
  length = read_length(offset, tvb, etch_tree);
  for (; length > 0; length--) {
    read_value(offset, tvb, etch_tree, hf_etch_value);
  }
  read_type(offset, tvb, etch_tree);
}