CVB++ 15.0
buffer.hpp
1#pragma once
2
3#include "buffer_base.hpp"
4
5namespace Cvb
6{
7
8 CVB_BEGIN_INLINE_NS
9
11
12 class Buffer : public BufferBase
13 {
14 struct PrivateTag
15 {
16 };
17
18 public:
19 Buffer(HandleGuard<BufferBase> &&guard, PrivateTag)
20 : BufferBase(std::move(guard))
21 {
22 }
23
25
28 static BufferPtr FromHandle(HandleGuard<BufferBase> &&guard)
29 {
30 return std::make_shared<Buffer>(std::move(guard), PrivateTag{});
31 }
32 };
33
34 CVB_END_INLINE_NS
35
36} // namespace Cvb
static BufferPtr FromHandle(HandleGuard< BufferBase > &&guard)
Creates a buffer from a classic API handle.
Definition buffer.hpp:28
T make_shared(T... args)
T move(T... args)
Root namespace for the Image Manager interface.
Definition c_bayer_to_rgb.h:17
std::shared_ptr< Buffer > BufferPtr
Convenience shared pointer for Buffer.
Definition global.hpp:62