def slice_on_length(self, data_len, *addSlices):
        '''
        Returns a slice representing the dimension range
        restrictions applied to a list of length data_len.

        If addSlices contains additional slice requirements,
        they are processed in the order they are given.
        '''
        if len(self.ordered_ranges) + len(addSlices) == 0:
            return slice(None,None,None)
        ranges = self.ordered_ranges
        if len(addSlices) > 0:
            ranges = ranges + DimensionRange(*addSlices).ordered_ranges
        return self._combine_lists_of_ranges_on_length(data_len, *ranges)
Returns a slice representing the dimension range
        restrictions applied to a list of length data_len.

        If addSlices contains additional slice requirements,
        they are processed in the order they are given.