11 #ifndef EXATN_NUMERICS_TENSOR_OP_FACTORY_HPP_
12 #define EXATN_NUMERICS_TENSOR_OP_FACTORY_HPP_
14 #include "tensor_basic.hpp"
15 #include "tensor_operation.hpp"
16 #include "tensor_op_create.hpp"
17 #include "tensor_op_destroy.hpp"
18 #include "tensor_op_transform.hpp"
19 #include "tensor_op_add.hpp"
20 #include "tensor_op_contract.hpp"
42 std::unique_ptr<TensorOperation>
createTensorOp(TensorOpCode opcode);
53 std::map<TensorOpCode,createTensorOpFn> factory_map_;
61 #endif //EXATN_NUMERICS_TENSOR_OP_FACTORY_HPP_
std::unique_ptr< TensorOperation > createTensorOp(TensorOpCode opcode)
Definition: tensor_op_factory.cpp:28
Definition: DriverClient.hpp:10
std::shared_ptr< TensorOperation > createTensorOpShared(TensorOpCode opcode)
Definition: tensor_op_factory.cpp:35
void registerTensorOp(TensorOpCode opcode, createTensorOpFn creator)
Definition: tensor_op_factory.cpp:22
Definition: tensor_op_factory.hpp:29
static TensorOpFactory * get()
Definition: tensor_op_factory.cpp:40