code: def append(self, name, new_array):
      try:
          if new_array.shape:
              self.fileh.root.__getattr__(name).append(
                  new_array[np.newaxis, :]
              )
          else:
              self.fileh.root.__getattr__(name).append([new_array])
      except tables.exceptions.NoSuchNodeError:
          if name not in self.array_names:
              self.array_names.append(name)
          # The following is compatible with pytables 3 only
          self.fileh.create_earray(
              where=self.fileh.root, name=name, obj=[new_array]
          )
          # Pytables 2 compatible version
          # atom = tables.Atom.from_dtype(new_array.dtype)
          # dim_list = [0]
          # dim_list.extend([dim for dim in new_array.shape])
          # shape = tuple(dim_list)
  
          # self.fileh.create_earray(where=self.fileh.root,
          #                         name=name,
          #                         atom=atom,
          #                         shape=shape)
          self.append(name, new_array)
  
file_path: TimeSide/timeside/core/tools/buffering.py
imports: import tables
  from tempfile import NamedTemporaryFile
  import numpy
label_desc: Use image node_id 3 for calling the BufferTable obj's underlying member method code with example usage: obj.append(name, new_array) without return types