Program Listing for File conv2d_transpose_fusion.h

Return to documentation for file (include/converter/include/ops/fusion/conv2d_transpose_fusion.h)

#ifndef MINDSPORE_CORE_OPS_CONV2D_TRANSPOSE_FUSION_H_
#define MINDSPORE_CORE_OPS_CONV2D_TRANSPOSE_FUSION_H_
#include <vector>

#include "mindapi/base/types.h"
#include "ops/conv2d_transpose.h"

namespace mindspore {
namespace ops {
constexpr auto kNameConv2dTransposeFusion = "Conv2dTransposeFusion";
class MIND_API Conv2dTransposeFusion : public Conv2DTranspose {
 public:
  MIND_API_BASE_MEMBER(Conv2dTransposeFusion);
  Conv2dTransposeFusion() : Conv2DTranspose(kNameConv2dTransposeFusion) {
    InitIOName({"out_backprop", "filter", "input_sizes"}, {"output"});
  }

  void Init(int64_t in_channel, int64_t out_channel, const std::vector<int64_t> &kernel_size, int64_t mode = 1,
            const PadMode &pad_mode = VALID, const std::vector<int64_t> &pad = {0, 0, 0, 0},
            const std::vector<int64_t> &stride = {1, 1}, const std::vector<int64_t> &dilation = {1, 1},
            int64_t group = 1, const Format &format = NCHW, const std::vector<int64_t> &pad_list = {0, 0, 0, 0},
            const std::vector<int64_t> &output_paddings = {0}, ActivationType activation_type = NO_ACTIVATION);

  void set_kernel_size(const std::vector<int64_t> &kernel_size) override;

  void set_dilation(const std::vector<int64_t> &dilation) override;

  void set_output_paddings(const std::vector<int64_t> &output_paddings);

  void set_activation_type(ActivationType activation_type);

  std::vector<int64_t> get_output_paddings() const;

  ActivationType get_activation_type() const;
};
}  // namespace ops
}  // namespace mindspore

#endif  // MINDSPORE_CORE_OPS_CONV2D_TRANSPOSE_FUSION_H_