text: // Copyright(C) 2021 Intel Corporation
  // Licensed under the MIT License
  
  #pragma once
  #include "dnnl_subgraph.h"
  #include "dnnl_subgraph_primitive.h"
  
  namespace onnxruntime {
  namespace ort_dnnl {
  
  class DnnlTranspose {
   public:
    enum InputTensors : int {
      IN_DATA = 0,
    };
  
    enum OutputTensors : int {
      OUT_TRANSPOSED = 0
    };
  
    DnnlTranspose();
    void CreatePrimitive(DnnlSubgraphPrimitive& sp, DnnlNode& node);
  
   private:
    std::vector<int64_t> GetPerm(DnnlNode& node);
  };
  
  
  }  // namespace ort_dnnl
  }  // namespace onnxruntime