1 #pragma once 2 3 #include <ATen/core/Tensor.h> 4 #include <ATen/native/DispatchStub.h> 5 6 namespace at::native { 7 8 using histogramdd_fn = void(*)(const Tensor&, const std::optional<Tensor>&, bool, Tensor&, const TensorList&); 9 using histogramdd_linear_fn = void(*)(const Tensor&, const std::optional<Tensor>&, bool, Tensor&, const TensorList&, bool); 10 using histogram_select_outer_bin_edges_fn = void(*)(const Tensor& input, const int64_t N, std::vector<double> &leftmost_edges, std::vector<double> &rightmost_edges); 11 12 DECLARE_DISPATCH(histogramdd_fn, histogramdd_stub); 13 DECLARE_DISPATCH(histogramdd_linear_fn, histogramdd_linear_stub); 14 DECLARE_DISPATCH(histogram_select_outer_bin_edges_fn, histogram_select_outer_bin_edges_stub); 15 16 } // namespace at::native 17