ExaTN
tensor_op_contract.hpp
1 
12 #ifndef EXATN_NUMERICS_TENSOR_OP_CONTRACT_HPP_
13 #define EXATN_NUMERICS_TENSOR_OP_CONTRACT_HPP_
14 
15 #include "tensor_basic.hpp"
16 #include "tensor_operation.hpp"
17 
18 namespace exatn{
19 
20 namespace numerics{
21 
23 public:
24 
26 
27  TensorOpContract(const TensorOpContract &) = default;
28  TensorOpContract & operator=(const TensorOpContract &) = default;
29  TensorOpContract(TensorOpContract &&) noexcept = default;
30  TensorOpContract & operator=(TensorOpContract &&) noexcept = default;
31  virtual ~TensorOpContract() = default;
32 
34  virtual bool isSet() const override;
35 
37  virtual int accept(runtime::TensorNodeExecutor & node_executor,
38  runtime::TensorOpExecHandle * exec_handle) override;
39 
41  static std::unique_ptr<TensorOperation> createNew();
42 
43 private:
44 
45 };
46 
47 } //namespace numerics
48 
49 } //namespace exatn
50 
51 #endif //EXATN_NUMERICS_TENSOR_OP_CONTRACT_HPP_
exatn::numerics::TensorOpContract::createNew
static std::unique_ptr< TensorOperation > createNew()
Definition: tensor_op_contract.cpp:35
exatn
Definition: DriverClient.hpp:10
exatn::numerics::TensorOperation
Definition: tensor_operation.hpp:36
exatn::numerics::TensorOpContract::accept
virtual int accept(runtime::TensorNodeExecutor &node_executor, runtime::TensorOpExecHandle *exec_handle) override
Definition: tensor_op_contract.cpp:29
exatn::numerics::TensorOpContract::isSet
virtual bool isSet() const override
Definition: tensor_op_contract.cpp:24
exatn::numerics::TensorOpContract
Definition: tensor_op_contract.hpp:22
exatn::runtime::TensorNodeExecutor
Definition: tensor_node_executor.hpp:36