def METHOD_NAME(self, data):
    if isinstance(data, tabular.TabularBase):
        table = TabularTable(tabular.CachingResultsFilter(data))
    else:
        table = RecArrayTable(data)
    # The second parameter means that the grid is to take ownership of the
    # table and will destroy it when done.  Otherwise you would need to keep
    # a reference to it and call it's Destroy method later.
    self.SetTable(table, True)