'Packs up the topic values. Called by excel when it\'s ready for an update.
Needs to:
* Return the current number of topics, via the "ByRef" TopicCount
* Return a 2d SafeArray of the topic data.
- 1st dim: topic numbers
- 2nd dim: topic values
We could do some caching, instead of repacking everytime...
But this works for demonstration purposes.'

def RefreshData(self, TopicCount):

    TopicCount = len(self.topics)
    self.OnRefreshData()
    results = [([None] * TopicCount), ([None] * TopicCount)]
    for (idx, topicdata) in enumerate(self.topics.iteritems()):
        (topicNum, topic) = topicdata
        results[0][idx] = topicNum
        results[1][idx] = topic.GetValue()
    return (tuple(results), TopicCount)
