MagAO-X application to control the C-RED 2 camera. More...
#include <cred2Ctrl.hpp>


Public Types | |
| typedef XWC_DEFAULT_VERBOSITY | verboseT |
| typedef logger::logManager< MagAOXApp< _useINDI >, logFileRaw< verboseT > > | logManagerT |
| The log manager type. | |
| enum | fgFlip |
| typedef int32_t | cbIndexT |
| typedef XWC_DEFAULT_VERBOSITY | verboseT |
| typedef logger::logManager< cred2Ctrl, logFileRaw< verboseT > > | logManagerT |
| The log manager type. | |
Public Member Functions | |
| cred2Ctrl () | |
| Default c'tor. | |
| ~cred2Ctrl () noexcept | |
| D'tor, declared and defined for noexcept. | |
| virtual void | setupConfig () |
| Setup the configuration system. | |
| virtual void | loadConfig () |
| Load the configuration system results. | |
| int | loadConfigImpl (mx::app::appConfigurator &config) |
| Implementation of loadConfig logic with standard helper-macro error handling. | |
| virtual int | appStartup () |
| Startup function. | |
| virtual int | appLogic () |
| Main FSM logic. | |
| virtual int | onPowerOff () |
| Actions required when the camera power turns off. | |
| virtual int | whilePowerOff () |
| Actions required while the camera remains powered off. | |
| virtual int | appShutdown () |
| Shutdown function. | |
| int | getTemps () |
| Query and update the camera temperature channels. | |
| int | getFPS () |
| Query and update the current camera frame rate. | |
| int | updateFPSLimits () |
| Query and update the current camera FPS limits. | |
| int | getFanSpeed () |
| Query and update the current fan-control state. | |
| int | getAnalogGain () |
| Query and update the current analog-gain state. | |
| int | getLEDState () |
| Query and update the current LED state. | |
| int | syncROIFromCamera () |
| Query the camera for its current ROI and synchronize local state. | |
| virtual void | setDefaults (int argc, char **argv) |
| Set the paths for config files. | |
| virtual void | setupBasicConfig () |
| The basic MagAO-X configuration setup method. Should not normally be overridden. | |
| virtual void | loadBasicConfig () |
| The basic MagAO-X configuration processing method. Should not normally be overridden. | |
| virtual void | checkConfig () |
| Check for unused and unrecognized config options and settings. | |
| virtual int | execute () |
| The execute method implementing the standard main loop. Should not normally be overridden. | |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| int | pdvSerialWriteRead (std::string &response, const std::string &command, bool logErrors=true) |
| Send a serial command over cameralink and retrieve the response. | |
| int | pdvConfig (std::string &cfgname) |
| Configure the EDT framegrabber. | |
| void | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| void | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| int | pdvStartAcquisition () |
| int | pdvAcquire (timespec &currImageTimestamp) |
| int | pdvReconfig () |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| int | configCircBuffs () |
| int | telem (const typename telT::messageT &msg) |
| Make a telemetry recording. | |
| int | setupConfig (appConfigurator &config) |
| Setup an application configurator for the device section. | |
| int | loadConfig (appConfigurator &config) |
| Load the device section from an application configurator. | |
| int | checkRecordTimes (const telT &tel, telTs... tels) |
| Check the time of the last record for each telemetry type and make an entry if needed. | |
| int | checkRecordTimes (timespec &ts, const telT &tel, telTs... tels) |
| Worker function to actually perform the record time checking logic. | |
| int | checkRecordTimes (timespec &ts) |
| Empty function called at the end of the template list. | |
stdCamera Interface | |
| int | powerOnDefaults () |
| Set defaults for a power-on state. | |
| int | setTempControl () |
| Implement the C-RED 2 temperature-controller toggle semantics. | |
| int | setTempSetPt () |
| Send the current target detector temperature setpoint to the camera. | |
| int | setFPS () |
| Send the requested frame rate to the camera. | |
| int | setFanSpeed () |
| Send the requested fan-control mode to the camera. | |
| int | setAnalogGain () |
| Send the requested analog-gain mode to the camera. | |
| int | setLED () |
| Send the requested LED state to the camera. | |
| int | setExpTime () |
Required by stdCamera, but unused for C-RED 2. | |
| int | checkNextROI () |
| Validate and normalize the requested ROI. | |
| int | setNextROI () |
| Request that the next valid ROI be applied through reconfiguration. | |
Framegrabber Interface | |
| int | writeConfig () |
| Write the temporary EDT configuration file for the pending ROI. | |
| int | configureAcquisition () |
| Configure camera-side ROI settings before acquisition starts. | |
| float | fps () |
| Return the currently measured frame rate. | |
| int | startAcquisition () |
| Start frame acquisition on the EDT board. | |
| int | acquireAndCheckValid () |
| Wait for and validate the next acquired image. | |
| int | loadImageIntoStream (void *dest) |
| Copy the current EDT image into the output stream. | |
| int | reconfig () |
| Reconfigure the EDT board for the pending ROI. | |
Telemeter Interface | |
| int | checkRecordTimes () |
| Check the telemetry record timers. | |
| int | recordTelem (const cred2_temps *) |
| Record the detailed C-RED 2 temperature telemetry. | |
| int | recordTelem (const telem_stdcam *) |
| Record standard camera telemetry. | |
| int | recordTelem (const telem_fgtimings *) |
| Record framegrabber timing telemetry. | |
| int | recordTemps (bool force=false) |
| Record the detailed C-RED 2 temperature telemetry when values change. | |
Threads | |
| template<class thisPtr , class Function > | |
| int | threadStart (std::thread &thrd, bool &thrdInit, pid_t &tpid, pcf::IndiProperty &thProp, int thrdPrio, const std::string &cpuset, const std::string &thrdName, thisPtr *thrdThis, Function &&thrdStart) |
| Start a thread, using this class's privileges to set priority, etc. | |
Member Accessors | |
| std::string | basePath () |
| Get the. | |
| std::string | configName () |
| Get the config name. | |
| std::string | configDir () |
| Get the config directory. | |
| std::string | configBase () |
| Get the config base file. | |
| std::string | calibDir () |
| Get the calibration directory. | |
| std::string | sysPath () |
| Get the system path. | |
| std::string | secretsPath () |
| Get the secrets path. | |
| std::string | cpusetPath () |
| Get the cpuset path. | |
| unsigned long | loopPause () |
| Get the loop pause time. | |
| int | shutdown () |
| Get the value of the shutdown flag. | |
| std::string | driverInName () |
| Get the INDI input FIFO file name. | |
| std::string | driverOutName () |
| Get the INDI output FIFO file name. | |
| std::string | driverCtrlName () |
| Get the INDI control FIFO file name. | |
Focus Control | |
| bool | checkFocusSwitchState () |
| Evaluate the configured focus-state switch helper as an in-focus boolean. | |
| int | sendGotoFocusCommand () |
| Format and send the configured goto-focus switch command. | |
Telemeter Interface | |
| int | recordCamera (bool force=false) |
INDI | |
| int | updateINDI () |
| The static callback function to be registered for the channel properties. | |
Telemeter Interface | |
| int | recordFGTimings (bool force=false) |
Public Attributes | |
| unsigned | m_readTimeout {1000} |
| The read timeout [msec]. | |
| unsigned | m_writeTimeout {1000} |
| The write timeout [msec]. | |
| logManagerT | m_tel |
| double | m_maxInterval |
| The maximum interval, in seconds, between telemetry records. Default is 10.0 seconds. | |
Static Public Attributes | |
app::dev Configurations | |
| static constexpr bool | c_stdCamera_tempControl = true |
| Expose temperature setpoint control. | |
| static constexpr bool | c_stdCamera_temp = true |
| Expose detector temperature status. | |
| static constexpr bool | c_stdCamera_readoutSpeed = false |
| Do not expose readout-speed controls. | |
| static constexpr bool | c_stdCamera_vShiftSpeed = false |
| Do not expose vertical-shift controls. | |
| static constexpr bool | c_stdCamera_emGain = false |
| Do not expose EM-gain controls. | |
| static constexpr bool | c_stdCamera_exptimeCtrl = false |
| Do not expose exposure-time controls. | |
| static constexpr bool | c_stdCamera_fpsCtrl = true |
| Expose FPS controls. | |
| static constexpr bool | c_stdCamera_fps = true |
| Expose FPS status. | |
| static constexpr bool | c_stdCamera_fanSpeed = true |
| Expose fan-speed controls. | |
| static constexpr bool | c_stdCamera_analogGain = true |
| Expose discrete analog-gain controls. | |
| static constexpr bool | c_stdCamera_led = true |
| Expose status LED controls. | |
| static constexpr bool | c_stdCamera_synchro = false |
| Do not expose synchro controls in the first pass. | |
| static constexpr bool | c_stdCamera_usesModes = false |
| Use one synthetic runtime mode rather than INDI modes. | |
| static constexpr bool | c_stdCamera_usesROI = true |
| Expose ROI controls. | |
| static constexpr bool | c_stdCamera_cropMode = false |
| Do not expose crop-mode controls separately. | |
| static constexpr bool | c_stdCamera_hasShutter = false |
| Do not expose shutter controls. | |
| static constexpr bool | c_stdCamera_usesStateString = false |
| Do not expose a dark-management state string. | |
| static constexpr bool | c_edtCamera_relativeConfigPath = false |
| Use an absolute temporary EDT config path. | |
| static constexpr bool | c_frameGrabber_flippable = true |
| Expose image flip controls through the framegrabber. | |
Protected Member Functions | |
| int | setSerialBaud () |
| Apply and verify the configured Camera Link serial baud rate. | |
| int | sendCommand (std::string &response, const std::string &command, bool logFailure=true) |
| Send a command over Camera Link serial and clean the response. | |
| int | issueCommand (const std::string &command, bool allowNoResponse=false) |
| Send a command that should return a success acknowledgement. | |
| int | createReadoutSpeed (const mx::meta::trueFalseT< true > &t) |
| int | createReadoutSpeed (const mx::meta::trueFalseT< false > &f) |
| int | createVShiftSpeed (const mx::meta::trueFalseT< true > &t) |
| int | createVShiftSpeed (const mx::meta::trueFalseT< false > &f) |
| int | createFanSpeed (const mx::meta::trueFalseT< true > &t) |
| int | createFanSpeed (const mx::meta::trueFalseT< false > &f) |
| void | updateFocusStateProperty () |
| Refresh the published focus.state property from the current helper or derived focus implementation. | |
| void * | loadImageIntoStreamCopy (void *dest, void *src, size_t width, size_t height, size_t szof) |
| int | openShmim () |
Protected Attributes | |
| std::string | m_basePath |
| The base path of the MagAO-X system. | |
| std::string | m_configName |
| The name of the configuration file (minus .conf). | |
| std::string | m_configDir |
| The path to configuration files for MagAOX. | |
| std::string | m_configBase |
| The name of a base config class for this app (minus .conf). | |
| std::string | m_calibDir |
| The path to calibration files for MagAOX. | |
| std::string | m_sysPath |
| The path to the system directory, for PID file, etc. | |
| std::string | m_secretsPath |
| Path to the secrets directory, where passwords, etc, are stored. | |
| std::string | m_cpusetPath { MAGAOX_cpusetPath } |
| Path to the cpusets mount. | |
| unsigned long | m_loopPause { MAGAOX_default_loopPause } |
| int | m_shutdown { 0 } |
| Flag to signal it's time to shutdown. When not 0, the main loop exits. | |
| PdvDev * | m_pdv |
| The EDT PDV device handle. | |
| u_char * | m_image_p |
| The image data grabbed. | |
| int | m_raw_height |
| The height of the frame, according to the framegrabber. | |
| int | m_raw_width |
| The width of the frame, according to the framegrabber. | |
| int | m_raw_depth |
| The bit-depth of the frame, according to the framegrabber. | |
| std::string | m_cameraType |
| The camera type according to the framegrabber. | |
| uint32_t | m_width |
| The width of the image, once deinterlaced etc. | |
| uint32_t | m_height |
| The height of the image, once deinterlaced etc. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| int | m_xbinning |
| The x-binning according to the framegrabber. | |
| int | m_ybinning |
| The y-binning according to the framegrabber. | |
| timespec | m_currImageTimestamp |
| The timestamp of the current image. | |
| bool | m_reconfig |
| Flag to set if a camera reconfiguration requires a framegrabber reset. | |
| IMAGE * | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| bool | m_ownShmim |
| Flag controlling if the shmim is owned. If true it will be destroyed as needed. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| float | m_cbFPS |
| The FPS used to configure the circular buffers. | |
| mx::sigproc::circularBufferIndex< timespec, cbIndexT > | m_atimes |
| mx::sigproc::circularBufferIndex< timespec, cbIndexT > | m_wtimes |
| std::vector< double > | m_atimesD |
| std::vector< double > | m_wtimesD |
| std::vector< double > | m_watimesD |
| timespec | m_dummy_ts |
| uint64_t | m_dummy_cnt |
| char | m_dummy_c |
| double | m_mna |
| double | m_vara |
| double | m_mina |
| double | m_maxa |
| double | m_mnw |
| double | m_varw |
| double | m_minw |
| double | m_maxw |
| double | m_mnwa |
| double | m_varwa |
Configurable Parameters - Data | |
| std::string | m_configFile |
| Absolute path to the temporary EDT configuration file. | |
| int | m_serialBaud { 115200 } |
| Camera Link serial baud rate used for C-RED 2 CLI access. | |
C-RED 2 State - Data | |
| cred2Temps | m_temps |
| Cached camera temperature values used for INDI and telemetry updates. | |
| bool | m_cameraCropEnabled { false } |
| Tracks whether this controller has enabled camera-side cropping. | |
| int | m_roiSettleCounter { 0 } |
| Number of main-loop cycles to skip serial status polling after ROI changes. | |
| std::recursive_mutex | m_cameraMutex |
| Protects serial command traffic and EDT reconfiguration. | |
INDI - Data | |
| pcf::IndiProperty | m_indiP_temps |
| Property reporting the detailed C-RED 2 temperature channels. | |
| pcf::IndiProperty | m_indiP_fpsLimits |
| Property reporting the current C-RED 2 minimum and maximum FPS. | |
Configurable Parameters | |
| cameraConfigMap | m_cameraModes |
| Map holding the possible camera mode configurations. | |
| std::string | m_startupMode |
| The camera mode to load during first init after a power-on. | |
| float | m_startupTemp |
| The temperature to set after a power-on. Set to <= -999 to not use [default]. | |
| std::string | m_defaultReadoutSpeed |
| The default readout speed of the camera. | |
| std::string | m_defaultVShiftSpeed |
| The default readout speed of the camera. | |
| bool | m_fanSpeedControlEnabled |
| Whether or not fan-speed control is published through INDI. | |
| std::string | m_defaultFanSpeed |
| The default fan speed to apply after power on. | |
| bool | m_defaultLEDState |
| The default LED state to apply after power on. | |
Temperature Control Interface | |
| float | m_minTemp |
| float | m_maxTemp |
| float | m_stepTemp |
| float | m_ccdTemp |
| The current temperature, in C. | |
| float | m_ccdTempSetpt |
| The desired temperature, in C. | |
| bool | m_tempControlStatus |
| Whether or not temperature control is active. | |
| bool | m_tempControlStatusSet |
| Desired state of temperature control. | |
| bool | m_tempControlOnTarget |
| Whether or not the temperature control system is on its target temperature. | |
| std::string | m_tempControlStatusStr |
| Camera specific description of temperature control status. | |
| pcf::IndiProperty | m_indiP_temp |
| pcf::IndiProperty | m_indiP_tempcont |
| pcf::IndiProperty | m_indiP_tempstat |
Readout Control | |
| std::vector< std::string > | m_readoutSpeedNames |
| std::vector< std::string > | m_readoutSpeedNameLabels |
| std::string | m_readoutSpeedName |
| The current readout speed name. | |
| std::string | m_readoutSpeedNameSet |
| The user requested readout speed name, to be set by derived() | |
| std::vector< std::string > | m_vShiftSpeedNames |
| std::vector< std::string > | m_vShiftSpeedNameLabels |
| std::string | m_vShiftSpeedName |
| The current vshift speed name. | |
| std::string | m_vShiftSpeedNameSet |
| The user requested vshift speed name, to be set by derived() | |
| float | m_adcSpeed |
| float | m_vshiftSpeed |
| float | m_emGain |
| The camera's current EM gain (if available). | |
| float | m_emGainSet |
| The camera's EM gain, as set by the user. | |
| float | m_maxEMGain |
| The configurable maximum EM gain. To be enforced in derivedT. | |
| pcf::IndiProperty | m_indiP_readoutSpeed |
| pcf::IndiProperty | m_indiP_vShiftSpeed |
| pcf::IndiProperty | m_indiP_emGain |
Exposure Control | |
| float | m_minExpTime |
| The minimum exposure time, used for INDI attributes. | |
| float | m_maxExpTime |
| The maximum exposure time, used for INDI attributes. | |
| float | m_stepExpTime |
| The maximum exposure time stepsize, used for INDI attributes. | |
| float | m_expTime |
| The current exposure time, in seconds. | |
| float | m_expTimeSet |
| The exposure time, in seconds, as set by user. | |
| float | m_minFPS |
| The minimum FPS, used for INDI attributes. | |
| float | m_maxFPS |
| The maximum FPS, used for INDI attributes. | |
| float | m_stepFPS |
| The FPS step size, used for INDI attributes. | |
| float | m_fps |
| The current FPS. | |
| float | m_fpsSet |
| The commanded fps, as set by user. | |
| pcf::IndiProperty | m_indiP_exptime |
| pcf::IndiProperty | m_indiP_fps |
Fan Control | |
| std::vector< std::string > | m_fanSpeedNames |
| Valid fan-control option names for the INDI selection switch. | |
| std::vector< std::string > | m_fanSpeedNameLabels |
| Optional GUI labels for the fan-control options. | |
| std::string | m_fanSpeedName |
| Current fan-control option name. | |
| std::string | m_fanSpeedNameSet |
| Requested fan-control option name. | |
| bool | m_fanSpeedValid |
| True once the current fan-control state is known. | |
| pcf::IndiProperty | m_indiP_fanSpeed |
| Property used to select the fan-speed mode. | |
Analog Gain | |
| std::vector< std::string > | m_analogGainNames |
| Valid analog-gain option names for the INDI selection switch. | |
| std::vector< std::string > | m_analogGainNameLabels |
| Optional GUI labels for the analog-gain options. | |
| std::string | m_analogGainName |
| Current analog-gain option name. | |
| std::string | m_analogGainNameSet |
| Requested analog-gain option name. | |
| bool | m_analogGainValid |
| True once the current analog-gain state is known. | |
| pcf::IndiProperty | m_indiP_analogGain |
| Property used to select the analog-gain mode. | |
LED Control | |
| bool | m_ledState |
| Current status LED state. | |
| bool | m_ledStateSet |
| Requested status LED state. | |
| bool | m_ledStateValid |
| True once the current LED state is known. | |
| pcf::IndiProperty | m_indiP_led |
| Property used to control the status LED state. | |
External Synchronization | |
| bool | m_synchroSet |
| Target status of m_synchro. | |
| bool | m_synchro |
| Status of synchronization, true is on, false is off. | |
| pcf::IndiProperty | m_indiP_synchro |
Modes | |
| std::string | m_modeName |
| The current mode name. | |
| std::string | m_nextMode |
| The mode to be set by the next reconfiguration. | |
| pcf::IndiProperty | m_indiP_mode |
| Property used to report the current mode. | |
| pcf::IndiProperty | m_indiP_reconfig |
| Request switch which forces the framegrabber to go through the reconfigure process. | |
ROIs | |
ROI controls are exposed if derivedT::c_stdCamera_usesROI==true | |
| roi | m_currentROI |
| roi | m_nextROI |
| roi | m_lastROI |
| float | m_minROIx |
| float | m_maxROIx |
| float | m_stepROIx |
| float | m_minROIy |
| float | m_maxROIy |
| float | m_stepROIy |
| int | m_minROIWidth |
| int | m_maxROIWidth |
| int | m_stepROIWidth |
| int | m_minROIHeight |
| int | m_maxROIHeight |
| int | m_stepROIHeight |
| int | m_minROIBinning_x |
| int | m_maxROIBinning_x |
| int | m_stepROIBinning_x |
| int | m_minROIBinning_y |
| int | m_maxROIBinning_y |
| int | m_stepROIBinning_y |
| float | m_default_x |
| Power-on ROI center x coordinate. | |
| float | m_default_y |
| Power-on ROI center y coordinate. | |
| int | m_default_w |
| Power-on ROI width. | |
| int | m_default_h |
| Power-on ROI height. | |
| int | m_default_bin_x |
| Power-on ROI x binning. | |
| int | m_default_bin_y |
| Power-on ROI y binning. | |
| float | m_full_x |
| The full ROI center x coordinate. | |
| float | m_full_y |
| The full ROI center y coordinate. | |
| int | m_full_w |
| The full ROI width. | |
| int | m_full_h |
| The full ROI height. | |
| int | m_full_bin_x |
| The x-binning in the full ROI. | |
| int | m_full_bin_y |
| The y-binning in the full ROI. | |
| float | m_full_currbin_x |
| The current-binning full ROI center x coordinate. | |
| float | m_full_currbin_y |
| The current-binning full ROI center y coordinate. | |
| int | m_full_currbin_w |
| The current-binning full ROI width. | |
| int | m_full_currbin_h |
| The current-binning full ROI height. | |
| pcf::IndiProperty | m_indiP_roi_x |
| Property used to set the ROI x center coordinate. | |
| pcf::IndiProperty | m_indiP_roi_y |
| Property used to set the ROI x center coordinate. | |
| pcf::IndiProperty | m_indiP_roi_w |
| Property used to set the ROI width. | |
| pcf::IndiProperty | m_indiP_roi_h |
| Property used to set the ROI height. | |
| pcf::IndiProperty | m_indiP_roi_bin_x |
| Property used to set the ROI x binning. | |
| pcf::IndiProperty | m_indiP_roi_bin_y |
| Property used to set the ROI y binning. | |
| pcf::IndiProperty | m_indiP_fullROI |
| Property used to preset the full ROI dimensions. | |
| pcf::IndiProperty | m_indiP_roi_check |
| Property used to trigger checking the target ROI. | |
| pcf::IndiProperty | m_indiP_roi_set |
| Property used to trigger setting the ROI. | |
| pcf::IndiProperty | m_indiP_roi_full |
| Property used to trigger setting the full ROI. | |
| pcf::IndiProperty | m_indiP_roi_fullbin |
| Property used to trigger setting the full in current binning ROI. | |
| pcf::IndiProperty | m_indiP_roi_loadlast |
| Property used to trigger loading the last ROI as the target. | |
| pcf::IndiProperty | m_indiP_roi_last |
| Property used to trigger setting the last ROI. | |
| pcf::IndiProperty | m_indiP_roi_default |
| Property used to trigger setting the default and startup ROI. | |
Crop Mode | |
Crop mode controls are exposed if derivedT::c_stdCamera_cropMode==true | |
| bool | m_cropMode |
| Status of crop mode ROIs, if enabled for this camera. | |
| bool | m_cropModeSet |
| Desired status of crop mode ROIs, if enabled for this camera. | |
| pcf::IndiProperty | m_indiP_cropMode |
| Property used to toggle crop mode on and off. | |
Shutter Control | |
Shutter controls are exposed if derivedT::c_stdCamera_hasShutter == true. | |
| std::string | m_shutterStatus |
| int | m_shutterState |
| pcf::IndiProperty | m_indiP_shutterStatus |
| State of the shutter. 0 = shut, 1 = open, -1 = unknown. | |
| pcf::IndiProperty | m_indiP_shutter |
| Property used to control the shutter, a switch. | |
Focus Control - Data | |
Focus controls are exposed if the derived camera supports focus and m_hasFocus is true. | |
| bool | m_hasFocus |
| Runtime flag enabling focus-state reporting and goto-focus control publication. | |
| bool | m_focusStateHelperConfigured |
| True when stdCamera should evaluate focus state from an external switch property. | |
| std::string | m_focusStateSource |
INDI key (device.property) of the switch property used by checkFocusSwitchState. | |
| std::string | m_focusStateElement |
| bool | m_focusStateOnMeansInFocus |
| int | m_focusStateSourceIndex |
Index of m_focusStateSource within m_indiP_focusMonitoredProperties, or -1 when unused. | |
| bool | m_focusGotoHelperConfigured |
| True when stdCamera should derive goto-focus commands from external switch properties. | |
| std::vector< std::string > | m_focusGotoSourceProperties |
| std::vector< int > | m_focusGotoSourceIndices |
| Indices of m_focusGotoSourceProperties within m_indiP_focusMonitoredProperties. | |
| std::string | m_focusGotoFormat |
Literal {} placeholder format used to build the goto-focus preset name. | |
| std::string | m_focusGotoTargetProperty |
INDI key (device.property) of the switch property commanded by gotoFocus(). | |
| std::string | m_focusGotoTargetDevice |
| Device portion parsed from m_focusGotoTargetProperty. | |
| std::string | m_focusGotoTargetName |
| Property-name portion parsed from m_focusGotoTargetProperty. | |
| std::vector< std::string > | m_focusMonitoredPropertyKeys |
| Unique INDI keys monitored for the focus-state and goto-focus helpers. | |
| std::vector< pcf::IndiProperty > | m_indiP_focusMonitoredProperties |
| Cached external switch properties monitored for the focus helpers. | |
| pcf::IndiProperty | m_indiP_focus |
| Read-only switch property reporting whether the current state is in focus. | |
| pcf::IndiProperty | m_indiP_gotoFocus |
| Request switch property used to command the current focus target. | |
State String | |
The State string is exposed if derivedT::c_stdCamera_usesStateString is true. | |
| pcf::IndiProperty | m_indiP_stateString |
Configurable Parameters | |
| int | m_unit |
| EDT PDV board unit number. | |
| int | m_channel |
| EDT PDV board channel number. | |
| int | m_numBuffs |
| EDT PDV DMA buffer size, indicating number of images. | |
Configurable Parameters | |
| std::string | m_shmimName |
| int | m_fgThreadPrio |
| Priority of the framegrabber thread, should normally be > 00. | |
| std::string | m_fgCpuset |
| The cpuset to assign the framegrabber thread to. Not used if empty, the default. | |
| uint32_t | m_circBuffLength |
| Length of the circular buffer, in frames. | |
| cbIndexT | m_latencyCircBuffMaxLength |
| Maximum length of the latency measurement circular buffers. | |
| float | m_latencyCircBuffMaxTime |
| Maximum time of the latency meaurement circular buffers. | |
| int | m_defaultFlip |
Static Protected Attributes | |
| static constexpr bool | c_hasFanSpeed |
| True when the derived camera exposes fan-speed control. | |
| static constexpr bool | c_hasLED |
| True when the derived camera exposes LED control. | |
| static constexpr bool | c_hasAnalogGain |
| True when the derived camera exposes analog-gain control. | |
| static constexpr bool | c_hasFocus |
Private Types | |
| typedef MagAOXApp | MagAOXAppT |
| typedef dev::stdCamera< cred2Ctrl > | stdCameraT |
| typedef dev::frameGrabber< cred2Ctrl > | frameGrabberT |
| typedef dev::telemeter< cred2Ctrl > | telemeterT |
Private Member Functions | |
| int | clearFSMAlert () |
| Clear the FSM alert state. | |
| cred2Ctrl & | derived () |
Static Private Member Functions | |
| static auto | postPublishHook (hookT &hookOwner, IMAGE *imageStream, int callPriorityTag) -> decltype(hookOwner.frameGrabberPostPublish(imageStream)) |
| Call an optional derived-class hook after the main stream publication completes. | |
| static int | postPublishHook (cred2Ctrl &hookOwner, IMAGE *imageStream, long callPriorityTag) |
| Return success when the derived class does not expose a post-publication hook. | |
Friends | |
| class | dev::stdCamera< cred2Ctrl > |
| class | dev::edtCamera< cred2Ctrl > |
| class | dev::frameGrabber< cred2Ctrl > |
| class | dev::telemeter< cred2Ctrl > |
Logging | |
| static logManagerT | m_log |
| void | logMessage (bufferPtrT &b) |
| Handle a log message from the logging system. | |
| template<typename logT , int retval = 0> | |
| static int | log (const typename logT::messageT &msg, logPrioT level=logPrio::LOG_DEFAULT) |
| Make a log entry. | |
| template<typename logT , int retval = 0> | |
| static int | log (logPrioT level=logPrio::LOG_DEFAULT) |
| Make a log entry. | |
| static void | configLog (const std::string &name, const int &code, const std::string &value, const std::string &source) |
| Callback for config system logging. | |
PID Locking | |
Each MagAOXApp has a PID lock file in the system directory. The app will not startup if it detects that the PID is already locked, preventing duplicates. This is based on the configured name, not the invoked name (argv[0]). | |
| std::string | pidFileName |
| The name of the PID file. | |
| pid_t | m_pid { 0 } |
| This process's PID. | |
| int | lockPID () |
| int | unlockPID () |
| Remove the PID file. | |
INDI Interface | |
For reference: "Get" and "New" refer to properties we own. "Set" refers to properties owned by others. So we respond to GetProperties by listing our own properties, and NewProperty is a request to change a property we own. Whereas SetProperty is a notification that someone else has changed a property. | |
| std::unordered_map< std::string, indiCallBack > | m_indiNewCallBacks |
| Map to hold the NewProperty indiCallBacks for this App, with fast lookup by property name. | |
| std::unordered_map< std::string, indiCallBack > | m_indiSetCallBacks |
| Map to hold the SetProperty indiCallBacks for this App, with fast lookup by property name. | |
| bool | m_allDefsReceived { false } |
| Flag indicating that all registered Set properties have been updated since last Get. | |
| std::string | m_driverInName |
| Full path name of the INDI driver input FIFO. | |
| std::string | m_driverOutName |
| Full path name of the INDI driver output FIFO. | |
| std::string | m_driverCtrlName |
| Full path name of the INDI driver control FIFO. | |
| pcf::IndiProperty | m_indiP_state |
| indi Property to report the application state. | |
| pcf::IndiProperty | m_indiP_clearFSMAlert |
| indi Property to clear an FSM alert. | |
| int | createStandardIndiText (pcf::IndiProperty &prop, const std::string &propName, const std::string &label="", const std::string &group="") |
| Create a standard R/W INDI Text property with target and current elements. | |
| int | createROIndiText (pcf::IndiProperty &prop, const std::string &propName, const std::string &elName, const std::string &propLabel="", const std::string &propGroup="", const std::string &elLabel="") |
| Create a standard ReadOnly INDI Text property, with at least one element. | |
| template<typename T > | |
| int | createStandardIndiNumber (pcf::IndiProperty &prop, const std::string &name, const T &min, const T &max, const T &step, const std::string &format, const std::string &label="", const std::string &group="") |
| Create a standard R/W INDI Number property with target and current elements. | |
| int | createROIndiNumber (pcf::IndiProperty &prop, const std::string &propName, const std::string &propLabel="", const std::string &propGroup="") |
| Create a ReadOnly INDI Number property. | |
| int | createStandardIndiToggleSw (pcf::IndiProperty &prop, const std::string &name, const std::string &label="", const std::string &group="") |
| Create a standard R/W INDI switch with a single toggle element. | |
| int | createStandardIndiRequestSw (pcf::IndiProperty &prop, const std::string &name, const std::string &label="", const std::string &group="") |
| Create a standard R/W INDI switch with a single request element. | |
| int | createStandardIndiSelectionSw (pcf::IndiProperty &prop, const std::string &name, const std::vector< std::string > &elements, const std::vector< std::string > &elementLabels, const std::string &label="", const std::string &group="") |
| Create a standard R/W INDI selection (one of many) switch with vector of elements and element labels. | |
| int | createStandardIndiSelectionSw (pcf::IndiProperty &prop, const std::string &name, const std::vector< std::string > &elements, const std::string &label="", const std::string &group="") |
| int | registerIndiPropertyReadOnly (pcf::IndiProperty &prop) |
| Register an INDI property which is read only. | |
| int | registerIndiPropertyReadOnly (pcf::IndiProperty &prop, const std::string &propName, const pcf::IndiProperty::Type &propType, const pcf::IndiProperty::PropertyPermType &propPerm, const pcf::IndiProperty::PropertyStateType &propState) |
| Register an INDI property which is read only. | |
| int | registerIndiPropertyNew (pcf::IndiProperty &prop, int(*)(void *, const pcf::IndiProperty &)) |
| Register an INDI property which is exposed for others to request a New Property for. | |
| int | registerIndiPropertyNew (pcf::IndiProperty &prop, const std::string &propName, const pcf::IndiProperty::Type &propType, const pcf::IndiProperty::PropertyPermType &propPerm, const pcf::IndiProperty::PropertyStateType &propState, int(*)(void *, const pcf::IndiProperty &)) |
| Register an INDI property which is exposed for others to request a New Property for. | |
| int | registerIndiPropertyNew (pcf::IndiProperty &prop, const std::string &propName, const pcf::IndiProperty::Type &propType, const pcf::IndiProperty::PropertyPermType &propPerm, const pcf::IndiProperty::PropertyStateType &propState, const pcf::IndiProperty::SwitchRuleType &propRule, int(*)(void *, const pcf::IndiProperty &)) |
| Register an INDI property which is exposed for others to request a New Property for, with a switch rule. | |
| int | registerIndiPropertySet (pcf::IndiProperty &prop, const std::string &devName, const std::string &propName, int(*)(void *, const pcf::IndiProperty &)) |
| Register an INDI property which is monitored for updates from others. | |
| void | resetIndiSetPropertyRetry (indiCallBack &callBack) |
| Reset retry tracking for a monitored INDI Set-property subscription. | |
| bool | indiSetPropertyShouldRequest (const indiCallBack &callBack, bool all, const std::chrono::steady_clock::time_point &now) const |
| Determine whether an unresolved Set-property subscription should be requested now. | |
| void | noteIndiSetPropertyRequested (indiCallBack &callBack, const std::chrono::steady_clock::time_point &now) |
| Update retry tracking after sending a GetProperties request for a monitored Set-property. | |
| void | sendGetPropertySetList (bool all=false) |
| void | handleDefProperty (const pcf::IndiProperty &ipRecv) |
| Handler for the DEF INDI properties notification. | |
| void | handleGetProperties (const pcf::IndiProperty &ipRecv) |
| Handler for the get INDI properties request. | |
| void | handleNewProperty (const pcf::IndiProperty &ipRecv) |
| Handler for the new INDI property request. | |
| void | handleSetProperty (const pcf::IndiProperty &ipRecv) |
| Handler for the set INDI property request. | |
| int | createINDIFIFOS () |
| Create the INDI FIFOs. | |
| int | startINDI () |
| Start INDI Communications. | |
| template<typename T > | |
| void | updateIfChanged (pcf::IndiProperty &p, const std::string &el, const T &newVal, pcf::IndiProperty::PropertyStateType ipState=pcf::IndiProperty::Ok) |
| Update an INDI property element value if it has changed. | |
| void | updateIfChanged (pcf::IndiProperty &p, const std::string &el, const char *newVal, pcf::IndiProperty::PropertyStateType ipState=pcf::IndiProperty::Ok) |
| Update an INDI property element value if it has changed. | |
| template<typename T > | |
| void | updateIfChanged (pcf::IndiProperty &p, const std::string &el, const std::vector< T > &newVals, pcf::IndiProperty::PropertyStateType ipState=pcf::IndiProperty::Ok) |
| Update an INDI property if values have changed. | |
| template<typename T > | |
| void | updateIfChanged (pcf::IndiProperty &p, const std::vector< std::string > &els, const std::vector< T > &newVals, pcf::IndiProperty::PropertyStateType newState=pcf::IndiProperty::Ok) |
| Update an INDI property if values have changed. | |
| void | updateSwitchIfChanged (pcf::IndiProperty &p, const std::string &el, const pcf::IndiElement::SwitchStateType &newVal, pcf::IndiProperty::PropertyStateType ipState=pcf::IndiProperty::Ok) |
| Update an INDI switch element value if it has changed. | |
| template<typename T > | |
| void | updatesIfChanged (pcf::IndiProperty &p, const std::vector< const char * > &els, const std::vector< T > &newVals, pcf::IndiProperty::PropertyStateType newState=pcf::IndiProperty::Ok) |
| template<typename T > | |
| int | indiTargetUpdate (pcf::IndiProperty &localProperty, T &localTarget, const pcf::IndiProperty &remoteProperty, bool setBusy=true) |
| Get the target element value from an new property. | |
| template<typename T > | |
| int | sendNewProperty (const pcf::IndiProperty &ipSend, const std::string &el, const T &newVal) |
| Send a newProperty command to another device (using the INDI Client interface) | |
| int | sendNewProperty (const pcf::IndiProperty &ipSend) |
| Send a newProperty command to another device (using the INDI Client interface) | |
| int | sendNewStandardIndiToggle (const std::string &device, const std::string &property, bool onoff) |
| Send a new property commmand for a standard toggle switch. | |
| int | newCallBack_clearFSMAlert (const pcf::IndiProperty &ipRecv) |
| The callback called by the static version, to actually process the FSM Alert Clear request. | |
| typedef std::pair< std::string, indiCallBack > | callBackValueType |
| Value type of the indiCallBack map. | |
| typedef std::unordered_map< std::string, indiCallBack >::iterator | callBackIterator |
| Iterator type of the indiCallBack map. | |
| typedef std::pair< callBackIterator, bool > | callBackInsertResult |
| Return type of insert on the indiCallBack map. | |
| static constexpr bool | m_useINDI = _useINDI |
| Flag controlling whether INDI is used. If false, then no INDI code executes. | |
| indiDriver< MagAOXApp > * | m_indiDriver { nullptr } |
| The INDI driver wrapper. Constructed and initialized by execute, which starts and stops communications. | |
| std::mutex | m_indiMutex |
| Mutex for locking INDI communications. | |
| std::mutex | m_indiCallBackMutex |
| Mutex for locking INDI callback maps and per-entry callback state. | |
| static int | st_newCallBack_clearFSMAlert (void *app, const pcf::IndiProperty &ipRecv) |
| The static callback function to be registered for requesting to clear the FSM alert. | |
Power Management | |
For devices which have remote power management (e.g. from one of the PDUs) we implement a standard power state monitoring and management component for the FSM. This needs to be enabled in the derived app constructor. To stay enabled, m_powerDevice and m_powerChannel must be not empty strings after the configuration. These could be set in the derived app defaults. If power management is enabled, then while power is off, appLogic will not be called. Instead a parrallel set of virtual functions is called, onPowerOff (to allow apps to perform cleanup) and whilePowerOff (to allow apps to keep variables updated, etc). Note that these could merely call appLogic if desired. | |
| bool | m_powerMgtEnabled { false } |
| std::string | m_powerDevice |
| The INDI device name of the power controller. | |
| std::string | m_powerChannel |
| The INDI property name of the channel controlling this device's power. | |
| std::string | m_powerElement { "state" } |
| The INDI element name to monitor for this device's power state. | |
| std::string | m_powerTargetElement { "target" } |
| The INDI element name to monitor for this device's power state. | |
| unsigned long | m_powerOnWait { 55 } |
| Default time in sec to wait for device to boot after power on. | |
| int | m_powerOnCounter { -1 } |
| int | m_powerState { -1 } |
| Current power state, 1=On, 0=Off, -1=Unk. | |
| int | m_powerTargetState { -1 } |
| Current target power state, 1=On, 0=Off, -1=Unk. | |
| pcf::IndiProperty | m_indiP_powerChannel |
| INDI property used to communicate power state. | |
| int | powerState () |
| Returns the current power state. | |
| int | powerStateTarget () |
| Returns the target power state. | |
| INDI_SETCALLBACK_DECL (MagAOXApp, m_indiP_powerChannel) | |
| bool | powerOnWaitElapsed () |
| This method tests whether the power on wait time has elapsed. | |
Framegrabber Thread | |
This thread actually manages the framegrabbing hardware | |
| bool | m_fgThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_fgThreadID |
| The ID of the framegrabber thread. | |
| pcf::IndiProperty | m_fgThreadProp |
| The property to hold the f.g. thread details. | |
| std::thread | m_fgThread |
| A separate thread for the actual framegrabbings. | |
| void | fgThreadExec () |
| Execute framegrabbing. | |
| static void | fgThreadStart (frameGrabber *o) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls fgThreadExec. | |
INDI | |
| pcf::IndiProperty | m_indiP_shmimName |
| Property used to report the shmim buffer name. | |
| pcf::IndiProperty | m_indiP_frameSize |
| Property used to report the current frame size. | |
| pcf::IndiProperty | m_indiP_timing |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
Application State | |
| stateCodes::stateCodeT | state () |
| Get the current state code. | |
| void | state (const stateCodes::stateCodeT &s, bool stateAlert=false) |
| Set the current state code. | |
| bool | stateAlert () |
| Get the value of the state alert flag. | |
| bool | gitAlert () |
| Get the value of the git alert flag. | |
| int | stateLogged () |
| Updates and returns the value of m_stateLogged. Will be 0 on first call after a state change, >0 afterwards. | |
| stateCodes::stateCodeT | m_state { stateCodes::UNINITIALIZED } |
| bool | m_stateAlert { false } |
| bool | m_gitAlert { false } |
| int | m_stateLogged { 0 } |
INDI | |
| int | newCallBack_stdCamera (const pcf::IndiProperty &ipRecv) |
| The callback function for stdCamera properties. | |
| int | setTempSetPt (const mx::meta::trueFalseT< true > &t) |
| Interface to setTempSetPt when the derivedT has temperature control. | |
| int | setTempSetPt (const mx::meta::trueFalseT< false > &f) |
| Interface to setTempSetPt when the derivedT does not have temperature control. | |
| int | newCallBack_temp (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW CCD temp request. | |
| int | setTempControl (const mx::meta::trueFalseT< true > &t) |
| Interface to setTempControl when the derivedT has temperature control. | |
| int | setTempControl (const mx::meta::trueFalseT< false > &f) |
| Interface to setTempControl when the derivedT does not have temperature control. | |
| int | newCallBack_temp_controller (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW CCD temp control request. | |
| int | setReadoutSpeed (const mx::meta::trueFalseT< true > &t) |
| Interface to setReadoutSpeed when the derivedT has readout speed control. | |
| int | setReadoutSpeed (const mx::meta::trueFalseT< false > &f) |
| Interface to setReadoutSpeed when the derivedT does not have readout speed control. | |
| int | newCallBack_readoutSpeed (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW readout speed request. | |
| int | setVShiftSpeed (const mx::meta::trueFalseT< true > &t) |
| Interface to setVShiftSpeed when the derivedT has vshift speed control. | |
| int | setVShiftSpeed (const mx::meta::trueFalseT< false > &f) |
| Interface to setVShiftSpeed when the derivedT does not have vshift speed control. | |
| int | newCallBack_vShiftSpeed (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW vshift speed request. | |
| int | setEMGain (const mx::meta::trueFalseT< true > &t) |
| Interface to setEMGain when the derivedT has EM Gain. | |
| int | setEMGain (const mx::meta::trueFalseT< false > &f) |
| Interface to setEMGain when the derivedT does not have EM Gain. | |
| int | newCallBack_emgain (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW EM gain request. | |
| int | setExpTime (const mx::meta::trueFalseT< true > &t) |
| Interface to setExpTime when the derivedT uses exposure time controls. | |
| int | setExpTime (const mx::meta::trueFalseT< false > &f) |
| Interface to setExptime when the derivedT does not use exposure time controls. | |
| int | newCallBack_exptime (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW exposure time request. | |
| int | setFPS (const mx::meta::trueFalseT< true > &t) |
| Interface to setFPS when the derivedT uses FPS controls. | |
| int | setFPS (const mx::meta::trueFalseT< false > &f) |
| Interface to setFPS when the derivedT does not use FPS controls. | |
| int | newCallBack_fps (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW fps request. | |
| int | setFanSpeed (const mx::meta::trueFalseT< true > &t) |
| Interface to setFanSpeed when the derivedT exposes fan controls. | |
| int | setFanSpeed (const mx::meta::trueFalseT< false > &f) |
| Interface to setFanSpeed when the derivedT does not expose fan controls. | |
| int | newCallBack_fanSpeed (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW fan speed request. | |
| int | setAnalogGain (const mx::meta::trueFalseT< true > &t) |
| Interface to setAnalogGain when the derivedT exposes analog-gain controls. | |
| int | setAnalogGain (const mx::meta::trueFalseT< false > &f) |
| Interface to setAnalogGain when the derivedT does not expose analog-gain controls. | |
| int | newCallBack_analogGain (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW analog-gain request. | |
| int | setLED (const mx::meta::trueFalseT< true > &t) |
| Interface to setLED when the derivedT exposes LED controls. | |
| int | setLED (const mx::meta::trueFalseT< false > &f) |
| Interface to setLED when the derivedT does not expose LED controls. | |
| int | newCallBack_led (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW LED request. | |
| int | setSynchro (const mx::meta::trueFalseT< true > &t) |
| Interface to setSynchro when the derivedT has synchronization. | |
| int | setSynchro (const mx::meta::trueFalseT< false > &f) |
| Interface to setSynchro when the derivedT does not have synchronization. | |
| int | newCallBack_synchro (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW synchro request. | |
| int | newCallBack_mode (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW mode request. | |
| int | newCallBack_reconfigure (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW reconfigure request. | |
| int | setCropMode (const mx::meta::trueFalseT< true > &t) |
| Interface to setCropMode when the derivedT has crop mode. | |
| int | setCropMode (const mx::meta::trueFalseT< false > &f) |
| Interface to setCropMode when the derivedT does not have crop mode. | |
| int | newCallBack_cropMode (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW cropMode request. | |
| int | newCallBack_roi_x (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW roi_x request. | |
| int | newCallBack_roi_y (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW roi_y request. | |
| int | newCallBack_roi_w (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW roi_w request. | |
| int | newCallBack_roi_h (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW roi_h request. | |
| int | newCallBack_roi_bin_x (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW bin_x request. | |
| int | newCallBack_roi_bin_y (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW bin_y request. | |
| int | checkNextROI (const mx::meta::trueFalseT< true > &t) |
| Interface to checkNextROI when the derivedT uses ROIs. | |
| int | checkNextROI (const mx::meta::trueFalseT< false > &f) |
| Interface to checkNextROI when the derivedT does not use ROIs. | |
| int | newCallBack_roi_check (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW roi_check request. | |
| int | setNextROI (const mx::meta::trueFalseT< true > &t) |
| Interface to setNextROI when the derivedT uses ROIs. | |
| int | setNextROI (const mx::meta::trueFalseT< false > &f) |
| Interface to setNextROI when the derivedT does not use ROIs. | |
| int | newCallBack_roi_set (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW roi_set request. | |
| int | newCallBack_roi_full (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW roi_full request. | |
| int | newCallBack_roi_fullbin (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW roi_fullbin request. | |
| int | newCallBack_roi_loadlast (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW roi_loadlast request. | |
| int | newCallBack_roi_last (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW roi_last request. | |
| int | newCallBack_roi_default (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW roi_default request. | |
| int | setShutter (int ss, const mx::meta::trueFalseT< true > &t) |
| Interface to setShutter when the derivedT has a shutter. | |
| int | setShutter (int ss, const mx::meta::trueFalseT< false > &f) |
| Interface to setShutter when the derivedT does not have a shutter. | |
| int | newCallBack_shutter (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW shutter request. | |
| bool | checkFocus (const mx::meta::trueFalseT< true > &t) |
| Interface to checkFocus when the derivedT exposes focus support. | |
| bool | checkFocus (const mx::meta::trueFalseT< false > &f) |
| Interface to checkFocus when the derivedT does not expose focus support. | |
| int | gotoFocus (const mx::meta::trueFalseT< true > &t) |
| Interface to gotoFocus when the derivedT exposes focus support. | |
| int | gotoFocus (const mx::meta::trueFalseT< false > &f) |
| Interface to gotoFocus when the derivedT does not expose focus support. | |
| int | newCallBack_gotoFocus (const pcf::IndiProperty &ipRecv) |
| Callback to process a NEW goto-focus request. | |
| int | setCallBack_focusMonitored (const pcf::IndiProperty &ipRecv) |
| The callback which caches external focus-helper switch-property updates. | |
| std::string | stateString (const mx::meta::trueFalseT< true > &t) |
| Interface to stateString when the derivedT provides it. | |
| std::string | stateString (const mx::meta::trueFalseT< false > &f) |
| Interface to stateString when the derivedT does not provide it. | |
| bool | stateStringValid (const mx::meta::trueFalseT< true > &t) |
| Interface to stateStringValid when the derivedT provides it. | |
| bool | stateStringValid (const mx::meta::trueFalseT< false > &f) |
| Interface to stateStringValid when the derivedT does not provide it. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| static int | st_newCallBack_stdCamera (void *app, const pcf::IndiProperty &ipRecv) |
| The static callback function to be registered for stdCamera properties. | |
| static int | st_setCallBack_focusMonitored (void *app, const pcf::IndiProperty &ipRecv) |
| The static callback function registered for external focus-helper switch properties. | |
Signal Handling | |
| static MagAOXApp * | m_self = nullptr |
| int | setSigTermHandler () |
| Sets the handler for SIGTERM, SIGQUIT, and SIGINT. | |
| void | handlerSigTerm (int signum, siginfo_t *siginf, void *ucont) |
| Handles SIGTERM, SIGQUIT, and SIGINT. Sets m_shutdown to 1 and logs the signal. | |
| static void | _handlerSigTerm (int signum, siginfo_t *siginf, void *ucont) |
| The handler called when SIGTERM, SIGQUIT, or SIGINT is received. Just a wrapper for handlerSigTerm. | |
Privilege Management | |
| uid_t | m_euidReal |
| The real user id of the proces (i.e. the lower privileged id of the user) | |
| uid_t | m_euidCalled |
| uid_t | m_suid |
| The save-set user id of the process. | |
| int | setEuidCalled () |
| Set the effective user ID to the called value, i.e. the highest possible. | |
| int | setEuidReal () |
| Set the effective user ID to the real value, i.e. the file owner. | |
MagAO-X application to control the C-RED 2 camera.
Definition at line 46 of file cred2Ctrl.hpp.
|
inherited |
Return type of insert on the indiCallBack map.
Definition at line 694 of file MagAOXApp.hpp.
|
inherited |
Iterator type of the indiCallBack map.
Definition at line 691 of file MagAOXApp.hpp.
|
inherited |
Value type of the indiCallBack map.
Definition at line 688 of file MagAOXApp.hpp.
|
inherited |
Definition at line 116 of file frameGrabber.hpp.
Definition at line 59 of file cred2Ctrl.hpp.
|
inherited |
The log manager type.
Definition at line 79 of file telemeter.hpp.
|
inherited |
The log manager type.
Definition at line 178 of file MagAOXApp.hpp.
Definition at line 57 of file cred2Ctrl.hpp.
Definition at line 58 of file cred2Ctrl.hpp.
Definition at line 60 of file cred2Ctrl.hpp.
|
inherited |
Definition at line 76 of file telemeter.hpp.
|
inherited |
Definition at line 175 of file MagAOXApp.hpp.
|
inherited |
Definition at line 108 of file frameGrabber.hpp.
|
inline |
Default c'tor.
Definition at line 403 of file cred2Ctrl.hpp.
References MagAOX::app::dev::stdCamera< cred2Ctrl >::m_analogGainNameLabels, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_analogGainNames, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_analogGainNameSet, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_default_bin_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_default_bin_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_default_h, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_default_w, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_default_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_default_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_defaultFanSpeed, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_defaultLEDState, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fanSpeedNameLabels, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fanSpeedNames, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fanSpeedNameSet, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_bin_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_bin_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_currbin_h, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_currbin_w, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_currbin_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_currbin_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_h, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_w, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ledStateSet, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_maxROIBinning_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_maxROIBinning_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_maxROIHeight, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_maxROIWidth, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_maxROIx, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_maxROIy, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_maxTemp, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_minROIBinning_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_minROIBinning_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_minROIHeight, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_minROIWidth, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_minROIx, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_minROIy, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_minTemp, MagAOX::app::MagAOXApp< _useINDI >::m_powerMgtEnabled, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_startupTemp, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_stepFPS, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_stepROIBinning_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_stepROIBinning_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_stepROIHeight, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_stepROIWidth, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_stepROIx, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_stepROIy, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_stepTemp, m_temps, and MagAOX::app::cred2Temps::setInvalid().
|
inlinenoexcept |
D'tor, declared and defined for noexcept.
Definition at line 472 of file cred2Ctrl.hpp.
|
staticprivateinherited |
The handler called when SIGTERM, SIGQUIT, or SIGINT is received. Just a wrapper for handlerSigTerm.
| [in] | signum | specifies the signal. |
| [in] | siginf | ignored by MagAOXApp |
| [in] | ucont | ignored by MagAOXApp |
Definition at line 2212 of file MagAOXApp.hpp.
References MagAOX::app::MagAOXApp< _useINDI >::handlerSigTerm().
|
inline |
Wait for and validate the next acquired image.
Definition at line 1699 of file cred2Ctrl.hpp.
References MagAOX::app::MagAOXApp< _useINDI >::log(), and MagAOX::app::dev::frameGrabber< cred2Ctrl >::m_currImageTimestamp.
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inlinevirtual |
Main FSM logic.
Implements MagAOX::app::MagAOXApp< _useINDI >.
Definition at line 591 of file cred2Ctrl.hpp.
References MagAOX::app::stateCodes::CONNECTED, MagAOX::app::cred2ParseFloat(), MagAOX::app::stateCodes::ERROR, FRAMEGRABBER_APP_LOGIC, getAnalogGain(), getFanSpeed(), getFPS(), getLEDState(), getTemps(), MagAOX::app::lock(), MagAOX::app::MagAOXApp< _useINDI >::log(), MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ccdTempSetpt, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_defaultFanSpeed, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_defaultLEDState, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fanSpeedName, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fanSpeedNameSet, MagAOX::app::MagAOXApp< _useINDI >::m_indiMutex, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ledState, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ledStateSet, m_roiSettleCounter, MagAOX::app::stateCodes::NODEVICE, MagAOX::app::stateCodes::NOTCONNECTED, MagAOX::app::stateCodes::OPERATING, MagAOX::app::stateCodes::POWERON, MagAOX::app::MagAOXApp< _useINDI >::powerState(), MagAOX::app::MagAOXApp< _useINDI >::powerStateTarget(), MagAOX::app::stateCodes::READY, sendCommand(), setFanSpeed(), setLED(), setTempSetPt(), MagAOX::app::MagAOXApp< _useINDI >::state(), STDCAMERA_APP_LOGIC, syncROIFromCamera(), and updateFPSLimits().
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inlinevirtual |
Shutdown function.
Implements MagAOX::app::MagAOXApp< _useINDI >.
Definition at line 875 of file cred2Ctrl.hpp.
References MagAOX::app::dev::edtCamera< derivedT >::appShutdown(), FRAMEGRABBER_APP_SHUTDOWN, STDCAMERA_APP_SHUTDOWN, and TELEMETER_APP_SHUTDOWN.
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inlinevirtual |
Startup function.
Implements MagAOX::app::MagAOXApp< _useINDI >.
Definition at line 541 of file cred2Ctrl.hpp.
References MagAOX::app::MagAOXApp< _useINDI >::createROIndiNumber(), FRAMEGRABBER_APP_STARTUP, MagAOX::app::MagAOXApp< _useINDI >::log(), m_indiP_fpsLimits, m_indiP_temps, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_maxFPS, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_minFPS, REG_INDI_NEWPROP_NOCB, MagAOX::app::MagAOXApp< _useINDI >::registerIndiPropertyReadOnly(), setSerialBaud(), STDCAMERA_APP_STARTUP, and TELEMETER_APP_STARTUP.
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Get the.
Definition at line 3969 of file MagAOXApp.hpp.
Referenced by MagAOX::app::streamWriter::loadConfig().
|
inherited |
Get the calibration directory.
Definition at line 3993 of file MagAOXApp.hpp.
|
virtualinherited |
Check for unused and unrecognized config options and settings.
Logs the unused targets as warnings. Unrecognized and unused options are logged as critical, and m_shutdown is set. Any command line argument (not an option) will also be critical and cause shutdown.
Definition at line 1651 of file MagAOXApp.hpp.
References MagAOX::app::it, flatlogs::logPrio::LOG_CRITICAL, flatlogs::logPrio::LOG_WARNING, and MagAOX::app::msg.
|
inherited |
Interface to checkFocus when the derivedT does not expose focus support.
Definition at line 1351 of file stdCamera.hpp.
|
inherited |
Interface to checkFocus when the derivedT exposes focus support.
Definition at line 1348 of file stdCamera.hpp.
|
inherited |
Evaluate the configured focus-state switch helper as an in-focus boolean.
Definition at line 817 of file stdCamera.hpp.
|
inline |
Validate and normalize the requested ROI.
Definition at line 1520 of file cred2Ctrl.hpp.
References INDI_OK, MagAOX::app::MagAOXApp< _useINDI >::log(), MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_h, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_w, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_bin_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_bin_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_h, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_w, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_nextROI, and MagAOX::app::MagAOXApp< _useINDI >::updateIfChanged().
Referenced by setNextROI(), and libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Interface to checkNextROI when the derivedT does not use ROIs.
Tag-dispatch resolution of c_stdCamera_usesROI==false will call this function. This prevents requiring derivedT to have its own checkNextROI().
Definition at line 1257 of file stdCamera.hpp.
|
inherited |
Interface to checkNextROI when the derivedT uses ROIs.
Tag-dispatch resolution of c_stdCamera_usesROI==true will call this function. Calls derivedT::checkNextROI.
Definition at line 1251 of file stdCamera.hpp.
|
inline |
Check the telemetry record timers.
Definition at line 1742 of file cred2Ctrl.hpp.
References MagAOX::app::MagAOXApp< _useINDI >::log().
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Check the time of the last record for each telemetry type and make an entry if needed.
This must be called from derivedT::checkRecordTimes(), with one template parameter for ach telemetry log type being recorded.
| [in] | tel | [unused] object of the telemetry type to record |
| [in] | tels | [unused] objects of the additional telemetry types to record |
Definition at line 156 of file telemeter.hpp.
|
inherited |
Empty function called at the end of the template list.
| [in] | ts | [unused] the timestamp that records are compared to |
Definition at line 177 of file telemeter.hpp.
|
inherited |
Worker function to actually perform the record time checking logic.
Recursively calls itself until the variadic template list is exhausted.
| [in] | ts | [unused] the timestamp that records are compared to |
| [in] | tel | [unused] objects of the telemetry type to record |
| [in] | tels | [unused] objects of the additional telemetry types to record |
Definition at line 167 of file telemeter.hpp.
|
privateinherited |
Clear the FSM alert state.
This can only be done from within this class, and this should only be possible via user action via INDI.
Definition at line 2685 of file MagAOXApp.hpp.
References INDI_ALERT, INDI_BUSY, INDI_IDLE, INDI_OK, and flatlogs::logPrio::LOG_WARNING.
|
inherited |
Get the config base file.
Definition at line 3987 of file MagAOXApp.hpp.
|
inherited |
Definition at line 253 of file frameGrabber.hpp.
|
inherited |
Get the config directory.
Definition at line 3981 of file MagAOXApp.hpp.
Referenced by libXWCTest::xInstGraphTest::TEST_CASE().
|
staticprotectedinherited |
Callback for config system logging.
Called by appConfigurator each time a value is set using the config() operator. You never need to call this directly.
| [in] | name | The name of the config value |
| [in] | code | numeric code specifying the type |
| [in] | value | the value read by the config system |
| [in] | source | the source of the value. |
Definition at line 2132 of file MagAOXApp.hpp.
|
inherited |
Get the config name.
Definition at line 3975 of file MagAOXApp.hpp.
Referenced by MagAOX::app::andorCtrl::loadConfig(), loadConfigImpl(), libXWCTest::appTest::MagAOXAppTest::SCENARIO(), TEST_CASE(), and MagAOX::app::andorCtrl::writeConfig().
|
inline |
Configure camera-side ROI settings before acquisition starts.
Definition at line 1612 of file cred2Ctrl.hpp.
References MagAOX::app::cred2ColumnsSpec(), MagAOX::app::cred2RoiFromCenter(), MagAOX::app::cred2RowsSpec(), MagAOX::app::stateCodes::ERROR, MagAOX::app::cred2Roi::fullFrame, INDI_OK, issueCommand(), MagAOX::app::lock(), MagAOX::app::MagAOXApp< _useINDI >::log(), m_cameraCropEnabled, m_cameraMutex, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_currentROI, MagAOX::app::dev::frameGrabber< cred2Ctrl >::m_dataType, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fps, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fpsSet, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_h, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_w, MagAOX::app::dev::frameGrabber< cred2Ctrl >::m_height, MagAOX::app::MagAOXApp< _useINDI >::m_indiMutex, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_bin_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_bin_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_h, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_w, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_nextROI, m_roiSettleCounter, MagAOX::app::dev::frameGrabber< cred2Ctrl >::m_width, MagAOX::app::stateCodes::READY, MagAOX::app::dev::stdCamera< cred2Ctrl >::recordCamera(), MagAOX::app::MagAOXApp< _useINDI >::state(), and MagAOX::app::MagAOXApp< _useINDI >::updateIfChanged().
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Get the cpuset path.
Definition at line 4011 of file MagAOXApp.hpp.
|
protectedinherited |
|
protectedinherited |
Definition at line 837 of file stdCamera.hpp.
|
protectedinherited |
Create the INDI FIFOs.
Changes permissions to max available and creates the FIFOs at the configured path.
Definition at line 3222 of file MagAOXApp.hpp.
References flatlogs::logPrio::LOG_CRITICAL, and MAGAOX_driverFIFORelPath.
|
protectedinherited |
|
protectedinherited |
Definition at line 829 of file stdCamera.hpp.
|
inherited |
Create a ReadOnly INDI Number property.
| [out] | prop | the property to create and setup |
| [in] | propName | the name of the property |
| [in] | propLabel | [optional] the GUI label suggestion for this property |
| [in] | propGroup | [optional] the group for this property |
Definition at line 2840 of file MagAOXApp.hpp.
Referenced by appStartup(), MagAOX::app::picamCtrl::appStartup(), and MagAOX::app::zaberCtrl::appStartup().
|
inherited |
Create a standard ReadOnly INDI Text property, with at least one element.
| [out] | prop | the property to create and setup |
| [in] | propName | the name of the property |
| [in] | elName | the name of the element |
| [in] | propLabel | [optional] the GUI label suggestion for this property |
| [in] | propGroup | [optional] the group for this property |
| [in] | elLabel | [optional] the GUI label suggestion for the element |
Definition at line 2757 of file MagAOXApp.hpp.
|
inherited |
Create a standard R/W INDI Number property with target and current elements.
| [out] | prop | the property to create and setup |
| [in] | name | the name of the property |
| [in] | min | the minimum value for the elements, applied to both target and current |
| [in] | max | the minimum value for the elements, applied to both target and current |
| [in] | step | the step size for the elements, applied to both target and current |
| [in] | format | the _ value for the elements, applied to both target and current. Set to "" to use the MagAO-X standard for type. |
| [in] | label | [optional] the GUI label suggestion for this property |
| [in] | group | [optional] the group for this property |
Definition at line 2793 of file MagAOXApp.hpp.
Referenced by MagAOX::app::picoMotorCtrl::appStartup().
|
inherited |
Create a standard R/W INDI switch with a single request element.
This switch is intended to function like a momentary switch.
| [out] | prop | the property to create and setup |
| [in] | name | the name of the property |
| [in] | label | [optional] the GUI label suggestion for this property |
| [in] | group | [optional] the group for this property |
Definition at line 2896 of file MagAOXApp.hpp.
Referenced by MagAOX::app::ocam2KCtrl::appStartup().
|
inherited |
Create a standard R/W INDI selection (one of many) switch with vector of elements using the element strings as their own labels This switch is intended to function like drop down menu.
| [out] | prop | the property to create and setup |
| [in] | name | the name of the property, |
| [in] | elements | the element names to give to the switches |
| [in] | label | [optional] the GUI label suggestion for this property |
| [in] | group | [optional] the group for this property |
Definition at line 2971 of file MagAOXApp.hpp.
|
inherited |
Create a standard R/W INDI selection (one of many) switch with vector of elements and element labels.
This switch is intended to function like drop down menu.
| [out] | prop | the property to create and setup |
| [in] | name | the name of the property, |
| [in] | elements | the element names to give to the switches |
| [in] | elementLabels | the element labels to give to the switches |
| [in] | label | [optional] the GUI label suggestion for this property |
| [in] | group | [optional] the group for this property |
Definition at line 2926 of file MagAOXApp.hpp.
Referenced by MagAOX::app::picoMotorCtrl::appStartup().
|
inherited |
Create a standard R/W INDI Text property with target and current elements.
| [out] | prop | the property to create and setup |
| [in] | propName | the name of the property |
| [in] | label | [optional] the GUI label suggestion for this property |
| [in] | group | [optional] the group for this property |
Definition at line 2729 of file MagAOXApp.hpp.
|
inherited |
Create a standard R/W INDI switch with a single toggle element.
This switch is intended to function like an on/off toggle switch.
| [out] | prop | the property to create and setup |
| [in] | name | the name of the property |
| [in] | label | [optional] the GUI label suggestion for this property |
| [in] | group | [optional] the group for this property |
Definition at line 2866 of file MagAOXApp.hpp.
Referenced by MagAOX::app::siglentSDG::appStartup(), MagAOX::app::streamWriter::appStartup(), and MagAOX::app::sysMonitor::appStartup().
|
protectedinherited |
|
protectedinherited |
Definition at line 833 of file stdCamera.hpp.
|
inlineprivateinherited |
Definition at line 1417 of file stdCamera.hpp.
|
inherited |
Get the INDI control FIFO file name.
Definition at line 4041 of file MagAOXApp.hpp.
|
inherited |
Get the INDI input FIFO file name.
Definition at line 4029 of file MagAOXApp.hpp.
|
inherited |
Get the INDI output FIFO file name.
Definition at line 4035 of file MagAOXApp.hpp.
|
virtualinherited |
The execute method implementing the standard main loop. Should not normally be overridden.
Performs final startup steps. That is:
Errors in the above steps will cause a process exit.
Then commences the main event loop. Conditions on entry to the main loop:
In the event loop, the power state is checked (if being managed). If power is off, then onPowerOff is called. If power is on, or power is not managed, appLogic is called. These methods are implemented in derived classes, and are called every m_loopPause interval.
If an error is returned by either onPowerOff or appLogic, or a signal is handled, then the shutdown is managed. This includes shutting down INDI, calling appShutdown, and unlocking the PID. The log thread will shutdown.
Definition at line 1718 of file MagAOXApp.hpp.
References flatlogs::logPrio::LOG_CRITICAL.
|
protectedinherited |
Execute framegrabbing.
Definition at line 273 of file frameGrabber.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls fgThreadExec.
| [in] | o | a pointer to a frameGrabber instance (normally this) |
Definition at line 270 of file frameGrabber.hpp.
|
inline |
Return the currently measured frame rate.
Definition at line 1687 of file cred2Ctrl.hpp.
References MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fps.
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inline |
Query and update the current analog-gain state.
Definition at line 1249 of file cred2Ctrl.hpp.
References MagAOX::app::MagAOXApp< _useINDI >::log(), MagAOX::app::dev::stdCamera< cred2Ctrl >::m_analogGainName, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_analogGainNameSet, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_analogGainValid, MagAOX::app::dev::stdCamera< cred2Ctrl >::recordCamera(), and sendCommand().
Referenced by appLogic(), setAnalogGain(), and libXWCTest::cred2CtrlTest::TEST_CASE().
|
inline |
Query and update the current fan-control state.
Definition at line 1193 of file cred2Ctrl.hpp.
References MagAOX::app::cred2ParseFloat(), MagAOX::app::MagAOXApp< _useINDI >::log(), MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fanSpeedName, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fanSpeedNameSet, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fanSpeedValid, MagAOX::app::dev::stdCamera< cred2Ctrl >::recordCamera(), and sendCommand().
Referenced by appLogic(), setFanSpeed(), and libXWCTest::cred2CtrlTest::TEST_CASE().
|
inline |
Query and update the current camera frame rate.
Definition at line 1172 of file cred2Ctrl.hpp.
References MagAOX::app::cred2ParseFloat(), MagAOX::app::MagAOXApp< _useINDI >::log(), MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fps, MagAOX::app::dev::stdCamera< cred2Ctrl >::recordCamera(), and sendCommand().
Referenced by appLogic(), setFPS(), and libXWCTest::cred2CtrlTest::TEST_CASE().
|
inline |
Query and update the current LED state.
Definition at line 1272 of file cred2Ctrl.hpp.
References MagAOX::app::cred2ParseBool(), MagAOX::app::MagAOXApp< _useINDI >::log(), MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ledState, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ledStateSet, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ledStateValid, MagAOX::app::dev::stdCamera< cred2Ctrl >::recordCamera(), and sendCommand().
Referenced by appLogic(), setLED(), and libXWCTest::cred2CtrlTest::TEST_CASE().
|
inline |
Query and update the camera temperature channels.
Definition at line 1084 of file cred2Ctrl.hpp.
References MagAOX::app::cred2ParseFloat(), MagAOX::app::cred2ParseFloatVector(), MagAOX::app::cred2Temps::frontend, MagAOX::app::cred2Temps::heatsink, MagAOX::app::MagAOXApp< _useINDI >::log(), flatlogs::logPrio::LOG_WARNING, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ccdTemp, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ccdTempSetpt, m_indiP_temps, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlOnTarget, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlStatus, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlStatusStr, m_temps, MagAOX::app::cred2Temps::motherboard, MagAOX::app::cred2Temps::peltier, MagAOX::app::cred2Temps::powerboard, MagAOX::app::dev::stdCamera< cred2Ctrl >::recordCamera(), recordTemps(), sendCommand(), MagAOX::app::cred2Temps::setpoint, MagAOX::app::cred2Temps::snake, and MagAOX::app::MagAOXApp< _useINDI >::updateIfChanged().
Referenced by appLogic(), and libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Get the value of the git alert flag.
Definition at line 2664 of file MagAOXApp.hpp.
|
inherited |
Interface to gotoFocus when the derivedT does not expose focus support.
Definition at line 1357 of file stdCamera.hpp.
|
inherited |
Interface to gotoFocus when the derivedT exposes focus support.
Definition at line 1354 of file stdCamera.hpp.
|
inherited |
Handler for the DEF INDI properties notification.
Uses the properties registered in m_indiSetCallBacks to process the notification. This is called by m_indiDriver's indiDriver::handleDefProperties.
| [in] | ipRecv | The property being sent. |
Definition at line 3430 of file MagAOXApp.hpp.
References MagAOX::app::ipRecv.
|
inherited |
Handler for the get INDI properties request.
Uses the properties registered in m_indiCallBacks to respond to the request. This is called by m_indiDriver's indiDriver::handleGetProperties.
| [in] | ipRecv | The property being requested. |
Definition at line 3436 of file MagAOXApp.hpp.
References MagAOX::app::ipRecv, MagAOX::app::it, and MagAOX::app::lock().
|
inherited |
Handler for the new INDI property request.
Uses the properties registered in m_indiCallBacks to respond to the request, looking up the callback for this property and calling it.
This is called by m_indiDriver's indiDriver::handleGetProperties.
| [in] | ipRecv | The property being changed. |
Definition at line 3523 of file MagAOXApp.hpp.
References MagAOX::app::ipRecv, MagAOX::app::it, and MagAOX::app::lock().
Referenced by libXWCTest::appTest::MagAOXAppTest::SCENARIO().
|
privateinherited |
Handles SIGTERM, SIGQUIT, and SIGINT. Sets m_shutdown to 1 and logs the signal.
| [in] | signum | specifies the signal. |
| [in] | siginf | ignored by MagAOXApp |
| [in] | ucont | ignored by MagAOXApp |
Definition at line 2218 of file MagAOXApp.hpp.
Referenced by MagAOX::app::MagAOXApp< _useINDI >::_handlerSigTerm().
|
inherited |
Handler for the set INDI property request.
This is called by m_indiDriver's indiDriver::handleSetProperties.
| [in] | ipRecv | The property being changed. |
Definition at line 3555 of file MagAOXApp.hpp.
References MagAOX::app::ipRecv, MagAOX::app::it, and MagAOX::app::lock().
Referenced by MagAOX::app::xInstGraph::igHandleSetProperty().
|
inherited |
|
inlineinherited |
Determine whether an unresolved Set-property subscription should be requested now.
| [in] | callBack | the subscription retry state to evaluate |
| [in] | all | if true, force an immediate refresh regardless of retry timing |
| [in] | now | the current monotonic time for scheduling |
Definition at line 3175 of file MagAOXApp.hpp.
References MagAOX::app::MagAOXApp< _useINDI >::indiCallBack::m_defReceived, and MagAOX::app::MagAOXApp< _useINDI >::indiCallBack::m_nextRetry.
|
protectedinherited |
Get the target element value from an new property.
| [out] | localProperty | The local property to update |
| [out] | localTarget | The local value to update |
| [in] | remoteProperty | the new property received |
| [in] | setBusy | [optional] set property to busy if true |
Definition at line 3700 of file MagAOXApp.hpp.
References INDI_BUSY, and flatlogs::logPrio::LOG_ERROR.
Referenced by MagAOX::app::picoMotorCtrl::newCallBack_picopos().
|
inlineprotected |
Send a command that should return a success acknowledgement.
| [in] | command | CLI command to send |
| [in] | allowNoResponse | treat a missing response as acceptable |
Definition at line 917 of file cred2Ctrl.hpp.
References MagAOX::app::cred2ResponseOK(), MagAOX::app::MagAOXApp< _useINDI >::log(), flatlogs::logPrio::LOG_ERROR, and sendCommand().
Referenced by configureAcquisition(), setAnalogGain(), setFanSpeed(), setFPS(), setLED(), setTempSetPt(), and libXWCTest::cred2CtrlTest::TEST_CASE().
|
virtualinherited |
The basic MagAO-X configuration processing method. Should not normally be overridden.
This method processes the standard MagAO-X key=value pairs.
Though it is virtual, it should not normally be overridden unless you need to depart from the MagAO-X standard.
Processing of app specific config goes in loadConfig() implemented by the derived class.
Definition at line 1588 of file MagAOXApp.hpp.
References INDI_SETCALLBACK, flatlogs::logPrio::LOG_CRITICAL, and flatlogs::logPrio::LOG_ERROR.
|
inlinevirtual |
Load the configuration system results.
Definition at line 532 of file cred2Ctrl.hpp.
References loadConfigImpl(), MagAOX::app::MagAOXApp< _useINDI >::log(), and MagAOX::app::MagAOXApp< _useINDI >::m_shutdown.
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Load the device section from an application configurator.
| [in] | config | an application configuration from which to load values |
Definition at line 120 of file telemeter.hpp.
|
inherited |
load the configuration system results
This should be called in derivedT::loadConfig as
with appropriate error checking.
| [in] | config | the derived classes configurator |
Definition at line 120 of file edtCamera.hpp.
|
inherited |
load the configuration system results
This should be called in derivedT::loadConfig as
with appropriate error checking.
| [in] | config | the derived classes configurator |
Definition at line 202 of file frameGrabber.hpp.
|
inherited |
load the configuration system results
This should be called in derivedT::loadConfig as
with appropriate error checking.
| [in] | config | the derived classes configurator |
Definition at line 810 of file stdCamera.hpp.
|
inline |
Implementation of loadConfig logic with standard helper-macro error handling.
| [in] | config | application configurator with loaded values |
Definition at line 497 of file cred2Ctrl.hpp.
References MagAOX::app::MagAOXApp< _useINDI >::configName(), FRAMEGRABBER_LOAD_CONFIG, MagAOX::app::dev::edtCamera< derivedT >::loadConfig(), MagAOX::app::MagAOXApp< _useINDI >::log(), MagAOX::app::dev::stdCamera< cred2Ctrl >::m_cameraModes, m_configFile, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_nextROI, m_serialBaud, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_startupMode, STDCAMERA_LOAD_CONFIG, TELEMETER_LOAD_CONFIG, and writeConfig().
Referenced by loadConfig().
Copy the current EDT image into the output stream.
| [in] | dest | destination frame buffer |
Definition at line 1704 of file cred2Ctrl.hpp.
References MagAOX::app::MagAOXApp< _useINDI >::log(), MagAOX::app::dev::frameGrabber< cred2Ctrl >::m_height, MagAOX::app::dev::edtCamera< cred2Ctrl >::m_image_p, MagAOX::app::dev::frameGrabber< cred2Ctrl >::m_typeSize, and MagAOX::app::dev::frameGrabber< cred2Ctrl >::m_width.
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
protectedinherited |
Definition at line 277 of file frameGrabber.hpp.
|
protectedinherited |
Attempt to lock the PID by writing it to a file. Fails if a process is already running with the same config name. First checks the PID file for an existing PID. If found, interrogates /proc to determine if that process is running and if so if the command line matches. If a matching process is currently running, then this returns an error.
Will not fail if a PID file exists but the stored PID does not correspond to a running process with the same command line name.
Reference: https://linux.die.net/man/3/getpid
Definition at line 2289 of file MagAOXApp.hpp.
|
staticinherited |
Make a log entry.
Wrapper for logManager::log
| logT | the log entry type |
| retval | the value returned by this method. |
| [in] | msg | the message to log |
| [in] | level | [optional] the log level. The default is used if not specified. |
Definition at line 2074 of file MagAOXApp.hpp.
References MagAOX::app::msg.
Referenced by MagAOX::app::picoMotorCtrl::motorChannel::motorChannel(), MagAOX::app::zylaCtrl::zylaCtrl(), MagAOX::app::picamCtrl::~picamCtrl(), MagAOX::app::streamWriter::~streamWriter(), MagAOX::app::zylaCtrl::~zylaCtrl(), dbIngest.dbIngest::_ensure_connected(), visxCtrl.core.visxCtrl::_gather_metadata(), MagAOX::app::streamWriter::_handlerSigSegv(), visxCtrl.core.visxCtrl::_init_properties(), MagAOX::app::qhyCtrl::AbortAcquisition(), MagAOX::app::andorCtrl::acquireAndCheckValid(), MagAOX::app::baslerCtrl::acquireAndCheckValid(), MagAOX::app::cameraSim::acquireAndCheckValid(), acquireAndCheckValid(), MagAOX::app::ocam2KCtrl::acquireAndCheckValid(), MagAOX::app::picamCtrl::acquireAndCheckValid(), MagAOX::app::zylaCtrl::acquireAndCheckValid(), MagAOX::app::streamWriter::allocate_circbufs(), MagAOX::app::streamWriter::allocate_xrif(), MagAOX::app::acronameUsbHub::appLogic(), MagAOX::app::andorCtrl::appLogic(), MagAOX::app::baslerCtrl::appLogic(), MagAOX::app::cameraSim::appLogic(), appLogic(), MagAOX::app::filterWheelCtrl::appLogic(), MagAOX::app::hsfwCtrl::appLogic(), MagAOX::app::mzmqClient::appLogic(), MagAOX::app::mzmqServer::appLogic(), MagAOX::app::ocam2KCtrl::appLogic(), MagAOX::app::picamCtrl::appLogic(), MagAOX::app::picoMotorCtrl::appLogic(), MagAOX::app::qhyCtrl::appLogic(), MagAOX::app::siglentSDG::appLogic(), MagAOX::app::smc100ccCtrl::appLogic(), MagAOX::app::streamWriter::appLogic(), MagAOX::app::sysMonitor::appLogic(), MagAOX::app::trippLitePDU::appLogic(), MagAOX::app::ttmModulator::appLogic(), MagAOX::app::xt1121Ctrl::appLogic(), MagAOX::app::xt1121DCDU::appLogic(), MagAOX::app::zaberCtrl::appLogic(), MagAOX::app::zylaCtrl::appLogic(), MagAOX::app::andorCtrl::appShutdown(), MagAOX::app::baslerCtrl::appShutdown(), MagAOX::app::hsfwCtrl::appShutdown(), MagAOX::app::mzmqClient::appShutdown(), MagAOX::app::mzmqServer::appShutdown(), MagAOX::app::picamCtrl::appShutdown(), MagAOX::app::picoMotorCtrl::appShutdown(), MagAOX::app::qhyCtrl::appShutdown(), MagAOX::app::streamWriter::appShutdown(), MagAOX::app::zylaCtrl::appShutdown(), MagAOX::app::acronameUsbHub::appStartup(), MagAOX::app::andorCtrl::appStartup(), MagAOX::app::baslerCtrl::appStartup(), MagAOX::app::cameraSim::appStartup(), appStartup(), MagAOX::app::filterWheelCtrl::appStartup(), MagAOX::app::hsfwCtrl::appStartup(), MagAOX::app::magAOXMaths::appStartup(), MagAOX::app::mzmqClient::appStartup(), MagAOX::app::mzmqServer::appStartup(), MagAOX::app::ocam2KCtrl::appStartup(), MagAOX::app::picamCtrl::appStartup(), MagAOX::app::picoMotorCtrl::appStartup(), MagAOX::app::qhyCtrl::appStartup(), MagAOX::app::siglentSDG::appStartup(), MagAOX::app::smc100ccCtrl::appStartup(), MagAOX::app::streamWriter::appStartup(), MagAOX::app::sysMonitor::appStartup(), MagAOX::app::trippLitePDU::appStartup(), MagAOX::app::xt1121DCDU::appStartup(), MagAOX::app::zaberCtrl::appStartup(), MagAOX::app::zylaCtrl::appStartup(), MagAOX::app::ttmModulator::calcState(), MagAOX::app::andorCtrl::cameraSelect(), MagAOX::app::zylaCtrl::cameraSelect(), visxCtrl.core.visxCtrl::cancel_exposure(), MagAOX::app::picamCtrl::capExpTime(), MagAOX::app::siglentSDG::changeAmp(), MagAOX::app::siglentSDG::changeAmp(), MagAOX::app::siglentSDG::changeFreq(), MagAOX::app::siglentSDG::changeFreq(), MagAOX::app::siglentSDG::changeOfst(), MagAOX::app::siglentSDG::changeOfst(), MagAOX::app::siglentSDG::changeOutp(), MagAOX::app::siglentSDG::changeOutp(), MagAOX::app::siglentSDG::changePhse(), MagAOX::app::siglentSDG::changePhse(), MagAOX::app::siglentSDG::changeSync(), MagAOX::app::siglentSDG::changeSync(), MagAOX::app::siglentSDG::changeWdth(), MagAOX::app::siglentSDG::changeWdth(), MagAOX::app::siglentSDG::changeWvtp(), MagAOX::app::siglentSDG::changeWvtp(), MagAOX::app::xt1121Ctrl::channelSetCallback(), MagAOX::app::picoMotorCtrl::channelThreadExec(), MagAOX::app::picoMotorCtrl::channelThreadStart(), MagAOX::app::baslerCtrl::checkNextROI(), checkNextROI(), MagAOX::app::andorCtrl::checkRecordTimes(), MagAOX::app::baslerCtrl::checkRecordTimes(), MagAOX::app::cameraSim::checkRecordTimes(), checkRecordTimes(), MagAOX::app::ocam2KCtrl::checkRecordTimes(), MagAOX::app::picamCtrl::checkRecordTimes(), MagAOX::app::qhyCtrl::checkRecordTimes(), MagAOX::app::siglentSDG::checkRecordTimes(), MagAOX::app::smc100ccCtrl::checkRecordTimes(), MagAOX::app::sysMonitor::checkRecordTimes(), MagAOX::app::zaberCtrl::checkRecordTimes(), MagAOX::app::zylaCtrl::checkRecordTimes(), MagAOX::app::siglentSDG::checkSetup(), MagAOX::app::andorCtrl::configureAcquisition(), MagAOX::app::baslerCtrl::configureAcquisition(), MagAOX::app::cameraSim::configureAcquisition(), configureAcquisition(), MagAOX::app::ocam2KCtrl::configureAcquisition(), MagAOX::app::picamCtrl::configureAcquisition(), MagAOX::app::qhyCtrl::configureAcquisition(), MagAOX::app::zylaCtrl::configureAcquisition(), MagAOX::app::baslerCtrl::connect(), MagAOX::app::picamCtrl::connect(), MagAOX::app::qhyCtrl::connect(), pupilCorAlign.pupilCorAlign::control_position(), MagAOX::app::sysMonitor::criticalCoreTemperature(), MagAOX::app::sysMonitor::criticalDiskTemperature(), MagAOX::app::ocam2KCtrl::destroySyncStream(), MagAOX::app::trippLitePDU::devConnect(), MagAOX::app::trippLitePDU::devLogin(), MagAOX::app::trippLitePDU::devPostLogin(), MagAOX::app::trippLitePDU::devStatus(), MagAOX::app::streamWriter::doEncode(), MagAOX::app::ocam2KCtrl::ensureSyncStream(), MagAOX::app::streamWriter::fgThreadExec(), MagAOX::app::streamWriter::fgThreadStart(), visxCtrl.core.visxCtrl::finalize_exposure(), MagAOX::app::sysMonitor::findChronyStatus(), MagAOX::app::sysMonitor::findCPULoads(), MagAOX::app::sysMonitor::findCPUTemperatures(), MagAOX::app::sysMonitor::findDiskTemperature(), MagAOX::app::sysMonitor::findDiskUsage(), MagAOX::app::sysMonitor::findRamUsage(), camtipSR.core.camtipSR::fit_SR_EE(), camtipSR.core.camtipSR::fit_SR_gauss(), MagAOX::app::ocam2KCtrl::frameGrabberPostPublish(), pupilCorAlign.pupilCorAlign::get_current_state(), MagAOX::app::picamCtrl::getAcquisitionState(), getAnalogGain(), MagAOX::app::streamWriter::getCircBuffLengths(), MagAOX::app::smc100ccCtrl::getCtrlState(), MagAOX::app::andorCtrl::getEMGain(), MagAOX::app::ocam2KCtrl::getEMGain(), MagAOX::app::baslerCtrl::getExpTime(), MagAOX::app::qhyCtrl::getExpTime(), getFanSpeed(), MagAOX::app::picamCtrl::getFanSpeed(), MagAOX::app::andorCtrl::getFPS(), getFPS(), MagAOX::app::ocam2KCtrl::getFPS(), MagAOX::app::smc100ccCtrl::getLastError(), getLEDState(), MagAOX::app::filterWheelCtrl::getMoving(), MagAOX::app::picamCtrl::getPicamParameter(), MagAOX::app::picamCtrl::getPicamParameter(), MagAOX::app::filterWheelCtrl::getPos(), MagAOX::app::smc100ccCtrl::getPosition(), MagAOX::app::xt1121Ctrl::getState(), MagAOX::app::filterWheelCtrl::getSwitch(), MagAOX::app::andorCtrl::getTemp(), MagAOX::app::baslerCtrl::getTemp(), MagAOX::app::qhyCtrl::getTemp(), MagAOX::app::zylaCtrl::getTemp(), getTemps(), MagAOX::app::ocam2KCtrl::getTemps(), MagAOX::app::picamCtrl::getTemps(), camtipSR.core.camtipSR::grab_img(), camtipSR.core.camtipSR::grab_stack(), pupilCorAlign.pupilCorAlign::handle_centroid_ref(), corAlign.corAlign::handle_closed_loop(), adcCtrl.app.adcCtrl::handle_ctrl_mtx(), visxCtrl.core.visxCtrl::handle_expose(), visxCtrl.core.visxCtrl::handle_exptime(), pupilCorAlign.pupilCorAlign::handle_fwlyot(), pupilCorAlign.pupilCorAlign::handle_fwlyot_ref(), pupilCorAlign.pupilCorAlign::handle_fwpupil(), pupilCorAlign.pupilCorAlign::handle_fwpupil_ref(), adcCtrl.app.adcCtrl::handle_gain(), pupilCorAlign.pupilCorAlign::handle_gain(), visxCtrl.core.visxCtrl::handle_gain(), adcCtrl.app.adcCtrl::handle_knife_edge(), adcCtrl.app.adcCtrl::handle_knife_edge_findzero(), adcCtrl.app.adcCtrl::handle_labmode(), adcCtrl.app.adcCtrl::handle_n_avg(), camtipSR.core.camtipSR::handle_n_avg(), corAlign.corAlign::handle_n_avg(), camtipSR.core.camtipSR::handle_n_jitter(), adcCtrl.app.adcCtrl::handle_no_measurements(), pupilCorAlign.pupilCorAlign::handle_nstack(), adcCtrl.app.adcCtrl::handle_offset(), audibleAlerts.core.AudibleAlerts::handle_personality_switch(), corAlign.corAlign::handle_ref_x(), corAlign.corAlign::handle_ref_y(), adcCtrl.app.adcCtrl::handle_reset(), xapp.aoSim.aoSim::handle_reset(), audibleAlerts.core.AudibleAlerts::handle_soundboard_switch(), audibleAlerts.core.AudibleAlerts::handle_speech_request(), audibleAlerts.core.AudibleAlerts::handle_speech_text(), adcCtrl.app.adcCtrl::handle_state(), corAlign.corAlign::handle_state(), visxCtrl.core.visxCtrl::handle_temp_ccd(), MagAOX::app::streamWriter::handlerSigSegv(), MagAOX::app::filterWheelCtrl::home(), MagAOX::app::INDI_NEWCALLBACK_DEFN(), MagAOX::app::INDI_NEWCALLBACK_DEFN(), dbIngest.dbIngest::ingest_line(), MagAOX::app::streamWriter::initialize_xrif(), issueCommand(), dbIngest.dbIngest::launch_followers(), audibleAlerts.core.AudibleAlerts::load_personality(), MagAOX::app::andorCtrl::loadConfig(), MagAOX::app::baslerCtrl::loadConfig(), loadConfig(), MagAOX::app::filterWheelCtrl::loadConfig(), MagAOX::app::hsfwCtrl::loadConfig(), MagAOX::app::mzmqClient::loadConfig(), MagAOX::app::mzmqServer::loadConfig(), MagAOX::app::ocam2KCtrl::loadConfig(), MagAOX::app::picoMotorCtrl::loadConfig(), MagAOX::app::qhyCtrl::loadConfig(), MagAOX::app::smc100ccCtrl::loadConfig(), MagAOX::app::streamWriter::loadConfig(), MagAOX::app::sysMonitor::loadConfig(), MagAOX::app::xt1121Ctrl::loadConfig(), MagAOX::app::baslerCtrl::loadConfigImpl(), MagAOX::app::picoMotorCtrl::loadConfigImpl(), MagAOX::app::zaberCtrl::loadConfigImpl(), MagAOX::app::cameraSim::loadConfigImpl(), loadConfigImpl(), MagAOX::app::andorCtrl::loadImageIntoStream(), MagAOX::app::baslerCtrl::loadImageIntoStream(), MagAOX::app::cameraSim::loadImageIntoStream(), loadImageIntoStream(), MagAOX::app::ocam2KCtrl::loadImageIntoStream(), MagAOX::app::picamCtrl::loadImageIntoStream(), MagAOX::app::qhyCtrl::loadImageIntoStream(), MagAOX::app::zylaCtrl::loadImageIntoStream(), adcCtrl.app.adcCtrl::loop(), audibleAlerts.core.AudibleAlerts::loop(), corAlign.corAlign::loop(), dbIngest.dbIngest::loop(), pupilCorAlign.pupilCorAlign::loop(), visxCtrl.core.visxCtrl::loop(), MagAOX::app::smc100ccCtrl::makeCom(), corAlign.corAlign::measure_fpm_mask_shift(), MagAOX::app::ttmModulator::modTTM(), MagAOX::app::filterWheelCtrl::moveTo(), MagAOX::app::hsfwCtrl::moveTo(), MagAOX::app::zaberCtrl::moveTo(), MagAOX::app::smc100ccCtrl::moveTo(), MagAOX::app::filterWheelCtrl::moveToRaw(), MagAOX::app::filterWheelCtrl::moveToRawRelative(), MagAOX::app::picoMotorCtrl::newCallBack_picopos(), MagAOX::app::picoMotorCtrl::newCallBack_presetName(), MagAOX::app::siglentSDG::normalizeSetup(), MagAOX::app::ttmModulator::offset12(), MagAOX::app::ttmModulator::offsetXY(), MagAOX::app::acronameUsbHub::onPowerOff(), MagAOX::app::andorCtrl::onPowerOff(), onPowerOff(), MagAOX::app::filterWheelCtrl::onPowerOff(), MagAOX::app::hsfwCtrl::onPowerOff(), MagAOX::app::ocam2KCtrl::onPowerOff(), MagAOX::app::picamCtrl::onPowerOff(), MagAOX::app::zylaCtrl::onPowerOff(), MagAOX::app::filterWheelCtrl::onPowerOnConnect(), MagAOX::app::sysMonitor::parseCPULoads(), MagAOX::app::sysMonitor::parseCPUTemperatures(), MagAOX::app::sysMonitor::parseCPUTemperaturesAMD(), MagAOX::app::sysMonitor::parseCPUTemperaturesIntel(), MagAOX::app::sysMonitor::parseDiskTemperature(), MagAOX::app::sysMonitor::parseDiskUsage(), MagAOX::app::trippLitePDU::parsePDUStatus(), MagAOX::app::sysMonitor::parseRamUsage(), MagAOX::app::zylaCtrl::powerOnDefaults(), audibleAlerts.core.AudibleAlerts::preprocess(), MagAOX::app::filterWheelCtrl::presetNumber(), MagAOX::app::smc100ccCtrl::presetNumber(), MagAOX::app::zaberCtrl::presetNumber(), MagAOX::app::siglentSDG::queryARWV(), MagAOX::app::siglentSDG::queryBSWV(), MagAOX::app::siglentSDG::queryBTWV(), MagAOX::app::siglentSDG::queryMDWV(), MagAOX::app::siglentSDG::queryOUTP(), MagAOX::app::siglentSDG::querySWWV(), MagAOX::app::siglentSDG::querySYNC(), audibleAlerts.core.AudibleAlerts::reaction_handler(), MagAOX::app::picoMotorCtrl::readChannelCounts(), MagAOX::app::andorCtrl::reconfig(), reconfig(), MagAOX::app::ocam2KCtrl::reconfig(), MagAOX::app::picamCtrl::reconfig(), MagAOX::app::zylaCtrl::reconfig(), MagAOX::app::sysMonitor::recordChronyStatus(), MagAOX::app::sysMonitor::recordCoreLoads(), MagAOX::app::sysMonitor::recordCoreTemps(), MagAOX::app::sysMonitor::recordDriveTemps(), MagAOX::app::siglentSDG::recordParams(), MagAOX::app::streamWriter::recordSavingState(), MagAOX::app::streamWriter::recordSavingStats(), MagAOX::app::filterWheelCtrl::recordStage(), MagAOX::app::smc100ccCtrl::recordStage(), MagAOX::app::zaberCtrl::recordTelem(), MagAOX::app::sysMonitor::recordUsage(), MagAOX::app::zaberCtrl::recordZaber(), dbIngest.dbIngest::refresh_properties(), visxCtrl.core.visxCtrl::refresh_properties(), MagAOX::app::streamWriter::release_circbufs(), MagAOX::app::mzmqClient::reportError(), MagAOX::app::mzmqServer::reportError(), MagAOX::app::mzmqClient::reportInfo(), MagAOX::app::mzmqServer::reportInfo(), MagAOX::app::mzmqClient::reportNotice(), MagAOX::app::mzmqServer::reportNotice(), MagAOX::app::mzmqClient::reportWarning(), MagAOX::app::mzmqServer::reportWarning(), MagAOX::app::ocam2KCtrl::resetEMProtection(), MagAOX::app::ttmModulator::restTTM(), adcCtrl.app.adcCtrl::send_command(), sendCommand(), setAnalogGain(), MagAOX::app::andorCtrl::setCropMode(), MagAOX::app::andorCtrl::setEMGain(), MagAOX::app::ocam2KCtrl::setEMGain(), MagAOX::app::picamCtrl::setEMGain(), MagAOX::app::andorCtrl::setExpTime(), MagAOX::app::baslerCtrl::setExpTime(), MagAOX::app::cameraSim::setExpTime(), MagAOX::app::picamCtrl::setExpTime(), MagAOX::app::qhyCtrl::setExpTime(), setFanSpeed(), MagAOX::app::baslerCtrl::setFPS(), MagAOX::app::cameraSim::setFPS(), setFPS(), MagAOX::app::ocam2KCtrl::setFPS(), MagAOX::app::sysMonitor::setlatThreadExec(), MagAOX::app::sysMonitor::setlatThreadStart(), MagAOX::app::picamCtrl::setPicamParameter(), MagAOX::app::picamCtrl::setPicamParameter(), MagAOX::app::picamCtrl::setPicamParameter(), MagAOX::app::picamCtrl::setPicamParameter(), MagAOX::app::picamCtrl::setPicamParameter(), MagAOX::app::picamCtrl::setPicamParameterOnline(), MagAOX::app::picamCtrl::setPicamParameterOnline(), MagAOX::app::picamCtrl::setPicamParameterOnline(), MagAOX::app::picamCtrl::setPicamParameterOnline(), MagAOX::app::andorCtrl::setReadoutSpeed(), setSerialBaud(), MagAOX::app::ocam2KCtrl::setShutter(), MagAOX::app::picamCtrl::setShutter(), MagAOX::app::zylaCtrl::setShutter(), MagAOX::app::cameraSim::setShutter(), MagAOX::app::andorCtrl::setShutter(), MagAOX::app::streamWriter::setSigSegvHandler(), MagAOX::app::ocam2KCtrl::setSynchro(), MagAOX::app::andorCtrl::setTempControl(), setTempControl(), MagAOX::app::ocam2KCtrl::setTempControl(), MagAOX::app::zylaCtrl::setTempControl(), MagAOX::app::andorCtrl::setTempSetPt(), setTempSetPt(), MagAOX::app::ocam2KCtrl::setTempSetPt(), MagAOX::app::ttmModulator::setTTM(), adcCtrl.app.adcCtrl::setup(), camtipSR.core.camtipSR::setup(), corAlign.corAlign::setup(), efcControl.efcControl::setup(), pupilCorAlign.pupilCorAlign::setup(), sparkleTracker.sparkleTracker::setup(), MagAOX::app::andorCtrl::setVShiftSpeed(), MagAOX::app::smc100ccCtrl::splitResponse(), pupilCorAlign.pupilCorAlign::stages_are_ready(), MagAOX::app::andorCtrl::startAcquisition(), MagAOX::app::baslerCtrl::startAcquisition(), startAcquisition(), MagAOX::app::ocam2KCtrl::startAcquisition(), MagAOX::app::zylaCtrl::startAcquisition(), MagAOX::app::hsfwCtrl::startHoming(), MagAOX::app::smc100ccCtrl::startHoming(), MagAOX::app::zaberCtrl::startHoming(), MagAOX::app::baslerCtrl::stateString(), MagAOX::app::ocam2KCtrl::stateString(), MagAOX::app::filterWheelCtrl::stop(), MagAOX::app::smc100ccCtrl::stop(), MagAOX::app::zaberCtrl::stop(), visxCtrl.core.visxCtrl::subscribe_to_other_devices(), MagAOX::app::streamWriter::swThreadExec(), MagAOX::app::streamWriter::swThreadStart(), MagAOX::app::zaberCtrl::syncPowerOffStageTelemetry(), syncROIFromCamera(), MagAOX::app::smc100ccCtrl::testConnection(), adcCtrl.app.adcCtrl::transition_to_idle(), camtipSR.core.camtipSR::transition_to_idle(), corAlign.corAlign::transition_to_idle(), MagAOX::app::acronameUsbHub::turnOutletOff(), MagAOX::app::trippLitePDU::turnOutletOff(), MagAOX::app::xt1121DCDU::turnOutletOff(), MagAOX::app::acronameUsbHub::turnOutletOn(), MagAOX::app::trippLitePDU::turnOutletOn(), MagAOX::app::xt1121DCDU::turnOutletOn(), pupilCorAlign.pupilCorAlign::update_properties(), adcCtrl.app.adcCtrl::update_wavelength(), MagAOX::app::trippLitePDU::updateAlarmsAndWarnings(), updateFPSLimits(), MagAOX::app::acronameUsbHub::updateOutletState(), MagAOX::app::trippLitePDU::updateOutletState(), MagAOX::app::xt1121DCDU::updateOutletState(), MagAOX::app::trippLitePDU::updateOutletStates(), MagAOX::app::magAOXMaths::updateVals(), MagAOX::app::sysMonitor::updateVals(), MagAOX::app::streamWriter::waitForWriteCompletion(), audibleAlerts.core.AudibleAlerts::walkup_handler(), MagAOX::app::andorCtrl::whilePowerOff(), whilePowerOff(), MagAOX::app::filterWheelCtrl::whilePowerOff(), MagAOX::app::hsfwCtrl::whilePowerOff(), MagAOX::app::ocam2KCtrl::whilePowerOff(), MagAOX::app::picamCtrl::whilePowerOff(), MagAOX::app::zylaCtrl::whilePowerOff(), MagAOX::app::picoMotorCtrl::writeChannelCounts(), MagAOX::app::siglentSDG::writeCommand(), MagAOX::app::andorCtrl::writeConfig(), writeConfig(), MagAOX::app::siglentSDG::writeRead(), MagAOX::app::xt1121DCDU::xtChannelName(), and MagAOX::app::xt1121DCDU::xtChannelProperty().
|
staticinherited |
Make a log entry.
Wrapper for logManager::log
| logT | the log entry type |
| retval | the value returned by this method. |
| [in] | level | [optional] the log level. The default is used if not specified. |
Definition at line 2082 of file MagAOXApp.hpp.
Referenced by dbIngest.dbIngest::_ensure_connected(), visxCtrl.core.visxCtrl::_gather_metadata(), visxCtrl.core.visxCtrl::_init_properties(), visxCtrl.core.visxCtrl::cancel_exposure(), pupilCorAlign.pupilCorAlign::control_position(), visxCtrl.core.visxCtrl::finalize_exposure(), camtipSR.core.camtipSR::fit_SR_EE(), camtipSR.core.camtipSR::fit_SR_gauss(), pupilCorAlign.pupilCorAlign::get_current_state(), camtipSR.core.camtipSR::grab_img(), camtipSR.core.camtipSR::grab_stack(), pupilCorAlign.pupilCorAlign::handle_centroid_ref(), corAlign.corAlign::handle_closed_loop(), adcCtrl.app.adcCtrl::handle_ctrl_mtx(), visxCtrl.core.visxCtrl::handle_expose(), visxCtrl.core.visxCtrl::handle_exptime(), pupilCorAlign.pupilCorAlign::handle_fwlyot(), pupilCorAlign.pupilCorAlign::handle_fwlyot_ref(), pupilCorAlign.pupilCorAlign::handle_fwpupil(), pupilCorAlign.pupilCorAlign::handle_fwpupil_ref(), adcCtrl.app.adcCtrl::handle_gain(), pupilCorAlign.pupilCorAlign::handle_gain(), visxCtrl.core.visxCtrl::handle_gain(), adcCtrl.app.adcCtrl::handle_knife_edge(), adcCtrl.app.adcCtrl::handle_knife_edge_findzero(), adcCtrl.app.adcCtrl::handle_labmode(), adcCtrl.app.adcCtrl::handle_n_avg(), camtipSR.core.camtipSR::handle_n_avg(), corAlign.corAlign::handle_n_avg(), camtipSR.core.camtipSR::handle_n_jitter(), adcCtrl.app.adcCtrl::handle_no_measurements(), pupilCorAlign.pupilCorAlign::handle_nstack(), adcCtrl.app.adcCtrl::handle_offset(), audibleAlerts.core.AudibleAlerts::handle_personality_switch(), corAlign.corAlign::handle_ref_x(), corAlign.corAlign::handle_ref_y(), adcCtrl.app.adcCtrl::handle_reset(), xapp.aoSim.aoSim::handle_reset(), audibleAlerts.core.AudibleAlerts::handle_soundboard_switch(), audibleAlerts.core.AudibleAlerts::handle_speech_request(), audibleAlerts.core.AudibleAlerts::handle_speech_text(), adcCtrl.app.adcCtrl::handle_state(), corAlign.corAlign::handle_state(), visxCtrl.core.visxCtrl::handle_temp_ccd(), dbIngest.dbIngest::ingest_line(), dbIngest.dbIngest::launch_followers(), audibleAlerts.core.AudibleAlerts::load_personality(), adcCtrl.app.adcCtrl::loop(), audibleAlerts.core.AudibleAlerts::loop(), corAlign.corAlign::loop(), dbIngest.dbIngest::loop(), pupilCorAlign.pupilCorAlign::loop(), visxCtrl.core.visxCtrl::loop(), corAlign.corAlign::measure_fpm_mask_shift(), audibleAlerts.core.AudibleAlerts::preprocess(), audibleAlerts.core.AudibleAlerts::reaction_handler(), dbIngest.dbIngest::refresh_properties(), visxCtrl.core.visxCtrl::refresh_properties(), adcCtrl.app.adcCtrl::send_command(), adcCtrl.app.adcCtrl::setup(), camtipSR.core.camtipSR::setup(), corAlign.corAlign::setup(), efcControl.efcControl::setup(), pupilCorAlign.pupilCorAlign::setup(), sparkleTracker.sparkleTracker::setup(), pupilCorAlign.pupilCorAlign::stages_are_ready(), visxCtrl.core.visxCtrl::subscribe_to_other_devices(), adcCtrl.app.adcCtrl::transition_to_idle(), camtipSR.core.camtipSR::transition_to_idle(), corAlign.corAlign::transition_to_idle(), pupilCorAlign.pupilCorAlign::update_properties(), adcCtrl.app.adcCtrl::update_wavelength(), and audibleAlerts.core.AudibleAlerts::walkup_handler().
|
inherited |
Handle a log message from the logging system.
This is a callback from the logManager, and is called when the log thread is processing log entries.
Decides whether to display to stderr and whether to send via INDI.
Definition at line 2089 of file MagAOXApp.hpp.
References b(), flatlogs::logPrio::LOG_ERROR, flatlogs::logPrio::LOG_NOTICE, flatlogs::logHeader::logLevel(), MagAOX::logger::logMinStdFormat(), MagAOX::logger::logStdFormat(), MagAOX::app::msg, flatlogs::timespecX::time_ns, flatlogs::timespecX::time_s, and flatlogs::logHeader::timespec().
|
inherited |
Get the loop pause time.
Definition at line 4017 of file MagAOXApp.hpp.
|
inherited |
Callback to process a NEW analog-gain request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1120 of file stdCamera.hpp.
|
protectedinherited |
The callback called by the static version, to actually process the FSM Alert Clear request.
| [in] | ipRecv | the INDI property sent with the new property request. |
Definition at line 3851 of file MagAOXApp.hpp.
References INDI_IDLE, and MagAOX::app::ipRecv.
|
inherited |
Callback to process a NEW cropMode request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1196 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW EM gain request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1040 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW exposure time request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1060 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW fan speed request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1100 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW fps request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1080 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW goto-focus request.
| [in] | ipRecv | the INDI property sent with the new property request. |
Definition at line 1360 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW LED request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1140 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW mode request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1168 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW readout speed request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1000 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW reconfigure request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1176 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW bin_x request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1236 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW bin_y request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1244 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW roi_check request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1264 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW roi_default request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1324 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW roi_full request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1292 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW roi_fullbin request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1300 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW roi_h request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1228 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW roi_last request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1316 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW roi_loadlast request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1308 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW roi_set request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1284 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW roi_w request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1220 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW roi_x request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1204 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW roi_y request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1212 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW shutter request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1344 of file stdCamera.hpp.
|
inherited |
The callback function for stdCamera properties.
Dispatches to the relevant handler
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 940 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW synchro request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1160 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW CCD temp request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 960 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW CCD temp control request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 980 of file stdCamera.hpp.
|
inherited |
Callback to process a NEW vshift speed request.
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 1020 of file stdCamera.hpp.
|
inlineinherited |
Update retry tracking after sending a GetProperties request for a monitored Set-property.
| callBack | [in/out] the subscription retry state to update | |
| [in] | now | the current monotonic time for scheduling |
Definition at line 3193 of file MagAOXApp.hpp.
References flatlogs::logPrio::LOG_NOTICE, MagAOX::app::MagAOXApp< _useINDI >::indiCallBack::m_missingLogged, MagAOX::app::MagAOXApp< _useINDI >::indiCallBack::m_nextRetry, MagAOX::app::MagAOXApp< _useINDI >::indiCallBack::m_retryCount, MagAOX::app::MagAOXApp< _useINDI >::indiCallBack::m_retryDelay, and MagAOX::app::MagAOXApp< _useINDI >::indiCallBack::property.
|
inlinevirtual |
Actions required when the camera power turns off.
Reimplemented from MagAOX::app::MagAOXApp< _useINDI >.
Definition at line 820 of file cred2Ctrl.hpp.
References MagAOX::app::cred2Temps::frontend, MagAOX::app::cred2Temps::heatsink, MagAOX::app::lock(), MagAOX::app::MagAOXApp< _useINDI >::log(), MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ccdTemp, MagAOX::app::MagAOXApp< _useINDI >::m_indiMutex, m_indiP_temps, MagAOX::app::MagAOXApp< _useINDI >::m_powerOnCounter, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlOnTarget, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlStatus, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlStatusStr, m_temps, MagAOX::app::cred2Temps::motherboard, MagAOX::app::cred2Temps::peltier, MagAOX::app::cred2Temps::powerboard, MagAOX::app::cred2Temps::setInvalid(), MagAOX::app::cred2Temps::setpoint, MagAOX::app::cred2Temps::snake, and MagAOX::app::MagAOXApp< _useINDI >::updateIfChanged().
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
protectedinherited |
Definition at line 279 of file frameGrabber.hpp.
|
inherited |
Definition at line 190 of file edtCamera.hpp.
|
inherited |
Configure the EDT framegrabber.
| [in] | cfgname | The configuration name for the mode to set |
Definition at line 100 of file edtCamera.hpp.
|
inherited |
Definition at line 192 of file edtCamera.hpp.
|
inherited |
Send a serial command over cameralink and retrieve the response.
| [out] | response | the response to the command from the device |
| [in] | command | the command to send to the device |
| [in] | logErrors | log serial transport failures when true |
Definition at line 94 of file edtCamera.hpp.
|
inherited |
Definition at line 188 of file edtCamera.hpp.
|
staticprivateinherited |
Return success when the derived class does not expose a post-publication hook.
| [in] | hookOwner | derived object lacking the optional hook |
| [in] | imageStream | published image stream |
| [in] | callPriorityTag | fallback overload selector |
Definition at line 323 of file frameGrabber.hpp.
|
staticprivateinherited |
Call an optional derived-class hook after the main stream publication completes.
| [in] | hookOwner | derived object that may expose the hook |
| [in] | imageStream | published image stream |
| [in] | callPriorityTag | overload selector preferring the hook |
Definition at line 317 of file frameGrabber.hpp.
|
inline |
Set defaults for a power-on state.
Definition at line 1356 of file cred2Ctrl.hpp.
References MagAOX::app::dev::stdCamera< cred2Ctrl >::m_analogGainNameSet, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_analogGainValid, m_cameraCropEnabled, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_currentROI, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_default_bin_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_default_bin_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_default_h, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_default_w, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_default_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_default_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_defaultFanSpeed, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_defaultLEDState, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fanSpeedNameSet, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fanSpeedValid, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ledStateSet, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ledStateValid, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_nextROI, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlOnTarget, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlStatus, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlStatusSet, and MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlStatusStr.
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
protectedinherited |
This method tests whether the power on wait time has elapsed.
You would call this once per appLogic loop while in state POWERON. While false, you would return 0. Once it becomes true, take post-power-on actions and go on with life.
Definition at line 3884 of file MagAOXApp.hpp.
Referenced by MagAOX::app::picoMotorCtrl::appLogic(), MagAOX::app::smc100ccCtrl::appLogic(), and MagAOX::app::xt1121Ctrl::appLogic().
|
inherited |
Returns the current power state.
If power management is not enabled, this always returns 1=On.
Definition at line 3903 of file MagAOXApp.hpp.
Referenced by MagAOX::app::ocam2KCtrl::acquireAndCheckValid(), MagAOX::app::andorCtrl::appLogic(), appLogic(), MagAOX::app::hsfwCtrl::appLogic(), MagAOX::app::ocam2KCtrl::appLogic(), MagAOX::app::picamCtrl::appLogic(), MagAOX::app::picoMotorCtrl::appLogic(), MagAOX::app::picamCtrl::capExpTime(), MagAOX::app::picoMotorCtrl::channelThreadExec(), MagAOX::app::ocam2KCtrl::configureAcquisition(), MagAOX::app::picamCtrl::configureAcquisition(), MagAOX::app::picamCtrl::connect(), MagAOX::app::picamCtrl::getAcquisitionState(), MagAOX::app::ocam2KCtrl::getEMGain(), MagAOX::app::picamCtrl::getFanSpeed(), MagAOX::app::ocam2KCtrl::getFPS(), MagAOX::app::picamCtrl::getPicamParameter(), MagAOX::app::picamCtrl::getPicamParameter(), MagAOX::app::ocam2KCtrl::getTemps(), MagAOX::app::picamCtrl::getTemps(), MagAOX::app::hsfwCtrl::moveTo(), MagAOX::app::ocam2KCtrl::resetEMProtection(), sendCommand(), MagAOX::app::ocam2KCtrl::setEMGain(), MagAOX::app::picamCtrl::setEMGain(), MagAOX::app::picamCtrl::setExpTime(), MagAOX::app::ocam2KCtrl::setFPS(), MagAOX::app::picamCtrl::setPicamParameter(), MagAOX::app::picamCtrl::setPicamParameter(), MagAOX::app::picamCtrl::setPicamParameter(), MagAOX::app::picamCtrl::setPicamParameterOnline(), MagAOX::app::picamCtrl::setPicamParameterOnline(), MagAOX::app::ocam2KCtrl::setSynchro(), MagAOX::app::ocam2KCtrl::setTempControl(), MagAOX::app::ocam2KCtrl::setTempSetPt(), and MagAOX::app::hsfwCtrl::startHoming().
|
inherited |
Returns the target power state.
If power management is not enabled, this always returns 1=On.
Definition at line 3914 of file MagAOXApp.hpp.
Referenced by MagAOX::app::ocam2KCtrl::acquireAndCheckValid(), MagAOX::app::andorCtrl::appLogic(), appLogic(), MagAOX::app::hsfwCtrl::appLogic(), MagAOX::app::ocam2KCtrl::appLogic(), MagAOX::app::picamCtrl::appLogic(), MagAOX::app::picoMotorCtrl::appLogic(), MagAOX::app::picamCtrl::capExpTime(), MagAOX::app::picoMotorCtrl::channelThreadExec(), MagAOX::app::ocam2KCtrl::configureAcquisition(), MagAOX::app::picamCtrl::configureAcquisition(), MagAOX::app::picamCtrl::connect(), MagAOX::app::picamCtrl::getAcquisitionState(), MagAOX::app::ocam2KCtrl::getEMGain(), MagAOX::app::picamCtrl::getFanSpeed(), MagAOX::app::ocam2KCtrl::getFPS(), MagAOX::app::picamCtrl::getPicamParameter(), MagAOX::app::picamCtrl::getPicamParameter(), MagAOX::app::ocam2KCtrl::getTemps(), MagAOX::app::picamCtrl::getTemps(), MagAOX::app::hsfwCtrl::moveTo(), MagAOX::app::ocam2KCtrl::resetEMProtection(), sendCommand(), MagAOX::app::ocam2KCtrl::setEMGain(), MagAOX::app::picamCtrl::setEMGain(), MagAOX::app::picamCtrl::setExpTime(), MagAOX::app::ocam2KCtrl::setFPS(), MagAOX::app::picamCtrl::setPicamParameter(), MagAOX::app::picamCtrl::setPicamParameter(), MagAOX::app::picamCtrl::setPicamParameter(), MagAOX::app::picamCtrl::setPicamParameterOnline(), MagAOX::app::picamCtrl::setPicamParameterOnline(), MagAOX::app::ocam2KCtrl::setSynchro(), MagAOX::app::ocam2KCtrl::setTempControl(), MagAOX::app::ocam2KCtrl::setTempSetPt(), and MagAOX::app::hsfwCtrl::startHoming().
|
inline |
Reconfigure the EDT board for the pending ROI.
Definition at line 1714 of file cred2Ctrl.hpp.
References MagAOX::app::stateCodes::CONFIGURING, MagAOX::app::MagAOXApp< _useINDI >::log(), m_cameraMutex, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_modeName, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_nextMode, MagAOX::app::stateCodes::READY, MagAOX::app::dev::stdCamera< cred2Ctrl >::recordCamera(), setSerialBaud(), MagAOX::app::MagAOXApp< _useINDI >::state(), and writeConfig().
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Definition at line 1412 of file stdCamera.hpp.
|
inherited |
Definition at line 310 of file frameGrabber.hpp.
|
inline |
Record the detailed C-RED 2 temperature telemetry.
Definition at line 1747 of file cred2Ctrl.hpp.
References recordTemps().
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inline |
Record framegrabber timing telemetry.
Definition at line 1757 of file cred2Ctrl.hpp.
References MagAOX::app::dev::frameGrabber< cred2Ctrl >::recordFGTimings().
|
inline |
Record standard camera telemetry.
Definition at line 1752 of file cred2Ctrl.hpp.
References MagAOX::app::dev::stdCamera< cred2Ctrl >::recordCamera().
Record the detailed C-RED 2 temperature telemetry when values change.
| [in] | force | force a telemetry record even if the cached values match |
Definition at line 1762 of file cred2Ctrl.hpp.
Referenced by getTemps(), recordTelem(), and libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Register an INDI property which is exposed for others to request a New Property for, with a switch rule.
This verison sets up the INDI property according to the arguments.
| [out] | prop | the property to register |
| [in] | propName | the name of the property |
| [in] | propType | the type of the property |
| [in] | propPerm | the permissions of the property |
| [in] | propState | the state of the property |
| [in] | propRule | the switch rule type |
|
inherited |
Register an INDI property which is exposed for others to request a New Property for.
This verison sets up the INDI property according to the arguments.
| [out] | prop | the property to register |
| [in] | propName | the name of the property |
| [in] | propType | the type of the property |
| [in] | propPerm | the permissions of the property |
| [in] | propState | the state of the property |
|
inherited |
Register an INDI property which is exposed for others to request a New Property for.
In this version the supplied IndiProperty must be fully set up before passing in.
| [in] | prop | the property to register, must be fully set up |
Referenced by MagAOX::app::filterWheelCtrl::appStartup(), MagAOX::app::magAOXMaths::appStartup(), MagAOX::app::ocam2KCtrl::appStartup(), MagAOX::app::picoMotorCtrl::appStartup(), MagAOX::app::siglentSDG::appStartup(), MagAOX::app::streamWriter::appStartup(), MagAOX::app::sysMonitor::appStartup(), MagAOX::app::zaberCtrl::appStartup(), and libXWCTest::appTest::MagAOXAppTest::SCENARIO().
|
inherited |
Register an INDI property which is read only.
This version requires the property be fully set up.
| [in] | prop | the property to register, must be completely setup |
Definition at line 2981 of file MagAOXApp.hpp.
References MagAOX::app::lock().
Referenced by appStartup(), MagAOX::app::picamCtrl::appStartup(), and MagAOX::app::zaberCtrl::appStartup().
|
inherited |
Register an INDI property which is read only.
This verison sets up the INDI property according to the arguments.
| [out] | prop | the property to register, will be configured |
| [in] | propName | the name of the property |
| [in] | propType | the type of the property |
| [in] | propPerm | the permissions of the property |
| [in] | propState | the state of the property |
Definition at line 3013 of file MagAOXApp.hpp.
References MagAOX::app::lock().
|
inherited |
Register an INDI property which is monitored for updates from others.
| [out] | prop | the property to register |
| [in] | devName | the device which owns this property |
| [in] | propName | the name of the property |
Definition at line 3128 of file MagAOXApp.hpp.
References MagAOX::app::lock().
|
inlineinherited |
Reset retry tracking for a monitored INDI Set-property subscription.
| callBack | [in/out] the subscription retry state to reset |
Definition at line 3166 of file MagAOXApp.hpp.
References MagAOX::app::MagAOXApp< _useINDI >::indiCallBack::m_missingLogged, MagAOX::app::MagAOXApp< _useINDI >::indiCallBack::m_nextRetry, MagAOX::app::MagAOXApp< _useINDI >::indiCallBack::m_retryCount, and MagAOX::app::MagAOXApp< _useINDI >::indiCallBack::m_retryDelay.
|
inherited |
Get the secrets path.
Definition at line 4005 of file MagAOXApp.hpp.
|
inlineprotected |
Send a command over Camera Link serial and clean the response.
| [out] | response | cleaned command response |
| [in] | command | CLI command to send |
| [in] | logFailure | log transport failures when true |
Definition at line 888 of file cred2Ctrl.hpp.
References MagAOX::app::cred2CleanResponse(), MagAOX::app::MagAOXApp< _useINDI >::log(), m_cameraMutex, MagAOX::app::dev::edtCamera< cred2Ctrl >::pdvSerialWriteRead(), MagAOX::app::MagAOXApp< _useINDI >::powerState(), and MagAOX::app::MagAOXApp< _useINDI >::powerStateTarget().
Referenced by appLogic(), getAnalogGain(), getFanSpeed(), getFPS(), getLEDState(), getTemps(), issueCommand(), syncROIFromCamera(), libXWCTest::cred2CtrlTest::TEST_CASE(), and updateFPSLimits().
|
inherited |
Definition at line 3345 of file MagAOXApp.hpp.
References MagAOX::app::it, and MagAOX::app::lock().
|
inherited |
Format and send the configured goto-focus switch command.
Definition at line 823 of file stdCamera.hpp.
|
protectedinherited |
Send a newProperty command to another device (using the INDI Client interface)
| [in] | ipSend | The property to send a "new" INDI command for |
Definition at line 3787 of file MagAOXApp.hpp.
|
protectedinherited |
Send a newProperty command to another device (using the INDI Client interface)
Copies the input IndiProperty, then updates the element with the new value.
| [in] | ipSend | The property to send a "new" INDI command for |
| [in] | el | The element of the property to change |
| [in] | newVal | The value to request for the element. |
Definition at line 3751 of file MagAOXApp.hpp.
References MagAOX::app::MagAOXApp< _useINDI >::sendNewProperty().
Referenced by MagAOX::app::ttmModulator::modTTM(), MagAOX::app::zaberCtrl::moveTo(), MagAOX::app::ttmModulator::offset12(), MagAOX::app::ttmModulator::offsetXY(), MagAOX::app::ttmModulator::restTTM(), MagAOX::app::MagAOXApp< _useINDI >::sendNewProperty(), MagAOX::app::picamCtrl::setExpTime(), MagAOX::app::ocam2KCtrl::setFPS(), MagAOX::app::picamCtrl::setSynchro(), MagAOX::app::ttmModulator::setTTM(), MagAOX::app::zaberCtrl::startHoming(), MagAOX::app::zaberCtrl::stop(), MagAOX::app::xt1121DCDU::turnOutletOff(), MagAOX::app::xt1121DCDU::turnOutletOn(), and MagAOX::app::picamCtrl::updateFxnGenSync().
|
protectedinherited |
Send a new property commmand for a standard toggle switch.
| [in] | device | The device name |
| [in] | property | The property name |
| [in] | onoff | Switch state to send: true = on, false = off |
Definition at line 3808 of file MagAOXApp.hpp.
|
inline |
Send the requested analog-gain mode to the camera.
Definition at line 1478 of file cred2Ctrl.hpp.
References getAnalogGain(), issueCommand(), MagAOX::app::MagAOXApp< _useINDI >::log(), and MagAOX::app::dev::stdCamera< cred2Ctrl >::m_analogGainNameSet.
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Interface to setAnalogGain when the derivedT does not expose analog-gain controls.
Tag-dispatch resolution of analog-gain control availability will call this function. This prevents requiring derivedT to have its own setAnalogGain().
Definition at line 1113 of file stdCamera.hpp.
|
inherited |
Interface to setAnalogGain when the derivedT exposes analog-gain controls.
Tag-dispatch resolution of analog-gain control availability will call this function. Calls derivedT::setAnalogGain.
Definition at line 1107 of file stdCamera.hpp.
|
inherited |
The callback which caches external focus-helper switch-property updates.
| [in] | ipRecv | the INDI property sent with the set-property update. |
Definition at line 1370 of file stdCamera.hpp.
|
inherited |
Interface to setCropMode when the derivedT does not have crop mode.
Tag-dispatch resolution of c_stdCamera_cropMode==false will call this function. This prevents requiring derivedT to have its own setCropMode().
Definition at line 1189 of file stdCamera.hpp.
|
inherited |
Interface to setCropMode when the derivedT has crop mode.
Tag-dispatch resolution of c_stdCamera_cropMode==true will call this function. Calls derivedT::setCropMode.
Definition at line 1183 of file stdCamera.hpp.
|
virtualinherited |
Set the paths for config files.
Replaces the mx::application defaults with the MagAO-X config system.
This function parses the CL for "-n" or "--name".
Do not override this unless you intend to depart from the MagAO-X standard.
| [in] | argc | standard command line result specifying number of arguments in argv |
| [in] | argv | standard command line result containing the arguments. |
Definition at line 1374 of file MagAOXApp.hpp.
References MAGAOX_calibRelPath, MAGAOX_configRelPath, MAGAOX_env_calib, MAGAOX_env_config, MAGAOX_env_cpuset, MAGAOX_env_log, MAGAOX_env_path, MAGAOX_env_secrets, MAGAOX_env_sys, MAGAOX_logRelPath, MAGAOX_path, MAGAOX_secretsRelPath, and MAGAOX_sysRelPath.
|
inherited |
Interface to setEMGain when the derivedT does not have EM Gain.
Tag-dispatch resolution of c_stdCamera_emGain==false will call this function. This prevents requiring derivedT to have its own setEMGain().
Definition at line 1033 of file stdCamera.hpp.
|
inherited |
Interface to setEMGain when the derivedT has EM Gain.
Tag-dispatch resolution of c_stdCamera_emGain==true will call this function. Calls derivedT::setEMGain.
Definition at line 1027 of file stdCamera.hpp.
|
privateinherited |
Set the effective user ID to the called value, i.e. the highest possible.
If setuid is set on the file, this will be super-user privileges.
Reference: http://pubs.opengroup.org/onlinepubs/009695399/functions/seteuid.html
Definition at line 2252 of file MagAOXApp.hpp.
Referenced by MagAOX::app::MagAOXApp< _useINDI >::elevatedPrivileges::elevate().
|
privateinherited |
Set the effective user ID to the real value, i.e. the file owner.
Reference: http://pubs.opengroup.org/onlinepubs/009695399/functions/seteuid.html
Definition at line 2270 of file MagAOXApp.hpp.
Referenced by MagAOX::app::MagAOXApp< _useINDI >::elevatedPrivileges::restore().
|
inline |
Required by stdCamera, but unused for C-RED 2.
Definition at line 1515 of file cred2Ctrl.hpp.
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Interface to setExptime when the derivedT does not use exposure time controls.
Tag-dispatch resolution of c_stdCamera_exptimeCtrl==false will call this function. This prevents requiring derivedT to have its own setExpTime().
Definition at line 1053 of file stdCamera.hpp.
|
inherited |
Interface to setExpTime when the derivedT uses exposure time controls.
Tag-dispatch resolution of c_stdCamera_exptimeCtrl==true will call this function. Calls derivedT::setExpTime.
Definition at line 1047 of file stdCamera.hpp.
|
inline |
Send the requested fan-control mode to the camera.
Definition at line 1447 of file cred2Ctrl.hpp.
References getFanSpeed(), issueCommand(), MagAOX::app::MagAOXApp< _useINDI >::log(), and MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fanSpeedNameSet.
Referenced by appLogic(), and libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Interface to setFanSpeed when the derivedT does not expose fan controls.
Tag-dispatch resolution of fan control availability will call this function. This prevents requiring derivedT to have its own setFanSpeed().
Definition at line 1093 of file stdCamera.hpp.
|
inherited |
Interface to setFanSpeed when the derivedT exposes fan controls.
Tag-dispatch resolution of fan control availability will call this function. Calls derivedT::setFanSpeed.
Definition at line 1087 of file stdCamera.hpp.
|
inline |
Send the requested frame rate to the camera.
Definition at line 1426 of file cred2Ctrl.hpp.
References getFPS(), issueCommand(), MagAOX::app::MagAOXApp< _useINDI >::log(), flatlogs::logPrio::LOG_ERROR, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fpsSet, and MagAOX::app::dev::stdCamera< cred2Ctrl >::m_maxFPS.
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Interface to setFPS when the derivedT does not use FPS controls.
Tag-dispatch resolution of c_stdCamera_hasFPS==false will call this function. This prevents requiring derivedT to have its own setFPS().
Definition at line 1073 of file stdCamera.hpp.
|
inherited |
Interface to setFPS when the derivedT uses FPS controls.
Tag-dispatch resolution of c_stdCamera_fpsCtrl==true will call this function. Calls derivedT::setFPS.
Definition at line 1067 of file stdCamera.hpp.
|
inline |
Send the requested LED state to the camera.
Definition at line 1495 of file cred2Ctrl.hpp.
References getLEDState(), issueCommand(), and MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ledStateSet.
Referenced by appLogic(), and libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Interface to setLED when the derivedT does not expose LED controls.
Tag-dispatch resolution of LED control availability will call this function. This prevents requiring derivedT to have its own setLED().
Definition at line 1133 of file stdCamera.hpp.
|
inherited |
Interface to setLED when the derivedT exposes LED controls.
Tag-dispatch resolution of LED control availability will call this function. Calls derivedT::setLED.
Definition at line 1127 of file stdCamera.hpp.
|
inline |
Request that the next valid ROI be applied through reconfiguration.
Definition at line 1558 of file cred2Ctrl.hpp.
References checkNextROI(), MagAOX::app::stateCodes::CONFIGURING, INDI_IDLE, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_default, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_full, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_last, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_set, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_modeName, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_nextMode, MagAOX::app::dev::frameGrabber< cred2Ctrl >::m_reconfig, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_startupMode, MagAOX::app::dev::stdCamera< cred2Ctrl >::recordCamera(), MagAOX::app::MagAOXApp< _useINDI >::state(), and MagAOX::app::MagAOXApp< _useINDI >::updateSwitchIfChanged().
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Interface to setNextROI when the derivedT does not use ROIs.
Tag-dispatch resolution of c_stdCamera_usesROI==false will call this function. This prevents requiring derivedT to have its own setNextROI().
Definition at line 1277 of file stdCamera.hpp.
|
inherited |
Interface to setNextROI when the derivedT uses ROIs.
Tag-dispatch resolution of c_stdCamera_usesROI==true will call this function. Calls derivedT::setNextROI.
Definition at line 1271 of file stdCamera.hpp.
|
inherited |
Interface to setReadoutSpeed when the derivedT does not have readout speed control.
Tag-dispatch resolution of c_stdCamera_readoutSpeed==false will call this function. Just returns 0.
Definition at line 993 of file stdCamera.hpp.
|
inherited |
Interface to setReadoutSpeed when the derivedT has readout speed control.
Tag-dispatch resolution of c_stdCamera_readoutSpeed==true will call this function. Calls derivedT::setReadoutSpeed.
Definition at line 987 of file stdCamera.hpp.
|
inlineprotected |
Apply and verify the configured Camera Link serial baud rate.
Definition at line 1047 of file cred2Ctrl.hpp.
References MagAOX::app::MagAOXApp< _useINDI >::log(), MagAOX::app::dev::edtCamera< cred2Ctrl >::m_pdv, and m_serialBaud.
Referenced by appStartup(), reconfig(), and syncROIFromCamera().
|
inherited |
Interface to setShutter when the derivedT does not have a shutter.
Tag-dispatch resolution of c_stdCamera_hasShutter==false will call this function. This prevents requiring derivedT to have its own setShutter().
Definition at line 1337 of file stdCamera.hpp.
|
inherited |
Interface to setShutter when the derivedT has a shutter.
Tag-dispatch resolution of c_stdCamera_hasShutter==true will call this function. Calls derivedT::setShutter.
Definition at line 1331 of file stdCamera.hpp.
|
privateinherited |
Sets the handler for SIGTERM, SIGQUIT, and SIGINT.
Definition at line 2141 of file MagAOXApp.hpp.
References flatlogs::logPrio::LOG_DEBUG.
|
inherited |
Interface to setSynchro when the derivedT does not have synchronization.
Tag-dispatch resolution of c_stdCamera_ynchro==false will call this function. This prevents requiring derivedT to have its own setSynchro().
Definition at line 1153 of file stdCamera.hpp.
|
inherited |
Interface to setSynchro when the derivedT has synchronization.
Tag-dispatch resolution of c_stdCamera_synchro==true will call this function. Calls derivedT::setSynchro.
Definition at line 1147 of file stdCamera.hpp.
|
inline |
Implement the C-RED 2 temperature-controller toggle semantics.
Definition at line 1382 of file cred2Ctrl.hpp.
References MagAOX::app::MagAOXApp< _useINDI >::log(), flatlogs::logPrio::LOG_NOTICE, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ccdTempSetpt, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlStatusSet, and setTempSetPt().
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Interface to setTempControl when the derivedT does not have temperature control.
Tag-dispatch resolution of c_stdCamera_tempControl==false will call this function. Prevents requiring derivedT::setTempControl.
Definition at line 973 of file stdCamera.hpp.
|
inherited |
Interface to setTempControl when the derivedT has temperature control.
Tag-dispatch resolution of c_stdCamera_tempControl==true will call this function. Calls derivedT::setTempControl.
Definition at line 967 of file stdCamera.hpp.
|
inline |
Send the current target detector temperature setpoint to the camera.
Definition at line 1400 of file cred2Ctrl.hpp.
References issueCommand(), MagAOX::app::MagAOXApp< _useINDI >::log(), flatlogs::logPrio::LOG_ERROR, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_ccdTempSetpt, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_maxTemp, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlOnTarget, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlStatus, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlStatusSet, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_tempControlStatusStr, and MagAOX::app::dev::stdCamera< cred2Ctrl >::recordCamera().
Referenced by appLogic(), setTempControl(), and libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Interface to setTempSetPt when the derivedT does not have temperature control.
Tag-dispatch resolution of c_stdCamera_tempControl==false will call this function. Prevents requiring derivedT::setTempSetPt.
Definition at line 953 of file stdCamera.hpp.
|
inherited |
Interface to setTempSetPt when the derivedT has temperature control.
Tag-dispatch resolution of c_stdCamera_tempControl==true will call this function. Calls derivedT::setTempSetPt.
Definition at line 947 of file stdCamera.hpp.
|
virtualinherited |
The basic MagAO-X configuration setup method. Should not normally be overridden.
This method sets up the config system with the standard MagAO-X key=value pairs.
Though it is virtual, it should not normally be overridden unless you need to depart from the MagAO-X standard.
Setting up app specific config goes in setupConfig() implemented in the derived class.
Definition at line 1491 of file MagAOXApp.hpp.
|
inlinevirtual |
Setup the configuration system.
Definition at line 476 of file cred2Ctrl.hpp.
References FRAMEGRABBER_SETUP_CONFIG, MagAOX::app::dev::edtCamera< derivedT >::setupConfig(), STDCAMERA_SETUP_CONFIG, and TELEMETER_SETUP_CONFIG.
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
Setup an application configurator for the device section.
| [in] | config | an application configuration to setup |
Definition at line 112 of file telemeter.hpp.
|
inherited |
Setup the configuration system.
This should be called in derivedT::setupConfig as
with appropriate error checking.
| [out] | config | the derived classes configurator |
Definition at line 110 of file edtCamera.hpp.
|
inherited |
Setup the configuration system.
This should be called in derivedT::setupConfig as
with appropriate error checking.
| [out] | config | the derived classes configurator |
Definition at line 192 of file frameGrabber.hpp.
|
inherited |
Setup the configuration system.
This should be called in derivedT::setupConfig as
with appropriate error checking.
| [out] | config | the derived classes configurator |
Definition at line 800 of file stdCamera.hpp.
|
inherited |
Interface to setVShiftSpeed when the derivedT does not have vshift speed control.
Tag-dispatch resolution of c_stdCamera_vShiftSpeed==false will call this function. Just returns 0.
Definition at line 1013 of file stdCamera.hpp.
|
inherited |
Interface to setVShiftSpeed when the derivedT has vshift speed control.
Tag-dispatch resolution of c_stdCamera_vShiftSpeed==true will call this function. Calls derivedT::setVShiftSpeed.
Definition at line 1007 of file stdCamera.hpp.
|
inherited |
Get the value of the shutdown flag.
Definition at line 4023 of file MagAOXApp.hpp.
Referenced by MagAOX::app::xt1121Ctrl::channelSetCallback(), MagAOX::app::xt1121Ctrl::getState(), MagAOX::app::streamWriter::swThreadExec(), and libXWCTest::xInstGraphTest::TEST_CASE().
|
staticprotectedinherited |
The static callback function to be registered for requesting to clear the FSM alert.
| [in] | app | a pointer to this, will be static_cast-ed to MagAOXApp. |
| [in] | ipRecv | the INDI property sent with the new property request. |
Definition at line 3845 of file MagAOXApp.hpp.
References MagAOX::app::ipRecv.
|
staticinherited |
The static callback function to be registered for stdCamera properties.
Calls newCallback_stdCamera
| [in] | app | a pointer to this, will be static_cast-ed to derivedT. |
| [in] | ipRecv | the INDI property sent with the the new property request. |
Definition at line 929 of file stdCamera.hpp.
|
staticinherited |
The static callback function registered for external focus-helper switch properties.
| [in] | app | a pointer to this, which will be static_cast-ed to derivedT |
| [in] | ipRecv | the INDI property sent with the set-property update |
Definition at line 1364 of file stdCamera.hpp.
|
inline |
Start frame acquisition on the EDT board.
Definition at line 1692 of file cred2Ctrl.hpp.
References MagAOX::app::MagAOXApp< _useINDI >::log(), MagAOX::app::stateCodes::OPERATING, MagAOX::app::dev::stdCamera< cred2Ctrl >::recordCamera(), and MagAOX::app::MagAOXApp< _useINDI >::state().
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
protectedinherited |
Start INDI Communications.
Definition at line 3288 of file MagAOXApp.hpp.
|
inherited |
Get the current state code.
Definition at line 2594 of file MagAOXApp.hpp.
Referenced by MagAOX::app::baslerCtrl::acquireAndCheckValid(), MagAOX::app::picamCtrl::acquireAndCheckValid(), MagAOX::app::qhyCtrl::acquireAndCheckValid(), MagAOX::app::acronameUsbHub::appLogic(), MagAOX::app::andorCtrl::appLogic(), MagAOX::app::baslerCtrl::appLogic(), MagAOX::app::cameraSim::appLogic(), appLogic(), MagAOX::app::filterWheelCtrl::appLogic(), MagAOX::app::hsfwCtrl::appLogic(), MagAOX::app::ocam2KCtrl::appLogic(), MagAOX::app::picamCtrl::appLogic(), MagAOX::app::picoMotorCtrl::appLogic(), MagAOX::app::siglentSDG::appLogic(), MagAOX::app::smc100ccCtrl::appLogic(), MagAOX::app::streamWriter::appLogic(), MagAOX::app::trippLitePDU::appLogic(), MagAOX::app::ttmModulator::appLogic(), MagAOX::app::xt1121Ctrl::appLogic(), MagAOX::app::xt1121DCDU::appLogic(), MagAOX::app::zaberCtrl::appLogic(), MagAOX::app::zylaCtrl::appLogic(), MagAOX::app::acronameUsbHub::appStartup(), MagAOX::app::andorCtrl::appStartup(), MagAOX::app::baslerCtrl::appStartup(), MagAOX::app::cameraSim::appStartup(), MagAOX::app::filterWheelCtrl::appStartup(), MagAOX::app::hsfwCtrl::appStartup(), MagAOX::app::magAOXMaths::appStartup(), MagAOX::app::qhyCtrl::appStartup(), MagAOX::app::smc100ccCtrl::appStartup(), MagAOX::app::sysMonitor::appStartup(), MagAOX::app::trippLitePDU::appStartup(), MagAOX::app::xt1121DCDU::appStartup(), MagAOX::app::zylaCtrl::appStartup(), MagAOX::app::andorCtrl::cameraSelect(), MagAOX::app::siglentSDG::changeAmp(), MagAOX::app::siglentSDG::changeFreq(), MagAOX::app::siglentSDG::changeOfst(), MagAOX::app::siglentSDG::changeOutp(), MagAOX::app::siglentSDG::changePhse(), MagAOX::app::siglentSDG::changeSync(), MagAOX::app::siglentSDG::changeWdth(), MagAOX::app::siglentSDG::changeWvtp(), MagAOX::app::picoMotorCtrl::channelThreadExec(), MagAOX::app::siglentSDG::checkSetup(), MagAOX::app::andorCtrl::configureAcquisition(), MagAOX::app::baslerCtrl::configureAcquisition(), MagAOX::app::cameraSim::configureAcquisition(), configureAcquisition(), MagAOX::app::ocam2KCtrl::configureAcquisition(), MagAOX::app::picamCtrl::configureAcquisition(), MagAOX::app::qhyCtrl::configureAcquisition(), MagAOX::app::baslerCtrl::connect(), MagAOX::app::picamCtrl::connect(), MagAOX::app::qhyCtrl::connect(), MagAOX::app::picamCtrl::getAcquisitionState(), MagAOX::app::smc100ccCtrl::getCtrlState(), MagAOX::app::baslerCtrl::getExpTime(), MagAOX::app::qhyCtrl::getExpTime(), MagAOX::app::picamCtrl::getFanSpeed(), MagAOX::app::baslerCtrl::getFPS(), MagAOX::app::baslerCtrl::getTemp(), MagAOX::app::qhyCtrl::getTemp(), MagAOX::app::picamCtrl::getTemps(), MagAOX::app::filterWheelCtrl::home(), MagAOX::app::baslerCtrl::loadImageIntoStream(), MagAOX::app::qhyCtrl::loadImageIntoStream(), MagAOX::app::hsfwCtrl::moveTo(), MagAOX::app::smc100ccCtrl::moveTo(), MagAOX::app::siglentSDG::queryBTWV(), MagAOX::app::siglentSDG::queryMDWV(), MagAOX::app::siglentSDG::querySWWV(), MagAOX::app::andorCtrl::reconfig(), reconfig(), MagAOX::app::ocam2KCtrl::reconfig(), MagAOX::app::picamCtrl::reconfig(), MagAOX::app::streamWriter::recordSavingState(), MagAOX::app::andorCtrl::setCropMode(), MagAOX::app::picamCtrl::setEMGain(), MagAOX::app::andorCtrl::setExpTime(), MagAOX::app::picamCtrl::setExpTime(), MagAOX::app::andorCtrl::setNextROI(), setNextROI(), MagAOX::app::qhyCtrl::setNextROI(), MagAOX::app::andorCtrl::setReadoutSpeed(), MagAOX::app::andorCtrl::setShutter(), MagAOX::app::andorCtrl::setVShiftSpeed(), MagAOX::app::andorCtrl::startAcquisition(), MagAOX::app::baslerCtrl::startAcquisition(), MagAOX::app::cameraSim::startAcquisition(), startAcquisition(), MagAOX::app::qhyCtrl::startAcquisition(), MagAOX::app::hsfwCtrl::startHoming(), MagAOX::app::ocam2KCtrl::stateStringValid(), MagAOX::app::streamWriter::swThreadExec(), libXWCTest::flowRPMTest::TEST_CASE(), MagAOX::app::acronameUsbHub::updateOutletState(), MagAOX::app::trippLitePDU::updateOutletStates(), and MagAOX::app::siglentSDG::writeRead().
|
inherited |
Set the current state code.
| [in] | s | The new application state |
| [in] | stateAlert | [optional] flag to set the alert state of the FSM property. |
Definition at line 2600 of file MagAOXApp.hpp.
References INDI_ALERT, INDI_BUSY, INDI_IDLE, INDI_OK, MagAOX::app::lock(), flatlogs::logPrio::LOG_CRITICAL, flatlogs::logPrio::LOG_ERROR, flatlogs::logPrio::LOG_INFO, and flatlogs::logPrio::LOG_WARNING.
|
inherited |
Get the value of the state alert flag.
Definition at line 2658 of file MagAOXApp.hpp.
|
inherited |
Updates and returns the value of m_stateLogged. Will be 0 on first call after a state change, >0 afterwards.
This method exists to facilitate logging the reason for a state change once, but not logging it on subsequent event loops. Returns the current value upon entry, but updates before returning so that the next call returns the incremented value. Example usage:
In this example, the log entry is made the first time the state changes. If there are no changes to a different state in the mean time, then when the event loop gets here again and decides it is not connected, the log entry will not be made.
Definition at line 2670 of file MagAOXApp.hpp.
Referenced by MagAOX::app::acronameUsbHub::appLogic(), MagAOX::app::filterWheelCtrl::appLogic(), MagAOX::app::hsfwCtrl::appLogic(), MagAOX::app::picoMotorCtrl::appLogic(), MagAOX::app::siglentSDG::appLogic(), MagAOX::app::smc100ccCtrl::appLogic(), MagAOX::app::trippLitePDU::appLogic(), MagAOX::app::ttmModulator::appLogic(), MagAOX::app::xt1121Ctrl::appLogic(), MagAOX::app::andorCtrl::cameraSelect(), MagAOX::app::baslerCtrl::connect(), MagAOX::app::picamCtrl::connect(), and MagAOX::app::qhyCtrl::connect().
|
inherited |
Interface to stateString when the derivedT does not provide it.
Tag-dispatch resolution of c_stdCamera_usesStateString==false will call this function. returns "".
Definition at line 1383 of file stdCamera.hpp.
|
inherited |
Interface to stateString when the derivedT provides it.
Tag-dispatch resolution of c_stdCamera_usesStateString==true will call this function. Calls derivedT::stateString.
Definition at line 1377 of file stdCamera.hpp.
|
inherited |
Interface to stateStringValid when the derivedT does not provide it.
Tag-dispatch resolution of c_stdCamera_usesStateString==false will call this function. returns false.
Definition at line 1395 of file stdCamera.hpp.
|
inherited |
Interface to stateStringValid when the derivedT provides it.
Tag-dispatch resolution of c_stdCamera_usesStateString==true will call this function. Calls derivedT::stateStringValid.
Definition at line 1389 of file stdCamera.hpp.
|
inline |
Query the camera for its current ROI and synchronize local state.
Definition at line 939 of file cred2Ctrl.hpp.
References MagAOX::app::cred2ParseCropState(), MagAOX::app::cred2ParseRange(), MagAOX::app::cred2RoiToCenter(), INDI_OK, MagAOX::app::MagAOXApp< _useINDI >::log(), m_cameraCropEnabled, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_currentROI, MagAOX::app::dev::frameGrabber< cred2Ctrl >::m_dataType, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_bin_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_bin_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_h, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_w, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_full_y, MagAOX::app::dev::frameGrabber< cred2Ctrl >::m_height, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_bin_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_bin_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_h, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_w, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_x, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_indiP_roi_y, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_modeName, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_nextMode, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_nextROI, MagAOX::app::dev::edtCamera< cred2Ctrl >::m_raw_height, MagAOX::app::dev::edtCamera< cred2Ctrl >::m_raw_width, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_startupMode, MagAOX::app::dev::frameGrabber< cred2Ctrl >::m_width, sendCommand(), setSerialBaud(), MagAOX::app::MagAOXApp< _useINDI >::updateIfChanged(), and writeConfig().
Referenced by appLogic(), and libXWCTest::cred2CtrlTest::TEST_CASE().
|
inherited |
|
inherited |
Make a telemetry recording.
Wrapper for logManager::log, which updates telT::lastRecord.
| logT | the log entry type |
| retval | the value returned by this method. |
| [in] | msg | the data to log |
Definition at line 95 of file telemeter.hpp.
|
inherited |
Start a thread, using this class's privileges to set priority, etc.
The thread initialization synchronizer bool is set to true at the beginning of this function, then is set to false once all initialization is complete. The thread exec function should wait until this is false before doing anything except setting the pid. This is to avoid privilege escalation bugs.
The interface of the thread start function is:
where impl is the derived class, and mThreadStart and myThreadExec are members of impl.
| [out] | thrd | The thread object to start executing |
| thrdInit | [in/out] The thread initilization synchronizer. | |
| tpid | [in/out] The thread pid to be filled in by thrdStart immediately upon call | |
| thProp | [in/out] The INDI property to publish the thread details | |
| [in] | thrdPrio | The r/t priority to set for this thread |
| [in] | cpuset | the cpuset to place this thread on. Ignored if "". |
| [in] | thrdName | The name of the thread (just for logging) |
| [in] | thrdThis | The this pointer to pass to the thread starter function |
| [in] | thrdStart | The thread starting function, a static function taking a this pointer as argument. |
Definition at line 2454 of file MagAOXApp.hpp.
References flatlogs::logPrio::LOG_NOTICE, and MAGAOX_RT_SCHED_POLICY.
Referenced by MagAOX::app::picoMotorCtrl::appStartup(), MagAOX::app::streamWriter::appStartup(), and MagAOX::app::sysMonitor::appStartup().
|
protectedinherited |
Remove the PID file.
Definition at line 2428 of file MagAOXApp.hpp.
|
protectedinherited |
Refresh the published focus.state property from the current helper or derived focus implementation.
Definition at line 842 of file stdCamera.hpp.
|
inline |
Query and update the current camera FPS limits.
Definition at line 1328 of file cred2Ctrl.hpp.
References MagAOX::app::cred2ParseFloat(), INDI_IDLE, MagAOX::app::MagAOXApp< _useINDI >::log(), MagAOX::app::dev::stdCamera< cred2Ctrl >::m_fpsSet, m_indiP_fpsLimits, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_maxFPS, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_minFPS, MagAOX::app::dev::stdCamera< cred2Ctrl >::recordCamera(), sendCommand(), and MagAOX::app::MagAOXApp< _useINDI >::updateIfChanged().
Referenced by appLogic(), and libXWCTest::cred2CtrlTest::TEST_CASE().
|
protectedinherited |
Update an INDI property element value if it has changed.
Will only peform a SetProperty if the new element value has changed compared to the stored value, or if the property state has changed.
This comparison is done in the true type of the value.
This is a specialization for const char * to std::string.
For a property with multiple elements, you should use the vector version to minimize network traffic. This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| p | [in/out] The property containing the element to possibly update | |
| [in] | el | The element name |
| [in] | newVal | the new value |
Definition at line 3618 of file MagAOXApp.hpp.
|
protectedinherited |
Update an INDI property if values have changed.
Will only peform a SetProperty if at least one value has changed compared to the stored value, or if the property state has changed.
Constructs the element names for each value as elX where X is the index of the vector.
This comparison is done in the true type of the value.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| p | [in/out] The property containing the element to possibly update | |
| [in] | el | Beginning of each element name |
| [in] | newVals | the new values |
| [in] | ipState | [optional] the new state |
Definition at line 3643 of file MagAOXApp.hpp.
|
protectedinherited |
Update an INDI property element value if it has changed.
Will only peform a SetProperty if the new element value has changed compared to the stored value, or if the property state has changed.
This comparison is done in the true type of the value.
For a property with multiple elements, you should use the vector version to minimize network traffic.
| p | [in/out] The property containing the element to possibly update | |
| [in] | el | The element name |
| [in] | newVal | the new value |
Definition at line 3599 of file MagAOXApp.hpp.
Referenced by MagAOX::app::filterWheelCtrl::appLogic(), MagAOX::app::ocam2KCtrl::appLogic(), MagAOX::app::picoMotorCtrl::appLogic(), MagAOX::app::smc100ccCtrl::appLogic(), MagAOX::app::ttmModulator::appLogic(), MagAOX::app::zaberCtrl::appLogic(), MagAOX::app::xt1121Ctrl::channelSetCallback(), MagAOX::app::baslerCtrl::checkNextROI(), MagAOX::app::cameraSim::checkNextROI(), checkNextROI(), MagAOX::app::andorCtrl::configureAcquisition(), MagAOX::app::baslerCtrl::configureAcquisition(), configureAcquisition(), MagAOX::app::picamCtrl::configureAcquisition(), MagAOX::app::qhyCtrl::configureAcquisition(), MagAOX::app::zylaCtrl::configureAcquisition(), MagAOX::app::ocam2KCtrl::getEMGain(), MagAOX::app::xt1121Ctrl::getState(), getTemps(), MagAOX::app::ocam2KCtrl::getTemps(), MagAOX::app::INDI_NEWCALLBACK_DEFN(), MagAOX::app::smc100ccCtrl::moveTo(), MagAOX::app::filterWheelCtrl::moveToRaw(), MagAOX::app::acronameUsbHub::onPowerOff(), onPowerOff(), MagAOX::app::ocam2KCtrl::onPowerOff(), MagAOX::app::siglentSDG::onPowerOff(), MagAOX::app::xt1121Ctrl::onPowerOff(), MagAOX::app::siglentSDG::queryBSWV(), MagAOX::app::siglentSDG::queryOUTP(), MagAOX::app::ocam2KCtrl::resetEMProtection(), MagAOX::app::picamCtrl::setExpTime(), syncROIFromCamera(), updateFPSLimits(), MagAOX::app::trippLitePDU::updateOutletStates(), MagAOX::app::magAOXMaths::updateVals(), and MagAOX::app::sysMonitor::updateVals().
|
protectedinherited |
Update an INDI property if values have changed.
Will only peform a SetProperty if at least one value has changed compared to the stored value, or if the property state has changed.
This comparison is done in the true type of the value.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| p | [in/out] The property containing the element to possibly update | |
| [in] | els | String vector of element names |
| [in] | newVals | the new values |
| [in] | newState | [optional] The state of the property |
Definition at line 3664 of file MagAOXApp.hpp.
|
inherited |
The static callback function to be registered for the channel properties.
Definition at line 228 of file edtCamera.hpp.
|
inherited |
Update the INDI properties for this device controller.
You should call this once per main loop. It is not called automatically.
Definition at line 302 of file frameGrabber.hpp.
|
inherited |
Update the INDI properties for this device controller.
You should call this once per main loop. It is not called automatically.
Definition at line 1404 of file stdCamera.hpp.
|
protectedinherited |
| p | [in/out] The property containing the element to possibly update | |
| [in] | els | String vector of element names |
| [in] | newVals | the new values |
| [in] | newState | [optional] The state of the property |
Definition at line 3680 of file MagAOXApp.hpp.
|
protectedinherited |
Update an INDI switch element value if it has changed.
Will only peform a SetProperty if the new element switch state has changed, or the propery state has changed.
| p | [in/out] The property containing the element to possibly update | |
| [in] | el | The element name |
| [in] | newVal | the new value |
Definition at line 3627 of file MagAOXApp.hpp.
Referenced by MagAOX::app::siglentSDG::appLogic(), MagAOX::app::picamCtrl::configureAcquisition(), MagAOX::app::INDI_NEWCALLBACK_DEFN(), MagAOX::app::siglentSDG::onPowerOff(), MagAOX::app::andorCtrl::setNextROI(), MagAOX::app::baslerCtrl::setNextROI(), MagAOX::app::cameraSim::setNextROI(), setNextROI(), MagAOX::app::picamCtrl::setNextROI(), MagAOX::app::qhyCtrl::setNextROI(), MagAOX::app::zylaCtrl::setNextROI(), MagAOX::app::ocam2KCtrl::setSynchro(), MagAOX::app::picamCtrl::setTempControl(), MagAOX::app::filterWheelCtrl::startHoming(), MagAOX::app::hsfwCtrl::startHoming(), MagAOX::app::smc100ccCtrl::startHoming(), MagAOX::app::zaberCtrl::startHoming(), MagAOX::app::filterWheelCtrl::stop(), MagAOX::app::hsfwCtrl::stop(), MagAOX::app::smc100ccCtrl::stop(), MagAOX::app::zaberCtrl::stop(), and MagAOX::app::sysMonitor::updateVals().
|
inlinevirtual |
Actions required while the camera remains powered off.
Reimplemented from MagAOX::app::MagAOXApp< _useINDI >.
Definition at line 858 of file cred2Ctrl.hpp.
References MagAOX::app::lock(), MagAOX::app::MagAOXApp< _useINDI >::log(), and MagAOX::app::MagAOXApp< _useINDI >::m_indiMutex.
Referenced by libXWCTest::cred2CtrlTest::TEST_CASE().
|
inline |
Write the temporary EDT configuration file for the pending ROI.
Definition at line 1579 of file cred2Ctrl.hpp.
References MagAOX::app::MagAOXApp< _useINDI >::log(), m_configFile, MagAOX::app::dev::stdCamera< cred2Ctrl >::m_nextROI, and m_serialBaud.
Referenced by loadConfigImpl(), reconfig(), syncROIFromCamera(), and libXWCTest::cred2CtrlTest::TEST_CASE().
|
friend |
Definition at line 1762 of file cred2Ctrl.hpp.
|
friend |
Definition at line 1762 of file cred2Ctrl.hpp.
|
friend |
Definition at line 1762 of file cred2Ctrl.hpp.
|
friend |
Definition at line 1762 of file cred2Ctrl.hpp.
Use an absolute temporary EDT config path.
Definition at line 83 of file cred2Ctrl.hpp.
Expose image flip controls through the framegrabber.
Definition at line 84 of file cred2Ctrl.hpp.
|
staticconstexprprotectedinherited |
True when the derived camera exposes analog-gain control.
Definition at line 462 of file stdCamera.hpp.
|
staticconstexprprotectedinherited |
True when the derived camera exposes fan-speed control.
Definition at line 458 of file stdCamera.hpp.
|
staticconstexprprotectedinherited |
True when the derived camera exposes focus-state and goto-focus support.
Definition at line 464 of file stdCamera.hpp.
|
staticconstexprprotectedinherited |
True when the derived camera exposes LED control.
Definition at line 460 of file stdCamera.hpp.
Expose discrete analog-gain controls.
Definition at line 75 of file cred2Ctrl.hpp.
Do not expose crop-mode controls separately.
Definition at line 80 of file cred2Ctrl.hpp.
Do not expose EM-gain controls.
Definition at line 70 of file cred2Ctrl.hpp.
Do not expose exposure-time controls.
Definition at line 71 of file cred2Ctrl.hpp.
Expose fan-speed controls.
Definition at line 74 of file cred2Ctrl.hpp.
Expose FPS status.
Definition at line 73 of file cred2Ctrl.hpp.
Expose FPS controls.
Definition at line 72 of file cred2Ctrl.hpp.
Do not expose shutter controls.
Definition at line 81 of file cred2Ctrl.hpp.
Expose status LED controls.
Definition at line 76 of file cred2Ctrl.hpp.
Do not expose readout-speed controls.
Definition at line 68 of file cred2Ctrl.hpp.
Do not expose synchro controls in the first pass.
Definition at line 77 of file cred2Ctrl.hpp.
Expose detector temperature status.
Definition at line 67 of file cred2Ctrl.hpp.
Expose temperature setpoint control.
Definition at line 66 of file cred2Ctrl.hpp.
Use one synthetic runtime mode rather than INDI modes.
Definition at line 78 of file cred2Ctrl.hpp.
Expose ROI controls.
Definition at line 79 of file cred2Ctrl.hpp.
Do not expose a dark-management state string.
Definition at line 82 of file cred2Ctrl.hpp.
Do not expose vertical-shift controls.
Definition at line 69 of file cred2Ctrl.hpp.
|
protectedinherited |
Definition at line 526 of file stdCamera.hpp.
|
protectedinherited |
Flag indicating that all registered Set properties have been updated since last Get.
Definition at line 709 of file MagAOXApp.hpp.
|
protectedinherited |
Current analog-gain option name.
Definition at line 581 of file stdCamera.hpp.
|
protectedinherited |
Optional GUI labels for the analog-gain options.
Definition at line 580 of file stdCamera.hpp.
|
protectedinherited |
Valid analog-gain option names for the INDI selection switch.
Definition at line 579 of file stdCamera.hpp.
|
protectedinherited |
Requested analog-gain option name.
Definition at line 582 of file stdCamera.hpp.
|
protectedinherited |
True once the current analog-gain state is known.
Definition at line 583 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 159 of file frameGrabber.hpp.
|
protectedinherited |
Definition at line 162 of file frameGrabber.hpp.
|
protectedinherited |
The base path of the MagAO-X system.
Definition at line 181 of file MagAOXApp.hpp.
|
protectedinherited |
The path to calibration files for MagAOX.
Definition at line 189 of file MagAOXApp.hpp.
Tracks whether this controller has enabled camera-side cropping.
Definition at line 102 of file cred2Ctrl.hpp.
Referenced by configureAcquisition(), powerOnDefaults(), and syncROIFromCamera().
|
protectedinherited |
Map holding the possible camera mode configurations.
Definition at line 471 of file stdCamera.hpp.
|
protected |
Protects serial command traffic and EDT reconfiguration.
Definition at line 105 of file cred2Ctrl.hpp.
Referenced by configureAcquisition(), reconfig(), and sendCommand().
|
protectedinherited |
The camera type according to the framegrabber.
Definition at line 84 of file edtCamera.hpp.
|
protectedinherited |
The FPS used to configure the circular buffers.
Definition at line 157 of file frameGrabber.hpp.
|
protectedinherited |
The current temperature, in C.
Definition at line 493 of file stdCamera.hpp.
|
protectedinherited |
The desired temperature, in C.
Definition at line 495 of file stdCamera.hpp.
|
protectedinherited |
EDT PDV board channel number.
Definition at line 64 of file edtCamera.hpp.
|
protectedinherited |
Length of the circular buffer, in frames.
Definition at line 128 of file frameGrabber.hpp.
|
protectedinherited |
The name of a base config class for this app (minus .conf).
Definition at line 187 of file MagAOXApp.hpp.
|
protectedinherited |
The path to configuration files for MagAOX.
Definition at line 185 of file MagAOXApp.hpp.
Referenced by MagAOX::app::ocam2KCtrl::configureAcquisition().
|
protected |
Absolute path to the temporary EDT configuration file.
Definition at line 92 of file cred2Ctrl.hpp.
Referenced by loadConfigImpl(), and writeConfig().
|
protectedinherited |
The name of the configuration file (minus .conf).
Definition at line 183 of file MagAOXApp.hpp.
Referenced by MagAOX::app::mzmqClient::loadConfig(), MagAOX::app::mzmqServer::loadConfig(), MagAOX::app::zaberCtrl::loadConfigImpl(), MagAOX::app::picoMotorCtrl::readChannelCounts(), and MagAOX::app::picoMotorCtrl::writeChannelCounts().
|
protectedinherited |
Path to the cpusets mount.
The path to the cpusets mount is configured by the environment variable defined by MAGOX_env_cpuset in environment.hpp. This environment variable is normally named "CGROUPS1_CPUSET_MOUNTPOINT". If the environment variable is not set, the default defined by MAGAOX_cpusetPath in paths.hpp is used.
Definition at line 200 of file MagAOXApp.hpp.
|
protectedinherited |
Status of crop mode ROIs, if enabled for this camera.
Definition at line 712 of file stdCamera.hpp.
|
protectedinherited |
Desired status of crop mode ROIs, if enabled for this camera.
Definition at line 713 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 640 of file stdCamera.hpp.
|
protectedinherited |
The timestamp of the current image.
Definition at line 147 of file frameGrabber.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 141 of file frameGrabber.hpp.
|
protectedinherited |
Power-on ROI x binning.
Definition at line 672 of file stdCamera.hpp.
|
protectedinherited |
Power-on ROI y binning.
Definition at line 673 of file stdCamera.hpp.
|
protectedinherited |
Power-on ROI height.
Definition at line 671 of file stdCamera.hpp.
|
protectedinherited |
Power-on ROI width.
Definition at line 670 of file stdCamera.hpp.
|
protectedinherited |
Power-on ROI center x coordinate.
Definition at line 668 of file stdCamera.hpp.
|
protectedinherited |
Power-on ROI center y coordinate.
Definition at line 669 of file stdCamera.hpp.
|
protectedinherited |
The default fan speed to apply after power on.
Definition at line 480 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 134 of file frameGrabber.hpp.
|
protectedinherited |
The default LED state to apply after power on.
Definition at line 481 of file stdCamera.hpp.
|
protectedinherited |
The default readout speed of the camera.
Definition at line 477 of file stdCamera.hpp.
|
protectedinherited |
The default readout speed of the camera.
Definition at line 478 of file stdCamera.hpp.
|
protectedinherited |
Full path name of the INDI driver control FIFO.
This is currently only used to signal restarts.
Definition at line 720 of file MagAOXApp.hpp.
|
protectedinherited |
Full path name of the INDI driver input FIFO.
Definition at line 712 of file MagAOXApp.hpp.
|
protectedinherited |
Full path name of the INDI driver output FIFO.
Definition at line 715 of file MagAOXApp.hpp.
|
protectedinherited |
Definition at line 168 of file frameGrabber.hpp.
|
protectedinherited |
Definition at line 167 of file frameGrabber.hpp.
|
protectedinherited |
Definition at line 166 of file frameGrabber.hpp.
|
protectedinherited |
The camera's current EM gain (if available).
Definition at line 529 of file stdCamera.hpp.
|
protectedinherited |
The camera's EM gain, as set by the user.
Definition at line 530 of file stdCamera.hpp.
|
privateinherited |
The user id of the process as called (i.e. the higher privileged id of the owner, root if setuid).
Definition at line 415 of file MagAOXApp.hpp.
|
privateinherited |
The real user id of the proces (i.e. the lower privileged id of the user)
Definition at line 414 of file MagAOXApp.hpp.
|
protectedinherited |
The current exposure time, in seconds.
Definition at line 547 of file stdCamera.hpp.
|
protectedinherited |
The exposure time, in seconds, as set by user.
Definition at line 548 of file stdCamera.hpp.
|
protectedinherited |
Whether or not fan-speed control is published through INDI.
Definition at line 479 of file stdCamera.hpp.
|
protectedinherited |
Current fan-control option name.
Definition at line 568 of file stdCamera.hpp.
|
protectedinherited |
Optional GUI labels for the fan-control options.
Definition at line 567 of file stdCamera.hpp.
|
protectedinherited |
Valid fan-control option names for the INDI selection switch.
Definition at line 566 of file stdCamera.hpp.
|
protectedinherited |
Requested fan-control option name.
Definition at line 569 of file stdCamera.hpp.
|
protectedinherited |
True once the current fan-control state is known.
Definition at line 570 of file stdCamera.hpp.
|
protectedinherited |
The cpuset to assign the framegrabber thread to. Not used if empty, the default.
Definition at line 126 of file frameGrabber.hpp.
|
protectedinherited |
A separate thread for the actual framegrabbings.
Definition at line 267 of file frameGrabber.hpp.
|
protectedinherited |
The ID of the framegrabber thread.
Definition at line 263 of file frameGrabber.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 261 of file frameGrabber.hpp.
|
protectedinherited |
Priority of the framegrabber thread, should normally be > 00.
Definition at line 125 of file frameGrabber.hpp.
|
protectedinherited |
The property to hold the f.g. thread details.
Definition at line 265 of file frameGrabber.hpp.
|
protectedinherited |
Literal {} placeholder format used to build the goto-focus preset name.
Definition at line 760 of file stdCamera.hpp.
|
protectedinherited |
True when stdCamera should derive goto-focus commands from external switch properties.
Definition at line 751 of file stdCamera.hpp.
|
protectedinherited |
Indices of m_focusGotoSourceProperties within m_indiP_focusMonitoredProperties.
Definition at line 758 of file stdCamera.hpp.
|
protectedinherited |
INDI keys (device.property) of the switch properties combined for gotoFocus().
Definition at line 754 of file stdCamera.hpp.
|
protectedinherited |
Device portion parsed from m_focusGotoTargetProperty.
Definition at line 765 of file stdCamera.hpp.
|
protectedinherited |
Property-name portion parsed from m_focusGotoTargetProperty.
Definition at line 767 of file stdCamera.hpp.
|
protectedinherited |
INDI key (device.property) of the switch property commanded by gotoFocus().
Definition at line 763 of file stdCamera.hpp.
|
protectedinherited |
Unique INDI keys monitored for the focus-state and goto-focus helpers.
Definition at line 770 of file stdCamera.hpp.
|
protectedinherited |
Element within m_focusStateSource whose On state is interpreted according to m_focusStateOnMeansInFocus.
Definition at line 742 of file stdCamera.hpp.
|
protectedinherited |
True when stdCamera should evaluate focus state from an external switch property.
Definition at line 736 of file stdCamera.hpp.
|
protectedinherited |
True when m_focusStateElement being On means "in focus". Default false means On is interpreted as "out of focus".
Definition at line 745 of file stdCamera.hpp.
|
protectedinherited |
INDI key (device.property) of the switch property used by checkFocusSwitchState.
Definition at line 740 of file stdCamera.hpp.
|
protectedinherited |
Index of m_focusStateSource within m_indiP_focusMonitoredProperties, or -1 when unused.
Definition at line 748 of file stdCamera.hpp.
|
protectedinherited |
The current FPS.
Definition at line 554 of file stdCamera.hpp.
|
protectedinherited |
The commanded fps, as set by user.
Definition at line 555 of file stdCamera.hpp.
|
protectedinherited |
The x-binning in the full ROI.
Definition at line 679 of file stdCamera.hpp.
|
protectedinherited |
The y-binning in the full ROI.
Definition at line 680 of file stdCamera.hpp.
|
protectedinherited |
The current-binning full ROI height.
Definition at line 685 of file stdCamera.hpp.
|
protectedinherited |
The current-binning full ROI width.
Definition at line 684 of file stdCamera.hpp.
|
protectedinherited |
The current-binning full ROI center x coordinate.
Definition at line 682 of file stdCamera.hpp.
|
protectedinherited |
The current-binning full ROI center y coordinate.
Definition at line 683 of file stdCamera.hpp.
|
protectedinherited |
The full ROI height.
Definition at line 678 of file stdCamera.hpp.
|
protectedinherited |
The full ROI width.
Definition at line 677 of file stdCamera.hpp.
|
protectedinherited |
The full ROI center x coordinate.
Definition at line 675 of file stdCamera.hpp.
|
protectedinherited |
The full ROI center y coordinate.
Definition at line 676 of file stdCamera.hpp.
|
privateinherited |
Definition at line 575 of file MagAOXApp.hpp.
|
protectedinherited |
Runtime flag enabling focus-state reporting and goto-focus control publication.
Definition at line 734 of file stdCamera.hpp.
|
protectedinherited |
The height of the image, once deinterlaced etc.
Definition at line 139 of file frameGrabber.hpp.
|
protectedinherited |
The image data grabbed.
Definition at line 75 of file edtCamera.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 151 of file frameGrabber.hpp.
|
inherited |
Mutex for locking INDI callback maps and per-entry callback state.
Lock ordering policy: 1) Prefer never holding both m_indiMutex and m_indiCallBackMutex at the same time. 2) If both are required in future code, always acquire m_indiMutex before m_indiCallBackMutex.
Definition at line 662 of file MagAOXApp.hpp.
|
inherited |
The INDI driver wrapper. Constructed and initialized by execute, which starts and stops communications.
Definition at line 652 of file MagAOXApp.hpp.
Referenced by MagAOX::app::picoMotorCtrl::appLogic(), MagAOX::app::smc100ccCtrl::appLogic(), MagAOX::app::zaberCtrl::appLogic(), MagAOX::app::streamWriter::updateINDI(), and MagAOX::app::magAOXMaths::updateVals().
|
inherited |
Mutex for locking INDI communications.
Definition at line 655 of file MagAOXApp.hpp.
Referenced by MagAOX::app::acronameUsbHub::appLogic(), MagAOX::app::andorCtrl::appLogic(), MagAOX::app::baslerCtrl::appLogic(), MagAOX::app::cameraSim::appLogic(), appLogic(), MagAOX::app::filterWheelCtrl::appLogic(), MagAOX::app::hsfwCtrl::appLogic(), MagAOX::app::ocam2KCtrl::appLogic(), MagAOX::app::picamCtrl::appLogic(), MagAOX::app::picoMotorCtrl::appLogic(), MagAOX::app::siglentSDG::appLogic(), MagAOX::app::smc100ccCtrl::appLogic(), MagAOX::app::trippLitePDU::appLogic(), MagAOX::app::ttmModulator::appLogic(), MagAOX::app::xt1121DCDU::appLogic(), MagAOX::app::zaberCtrl::appLogic(), MagAOX::app::zylaCtrl::appLogic(), MagAOX::app::siglentSDG::changeAmp(), MagAOX::app::siglentSDG::changeFreq(), MagAOX::app::siglentSDG::changeOfst(), MagAOX::app::siglentSDG::changeOutp(), MagAOX::app::siglentSDG::changePhse(), MagAOX::app::siglentSDG::changeSync(), MagAOX::app::siglentSDG::changeWdth(), MagAOX::app::siglentSDG::changeWvtp(), MagAOX::app::xt1121Ctrl::channelSetCallback(), MagAOX::app::andorCtrl::configureAcquisition(), configureAcquisition(), MagAOX::app::ocam2KCtrl::configureAcquisition(), MagAOX::app::picamCtrl::configureAcquisition(), MagAOX::app::qhyCtrl::configureAcquisition(), MagAOX::app::zylaCtrl::configureAcquisition(), MagAOX::app::xt1121Ctrl::getState(), MagAOX::app::INDI_NEWCALLBACK_DEFN(), MagAOX::app::picoMotorCtrl::newCallBack_picopos(), MagAOX::app::picoMotorCtrl::newCallBack_presetName(), MagAOX::app::acronameUsbHub::onPowerOff(), MagAOX::app::andorCtrl::onPowerOff(), onPowerOff(), MagAOX::app::ocam2KCtrl::onPowerOff(), MagAOX::app::picamCtrl::onPowerOff(), MagAOX::app::siglentSDG::onPowerOff(), MagAOX::app::xt1121Ctrl::onPowerOff(), MagAOX::app::zylaCtrl::onPowerOff(), MagAOX::app::filterWheelCtrl::onPowerOnConnect(), MagAOX::app::zylaCtrl::reconfig(), MagAOX::app::filterWheelCtrl::stop(), MagAOX::app::trippLitePDU::turnOutletOff(), MagAOX::app::xt1121DCDU::turnOutletOff(), MagAOX::app::trippLitePDU::turnOutletOn(), MagAOX::app::xt1121DCDU::turnOutletOn(), whilePowerOff(), MagAOX::app::ocam2KCtrl::whilePowerOff(), and MagAOX::app::zylaCtrl::whilePowerOff().
|
protectedinherited |
Map to hold the NewProperty indiCallBacks for this App, with fast lookup by property name.
The key for these is the property name.
Definition at line 700 of file MagAOXApp.hpp.
|
protectedinherited |
Property used to select the analog-gain mode.
Definition at line 585 of file stdCamera.hpp.
|
protectedinherited |
indi Property to clear an FSM alert.
Definition at line 1130 of file MagAOXApp.hpp.
|
protectedinherited |
Property used to toggle crop mode on and off.
Definition at line 715 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 536 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 557 of file stdCamera.hpp.
|
protectedinherited |
Property used to select the fan-speed mode.
Definition at line 572 of file stdCamera.hpp.
|
protectedinherited |
Read-only switch property reporting whether the current state is in focus.
Definition at line 775 of file stdCamera.hpp.
|
protectedinherited |
Cached external switch properties monitored for the focus helpers.
Definition at line 773 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 559 of file stdCamera.hpp.
|
protected |
Property reporting the current C-RED 2 minimum and maximum FPS.
Definition at line 112 of file cred2Ctrl.hpp.
Referenced by appStartup(), and updateFPSLimits().
|
protectedinherited |
Property used to report the current frame size.
Definition at line 290 of file frameGrabber.hpp.
|
protectedinherited |
Property used to preset the full ROI dimensions.
Definition at line 694 of file stdCamera.hpp.
|
protectedinherited |
Request switch property used to command the current focus target.
Definition at line 777 of file stdCamera.hpp.
|
protectedinherited |
Property used to control the status LED state.
Definition at line 596 of file stdCamera.hpp.
|
protectedinherited |
Property used to report the current mode.
Definition at line 619 of file stdCamera.hpp.
|
protectedinherited |
INDI property used to communicate power state.
Definition at line 1186 of file MagAOXApp.hpp.
|
protectedinherited |
Definition at line 533 of file stdCamera.hpp.
|
protectedinherited |
Request switch which forces the framegrabber to go through the reconfigure process.
Definition at line 622 of file stdCamera.hpp.
|
protectedinherited |
Property used to set the ROI x binning.
Definition at line 691 of file stdCamera.hpp.
|
protectedinherited |
Property used to set the ROI y binning.
Definition at line 692 of file stdCamera.hpp.
|
protectedinherited |
Property used to trigger checking the target ROI.
Definition at line 696 of file stdCamera.hpp.
|
protectedinherited |
Property used to trigger setting the default and startup ROI.
Definition at line 704 of file stdCamera.hpp.
|
protectedinherited |
Property used to trigger setting the full ROI.
Definition at line 700 of file stdCamera.hpp.
|
protectedinherited |
Property used to trigger setting the full in current binning ROI.
Definition at line 701 of file stdCamera.hpp.
|
protectedinherited |
Property used to set the ROI height.
Definition at line 690 of file stdCamera.hpp.
|
protectedinherited |
Property used to trigger setting the last ROI.
Definition at line 703 of file stdCamera.hpp.
|
protectedinherited |
Property used to trigger loading the last ROI as the target.
Definition at line 702 of file stdCamera.hpp.
|
protectedinherited |
Property used to trigger setting the ROI.
Definition at line 698 of file stdCamera.hpp.
|
protectedinherited |
Property used to set the ROI width.
Definition at line 689 of file stdCamera.hpp.
|
protectedinherited |
Property used to set the ROI x center coordinate.
Definition at line 687 of file stdCamera.hpp.
|
protectedinherited |
Property used to set the ROI x center coordinate.
Definition at line 688 of file stdCamera.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 288 of file frameGrabber.hpp.
|
protectedinherited |
Property used to control the shutter, a switch.
Definition at line 726 of file stdCamera.hpp.
|
protectedinherited |
State of the shutter. 0 = shut, 1 = open, -1 = unknown.
Property to report shutter status
Definition at line 725 of file stdCamera.hpp.
|
protectedinherited |
indi Property to report the application state.
Definition at line 1127 of file MagAOXApp.hpp.
|
protectedinherited |
Definition at line 785 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 607 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 504 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 505 of file stdCamera.hpp.
|
protected |
Property reporting the detailed C-RED 2 temperature channels.
Definition at line 111 of file cred2Ctrl.hpp.
Referenced by appStartup(), getTemps(), and onPowerOff().
|
protectedinherited |
Definition at line 506 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 292 of file frameGrabber.hpp.
|
protectedinherited |
Definition at line 534 of file stdCamera.hpp.
|
protectedinherited |
Map to hold the SetProperty indiCallBacks for this App, with fast lookup by property name.
The key for these is device.name
Definition at line 705 of file MagAOXApp.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 155 of file frameGrabber.hpp.
|
protectedinherited |
Definition at line 642 of file stdCamera.hpp.
|
protectedinherited |
Maximum length of the latency measurement circular buffers.
Definition at line 130 of file frameGrabber.hpp.
|
protectedinherited |
Maximum time of the latency meaurement circular buffers.
Definition at line 132 of file frameGrabber.hpp.
|
protectedinherited |
Current status LED state.
Definition at line 592 of file stdCamera.hpp.
|
protectedinherited |
Requested status LED state.
Definition at line 593 of file stdCamera.hpp.
|
protectedinherited |
True once the current LED state is known.
Definition at line 594 of file stdCamera.hpp.
|
staticinherited |
Definition at line 338 of file MagAOXApp.hpp.
|
protectedinherited |
The time in nanoseconds to pause the main loop. The appLogic() function of the derived class is called every m_loopPause nanoseconds. Default is 1,000,000,000 ns. Config with loopPause=X.
Definition at line 202 of file MagAOXApp.hpp.
Referenced by MagAOX::app::trippLitePDU::trippLitePDU(), and MagAOX::app::siglentSDG::appLogic().
|
protectedinherited |
Definition at line 173 of file frameGrabber.hpp.
|
protectedinherited |
The configurable maximum EM gain. To be enforced in derivedT.
Definition at line 531 of file stdCamera.hpp.
|
protectedinherited |
The maximum exposure time, used for INDI attributes.
Definition at line 544 of file stdCamera.hpp.
|
protectedinherited |
The maximum FPS, used for INDI attributes.
Definition at line 551 of file stdCamera.hpp.
|
inherited |
The maximum interval, in seconds, between telemetry records. Default is 10.0 seconds.
Definition at line 83 of file telemeter.hpp.
|
protectedinherited |
Definition at line 661 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 665 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 657 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 653 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 645 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 649 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 490 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 178 of file frameGrabber.hpp.
|
protectedinherited |
Definition at line 172 of file frameGrabber.hpp.
|
protectedinherited |
The minimum exposure time, used for INDI attributes.
Definition at line 543 of file stdCamera.hpp.
|
protectedinherited |
The minimum FPS, used for INDI attributes.
Definition at line 550 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 660 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 664 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 656 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 652 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 644 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 648 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 489 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 177 of file frameGrabber.hpp.
|
protectedinherited |
Definition at line 170 of file frameGrabber.hpp.
|
protectedinherited |
Definition at line 175 of file frameGrabber.hpp.
|
protectedinherited |
Definition at line 180 of file frameGrabber.hpp.
|
protectedinherited |
The current mode name.
Definition at line 615 of file stdCamera.hpp.
|
protectedinherited |
The mode to be set by the next reconfiguration.
Definition at line 617 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 641 of file stdCamera.hpp.
|
protectedinherited |
EDT PDV DMA buffer size, indicating number of images.
Definition at line 65 of file edtCamera.hpp.
|
protectedinherited |
Flag controlling if the shmim is owned. If true it will be destroyed as needed.
Definition at line 153 of file frameGrabber.hpp.
|
protectedinherited |
The EDT PDV device handle.
Definition at line 73 of file edtCamera.hpp.
|
protectedinherited |
This process's PID.
Definition at line 499 of file MagAOXApp.hpp.
|
protectedinherited |
The INDI property name of the channel controlling this device's power.
Definition at line 1172 of file MagAOXApp.hpp.
|
protectedinherited |
The INDI device name of the power controller.
Definition at line 1171 of file MagAOXApp.hpp.
|
protectedinherited |
The INDI element name to monitor for this device's power state.
Definition at line 1173 of file MagAOXApp.hpp.
|
protectedinherited |
Flag controls whether power mgt is used. Set this in the constructor of a derived app. If true, then if after loadConfig the powerDevice and powerChannel are empty, then the app will exit with a critical error.
Definition at line 1166 of file MagAOXApp.hpp.
Referenced by MagAOX::app::acronameUsbHub::acronameUsbHub(), MagAOX::app::andorCtrl::andorCtrl(), MagAOX::app::baslerCtrl::baslerCtrl(), MagAOX::app::cameraSim::cameraSim(), cred2Ctrl(), MagAOX::app::filterWheelCtrl::filterWheelCtrl(), MagAOX::app::hsfwCtrl::hsfwCtrl(), MagAOX::app::mzmqClient::mzmqClient(), MagAOX::app::mzmqServer::mzmqServer(), MagAOX::app::ocam2KCtrl::ocam2KCtrl(), MagAOX::app::picamCtrl::picamCtrl(), MagAOX::app::picoMotorCtrl::picoMotorCtrl(), MagAOX::app::qhyCtrl::qhyCtrl(), MagAOX::app::siglentSDG::siglentSDG(), MagAOX::app::smc100ccCtrl::smc100ccCtrl(), MagAOX::app::streamWriter::streamWriter(), MagAOX::app::ttmModulator::ttmModulator(), MagAOX::app::xt1121Ctrl::xt1121Ctrl(), MagAOX::app::xt1121DCDU::xt1121DCDU(), and MagAOX::app::zylaCtrl::zylaCtrl().
|
protectedinherited |
Counts numer of loops after power on, implements delay for device bootup. If -1, then device was NOT powered off on app startup.
Definition at line 1179 of file MagAOXApp.hpp.
Referenced by MagAOX::app::andorCtrl::onPowerOff(), onPowerOff(), MagAOX::app::ocam2KCtrl::onPowerOff(), and MagAOX::app::zylaCtrl::onPowerOff().
|
protectedinherited |
Default time in sec to wait for device to boot after power on.
Definition at line 1176 of file MagAOXApp.hpp.
Referenced by MagAOX::app::andorCtrl::andorCtrl(), MagAOX::app::ocam2KCtrl::ocam2KCtrl(), MagAOX::app::smc100ccCtrl::smc100ccCtrl(), MagAOX::app::xt1121Ctrl::xt1121Ctrl(), and MagAOX::app::zylaCtrl::zylaCtrl().
|
protectedinherited |
Current power state, 1=On, 0=Off, -1=Unk.
Definition at line 1183 of file MagAOXApp.hpp.
Referenced by MagAOX::app::andorCtrl::appLogic(), MagAOX::app::filterWheelCtrl::appLogic(), MagAOX::app::ocam2KCtrl::appLogic(), MagAOX::app::siglentSDG::appLogic(), MagAOX::app::smc100ccCtrl::appLogic(), MagAOX::app::xt1121Ctrl::appLogic(), MagAOX::app::zylaCtrl::appLogic(), MagAOX::app::siglentSDG::changeAmp(), MagAOX::app::siglentSDG::changeFreq(), MagAOX::app::siglentSDG::changeOfst(), MagAOX::app::siglentSDG::changeOutp(), MagAOX::app::siglentSDG::changePhse(), MagAOX::app::siglentSDG::changeSync(), MagAOX::app::siglentSDG::changeWdth(), MagAOX::app::siglentSDG::changeWvtp(), MagAOX::app::xt1121Ctrl::channelSetCallback(), MagAOX::app::siglentSDG::checkSetup(), MagAOX::app::picamCtrl::getAcquisitionState(), MagAOX::app::picamCtrl::getPicamParameter(), MagAOX::app::picamCtrl::getPicamParameter(), MagAOX::app::xt1121Ctrl::getState(), MagAOX::app::INDI_NEWCALLBACK_DEFN(), MagAOX::app::siglentSDG::queryARWV(), MagAOX::app::siglentSDG::queryBSWV(), MagAOX::app::siglentSDG::queryBTWV(), MagAOX::app::siglentSDG::queryMDWV(), MagAOX::app::siglentSDG::queryOUTP(), MagAOX::app::siglentSDG::querySWWV(), MagAOX::app::siglentSDG::querySYNC(), MagAOX::app::picamCtrl::reconfig(), libXWCTest::ocam2KCtrlTest::TEST_CASE(), MagAOX::app::siglentSDG::writeCommand(), and MagAOX::app::siglentSDG::writeRead().
|
protectedinherited |
The INDI element name to monitor for this device's power state.
Definition at line 1174 of file MagAOXApp.hpp.
|
protectedinherited |
Current target power state, 1=On, 0=Off, -1=Unk.
Definition at line 1184 of file MagAOXApp.hpp.
Referenced by MagAOX::app::siglentSDG::appLogic(), MagAOX::app::smc100ccCtrl::appLogic(), MagAOX::app::siglentSDG::changeAmp(), MagAOX::app::siglentSDG::changeFreq(), MagAOX::app::siglentSDG::changeOfst(), MagAOX::app::siglentSDG::changeOutp(), MagAOX::app::siglentSDG::changePhse(), MagAOX::app::siglentSDG::changeSync(), MagAOX::app::siglentSDG::changeWdth(), MagAOX::app::siglentSDG::changeWvtp(), MagAOX::app::siglentSDG::checkSetup(), MagAOX::app::smc100ccCtrl::getCtrlState(), MagAOX::app::smc100ccCtrl::getLastError(), MagAOX::app::smc100ccCtrl::getPosition(), MagAOX::app::smc100ccCtrl::moveTo(), MagAOX::app::siglentSDG::queryARWV(), MagAOX::app::siglentSDG::queryBSWV(), MagAOX::app::siglentSDG::queryBTWV(), MagAOX::app::siglentSDG::queryMDWV(), MagAOX::app::siglentSDG::queryOUTP(), MagAOX::app::siglentSDG::querySWWV(), MagAOX::app::siglentSDG::querySYNC(), MagAOX::app::smc100ccCtrl::startHoming(), MagAOX::app::smc100ccCtrl::stop(), libXWCTest::ocam2KCtrlTest::TEST_CASE(), MagAOX::app::smc100ccCtrl::testConnection(), MagAOX::app::siglentSDG::writeCommand(), and MagAOX::app::siglentSDG::writeRead().
|
protectedinherited |
The bit-depth of the frame, according to the framegrabber.
Definition at line 83 of file edtCamera.hpp.
|
protectedinherited |
The height of the frame, according to the framegrabber.
Definition at line 81 of file edtCamera.hpp.
|
protectedinherited |
The width of the frame, according to the framegrabber.
Definition at line 82 of file edtCamera.hpp.
|
protectedinherited |
The current readout speed name.
Definition at line 517 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 515 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 514 of file stdCamera.hpp.
|
protectedinherited |
The user requested readout speed name, to be set by derived()
Definition at line 518 of file stdCamera.hpp.
|
inherited |
The read timeout [msec].
Definition at line 28 of file ioDevice.hpp.
Referenced by MagAOX::app::rhusbMon::rhusbMon(), MagAOX::app::tcsInterface::acquireFromGuider(), MagAOX::app::picoMotorCtrl::appLogic(), MagAOX::app::trippLitePDU::devPostLogin(), MagAOX::app::trippLitePDU::devStatus(), MagAOX::app::pi335Ctrl::finishInit(), MagAOX::app::pi335Ctrl::getCom(), MagAOX::app::smc100ccCtrl::getCtrlState(), MagAOX::app::smc100ccCtrl::getLastError(), MagAOX::app::tcsInterface::getMagTelStatus(), MagAOX::app::flipperCtrl::getPos(), MagAOX::app::smc100ccCtrl::getPosition(), MagAOX::app::pi335Ctrl::initDM(), MagAOX::app::dev::ioDevice::loadConfig(), MagAOX::app::rhusbMon::readProbe(), MagAOX::app::tcsInterface::sendFoffload(), MagAOX::app::tcsInterface::sendPyrNudge(), MagAOX::app::tcsInterface::sendTToffload(), MagAOX::app::pi335Ctrl::testConnection(), MagAOX::app::smc100ccCtrl::testConnection(), MagAOX::app::trippLitePDU::turnOutletOff(), and MagAOX::app::trippLitePDU::turnOutletOn().
|
protectedinherited |
Flag to set if a camera reconfiguration requires a framegrabber reset.
Definition at line 149 of file frameGrabber.hpp.
|
protected |
Number of main-loop cycles to skip serial status polling after ROI changes.
Definition at line 103 of file cred2Ctrl.hpp.
Referenced by appLogic(), and configureAcquisition().
|
protectedinherited |
Path to the secrets directory, where passwords, etc, are stored.
Definition at line 193 of file MagAOXApp.hpp.
|
staticprivateinherited |
Static pointer to this (set in constructor). Used to test whether a a MagAOXApp is already instatiated (a fatal error) and used for getting out of static signal handlers.
Definition at line 390 of file MagAOXApp.hpp.
|
protected |
Camera Link serial baud rate used for C-RED 2 CLI access.
Definition at line 94 of file cred2Ctrl.hpp.
Referenced by loadConfigImpl(), setSerialBaud(), and writeConfig().
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 122 of file frameGrabber.hpp.
|
protectedinherited |
Flag to signal it's time to shutdown. When not 0, the main loop exits.
Definition at line 207 of file MagAOXApp.hpp.
Referenced by MagAOX::app::siglentSDG::appLogic(), MagAOX::app::smc100ccCtrl::appStartup(), MagAOX::app::picoMotorCtrl::channelThreadExec(), MagAOX::app::siglentSDG::checkSetup(), MagAOX::app::streamWriter::fgThreadExec(), MagAOX::app::andorCtrl::loadConfig(), MagAOX::app::baslerCtrl::loadConfig(), MagAOX::app::cameraSim::loadConfig(), loadConfig(), MagAOX::app::picoMotorCtrl::loadConfig(), MagAOX::app::smc100ccCtrl::loadConfig(), MagAOX::app::streamWriter::loadConfig(), MagAOX::app::sysMonitor::loadConfig(), MagAOX::app::siglentSDG::queryARWV(), MagAOX::app::siglentSDG::queryBSWV(), MagAOX::app::siglentSDG::queryBTWV(), MagAOX::app::siglentSDG::queryMDWV(), MagAOX::app::siglentSDG::queryOUTP(), MagAOX::app::siglentSDG::querySWWV(), MagAOX::app::siglentSDG::querySYNC(), MagAOX::app::sysMonitor::setlatThreadExec(), MagAOX::app::streamWriter::swThreadExec(), libXWCTest::flowRPMTest::TEST_CASE(), libXWCTest::flowRPMTest::TEST_CASE(), MagAOX::app::siglentSDG::writeCommand(), and MagAOX::app::siglentSDG::writeRead().
|
protectedinherited |
Definition at line 723 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 722 of file stdCamera.hpp.
|
protectedinherited |
The camera mode to load during first init after a power-on.
Definition at line 473 of file stdCamera.hpp.
|
protectedinherited |
The temperature to set after a power-on. Set to <= -999 to not use [default].
Definition at line 475 of file stdCamera.hpp.
|
privateinherited |
The application's state. Never ever set this directly, use state(const stateCodeT & s).
Definition at line 569 of file MagAOXApp.hpp.
|
privateinherited |
Definition at line 572 of file MagAOXApp.hpp.
|
privateinherited |
Counter and flag for use to log errors just once. Never ever access directly, use stateLogged().
Definition at line 577 of file MagAOXApp.hpp.
|
protectedinherited |
The maximum exposure time stepsize, used for INDI attributes.
Definition at line 545 of file stdCamera.hpp.
|
protectedinherited |
The FPS step size, used for INDI attributes.
Definition at line 552 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 662 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 666 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 658 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 654 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 646 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 650 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 491 of file stdCamera.hpp.
|
privateinherited |
The save-set user id of the process.
Definition at line 417 of file MagAOXApp.hpp.
|
protectedinherited |
Status of synchronization, true is on, false is off.
Definition at line 605 of file stdCamera.hpp.
|
protectedinherited |
Target status of m_synchro.
Definition at line 603 of file stdCamera.hpp.
|
protectedinherited |
The path to the system directory, for PID file, etc.
Definition at line 191 of file MagAOXApp.hpp.
Referenced by MagAOX::app::picoMotorCtrl::readChannelCounts(), and MagAOX::app::picoMotorCtrl::writeChannelCounts().
|
inherited |
Definition at line 81 of file telemeter.hpp.
|
protectedinherited |
Whether or not the temperature control system is on its target temperature.
Definition at line 500 of file stdCamera.hpp.
|
protectedinherited |
Whether or not temperature control is active.
Definition at line 497 of file stdCamera.hpp.
|
protectedinherited |
Desired state of temperature control.
Definition at line 498 of file stdCamera.hpp.
|
protectedinherited |
Camera specific description of temperature control status.
Definition at line 502 of file stdCamera.hpp.
|
protected |
Cached camera temperature values used for INDI and telemetry updates.
Definition at line 100 of file cred2Ctrl.hpp.
Referenced by cred2Ctrl(), getTemps(), and onPowerOff().
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 142 of file frameGrabber.hpp.
|
protectedinherited |
EDT PDV board unit number.
Definition at line 63 of file edtCamera.hpp.
|
staticconstexprprotectedinherited |
Flag controlling whether INDI is used. If false, then no INDI code executes.
Definition at line 647 of file MagAOXApp.hpp.
|
protectedinherited |
Definition at line 171 of file frameGrabber.hpp.
|
protectedinherited |
Definition at line 176 of file frameGrabber.hpp.
|
protectedinherited |
Definition at line 181 of file frameGrabber.hpp.
|
protectedinherited |
Definition at line 527 of file stdCamera.hpp.
|
protectedinherited |
The current vshift speed name.
Definition at line 523 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 521 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 520 of file stdCamera.hpp.
|
protectedinherited |
The user requested vshift speed name, to be set by derived()
Definition at line 524 of file stdCamera.hpp.
|
protectedinherited |
Definition at line 164 of file frameGrabber.hpp.
|
protectedinherited |
The width of the image, once deinterlaced etc.
Definition at line 138 of file frameGrabber.hpp.
|
inherited |
The write timeout [msec].
Definition at line 29 of file ioDevice.hpp.
Referenced by MagAOX::app::rhusbMon::rhusbMon(), MagAOX::app::picoMotorCtrl::appLogic(), MagAOX::app::smc100ccCtrl::appLogic(), MagAOX::app::picoMotorCtrl::channelThreadExec(), MagAOX::app::trippLitePDU::devPostLogin(), MagAOX::app::trippLitePDU::devStatus(), MagAOX::app::pi335Ctrl::finishInit(), MagAOX::app::pi335Ctrl::getCom(), MagAOX::app::smc100ccCtrl::getCtrlState(), MagAOX::app::smc100ccCtrl::getLastError(), MagAOX::app::flipperCtrl::getPos(), MagAOX::app::smc100ccCtrl::getPosition(), MagAOX::app::pi335Ctrl::home_1(), MagAOX::app::pi335Ctrl::home_2(), MagAOX::app::pi335Ctrl::home_3(), MagAOX::app::pi335Ctrl::initDM(), MagAOX::app::dev::ioDevice::loadConfig(), MagAOX::app::pi335Ctrl::move_1(), MagAOX::app::pi335Ctrl::move_2(), MagAOX::app::pi335Ctrl::move_3(), MagAOX::app::smc100ccCtrl::moveTo(), MagAOX::app::flipperCtrl::moveTo(), MagAOX::app::rhusbMon::readProbe(), MagAOX::app::pi335Ctrl::releaseDM(), MagAOX::app::smc100ccCtrl::startHoming(), MagAOX::app::smc100ccCtrl::stop(), MagAOX::app::pi335Ctrl::testConnection(), MagAOX::app::smc100ccCtrl::testConnection(), MagAOX::app::trippLitePDU::turnOutletOff(), and MagAOX::app::trippLitePDU::turnOutletOn().
|
protectedinherited |
Definition at line 160 of file frameGrabber.hpp.
|
protectedinherited |
Definition at line 163 of file frameGrabber.hpp.
|
protectedinherited |
The x-binning according to the framegrabber.
Definition at line 144 of file frameGrabber.hpp.
|
protectedinherited |
The y-binning according to the framegrabber.
Definition at line 145 of file frameGrabber.hpp.
|
protectedinherited |
The name of the PID file.
Definition at line 497 of file MagAOXApp.hpp.