Scope
scope::parameters::Scope Class Reference

#include <Scope.h>

Inherits scope::parameters::Base.

Public Member Functions

 Scope (const Scope &_scope)
 
Scopeoperator= (const Scope &_scope)
 
void Load (const std::wstring &filename)
 
void Save (const std::wstring &filename) const
 
void SetReadOnlyWhileScanning (const RunState &_runstate) override
 
- Public Member Functions inherited from scope::parameters::Base
virtual void Load (const wptree &pt)
 
virtual void Save (wptree &pt) const
 

Public Attributes

ScopeString date
 
ScopeString time
 
ScopeString scopecommit
 
ScopeString comment
 
ScopeValue< ScannerTypescannertype
 
std::array< std::unique_ptr< Area >, SCOPE_NAREAS > areas
 
Storage storage
 
Stack stack
 
Timeseries timeseries
 
Behavior behavior
 
SCOPE_XYZCONTROL_T stage
 
Stimulation stimulation
 
WindowCollection frames
 
ScopeNumber< bool > startinputsfirst
 
ScopeString commontrigger
 
ScopeNumber< double > masterfovsizex
 
ScopeNumber< double > masterfovsizey
 
ScopeValue< RunStaterun_state
 
ScopeValue< DaqModerequested_mode
 

Protected Member Functions

virtual void UpdateTotaltimeFromFrames ()
 
virtual void UpdateFramesFromTotaltime ()
 

Additional Inherited Members

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

Detailed Description

The master parameters class.

Definition at line 204 of file Scope.h.

Constructor & Destructor Documentation

scope::parameters::Scope::Scope ( const Scope _scope)

Supply copy constructor because of unique_ptr<Area> (does deep copy of Areas)

Definition at line 383 of file Scope.cpp.

Member Function Documentation

void scope::parameters::Scope::UpdateTotaltimeFromFrames ( )
protectedvirtual

Updates durations of timeseries from choosen frames and framerate.

Definition at line 459 of file Scope.cpp.

void scope::parameters::Scope::UpdateFramesFromTotaltime ( )
protectedvirtual

Updates number of frames from choosen duration and framerate.

Definition at line 470 of file Scope.cpp.

Scope & scope::parameters::Scope::operator= ( const Scope _scope)

Supply assignment operator because of unique_ptr<Area> (does deep copy of Areas)

Definition at line 420 of file Scope.cpp.

void scope::parameters::Scope::Load ( const std::wstring &  filename)

Load all from file.

Definition at line 475 of file Scope.cpp.

void scope::parameters::Scope::Save ( const std::wstring &  filename) const

Save all to file.

Definition at line 513 of file Scope.cpp.

void scope::parameters::Scope::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 566 of file Scope.cpp.

Member Data Documentation

ScopeString scope::parameters::Scope::date

current date

Definition at line 216 of file Scope.h.

ScopeString scope::parameters::Scope::time

current time

Definition at line 219 of file Scope.h.

ScopeString scope::parameters::Scope::scopecommit

Current version (git commit hash) of Scope.

Definition at line 222 of file Scope.h.

ScopeString scope::parameters::Scope::comment

a comment, e.g.

user name or config description

Definition at line 225 of file Scope.h.

ScopeValue<ScannerType> scope::parameters::Scope::scannertype

Type of scanner in the microscope.

Definition at line 228 of file Scope.h.

std::array<std::unique_ptr<Area>, SCOPE_NAREAS> scope::parameters::Scope::areas

holds AreaParameters for all areas.

Pointers, since we have to supply constructor parameters (e.g. isslave?), plain array needs default constructible.

Definition at line 231 of file Scope.h.

Storage scope::parameters::Scope::storage

the StorageParameters

Definition at line 234 of file Scope.h.

Stack scope::parameters::Scope::stack

the StackParameters

Definition at line 237 of file Scope.h.

Timeseries scope::parameters::Scope::timeseries

the TimeseriesParameters

Definition at line 240 of file Scope.h.

Behavior scope::parameters::Scope::behavior

the BehaviorParameters

Definition at line 243 of file Scope.h.

SCOPE_XYZCONTROL_T scope::parameters::Scope::stage

the parameters for the xyz stage (set type in ScopeDefines.h)

Definition at line 246 of file Scope.h.

Stimulation scope::parameters::Scope::stimulation

the StimulationParameters

Definition at line 249 of file Scope.h.

WindowCollection scope::parameters::Scope::frames

The parameters for windows on the screen.

Definition at line 252 of file Scope.h.

ScopeNumber<bool> scope::parameters::Scope::startinputsfirst

true: start inputs first, then outputs with output of area 0 as last, so it (e.g.

/ao/StartTrigger) can serve as common master trigger for everything else false: start outputs first, then inputs (area 0 last) so an FPGA doing the input can generate the sample clock for the outputs

Definition at line 256 of file Scope.h.

ScopeString scope::parameters::Scope::commontrigger

The trigger channel which is the internal common master trigger for all devices.

In a configuration with InputsDAQmx and OutputsDAQmx this should be e.g. /PXI-6259_0/ao/StartTrigger and startinputsfirst should be true; or /PXI-6259_0/ai/StartTrigger and startinputsfirst false.
In a configuration with InputsFPGA and OutputsDAQmx this should be e.g. /PXI-6259_0/ao/StartTrigger and startinputsfirst should be false

Definition at line 262 of file Scope.h.

ScopeNumber<double> scope::parameters::Scope::masterfovsizex

Size of the maximally reachable field of view.

In a single-area system this is just that area's basemicronperpixelx * 256. In a multi-area nbeam system this is

  • if you configured that area's daq output minoutputscanner/maxoutputscanner to reach the maximal FOV: that area's basemicronperpixelx * 256
  • if you configured that area's daq output minoutputscanner/maxoutputscanner to reach only a smaller FOV: put in here whatever you can reach and reasonably image by moving the FPUs In a multi-area multi-scanner system this is the maximum FOV you can reasonably image by moving the FPUs

Definition at line 270 of file Scope.h.

ScopeNumber<double> scope::parameters::Scope::masterfovsizey

The same for the y direction.

Definition at line 273 of file Scope.h.

ScopeValue<RunState> scope::parameters::Scope::run_state

current RunState

Definition at line 276 of file Scope.h.

ScopeValue<DaqMode> scope::parameters::Scope::requested_mode

requested acquisition mode (see DaqModeHelper)

Definition at line 279 of file Scope.h.


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