Mura1,
Ray is correct in his answer: it depends on what you're trying to accomplish.
Slices are provided to OnData, so you can save a reference to the latest slice in a field of your QCAlgorithm-derivative class, and in your callback method (you pass a reference to that method as a parameter to Schedule.On) you check the field, and if it's not-null, you've got the latest data slice available.
They could have designed this differently with your method taking a Slice parameter, but that would have meant that other scheduled methods - ones that might not use or need a Slice - would have to take the parameter as well.
So the simplest thing:
- Create an OnData method to save off each Slice
- Create a callback method that uses the latest Slice
- Pass a callback method ref to Schedule.On
Hope this helps!