Scope
scope::parameters::Area Class Reference

#include <Scope.h>

Inherits scope::parameters::Base.

Public Member Functions

 Area (const uint32_t &_area=0, const bool &_isslave=false, Area *const _masterarea=nullptr)
 
 Area (const Area &_other)
 
Areaoperator= (const Area &v)
 
virtual ~Area ()
 
void SetMasterArea (Area *const _masterarea)
 
void CopyFromMasterArea ()
 
ScannerVectorFrameBasicCurrentframe () const
 
ScannerVectorFrameSawFrameSaw () const
 
ScannerVectorFrameResonanceFrameResonance () const
 
ScannerVectorFrameBiDiFrameBiDi () const
 
ScannerVectorFramePlaneHopperFrameHopper () const
 
void Load (const wptree &pt) override
 
void Save (wptree &pt) const override
 
void SetReadOnlyWhileScanning (const RunState &_runstate) override
 
virtual void SaveToPreset (const std::wstring &_name)
 
virtual void LoadFromPreset (const std::wstring &_name)
 
virtual void DeletePreset (const std::wstring &_name)
 
virtual double FrameTime () const
 
virtual double LineTime () const
 
virtual uint32_t TotalPixelsAllChannels () const
 
virtual double XOffsetInMicron () const
 
virtual double YOffsetInMicron () const
 

Public Attributes

ScopeNumber< uint32_t > area
 
ScopeNumber< bool > isslave
 
Areamasterarea
 
Daq daq
 
SCOPE_FPUXYCONTROL_T fpuxystage
 
SCOPE_FPUZCONTROL_T fpuzstage
 
ScopeValue< ScannerVectorTypescanmode
 
std::map< ScannerVectorTypeHelper::Mode, std::unique_ptr< ScannerVectorFrameBasic > > scannervectorframesmap
 
ScopeNumber< double > linerate
 
ScopeNumber< double > framerate
 
ScopeNumber< double > frametime
 
ScopeNumber< uint32_t > histrange
 
Base scale for 256x256 pixels at zoom 1 and the (maxoutput-minoutput) range set in Daq
ScopeNumber< double > basemicronperpixelx
 
ScopeNumber< double > basemicronperpixely
 
Current scale for current resolution and zoom
ScopeNumber< double > micronperpixelx
 
ScopeNumber< double > micronperpixely
 

Protected Member Functions

virtual void InitializeConnections ()
 
virtual void ChangeScanMode ()
 
virtual void UpdateRates ()
 
virtual void UpdateFastZCalibration ()
 
virtual void CalculateMicronPerPixel ()
 
virtual void CalculateResolution ()
 

Additional Inherited Members

- Protected Attributes inherited from scope::parameters::Base
std::vector< boost::signals2::connection > connection_collector
 

Detailed Description

Parameters for a whole area (includes a daq and a fpu)

Definition at line 64 of file Scope.h.

Constructor & Destructor Documentation

scope::parameters::Area::Area ( const uint32_t &  _area = 0,
const bool &  _isslave = false,
Area *const  _masterarea = nullptr 
)
Parameters
[in]_areathe area number
[in]_isslaveis this a slave area?
[in]_masterareapointer to the masterarea parameters, or nullptr

Definition at line 51 of file Scope.cpp.

scope::parameters::Area::Area ( const Area _other)

Copy constructor (deep copy because of the pointers in the map)

Definition at line 83 of file Scope.cpp.

virtual scope::parameters::Area::~Area ( )
inlinevirtual

Virtual destructor, just in case we derive a something from Area somtime.

Definition at line 130 of file Scope.h.

Member Function Documentation

Area & scope::parameters::Area::operator= ( const Area v)

Assignment (deep copy because of the pointers in the map)

Definition at line 106 of file Scope.cpp.

void scope::parameters::Area::SetMasterArea ( Area *const  _masterarea)

(Re)set the pointer to the master area e.g.

after a copy

Definition at line 134 of file Scope.cpp.

void scope::parameters::Area::CopyFromMasterArea ( )

Copies parts of the ScannerVectorParameters from the master area's.

Keeps Pockels and fast z

Definition at line 143 of file Scope.cpp.

ScannerVectorFrameBasic & scope::parameters::Area::Currentframe ( ) const

pointer to the current parameters::frame.

Definition at line 150 of file Scope.cpp.

ScannerVectorFrameSaw & scope::parameters::Area::FrameSaw ( ) const

pointer to the ScannerVectorFrameSaw if implemented or throwing an exception!

Definition at line 154 of file Scope.cpp.

ScannerVectorFrameResonance & scope::parameters::Area::FrameResonance ( ) const

pointer to the ScannerVectorFrameResonance if implemented or throwing an exception!

Definition at line 160 of file Scope.cpp.

ScannerVectorFrameBiDi & scope::parameters::Area::FrameBiDi ( ) const

pointer to the ScannerVectorFrameBiDi if implemented or throwing an exception!

Definition at line 166 of file Scope.cpp.

ScannerVectorFramePlaneHopper & scope::parameters::Area::FrameHopper ( ) const

pointer to the ScannerVectorFramePlaneHopper if implemented or throwing an exception!

Definition at line 172 of file Scope.cpp.

void scope::parameters::Area::Load ( const wptree &  pt)
overridevirtual

load parameters from a boost::property_tree

Reimplemented from scope::parameters::Base.

Definition at line 178 of file Scope.cpp.

void scope::parameters::Area::Save ( wptree &  pt) const
overridevirtual

save parameters into a boost:property_tree

Reimplemented from scope::parameters::Base.

Definition at line 203 of file Scope.cpp.

void scope::parameters::Area::SetReadOnlyWhileScanning ( const RunState _runstate)
overridevirtual

set values that must not be changed to read-only during scanning.

True = readonly, false = read&write

Reimplemented from scope::parameters::Base.

Definition at line 235 of file Scope.cpp.

void scope::parameters::Area::SaveToPreset ( const std::wstring &  _name)
virtual

Save to preset in currentframe.

Definition at line 245 of file Scope.cpp.

void scope::parameters::Area::LoadFromPreset ( const std::wstring &  _name)
virtual

Load from preset in currentframe.

Definition at line 249 of file Scope.cpp.

void scope::parameters::Area::DeletePreset ( const std::wstring &  _name)
virtual

Delete preset in currentframe.

Definition at line 253 of file Scope.cpp.

double scope::parameters::Area::FrameTime ( ) const
virtual

Time per frame in seconds.

Definition at line 257 of file Scope.cpp.

double scope::parameters::Area::LineTime ( ) const
virtual

Time per line in seconds.

Definition at line 261 of file Scope.cpp.

uint32_t scope::parameters::Area::TotalPixelsAllChannels ( ) const
virtual

total number of pixels summed over all channels

Definition at line 265 of file Scope.cpp.

double scope::parameters::Area::XOffsetInMicron ( ) const
virtual

Gives the current framescan X offset in micrometers.

Definition at line 269 of file Scope.cpp.

double scope::parameters::Area::YOffsetInMicron ( ) const
virtual

Gives the current framescan Y offset in micrometers.

Definition at line 274 of file Scope.cpp.

void scope::parameters::Area::InitializeConnections ( )
protectedvirtual

Helper for constructors and assignment to connect internal ScopeValues (as the connections in ScopeValues do not get copied automatically.

Definition at line 279 of file Scope.cpp.

void scope::parameters::Area::ChangeScanMode ( )
protectedvirtual

Force update of rates etc.

after change of scanmode. scanmode is connected to this.

Definition at line 306 of file Scope.cpp.

void scope::parameters::Area::UpdateRates ( )
protectedvirtual

Updates framerate, frametime, and linerate.

Definition at line 313 of file Scope.cpp.

void scope::parameters::Area::UpdateFastZCalibration ( )
protectedvirtual

Updates fast z boundaries on changed fast Z (ETL) calibration file.

Definition at line 319 of file Scope.cpp.

void scope::parameters::Area::CalculateMicronPerPixel ( )
protectedvirtual

Current scale calculated from micronperpixelx with the resolution set in currentframe.

Definition at line 327 of file Scope.cpp.

void scope::parameters::Area::CalculateResolution ( )
protectedvirtual

Calculates the x resolution from the x aspect ratio and the y resolution from the y aspect ratio.

Definition at line 333 of file Scope.cpp.

Member Data Documentation

ScopeNumber<uint32_t> scope::parameters::Area::area

the number of this area

Definition at line 69 of file Scope.h.

ScopeNumber<bool> scope::parameters::Area::isslave

true if this area is a slave area (for an n-beam system)

Definition at line 72 of file Scope.h.

Area* scope::parameters::Area::masterarea

const pointer to the master area parameters (provided in the constructor through parametes::Scope)

Definition at line 75 of file Scope.h.

Daq scope::parameters::Area::daq

the DaqParameters for this area

Definition at line 78 of file Scope.h.

SCOPE_FPUXYCONTROL_T scope::parameters::Area::fpuxystage

the xy stage parameters for this FPU (set type in ScopeDefines.h)

Definition at line 81 of file Scope.h.

SCOPE_FPUZCONTROL_T scope::parameters::Area::fpuzstage

the fast z stage parameters for this FPU (set type in ScopeDefines.h)

Definition at line 84 of file Scope.h.

ScopeValue<ScannerVectorType> scope::parameters::Area::scanmode

the choosen scanner vector type

Definition at line 87 of file Scope.h.

std::map<ScannerVectorTypeHelper::Mode, std::unique_ptr<ScannerVectorFrameBasic> > scope::parameters::Area::scannervectorframesmap

This map contains all ScannerVectors that are supported by the kind of scanner.

Definition at line 90 of file Scope.h.

ScopeNumber<double> scope::parameters::Area::basemicronperpixelx

Base scale in x direction for 256x256 pixels at zoom 1 and the (maxoutput-minoutput) range set in Daq.

Definition at line 95 of file Scope.h.

ScopeNumber<double> scope::parameters::Area::basemicronperpixely

Base scale in y direction for 256x256 pixels at zoom 1 and the (maxoutput-minoutput) range set in Daq.

Definition at line 97 of file Scope.h.

ScopeNumber<double> scope::parameters::Area::linerate

Line repetition rate in Hertz.

Definition at line 107 of file Scope.h.

ScopeNumber<double> scope::parameters::Area::framerate

Frame repetition rate in Hertz.

Definition at line 110 of file Scope.h.

ScopeNumber<double> scope::parameters::Area::frametime

Time per frame in seconds.

Definition at line 113 of file Scope.h.

ScopeNumber<uint32_t> scope::parameters::Area::histrange

Histogram range for the areas.

Definition at line 116 of file Scope.h.


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