code: def getdesc(self, actual=True):
          
  
          tabledesc = self._getdesc(actual, True)
  
          # Strip out 0 length "HCcoordnames" and "HCidnames"
          # as these aren't valid. (See tabledefinehypercolumn)
          hcdefs = tabledesc.get('_define_hypercolumn_', {})
  
          for c, hcdef in hcdefs.iteritems():
              if "HCcoordnames" in hcdef and len(hcdef["HCcoordnames"]) == 0:
                  del hcdef["HCcoordnames"]
              if "HCidnames" in hcdef and len(hcdef["HCidnames"]) == 0:
                  del hcdef["HCidnames"]
  
          return tabledesc
docs: Get the table description.
  
          By default it returns the actual description (thus telling the
          actual array shapes and data managers used).
          `actual=False` means that the original description as made by
          :func:`maketabdesc` is returned.