51 lines
1.3 KiB
C
51 lines
1.3 KiB
C
|
#pragma once
|
||
|
|
||
|
#include <ATen/native/DispatchStub.h>
|
||
|
#include <ATen/native/ReductionType.h>
|
||
|
#include <c10/core/Scalar.h>
|
||
|
#include <c10/util/Optional.h>
|
||
|
|
||
|
namespace at {
|
||
|
class Tensor;
|
||
|
|
||
|
namespace native {
|
||
|
|
||
|
using segment_reduce_lengths_fn = Tensor (*)(
|
||
|
ReductionType,
|
||
|
const Tensor&,
|
||
|
const Tensor&,
|
||
|
int64_t,
|
||
|
const c10::optional<Scalar>&);
|
||
|
DECLARE_DISPATCH(segment_reduce_lengths_fn, _segment_reduce_lengths_stub);
|
||
|
|
||
|
using segment_reduce_offsets_fn = Tensor (*)(
|
||
|
ReductionType,
|
||
|
const Tensor&,
|
||
|
const Tensor&,
|
||
|
int64_t,
|
||
|
const c10::optional<Scalar>&);
|
||
|
DECLARE_DISPATCH(segment_reduce_offsets_fn, _segment_reduce_offsets_stub);
|
||
|
|
||
|
using segment_reduce_lengths_backward_fn = Tensor (*)(
|
||
|
const Tensor&,
|
||
|
const Tensor&,
|
||
|
const Tensor&,
|
||
|
ReductionType,
|
||
|
const Tensor&,
|
||
|
int64_t,
|
||
|
const c10::optional<Scalar>&);
|
||
|
DECLARE_DISPATCH(segment_reduce_lengths_backward_fn, _segment_reduce_lengths_backward_stub);
|
||
|
|
||
|
using segment_reduce_offsets_backward_fn = Tensor (*)(
|
||
|
const Tensor&,
|
||
|
const Tensor&,
|
||
|
const Tensor&,
|
||
|
ReductionType,
|
||
|
const Tensor&,
|
||
|
int64_t,
|
||
|
const c10::optional<Scalar>&);
|
||
|
DECLARE_DISPATCH(segment_reduce_offsets_backward_fn, _segment_reduce_offsets_backward_stub);
|
||
|
|
||
|
} // namespace native
|
||
|
} // namespace at
|