public function get_indexed_slices($index_clause,
        $column_slice=null,
        $column_names=null,
        $consistency_level=null,
        $buffer_size=null) {

        if ($buffer_size == null)
            $buffer_size = $this->buffer_size;
        if ($buffer_size < 2) {
            $ire = new InvalidRequestException();
            $ire->message = 'buffer_size cannot be less than 2';
            throw $ire;
        }

        $new_clause = new IndexClause();
        foreach($index_clause->expressions as $expr) {
            $new_expr = new IndexExpression();
            $new_expr->column_name = $this->pack_name($expr->column_name);
            $new_expr->value = $this->pack_value($expr->value, $new_expr->column_name);
            $new_expr->op = $expr->op;
            $new_clause->expressions[] = $new_expr;
        }
        $new_clause->start_key = $index_clause->start_key;
        $new_clause->count = $index_clause->count;

        $column_parent = $this->create_column_parent();
        $predicate = $this->create_slice_predicate($column_names, $column_slice);

        return new IndexedColumnFamilyIterator($this, $new_clause, $buffer_size,
            $column_parent, $predicate,
            $this->rcl($consistency_level));
    }