Ring buffer operations on a device. More...
#include <cvb/driver/ring_buffer.hpp>
Inherits enable_shared_from_this< RingBuffer >.
Public Member Functions | |
DevicePtr | Parent () const noexcept |
Gets the parent device of this ring buffer. More... | |
RingBufferImagePtr | At (int bufferIndex) const |
Access to a single ring buffer image specified by its buffer index. More... | |
int | Count () const noexcept |
Number of buffers in the ring buffer. More... | |
RingBufferLockMode | LockMode () const noexcept |
Gets the current lock mode. More... | |
void | SetLockMode (RingBufferLockMode ringBufferLockMode) |
Sets the current lock mode. More... | |
void | ChangeCount (int numBuffers, DeviceUpdateMode mode) |
Changes the number of buffers in this ring buffer. More... | |
Ring buffer operations on a device.
|
inline |
Access to a single ring buffer image specified by its buffer index.
[in] | bufferIndex | Image index of the ring buffer image to access. |
Any | exception derived from std::exception including CvbException. |
|
inline |
Changes the number of buffers in this ring buffer.
[in] | numBuffers | New number of buffers in the ring buffer. |
[in] | mode | Defines how to handle device images. |
Any | exception derived from std::exception including CvbException. |
If you are unsure about the mode, simply use DeviceUpdateMode::UpdateDeviceImage.
|
inlinenoexcept |
Number of buffers in the ring buffer.
Does | not throw any exception. |
|
inlinenoexcept |
Gets the current lock mode.
Does | not throw any exception. |
|
inlinenoexcept |
Gets the parent device of this ring buffer.
Does | not throw any exception. |
|
inline |
Sets the current lock mode.
[in] | ringBufferLockMode | The new lock mode. |
Any | exception derived from std::exception including CvbException. |