Scope
|
#include <Framescan.h>
Inherits scope::parameters::ScannerVector.
Inherited by scope::parameters::ScannerVectorFrameBiDi, scope::parameters::ScannerVectorFramePlaneHopper, scope::parameters::ScannerVectorFrameResonance, and scope::parameters::ScannerVectorFrameSaw.
Classes | |
class | Preset |
Public Member Functions | |
virtual std::vector< boost::signals2::connection > | ConnectCopyTrigger (signalchange_t::slot_type _slot) |
virtual void | ConnectRateUpdate (signalchange_t::slot_type _slot) |
virtual void | ConnectResolutionUpdate (signalchange_t::slot_type _slot) |
virtual void | ConnectMicronPerPixelUpdate (signalchange_t::slot_type _slot) |
virtual void | ConnectResolutionChange (signalchange_t::slot_type _slot) |
virtual void | ConnectOnlineUpdate (signalchange_t::slot_type _slot) |
virtual uint32_t | XImagePixels () const |
virtual uint32_t | YImageLines () const |
virtual uint32_t | XTotalPixels () const |
virtual uint32_t | YTotalLines () const |
uint32_t | TotalPixels () const override |
uint32_t | TotalPixelsOneFrame () const override |
void | Load (const wptree &pt) override |
void | Save (wptree &pt) const override |
void | SetReadOnlyWhileScanning (const RunState &_runstate) override |
virtual std::unique_ptr< ScannerVectorFrameBasic::Preset > | MakePreset () const |
virtual void | SaveToPreset (const std::wstring &_name, const Daq &_daq) |
virtual void | LoadFromPreset (const std::wstring &_name, Daq &_daq) |
virtual void | DeletePreset (const std::wstring &_name) |
virtual void | CoerceOffset () |
Static Public Member Functions | |
static std::unique_ptr< ScannerVectorFrameBasic > | Create () |
static std::unique_ptr< ScannerVectorFrameBasic > | Create (const ScannerVectorFrameBasic &_o) |
static std::unique_ptr< ScannerVectorFrameBasic > | Factory (const ScannerVectorType &_type, const ScannerVectorFrameBasic *const _o=nullptr) |
Public Attributes | |
std::vector< std::shared_ptr< Preset > > | presets |
ScopeNumber< uint32_t > | xres |
ScopeNumber< uint32_t > | yres |
ScopeNumber< double > | xaspectratio |
ScopeNumber< double > | yaspectratio |
ScopeNumber< bool > | squarepixels |
ScopeNumber< double > | zoom |
ScopeNumber< double > | xoffset |
ScopeNumber< double > | yoffset |
ScopeNumber< double > | fastz |
ScopeNumber< double > | pockels |
ScopeNumber< double > | xrotation |
ScopeNumber< double > | yrotation |
Additional Inherited Members | |
Protected Types inherited from scope::parameters::ScannerVector | |
typedef boost::signals2::signal< void()> | signalchange_t |
Protected Attributes inherited from scope::parameters::Base | |
std::vector< boost::signals2::connection > | connection_collector |
Parameters for a ScannerVectorFrameBasic.
Definition at line 45 of file Framescan.h.
|
inlinestatic |
Create function for factory.
Definition at line 94 of file Framescan.h.
|
inlinestatic |
Create copy function for factory.
Definition at line 97 of file Framescan.h.
|
static |
Factory method to generate parameter sets for different scan types and put them into a ScannerVectorFrameBasic pointer.
Definition at line 177 of file Framescan.cpp.
|
virtual |
Connect a slot that is called if some member parameter changes, this can be used to copy certain changes in a master area to its slave areas.
Except changes in parameters that are area specific (e.g. pockels).
[in] | _slot | The slot that is connected to all ScopeValues in the ScannerVector |
Reimplemented in scope::parameters::ScannerVectorFrameResonance, scope::parameters::ScannerVectorFramePlaneHopper, scope::parameters::ScannerVectorFrameBiDi, and scope::parameters::ScannerVectorFrameSaw.
Definition at line 190 of file Framescan.cpp.
|
virtual |
Connect a slot that is called if something in the ScannerVector changes that renders a recalculation of dependent rates (e.g.
framerate in parameters::Area) necessary
[in] | _slot | The slot that is connected to certain ScopeValues in the ScannerVector |
Reimplemented in scope::parameters::ScannerVectorFrameResonance, scope::parameters::ScannerVectorFramePlaneHopper, scope::parameters::ScannerVectorFrameBiDi, and scope::parameters::ScannerVectorFrameSaw.
Definition at line 201 of file Framescan.cpp.
|
virtual |
Connect a slot that is called if something in the ScannerVector changes that renders a recalculation of the resolution (e.g.
through in parameters::Area::CalculateResolution) necessary
[in] | _slot | The slot that is connected to certain ScopeValues in the ScannerVector |
Definition at line 206 of file Framescan.cpp.
|
virtual |
Connect a slot that is called if something in the ScannerVector changes that renders a recalculation of the micron per pixel (e.g.
through in parameters::Area::CalculateMicronPerPixel) necessary
[in] | _slot | The slot that is connected to certain ScopeValues in the ScannerVector |
Reimplemented in scope::parameters::ScannerVectorFrameResonance, scope::parameters::ScannerVectorFramePlaneHopper, scope::parameters::ScannerVectorFrameBiDi, and scope::parameters::ScannerVectorFrameSaw.
Definition at line 211 of file Framescan.cpp.
|
virtual |
Connect a slot that is called if xres or yres in the ScannerVector are changed This usually is ScopeControllerImpl::ResolutionChange.
[in] | _slot | The slot that is connected to xres and yres ScopeValues in the ScannerVector |
Definition at line 217 of file Framescan.cpp.
|
virtual |
Connect a slot that is called if something in the ScannerVector (which is displayed on the GUI) changes that makes an online update during scanning necessary.
[in] | _slot | The slot that is connected to certain/all ScopeValues in the ScannerVector, mainly this would be ScopeControllerImpl::UpdateAreaParametersFromGui |
Reimplemented in scope::parameters::ScannerVectorFrameResonance, scope::parameters::ScannerVectorFramePlaneHopper, scope::parameters::ScannerVectorFrameBiDi, and scope::parameters::ScannerVectorFrameSaw.
Definition at line 222 of file Framescan.cpp.
|
inlinevirtual |
Definition at line 172 of file Framescan.h.
|
inlinevirtual |
Definition at line 175 of file Framescan.h.
|
inlinevirtual |
Reimplemented in scope::parameters::ScannerVectorFrameResonance, scope::parameters::ScannerVectorFrameBiDi, and scope::parameters::ScannerVectorFrameSaw.
Definition at line 178 of file Framescan.h.
|
inlinevirtual |
Reimplemented in scope::parameters::ScannerVectorFrameResonance, scope::parameters::ScannerVectorFrameBiDi, and scope::parameters::ScannerVectorFrameSaw.
Definition at line 181 of file Framescan.h.
|
inlineoverridevirtual |
Reimplemented from scope::parameters::ScannerVector.
Reimplemented in scope::parameters::ScannerVectorFrameResonance, scope::parameters::ScannerVectorFrameBiDi, and scope::parameters::ScannerVectorFrameSaw.
Definition at line 183 of file Framescan.h.
|
inlineoverridevirtual |
Reimplemented from scope::parameters::ScannerVector.
Reimplemented in scope::parameters::ScannerVectorFrameResonance, scope::parameters::ScannerVectorFrameBiDi, and scope::parameters::ScannerVectorFrameSaw.
Definition at line 185 of file Framescan.h.
|
overridevirtual |
load parameters from a boost::property_tree
Reimplemented from scope::parameters::Base.
Reimplemented in scope::parameters::ScannerVectorFrameResonance, scope::parameters::ScannerVectorFramePlaneHopper, scope::parameters::ScannerVectorFrameBiDi, and scope::parameters::ScannerVectorFrameSaw.
Definition at line 66 of file Framescan.cpp.
|
overridevirtual |
save parameters into a boost:property_tree
Reimplemented from scope::parameters::Base.
Reimplemented in scope::parameters::ScannerVectorFrameResonance, scope::parameters::ScannerVectorFramePlaneHopper, scope::parameters::ScannerVectorFrameBiDi, and scope::parameters::ScannerVectorFrameSaw.
Definition at line 93 of file Framescan.cpp.
|
overridevirtual |
set values that must not be changed to read-only during scanning.
True = readonly, false = read&write
Reimplemented from scope::parameters::Base.
Reimplemented in scope::parameters::ScannerVectorFrameResonance, scope::parameters::ScannerVectorFramePlaneHopper, scope::parameters::ScannerVectorFrameBiDi, and scope::parameters::ScannerVectorFrameSaw.
Definition at line 118 of file Framescan.cpp.
|
virtual |
Since preset loading is done in base class (here), we need to generate a derived preset, this can be done by calling this function and overriding it in derived classes.
(Be careful which classes Preset class is meant!)
Reimplemented in scope::parameters::ScannerVectorFrameResonance, scope::parameters::ScannerVectorFramePlaneHopper, scope::parameters::ScannerVectorFrameBiDi, and scope::parameters::ScannerVectorFrameSaw.
Definition at line 159 of file Framescan.cpp.
|
inlinevirtual |
Save parameters into a preset.
Reimplemented in scope::parameters::ScannerVectorFrameResonance, scope::parameters::ScannerVectorFramePlaneHopper, scope::parameters::ScannerVectorFrameBiDi, and scope::parameters::ScannerVectorFrameSaw.
Definition at line 196 of file Framescan.h.
|
inlinevirtual |
Load parameters from a preset.
Reimplemented in scope::parameters::ScannerVectorFrameResonance, scope::parameters::ScannerVectorFramePlaneHopper, scope::parameters::ScannerVectorFrameBiDi, and scope::parameters::ScannerVectorFrameSaw.
Definition at line 199 of file Framescan.h.
|
virtual |
Deletes a preset.
Definition at line 163 of file Framescan.cpp.
|
virtual |
Changes the limits of xoffset and yoffset to account for the maximum allowed offset depending on zoom.
Definition at line 170 of file Framescan.cpp.
std::vector<std::shared_ptr<Preset> > scope::parameters::ScannerVectorFrameBasic::presets |
A vector with presets.
Definition at line 89 of file Framescan.h.
ScopeNumber<uint32_t> scope::parameters::ScannerVectorFrameBasic::xres |
x resolution of the image (linewidth)
Definition at line 135 of file Framescan.h.
ScopeNumber<uint32_t> scope::parameters::ScannerVectorFrameBasic::yres |
y resolution of the image (lines)
Definition at line 138 of file Framescan.h.
ScopeNumber<double> scope::parameters::ScannerVectorFrameBasic::xaspectratio |
aspect ratio in x direction
Definition at line 141 of file Framescan.h.
ScopeNumber<double> scope::parameters::ScannerVectorFrameBasic::yaspectratio |
aspect ratio in y direction
Definition at line 144 of file Framescan.h.
ScopeNumber<bool> scope::parameters::ScannerVectorFrameBasic::squarepixels |
pixels are square (thus FOV rectangular) when true, when false pixels are rectangular (thus FOV square) depending on xres vs yres
Definition at line 147 of file Framescan.h.
ScopeNumber<double> scope::parameters::ScannerVectorFrameBasic::zoom |
current zoom factor (from 1 to 20).
With the PXI-6259 analog output range of +-5V and 16bit resolution the smallest voltage step is 0.15mV. Having zoom 20 and 512 pixels corresponds to a step size of 0.98 mV.
Definition at line 151 of file Framescan.h.
ScopeNumber<double> scope::parameters::ScannerVectorFrameBasic::xoffset |
x offset
Definition at line 154 of file Framescan.h.
ScopeNumber<double> scope::parameters::ScannerVectorFrameBasic::yoffset |
y offset
Definition at line 157 of file Framescan.h.
ScopeNumber<double> scope::parameters::ScannerVectorFrameBasic::fastz |
current fast z position
Definition at line 160 of file Framescan.h.
ScopeNumber<double> scope::parameters::ScannerVectorFrameBasic::pockels |
pockels cell value
Definition at line 163 of file Framescan.h.
ScopeNumber<double> scope::parameters::ScannerVectorFrameBasic::xrotation |
Rotation angle around the X axis in degrees.
Definition at line 166 of file Framescan.h.
ScopeNumber<double> scope::parameters::ScannerVectorFrameBasic::yrotation |
Rotation angle around the Y axis in degrees.
Definition at line 169 of file Framescan.h.