libpromeki 1.0.0-alpha
PROfessional MEdia toolKIt
 
Loading...
Searching...
No Matches
numahostbufferimpl.h
Go to the documentation of this file.
1
8#pragma once
9
10
11#include <promeki/config.h>
12#if PROMEKI_ENABLE_CORE
13#include <promeki/namespace.h>
15#include <promeki/memspace.h>
16
17PROMEKI_NAMESPACE_BEGIN
18
48class NumaHostBufferImpl : public HostMappedBufferImpl {
49 public:
65 NumaHostBufferImpl(const MemSpace &ms, size_t bytes, size_t align, int node);
66
74 ~NumaHostBufferImpl() override;
75
84 NumaHostBufferImpl *_promeki_clone() const override;
85
87 int node() const { return _node; }
88
89 private:
90 int _node = -1;
91 bool _locked = false;
92};
93
114class NumaHost {
115 public:
126 static MemSpace forNode(int node);
127
128 private:
129 NumaHost() = delete;
130};
131
132PROMEKI_NAMESPACE_END
133
134#endif // PROMEKI_ENABLE_CORE