![]() |
UltraGrid
UltraGrid Low-Latency High-Resolution Transmission System
|
#include <video_frame_pool.h>

Classes | |
| struct | impl |
Public Member Functions | |
| video_frame_pool (unsigned int max_used_frames=0, video_frame_pool_allocator const &alloc=default_data_allocator()) | |
| ~video_frame_pool () | |
| video_frame_pool_allocator const & | get_allocator () |
| struct video_frame * | get_disposable_frame () |
| std::shared_ptr< video_frame > | get_frame () |
| struct video_frame * | get_pod_frame () |
| video_frame_pool & | operator= (video_frame_pool &&) |
| void | reconfigure (struct video_desc new_desc, size_t new_size=SIZE_MAX) |
Private Attributes | |
| std::unique_ptr< impl > | m_impl |
Definition at line 62 of file video_frame_pool.h.
| video_frame_pool::video_frame_pool | ( | unsigned int | max_used_frames = 0, |
| video_frame_pool_allocator const & | alloc = default_data_allocator() ) |
| max_used_frames | maximal frames that are allocated. 0 means unlimited. If get_frames() is called and that number of frames is unreturned, get_frames() will block. |
Definition at line 90 of file video_frame_pool.cpp.
Referenced by video_frame_pool_init().
|
default |
| video_frame_pool_allocator const & video_frame_pool::get_allocator | ( | ) |
Definition at line 117 of file video_frame_pool.cpp.
References m_impl.
| struct video_frame * video_frame_pool::get_disposable_frame | ( | ) |
Definition at line 107 of file video_frame_pool.cpp.
References m_impl.
Referenced by video_frame_pool_get_disposable_frame().
| std::shared_ptr< video_frame > video_frame_pool::get_frame | ( | ) |
Returns free frame
If the pool size is exhausted (see constructor param), the call will block until there is some available.
Definition at line 102 of file video_frame_pool.cpp.
References m_impl.
Referenced by vidcap_state_aja::CaptureFrames(), get_copy(), video_frame_pool::impl::get_disposable_frame(), and video_frame_pool::impl::get_pod_frame().
| struct video_frame * video_frame_pool::get_pod_frame | ( | ) |
Definition at line 112 of file video_frame_pool.cpp.
References m_impl.
|
default |
| void video_frame_pool::reconfigure | ( | struct video_desc | new_desc, |
| size_t | new_size = SIZE_MAX ) |
| new_size | if omitted, deduce from video desc (only for pixel formats) |
Definition at line 97 of file video_frame_pool.cpp.
References m_impl.
Referenced by j2k_compress_push(), and vidcap_state_aja::SetupHostBuffers().
|
private |
Definition at line 97 of file video_frame_pool.h.
Referenced by get_allocator(), get_disposable_frame(), get_frame(), get_pod_frame(), and reconfigure().