DynExp
Highly flexible laboratory automation for dynamically changing experiments.
DynExpInstr::DummyCameraData Class Reference
+ Inheritance diagram for DynExpInstr::DummyCameraData:

Public Member Functions

 DummyCameraData ()=default
 
virtual ~DummyCameraData ()=default
 
QImage GetDummyImage ()
 
- Public Member Functions inherited from DynExpInstr::CameraData
 CameraData ()=default
 
virtual ~CameraData ()=default
 
auto GetImageWidth () const noexcept
 Getter for ImageWidth. More...
 
void SetImageWidth (ImageDimensionType ImageWidth) noexcept
 Setter for ImageWidth. More...
 
auto GetImageHeight () const noexcept
 Getter for ImageHeight. More...
 
void SetImageHeight (ImageDimensionType ImageHeight) noexcept
 Setter for ImageHeight. More...
 
auto GetCameraModes () const
 Getter for CameraModes. More...
 
void SetCameraModes (CameraModesType CameraModes)
 Setter for CameraModes. More...
 
TimeType GetMinExposureTime () const
 Getter for MinExposureTime. More...
 
TimeType GetMaxExposureTime () const
 Getter for MaxExposureTime. More...
 
TimeType GetExposureTime () const
 Getter for CurrentExposureTime. More...
 
void SetMinExposureTime (TimeType MinExposureTime)
 Setter for MinExposureTime. More...
 
void SetMaxExposureTime (TimeType MaxExposureTime)
 Setter for MaxExposureTime. More...
 
void SetExposureTime (TimeType CurrentExposureTime)
 Setter for CurrentExposureTime. More...
 
auto GetCurrentFPS () const noexcept
 Getter for CurrentFPS. More...
 
void SetCurrentFPS (float CurrentFPS) noexcept
 Setter for CurrentFPS. More...
 
auto GetComputeHistogram () const noexcept
 Getter for ComputeHistogram. More...
 
void SetComputeHistogram (ComputeHistogramType ComputeHistogram) const noexcept
 Setter for ComputeHistogram. Adjustable by modules. More...
 
auto GetIntensityHistogram () const noexcept
 Getter for IntensityHistogram. More...
 
void SetIntensityHistogram (Util::ImageHistogramType &&IntensityHistogram) noexcept
 Setter for IntensityHistogram. Moves from argument. More...
 
auto GetRGBHistogram () const noexcept
 Getter for RGBHistogram. More...
 
void SetRGBHistogram (Util::ImageRGBHistogramType &&RGBHistogram) noexcept
 Setter for RGBHistogram. Moves from argument. More...
 
const auto & GetImageTransformation () const noexcept
 Getter for ImageTransformation. More...
 
void SetImageTransformation (const ImageTransformationType &Transformation) const noexcept
 Setter for ImageTransformation. Adjustable by modules. More...
 
QImage GetImage () const
 Moving getter for CurrentImage. More...
 
QImage GetImageCopy (const QRect &RegionOfInterest=QRect()) const
 Copying getter for CurrentImage. This function is more expensive than GetImage(). More...
 
bool IsImageAvailbale () const noexcept
 Determines whether an image is currently available. More...
 
void SetImage (QImage &&Other)
 Setter for CurrentImage. More...
 
void ClearImage () const
 Resets CurrentImage to a default-constructed empty image and IntensityHistogram as well as RGBHistogram to default-constructed empty histograms. More...
 
auto GetCapturingState () const noexcept
 Returns the camera's current capturing state. More...
 
bool IsCapturing () const noexcept
 Determines whether the camera is currently capturing an image. More...
 
bool IsCapturingSingle () const noexcept
 Determines whether the camera is currently capturing a single image. More...
 
bool IsCapturingContinuously () const noexcept
 Determines whether the camera is currently capturing images consecutively. More...
 
- Public Member Functions inherited from DynExp::InstrumentDataBase
 InstrumentDataBase ()
 
virtual ~InstrumentDataBase ()
 
auto GetLastUpdateTime () const
 Getter for LastUpdate. More...
 
auto GetException () const noexcept
 Getter for InstrumentDataBase::InstrumentException. More...
 
void EnqueueTask (std::unique_ptr< TaskBase > &&Task)
 Enqueues a task at the back of an instrument's task queue and notifies the instrument about the new task. More...
 
void EnqueuePriorityTask (std::unique_ptr< TaskBase > &&Task)
 Enqueues a task at the front of an instrument's task queue and notifies the instrument about the new task. More...
 
std::unique_ptr< TaskBasePopTaskFront ()
 Removes a task from the front of an instrument's task queue. More...
 
std::unique_ptr< TaskBasePopTaskBack ()
 Removes a task from the back of an instrument's task queue. More...
 
auto GetTaskFront () noexcept
 Getter for first enqueued task. More...
 
auto GetTaskBack () noexcept
 Getter for last enqueued task. More...
 
size_t GetNumEnqueuedTasks () const noexcept
 Getter for the instrument task queue's length. More...
 
std::unique_ptr< TaskBasePopFinishedTask ()
 Removes a task from the front of an instrument's list of finished tasks. More...
 
size_t GetNumFinishedTasks () const noexcept
 Getter for the length of the instrument's list of finished tasks. More...
 
bool IsQueueClosed () const noexcept
 Determines whether the instrument task queue is closed. More...
 
- Public Member Functions inherited from Util::INonCopyable
 INonCopyable (const INonCopyable &)=delete
 
INonCopyableoperator= (const INonCopyable &)=delete
 

Private Member Functions

void ResetImpl (dispatch_tag< CameraData >) override final
 
virtual void ResetImpl (dispatch_tag< DummyCameraData >)
 
virtual CapturingStateType GetCapturingStateChild () const noexcept override
 Returns the camera's current capturing state. More...
 

Private Attributes

QImage DummyImage
 

Friends

class DummyCameraTasks::InitTask
 
class DummyCameraTasks::UpdateTask
 

Additional Inherited Members

- Public Types inherited from DynExpInstr::CameraData
enum class  CapturingStateType { Stopped , CapturingSingle , CapturingContinuously }
 Type indicating whether the camera is currently capturing images. More...
 
enum class  ComputeHistogramType { NoHistogram , IntensityHistogram , RGBHistogram , IntensityAndRGBHistogram }
 Type indicating whether histograms should be computed for newly captured images. More...
 
using ImageDimensionType = unsigned int
 Type describing image dimensions such as width and height. More...
 
using CameraModesType = std::vector< std::string >
 List type containing strings of modes the camera can operate in. More...
 
using TimeType = std::chrono::milliseconds
 Time type describing the camera's times like its exposure time. More...
 
- Public Types inherited from DynExp::InstrumentDataBase
using TaskQueueType = std::list< std::unique_ptr< TaskBase > >
 Type of an instrument task queue owning the tasks within. More...
 
using TaskQueueIteratorType = TaskQueueType::const_iterator
 Const iterator type to elements of TaskQueueType. More...
 
- Public Attributes inherited from DynExp::InstrumentDataBase
InstrumentBaseOnlyType InstrumentBaseOnly
 Allow exclusive access to some of InstrumentDataBase's private methods to InstrumentBase. More...
 
InstrumenThreadOnlyType InstrumentThreadOnly
 Allow exclusive access to some of InstrumentDataBase's private methods to the instrument thread InstrumentThreadMain(). More...
 
- Protected Member Functions inherited from Util::ISynchronizedPointerLockable
 ISynchronizedPointerLockable ()
 
 ~ISynchronizedPointerLockable ()
 Object should never be destroyed before completely unlocked. More...
 
- Protected Member Functions inherited from Util::INonCopyable
constexpr INonCopyable ()=default
 
 ~INonCopyable ()=default
 

Detailed Description

Definition at line 45 of file DummyCamera.h.

Constructor & Destructor Documentation

◆ DummyCameraData()

DynExpInstr::DummyCameraData::DummyCameraData ( )
default

◆ ~DummyCameraData()

virtual DynExpInstr::DummyCameraData::~DummyCameraData ( )
virtualdefault

Member Function Documentation

◆ GetCapturingStateChild()

virtual CapturingStateType DynExpInstr::DummyCameraData::GetCapturingStateChild ( ) const
inlineoverrideprivatevirtualnoexcept

Returns the camera's current capturing state.

Returns
Capturing state of type CameraData::CapturingStateType

Implements DynExpInstr::CameraData.

Definition at line 60 of file DummyCamera.h.

◆ GetDummyImage()

QImage DynExpInstr::DummyCameraData::GetDummyImage ( )
inline

Definition at line 54 of file DummyCamera.h.

◆ ResetImpl() [1/2]

void DynExpInstr::DummyCameraData::ResetImpl ( dispatch_tag< CameraData )
finaloverrideprivatevirtual

Reimplemented from DynExpInstr::CameraData.

Definition at line 74 of file DummyCamera.cpp.

◆ ResetImpl() [2/2]

virtual void DynExpInstr::DummyCameraData::ResetImpl ( dispatch_tag< DummyCameraData )
inlineprivatevirtual

Definition at line 58 of file DummyCamera.h.

Friends And Related Function Documentation

◆ DummyCameraTasks::InitTask

friend class DummyCameraTasks::InitTask
friend

Definition at line 47 of file DummyCamera.h.

◆ DummyCameraTasks::UpdateTask

friend class DummyCameraTasks::UpdateTask
friend

Definition at line 48 of file DummyCamera.h.

Member Data Documentation

◆ DummyImage

QImage DynExpInstr::DummyCameraData::DummyImage
private

Definition at line 62 of file DummyCamera.h.


The documentation for this class was generated from the following files: