Scope
scope::DisplayController Class Reference

#include <DisplayController.h>

Inherits scope::BaseController< 1 >.

Classes

class  Impl
 

Public Member Functions

 DisplayController (SynchronizedQueue< ScopeMessage< SCOPE_MULTIIMAGEPTR_T >> *const _iqueue, const parameters::Scope &_parameters)
 
void ResolutionChange (const parameters::Area &_parameters)
 
These are called by CChannelFrame and CHistogramFrame
void SetHistogramLimits (const uint32_t &_area, const uint32_t &_channel, const uint16_t &_lower, const uint16_t &_upper)
 
void AttachFrame (gui::CChannelFrame *const cframe)
 
void DetachFrame (gui::CChannelFrame *const cframe)
 
void AttachFrame (gui::CHistogramFrame *const hframe)
 
bool HistogramAlreadyAttached (const uint32_t &_area) const
 
void DetachFrame (gui::CHistogramFrame *const hframe)
 
parameters::WindowCollection GetWindowCollection () const
 
- Public Member Functions inherited from scope::BaseController< 1 >
virtual ~BaseController ()
 
Impl * Pimpl () const
 
void Start (const parameters::Scope &_parameters)
 
void StopAll ()
 
ControllerReturnStatus WaitForAll (const int32_t &_wait_time=-1)
 

Protected Member Functions

 DisplayController (DisplayController &other)
 
DisplayControlleroperator= (DisplayController &other)
 
Impl *const Pimpl () const
 
- Protected Member Functions inherited from scope::BaseController< 1 >
 BaseController (Impl *const _pimpl)
 

Additional Inherited Members

- Protected Attributes inherited from scope::BaseController< 1 >
Impl *const pimpl
 

Detailed Description

The display controller handles displaying images and histograms.

It has an Active object (since it derives from BaseController) but the work is actually done in Active objects inside CChannelFrame/View and CHistogramFrame/View. I choose this solution because much stuff is dependent on the size of the actual window and the scaling is better with one worker thread per window. The DisplayController now merely keeps track of which windows exist and transfers pointer to the current image to these.

Definition at line 32 of file DisplayController.h.

Constructor & Destructor Documentation

scope::DisplayController::DisplayController ( DisplayController other)
protected

disable copy

scope::DisplayController::DisplayController ( SynchronizedQueue< ScopeMessage< SCOPE_MULTIIMAGEPTR_T >> *const  _iqueue,
const parameters::Scope _parameters 
)

Connect queue and get parameters.

Definition at line 7 of file DisplayController.cpp.

Member Function Documentation

DisplayController& scope::DisplayController::operator= ( DisplayController other)
protected

disable assignment

DisplayController::Impl *const scope::DisplayController::Pimpl ( ) const
protected

Return a pointer to the hidden implementation.

Definition at line 11 of file DisplayController.cpp.

void scope::DisplayController::ResolutionChange ( const parameters::Area _parameters)

Request resize of CChannelFrame observers to cope with new image size.

Calls DisplayController::Impl::ResolutionChange

Definition at line 19 of file DisplayController.cpp.

void scope::DisplayController::SetHistogramLimits ( const uint32_t &  _area,
const uint32_t &  _channel,
const uint16_t &  _lower,
const uint16_t &  _upper 
)
void scope::DisplayController::AttachFrame ( gui::CChannelFrame *const  cframe)

Attaches a CChannelFrame as an observer.

Calls DisplayController::Impl::AttachFrame.

Definition at line 23 of file DisplayController.cpp.

void scope::DisplayController::DetachFrame ( gui::CChannelFrame *const  cframe)

Detaches a CChannelFrame as an observer.

Calls DisplayController::Impl::DetachFrame.

Definition at line 27 of file DisplayController.cpp.

void scope::DisplayController::AttachFrame ( gui::CHistogramFrame *const  hframe)

Attaches a CHistogramFrame as an observer.

Calls DisplayController::Impl::AttachFrame.

Definition at line 31 of file DisplayController.cpp.

bool scope::DisplayController::HistogramAlreadyAttached ( const uint32_t &  _area) const
Returns
true if alread at least one histogram attached for that area. Calls DisplayController::Impl::HistogramAlreadyAttached.

Definition at line 35 of file DisplayController.cpp.

void scope::DisplayController::DetachFrame ( gui::CHistogramFrame *const  hframe)

Detaches a CHistogramFrame as an observer.

Calls DisplayController::Impl::DetachFrame.

Definition at line 39 of file DisplayController.cpp.

parameters::WindowCollection scope::DisplayController::GetWindowCollection ( ) const

Adds frames to WindowCollection of ScopeController::GuiParameters.

Calls DisplayController::Impl::AddFramesToWindowCollection.

Definition at line 43 of file DisplayController.cpp.


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