muda
graph_base.h
1 #pragma once
2 #include <muda/tools/version.h>
3 #include <cuda_runtime.h>
4 #include <cuda_runtime_api.h>
5 #include <cuda_device_runtime_api.h>
6 
7 #include <list>
8 #include <vector>
9 #include <memory>
10 #include <functional>
11 
12 #include "../check/check_cuda_errors.h"
13 
14 namespace muda
15 {
16 class Graph;
17 class GraphExec;
18 
19 class NodeParms
20 {
21  public:
22  NodeParms() = default;
23  virtual ~NodeParms() = default;
24 };
25 
26 class GraphNode
27 {
28  protected:
29  cudaGraphNode_t m_handle;
30 
31  public:
32  friend class GraphExec;
33  GraphNode()
34  : m_handle(nullptr)
35  {
36  }
37  using this_type = GraphNode;
38  friend class Graph;
39  cudaGraphNode_t handle() const { return m_handle; }
40 };
41 } // namespace muda
Definition: graph_base.h:19
Definition: assert.h:13
Definition: graph_base.h:26
Definition: graph.h:17
Definition: graph_exec.h:10