Represents one acquisition stream of a device. More...
#include <cvb/driver/stream.hpp>
Inherits StreamBase.
Inherited by IndexedStream.
Public Member Functions | |
Cvb::Driver::AcquisitionInterface | AcquisitionInterface () const noexcept override |
Gets the interface of this implementation. More... | |
void | SetAcquisitionInterface (Cvb::Driver::AcquisitionInterface acquisitionInterface) |
Sets the interface of this implementation. More... | |
void | Start () override |
Starts the acquisition. More... | |
void | Stop () override |
Stops the acquisition. More... | |
bool | TryStop () noexcept override |
Stops the acquisition. More... | |
void | Abort () override |
Stops the acquisition of images immediately. More... | |
bool | TryAbort () noexcept override |
Stops the acquisition of images immediately. More... | |
bool | IsRunning () const noexcept |
Gets whether the acquisition is currently active. More... | |
virtual bool | IsIndexed () const noexcept override |
Gets whether this stream is an indexed stream. More... | |
double | Statistics (StreamInfo query) const |
Gets statistics value if supported. More... | |
template<class T > | |
T | Statistics (StreamInfo query) const |
Gets statistics value if supported. More... | |
virtual RingBufferPtr | RingBuffer () const noexcept |
Gets the ring buffer interface object if present. More... | |
template<class T , class Rep , class Period > | |
std::shared_ptr< T > | WaitFor (const std::chrono::duration< Rep, Period > &timeSpan, WaitStatus &waitStatus) |
Waits for the given time span for the next acquired image. More... | |
template<class Rep , class Period > | |
StreamImagePtr | WaitFor (const std::chrono::duration< Rep, Period > &timeSpan, WaitStatus &waitStatus) |
Waits for the given time span for the next acquired image. More... | |
template<class T , class Rep , class Period > | |
WaitResult< T > | WaitFor (const std::chrono::duration< Rep, Period > &timeSpan) |
Waits for the given time span for the next acquired image. More... | |
template<class Rep , class Period > | |
WaitResult< StreamImage > | WaitFor (const std::chrono::duration< Rep, Period > &timeSpan) |
Waits for the given time span for the next acquired image. More... | |
template<class T > | |
std::shared_ptr< T > | Wait (WaitStatus &waitStatus) |
Waits forever for the next acquired image and returns it. More... | |
StreamImagePtr | Wait (WaitStatus &waitStatus) |
Waits for ever for the next acquired image and returns it. More... | |
template<class T > | |
WaitResult< T > | Wait () |
Waits for ever for the next acquired image and returns it. More... | |
WaitResult< StreamImage > | Wait () |
Waits for ever for the next acquired image and returns it. More... | |
template<class T , class Rep , class Period > | |
std::shared_ptr< T > | GetTimedSnapshot (const std::chrono::duration< Rep, Period > &timeSpan, WaitStatus &waitStatus) |
Acquires a single image for a given time span and returns it. More... | |
template<class Rep , class Period > | |
StreamImagePtr | GetTimedSnapshot (const std::chrono::duration< Rep, Period > &timeSpan, WaitStatus &waitStatus) |
Acquires a single image for a given time span and returns it. More... | |
template<class T , class Rep , class Period > | |
WaitResult< T > | GetTimedSnapshot (const std::chrono::duration< Rep, Period > &timeSpan) |
Acquires a single image for a given time span and returns it. More... | |
template<class Rep , class Period > | |
WaitResult< StreamImage > | GetTimedSnapshot (const std::chrono::duration< Rep, Period > &timeSpan) |
Acquires a single image for a given time span and returns it. More... | |
StreamImagePtr | GetSnapshot (WaitStatus &waitStatus) |
Acquires a single image and returns it. More... | |
WaitResult< StreamImage > | GetSnapshot () |
Acquires a single image and returns it. More... | |
Public Member Functions inherited from StreamBase | |
DevicePtr | Parent () const noexcept |
Gets the parent device of this stream. More... | |
virtual Cvb::Driver::AcquisitionInterface | AcquisitionInterface () const noexcept=0 |
Gets the interface of this implementation. More... | |
virtual void | Start ()=0 |
Starts the acquisition. More... | |
virtual void | Stop ()=0 |
Stops the acquisition. More... | |
virtual bool | TryStop () noexcept=0 |
Stops the acquisition. More... | |
virtual void | Abort ()=0 |
Stops the acquisition of images immediately. More... | |
virtual bool | TryAbort () noexcept=0 |
Stops the acquisition of images immediately. More... | |
virtual bool | IsIndexed () const noexcept=0 |
Gets whether this stream is an indexed stream. More... | |
Represents one acquisition stream of a device.
|
inlineoverridevirtual |
Stops the acquisition of images immediately.
Any | exception derived from std::exception including CvbException. |
This stops the acquisition as fast as possible interrupting the ongoing operation. This might result in partially acquired images. The acquisition is stopped in the device first, then the engine on the host is stopped.
If the underlying driver does not support this, this call behaves as if Stop() had been called.
Implements StreamBase.
|
inlineoverridevirtualnoexcept |
Gets the interface of this implementation.
Does | not throw any exception. |
Implements StreamBase.
|
inline |
Acquires a single image and returns it.
Any | exception derived from std::exception including CvbException. |
|
inline |
Acquires a single image and returns it.
[out] | waitStatus | The status of the wait operation. |
Any | exception derived from std::exception including CvbException. |
|
inline |
Acquires a single image for a given time span and returns it.
[in] | timeSpan | Time to wait for an image. |
Any | exception derived from std::exception including CvbException |
|
inline |
Acquires a single image for a given time span and returns it.
[in] | timeSpan | Time to wait for an image. |
Any | exception derived from std::exception including CvbException. |
|
inline |
Acquires a single image for a given time span and returns it.
[in] | timeSpan | Time to wait for an image. |
[out] | waitStatus | The status of the wait operation. |
Any | exception derived from std::exception including CvbException. |
|
inline |
Acquires a single image for a given time span and returns it.
[in] | timeSpan | Time to wait for an image. |
[out] | waitStatus | The status of the wait operation. |
Any | exception derived from std::exception including CvbException. |
|
inlineoverridevirtualnoexcept |
Gets whether this stream is an indexed stream.
Does | not throw any exception. |
Implements StreamBase.
Reimplemented in IndexedStream.
|
inlinenoexcept |
Gets whether the acquisition is currently active.
Does | not throw any exception. |
This state only refers to the acquisition engine on the host. The state of the device might have been changed e.g via the NodeMap so there is no guarantee that it is in the same state.
|
inlinevirtualnoexcept |
Gets the ring buffer interface object if present.
Does | not throw any exception. |
|
inline |
Sets the interface of this implementation.
[in] | acquisitionInterface | The new acquisition interface. |
Any | exception derived from std::exception including CvbException. |
|
inlineoverridevirtual |
Starts the acquisition.
Any | exception derived from std::exception including CvbException. |
The acquisition engine is started in on the host first, then the stream on the device is started.
Implements StreamBase.
|
inline |
Gets statistics value if supported.
[in] | query | Statistical information request. |
Any | exception derived from std::exception including CvbException. |
|
inline |
Gets statistics value if supported.
[in] | query | Statistical information request. |
Any | exception derived from std::exception including CvbException. |
|
inlineoverridevirtual |
Stops the acquisition.
Any | exception derived from std::exception including CvbException. |
This stops the acquisition gracefully letting the ongoing operation finish. The acquisition is stopped in the device first, then the engine on the host is stopped. The disadvantage may be that this call lasts until the timeout time of the last Wait() call.
Implements StreamBase.
|
inlineoverridevirtualnoexcept |
Stops the acquisition of images immediately.
Does | not throw any exception. |
Same as Abort(), but does not throw.
Implements StreamBase.
|
inlineoverridevirtualnoexcept |
Stops the acquisition.
Does | not throw any exception. |
Same as Stop(), but does not throw.
Implements StreamBase.
|
inline |
Waits for ever for the next acquired image and returns it.
Any | exception derived from std::exception including CvbException. |
|
inline |
Waits for ever for the next acquired image and returns it.
Any | exception derived from std::exception including CvbException. |
|
inline |
Waits forever for the next acquired image and returns it.
[out] | waitStatus | The status of the wait operation. |
Any | exception derived from std::exception including CvbException. |
|
inline |
Waits for ever for the next acquired image and returns it.
[out] | waitStatus | The status of the wait operation. |
Does | not throw any exception. |
|
inline |
Waits for the given time span for the next acquired image.
[in] | timeSpan | Time to wait for an image. |
Any | exception derived from std::exception including CvbException. |
|
inline |
Waits for the given time span for the next acquired image.
[in] | timeSpan | Time to wait for an image. |
Any | exception derived from std::exception including CvbException. |
|
inline |
Waits for the given time span for the next acquired image.
[in] | timeSpan | Time to wait for an image. |
[out] | waitStatus | The status of the wait operation. |
Any | exception derived from std::exception including CvbException. |
|
inline |
Waits for the given time span for the next acquired image.
[in] | timeSpan | Time to wait for an image. |
[out] | waitStatus | The status of the wait operation. |
Any | exception derived from std::exception including CvbException. |