The MagAO-X PSD-based gain optimizer. More...
#include <modalGainOpt.hpp>


Public Member Functions | |
| modalGainOpt () | |
| Default c'tor. | |
| ~modalGainOpt () noexcept | |
| D'tor, declared and defined for noexcept. | |
| virtual void | setupConfig () |
| int | loadConfigImpl (mx::app::appConfigurator &_config) |
| Implementation of loadConfig logic, separated for testing. | |
| virtual void | loadConfig () |
| virtual int | appStartup () |
| Startup function. | |
| virtual int | appLogic () |
| Implementation of the FSM for modalGainOpt. | |
| virtual int | appShutdown () |
| Shutdown the app. | |
| int | allocatePCShmims () |
| int | allocate (const psdShmimT &) |
| int | processImage (void *curr_src, const psdShmimT &) |
| int | allocate (const freqShmimT &) |
| int | processImage (void *curr_src, const freqShmimT &) |
| int | allocate (const gainFactShmimT &) |
| int | processImage (void *curr_src, const gainFactShmimT &) |
| int | allocate (const multFactShmimT &) |
| int | processImage (void *curr_src, const multFactShmimT &) |
| int | allocate (const pcGainFactShmimT &) |
| int | processImage (void *curr_src, const pcGainFactShmimT &) |
| int | allocate (const pcMultFactShmimT &) |
| int | processImage (void *curr_src, const pcMultFactShmimT &) |
| int | allocate (const numpccoeffShmimT &) |
| int | processImage (void *curr_src, const numpccoeffShmimT &) |
| int | allocate (const acoeffShmimT &) |
| int | processImage (void *curr_src, const acoeffShmimT &) |
| int | allocate (const bcoeffShmimT &) |
| int | processImage (void *curr_src, const bcoeffShmimT &) |
| int | allocate (const gainCalShmimT &) |
| int | processImage (void *curr_src, const gainCalShmimT &) |
| int | allocate (const gainCalFactShmimT &) |
| int | processImage (void *curr_src, const gainCalFactShmimT &) |
| int | allocate (const tauShmimT &) |
| int | processImage (void *curr_src, const tauShmimT &) |
| int | allocate (const noiseShmimT &) |
| int | processImage (void *curr_src, const noiseShmimT &) |
| int | allocate (const wfsavgShmimT &) |
| int | processImage (void *curr_src, const wfsavgShmimT &) |
| int | allocate (const wfsmaskShmimT &) |
| int | processImage (void *curr_src, const wfsmaskShmimT &) |
| int | checkSizes () |
| Check that all sizes and allocations have occurred. | |
| 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 | 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. | |
Telemeter Interface | |
| int | checkRecordTimes () |
| int | recordTelem (const telem_modalgainopt *) |
| int | recordModalGainOpt (bool force=false) |
Threads | |
| 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. | |
Public Attributes | |
| logManagerT | m_tel |
| double | m_maxInterval |
| The maximum interval, in seconds, between telemetry records. Default is 10.0 seconds. | |
Protected Member Functions | |
| void | destroyImageStream (IMAGE *&stream) |
| Destroy an owned ImageStreamIO output stream and clear its pointer. | |
| int | createImageStream (IMAGE *&stream, const std::string &name, uint32_t size0, uint32_t size1, uint32_t size2, uint8_t dataType) |
| Allocate and create an owned ImageStreamIO output stream. | |
| void | writePublishedGainArrays (float *currentData, float *siRawData, float *siData, float *maxSiData, float *lpData, float *maxLpData, float *modeVarData) |
| void | writePublishedPredictorArrays (float *pcGainData, float *aCoeffData, uint32_t aWidth, float *bCoeffData, uint32_t bWidth, bool blend) |
| Populate the published predictive-control gain and coefficient arrays. | |
| int | countEnabledGainFactors (const std::vector< float > &gainFacts) const |
| Count how many modes are enabled by a gain-factor vector. | |
| void | updateAppliedModeCount (const std::vector< float > &gainFacts, bool predictorPath) |
| bool | applyGainFactorUpdate (std::vector< float > &gainFacts, const float *incoming, uint32_t width, bool predictorPath) |
| Apply an incoming gain-factor frame to one of the stored gain vectors. | |
| bool | applyMultiplierUpdate (std::vector< float > &multFacts, const float *incoming, uint32_t width, bool predictorPath) |
| bool | applyFrequencyUpdate (const float *incoming, size_t size) |
| Apply an incoming frequency frame to the stored frequency scale. | |
| bool | refreshGoptStructures () |
| void | syncSiGainStateFromAppliedGains () |
| Synchronize the integrated SI gain state from the applied gain-factor stream. | |
| void | updateIntegratedSiGain (size_t modeIndex) |
| Apply one SI leaky-integrator update from the raw optimal gain. | |
| template<typename valueT > | |
| int | handleExtrapNumberProperty (pcf::IndiProperty &localProperty, valueT &localTarget, const pcf::IndiProperty &ipRecv, const std::string &label) |
| Handle a standard target/current numeric extrapolation property update. | |
| int | handleExtrapToggleProperty (pcf::IndiProperty &localProperty, bool &localTarget, const pcf::IndiProperty &ipRecv, const std::string &label) |
| Handle a boolean extrapolation toggle property update. | |
| int | handleExtrapMethodProperty (const pcf::IndiProperty &ipRecv) |
| Handle the extrapolation-method selection switch property. | |
| int | handleExtrapNoiseEstimateDomainProperty (const pcf::IndiProperty &ipRecv) |
| Handle the noise-estimation-domain selection switch property. | |
| int | handleExtrapNoiseEstimateRangeProperty (const pcf::IndiProperty &ipRecv) |
| Handle the noise-estimation-range selection switch property. | |
| int | handleExtrapNoiseEstimateStatisticProperty (const pcf::IndiProperty &ipRecv) |
| Handle the noise-estimation-statistic selection switch property. | |
| int | handleExtrapClosedLoopOlEstimateMethodProperty (const pcf::IndiProperty &ipRecv) |
| Handle the closed-loop OL-estimation-method selection switch property. | |
| int | handleExtrapPowerLawCrossoverModeProperty (const pcf::IndiProperty &ipRecv) |
| Handle the power-law crossover-mode selection switch property. | |
Protected Attributes | |
| uint32_t | m_nFreq { 0 } |
| uint32_t | m_nModes { 0 } |
| bool | m_updateOnce { false } |
| Flag to trigger a single update with gain. | |
| bool | m_dump { false } |
| Flag to trigger a single update with no gain. | |
| bool | m_zeroGains { false } |
| Flag requesting the SI gain integrator state be zeroed. | |
| float | m_fps { 0 } |
| std::vector< mx::AO::analysis::clGainOpt< float > > | m_goptCurrent |
| Each mode gets its own gain optimizer. | |
| std::vector< mx::AO::analysis::clGainOpt< float > > | m_goptSI |
| std::vector< mx::AO::analysis::clGainOpt< float > > | m_goptLP |
| std::vector< mx::AO::analysis::clAOLinearPredictor< float > > | m_linPred |
| bool | m_goptUpdated { true } |
| bool | m_pcgoptUpdated { true } |
| bool | m_freqUpdated { true } |
| float | m_psdTime { 1 } |
| float | m_psdAvgTime { 10 } |
| float | m_psdOverlapFraction { 0.5 } |
| std::vector< float > | m_freq |
| mx::improc::eigenImage< float > | m_clPSDs |
| mx::improc::eigenImage< float > | m_clXferCurrent |
| mx::improc::eigenImage< float > | m_clNtfCurrent |
| mx::improc::eigenImage< float > | m_clXferSI |
| mx::improc::eigenImage< float > | m_clNtfSI |
| mx::improc::eigenImage< float > | m_clXferLP |
| Published predictive closed-loop error transfer function. | |
| mx::improc::eigenImage< float > | m_clNtfLP |
| Published predictive closed-loop noise transfer function. | |
| std::vector< std::vector< float > > | m_olPSDs |
| std::vector< std::vector< float > > | m_rawOlPSDs |
| std::vector< std::vector< float > > | m_smoothOlPSDs |
| std::vector< std::vector< float > > | m_nPSDs |
| std::vector< float > | m_modeVarCL |
| std::vector< float > | m_modeVarOL |
| int | m_modesOn |
| std::vector< float > | m_optGainSIRaw |
| The raw SI optimal gains before leaky integration. | |
| std::vector< float > | m_optGainSI |
| The leaky-integrated SI optimal gains. | |
| std::vector< float > | m_gmaxSI |
| The previously calculated maximum gains for SI. | |
| std::vector< float > | m_modeVarSI |
| std::vector< int > | m_timesOnSI |
| int | m_modesOnSI |
| bool | m_siGainStateNeedsSync { true } |
| std::vector< float > | m_optGainLP |
| std::vector< float > | m_gmaxLP |
| The previously calculated maximum gains for LP. | |
| std::vector< float > | m_modeVarLP |
| std::vector< int > | m_timesOnLP |
| int | m_modesOnLP |
| bool | m_loop { false } |
| float | m_opticalGain { 1 } |
| float | m_opticalGainSource { 1 } |
| float | m_gain { 0 } |
| float | m_mult { 1 } |
| float | m_siGain { 0 } |
| float | m_siMult { 1 } |
| bool | m_doPCCalcs { true } |
| float | m_pcGain { 0 } |
| float | m_pcMult { 0 } |
| bool | m_pcOn { false } |
| std::vector< float > | m_gainFacts |
| std::vector< float > | m_multFacts |
| std::vector< float > | m_pcGainFacts |
| std::vector< float > | m_pcMultFacts |
| std::vector< uint32_t > | m_Na |
| std::vector< uint32_t > | m_NaCurrent |
| std::vector< uint32_t > | m_Nb |
| std::vector< uint32_t > | m_NbCurrent |
| eigenImage< float > | m_as |
| eigenImage< float > | m_bs |
| int | m_nRegCycles { 60 } |
| How often to regularize each mode. | |
| std::vector< int > | m_regCounter |
| Counters to track when this mode was last regularized. | |
| std::vector< float > | m_regScale |
| The regularization scale factors for each mode. | |
| std::vector< float > | m_gainCals |
| std::vector< float > | m_gainCalFacts |
| std::vector< float > | m_taus |
| eigenImage< float > | m_noiseParams |
| eigenImage< float > | m_wfsavg |
| eigenImage< float > | m_wfsmask |
| float | m_counts { 0 } |
| float | m_emg { 1 } |
| int | m_npix { 0 } |
| int | m_sinceChange { -1 } |
| std::string | m_olPSDShmimName |
| std::string | m_rawOlPSDShmimName |
| std::string | m_smoothOlPSDShmimName |
| std::string | m_noisePSDShmimName |
| std::string | m_clXferCurrentShmimName |
| std::string | m_clNtfCurrentShmimName |
| std::string | m_clXferSIShmimName |
| std::string | m_clNtfSIShmimName |
| std::string | m_clXferLPShmimName |
| std::string | m_clNtfLPShmimName |
| std::string | m_optGainShmimName |
| std::string | m_optGainSIRawShmimName |
| std::string | m_optGainSIShmimName |
| std::string | m_maxGainSIShmimName |
| std::string | m_optGainLPShmimName |
| std::string | m_maxGainLPShmimName |
| std::string | m_modevarShmimName |
| IMAGE * | m_olPSDStream { nullptr } |
| IMAGE * | m_rawOlPSDStream { nullptr } |
| IMAGE * | m_smoothOlPSDStream { nullptr } |
| IMAGE * | m_noisePSDStream { nullptr } |
| IMAGE * | m_clXferCurrentStream { nullptr } |
| IMAGE * | m_clNtfCurrentStream { nullptr } |
| IMAGE * | m_clXferSIStream { nullptr } |
| IMAGE * | m_clNtfSIStream { nullptr } |
| IMAGE * | m_clXferLPStream { nullptr } |
| IMAGE * | m_clNtfLPStream { nullptr } |
| IMAGE * | m_optGainStream { nullptr } |
| IMAGE * | m_optGainSIRawStream { nullptr } |
| IMAGE * | m_optGainSIStream { nullptr } |
| IMAGE * | m_maxGainSIStream { nullptr } |
| IMAGE * | m_optGainLPStream { nullptr } |
| IMAGE * | m_maxGainLPStream { nullptr } |
| IMAGE * | m_modevarStream { nullptr } |
| std::mutex | m_goptMutex |
| Mutex for synchronizing updates. | |
| std::atomic< bool > | m_updating { false } |
| 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 |
| Path to the cpusets mount. | |
| unsigned long | m_loopPause |
| int | m_shutdown |
| Flag to signal it's time to shutdown. When not 0, the main loop exits. | |
Configurable Parameters | |
| int | m_loopNum { 1 } |
| std::string | m_loopName |
| The name of the loop control INDI device name. | |
| std::string | m_wfsDevice { "camwfs" } |
| std::string | m_psdDevice { "hopsds" } |
| std::string | m_opticalGainDevice { "strehl" } |
| std::string | m_opticalGainProperty { "strehl_optimal" } |
| std::string | m_opticalGainElement { "pyramid" } |
| bool | m_autoUpdate { false } |
| Flag controlling whether gains are automatically updated. | |
| bool | m_opticalGainUpdate { false } |
| float | m_gainGain { 0.1 } |
| The gain to use for SI gain correction updates. Default is 0.1. | |
| float | m_gainLeak { 0.9 } |
| The leak factor used for SI gain integration. Default is 0.9. | |
| processPsdProcessorT::processModelConfig | m_extrapConfig |
| Configuration of the OL PSD extrapolation model. | |
| uint32_t | m_maxNCoeff { 1000 } |
| uint32_t | m_defaultNCoeff { 25 } |
| int | m_extrapOL { c_olProcessNone } |
| Which extrapolation method to use for the OL PSD. | |
| int | m_extrapNoiseEstimateDomain { c_extrapNoiseEstimateOpenLoop } |
| int | m_extrapNoiseEstimateRange { c_extrapNoiseEstimateHighFreq } |
| int | m_extrapNoiseEstimateStatistic { c_extrapNoiseEstimatePercentile } |
| int | m_extrapClosedLoopOlEstimateMethod { c_extrapClosedLoopOlEstimateEtfOnly } |
| int | m_extrapPowerLawCrossoverMode { c_extrapPowerLawCrossoverManual } |
Private Types | |
| typedef dev::telemeter< modalGainOpt > | telemeterT |
Private Member Functions | |
| int | clearFSMAlert () |
| Clear the FSM alert state. | |
| modalGainOpt & | derived () |
| Access the derived class. | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
| const std::string & | shmimName () const |
| const uint32_t & | width () const |
| const uint32_t & | height () const |
| const uint32_t & | depth () const |
| const uint8_t & | dataType () const |
| const size_t & | typeSize () const |
| int | setupConfig (mx::app::appConfigurator &config) |
| Setup the configuration system. | |
| int | loadConfig (mx::app::appConfigurator &config) |
| load the configuration system results | |
Private Attributes | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
| bool | m_getExistingFirst |
| stateCodes::stateCodeT | m_targetState |
| shmimMonitorState | m_smState |
| int | m_semaphoreNumber |
| The image structure semaphore index. | |
| uint32_t | m_width |
| The width of the images in the stream. | |
| uint32_t | m_height |
| The height of the images in the stream. | |
| uint32_t | m_depth |
| The depth of the circular buffer in the stream. | |
| uint8_t | m_dataType |
| The ImageStreamIO type code. | |
| size_t | m_typeSize |
| The size of the type, in bytes. Result of sizeof. | |
| IMAGE | m_imageStream |
| The ImageStreamIO shared memory buffer. | |
| ino_t | m_inode |
| The inode of the image stream file. | |
Configurable Parameters | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
| std::string | m_shmimName |
| int | m_smThreadPrio |
| Priority of the shmimMonitor thread, should normally be > 00. | |
| std::string | m_smCpuset |
| The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default). | |
SIGSEGV & SIGBUS signal handling | |
These signals occur as a result of a ImageStreamIO source server resetting (e.g. changing frame sizes). When they occur a restart of the shmim monitor thread main loops is triggered. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
| bool | m_restart |
| Flag indicating tha the shared memory should be reinitialized. | |
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. | |
| 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. | |
| 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 |
| 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. | |
| indiDriver< MagAOXApp > * | m_indiDriver |
| 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. | |
| int | createINDIFIFOS () |
| Create the INDI FIFOs. | |
| int | startINDI () |
| Start INDI Communications. | |
| 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. | |
| 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. | |
| 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. | |
| void | updatesIfChanged (pcf::IndiProperty &p, const std::vector< const char * > &els, const std::vector< T > &newVals, pcf::IndiProperty::PropertyStateType newState=pcf::IndiProperty::Ok) |
| int | indiTargetUpdate (pcf::IndiProperty &localProperty, T &localTarget, const pcf::IndiProperty &remoteProperty, bool setBusy=true) |
| Get the target element value from an new property. | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| static constexpr bool | m_useINDI |
| Flag controlling whether INDI is used. If false, then no INDI code executes. | |
Gain Optimization Thread | |
| int | m_goptThreadPrio { 0 } |
| Priority of the gain optimization thread. | |
| std::string | m_goptThreadCpuset |
| std::thread | m_goptThread |
| The gain optimization thread. | |
| bool | m_goptThreadInit { true } |
| Initialization flag for the gain optimization thread. | |
| pid_t | m_goptThreadID { 0 } |
| gain optimization thread PID. | |
| pcf::IndiProperty | m_goptThreadProp |
| sem_t | m_goptSemaphore |
| bool | m_goptSemaphoreInit { false } |
| Tracks whether the gain optimization semaphore needs cleanup. | |
| float | noisePSD (int n) |
| void | goptThreadExec () |
| Gain optimization thread function. | |
| static void | goptThreadStart (modalGainOpt *p) |
| Gain Optimization thread starter function. | |
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 |
| This process's PID. | |
| int | lockPID () |
| int | unlockPID () |
| Remove the PID file. | |
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 |
| 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 |
| The INDI element name to monitor for this device's power state. | |
| std::string | m_powerTargetElement |
| The INDI element name to monitor for this device's power state. | |
| unsigned long | m_powerOnWait |
| Default time in sec to wait for device to boot after power on. | |
| int | m_powerOnCounter |
| int | m_powerState |
| Current power state, 1=On, 0=Off, -1=Unk. | |
| int | m_powerTargetState |
| Current target power state, 1=On, 0=Off, -1=Unk. | |
| pcf::IndiProperty | m_indiP_powerChannel |
| INDI property used to communicate power state. | |
| virtual int | onPowerOff () |
| This method is called when the change to poweroff is detected. | |
| virtual int | whilePowerOff () |
| This method is called while the power is off, once per FSM loop. | |
| bool | powerOnWaitElapsed () |
| This method tests whether the power on wait time has elapsed. | |
| int | powerState () |
| Returns the current power state. | |
| int | powerStateTarget () |
| Returns the target power state. | |
| INDI_SETCALLBACK_DECL (MagAOXApp, m_indiP_powerChannel) | |
Logging | |
| void | logMessage (bufferPtrT &b) |
| Handle a log message from the logging system. | |
| static void | configLog (const std::string &name, const int &code, const std::string &value, const std::string &source) |
| Callback for config system logging. | |
| static logManagerT | m_log |
| static int | log (const typename logT::messageT &msg, logPrioT level=logPrio::LOG_DEFAULT) |
| Make a log entry. | |
| static int | log (logPrioT level=logPrio::LOG_DEFAULT) |
| Make a log entry. | |
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 |
| bool | m_stateAlert |
| bool | m_gitAlert |
| int | m_stateLogged |
Signal Handling | |
| static MagAOXApp * | m_self |
| 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. | |
shmimmonitor Thread | |
This thread actually monitors the shared memory buffer | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| bool | m_smThreadInit |
| Synchronizer for thread startup, to allow priority setting to finish. | |
| pid_t | m_smThreadID |
| The s.m. thread PID. | |
| pcf::IndiProperty | m_smThreadProp |
| The property to hold the s.m. thread details. | |
| std::thread | m_smThread |
| A separate thread for the actual monitoring. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| void | smThreadExec () |
| Execute the monitoring thread. | |
| int | create (uint32_t width, uint32_t height, uint32_t depth, uint8_t datatype, void *initData=nullptr) |
| Create the image. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
| static void | smThreadStart (shmimMonitor *s) |
| Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec. | |
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_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_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_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_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_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_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_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_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_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_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_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_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_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_shmimName |
| Property used to report the shmim buffer name. | |
| pcf::IndiProperty | m_indiP_frameSize |
| Property used to report the current frame size. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
| int | updateINDI () |
| Update the INDI properties for this device controller. | |
The MagAO-X PSD-based gain optimizer.
Definition at line 714 of file modalGainOpt.hpp.
| typedef dev::shmimMonitor<modalGainOpt, acoeffShmimT> MagAOX::app::modalGainOpt::acoeffShmimMonitorT |
Definition at line 764 of file modalGainOpt.hpp.
| typedef dev::shmimMonitor<modalGainOpt, bcoeffShmimT> MagAOX::app::modalGainOpt::bcoeffShmimMonitorT |
Definition at line 765 of file modalGainOpt.hpp.
|
inherited |
Return type of insert on the indiCallBack map.
Definition at line 701 of file MagAOXApp.hpp.
|
inherited |
Iterator type of the indiCallBack map.
Definition at line 698 of file MagAOXApp.hpp.
|
inherited |
Value type of the indiCallBack map.
Definition at line 695 of file MagAOXApp.hpp.
| typedef std::chrono::duration<double> MagAOX::app::modalGainOpt::durationT |
Definition at line 774 of file modalGainOpt.hpp.
Definition at line 758 of file modalGainOpt.hpp.
| typedef dev::shmimMonitor<modalGainOpt, gainCalFactShmimT> MagAOX::app::modalGainOpt::gainCalFactShmimMonitorT |
Definition at line 767 of file modalGainOpt.hpp.
| typedef dev::shmimMonitor<modalGainOpt, gainCalShmimT> MagAOX::app::modalGainOpt::gainCalShmimMonitorT |
Definition at line 766 of file modalGainOpt.hpp.
| typedef dev::shmimMonitor<modalGainOpt, gainFactShmimT> MagAOX::app::modalGainOpt::gainFactShmimMonitorT |
Definition at line 759 of file modalGainOpt.hpp.
|
inherited |
The log manager type.
Definition at line 79 of file telemeter.hpp.
|
inherited |
The log manager type.
Definition at line 185 of file MagAOXApp.hpp.
| typedef dev::shmimMonitor<modalGainOpt, multFactShmimT> MagAOX::app::modalGainOpt::multFactShmimMonitorT |
Definition at line 760 of file modalGainOpt.hpp.
Definition at line 769 of file modalGainOpt.hpp.
| typedef dev::shmimMonitor<modalGainOpt, numpccoeffShmimT> MagAOX::app::modalGainOpt::numpccoeffShmimMonitorT |
Definition at line 763 of file modalGainOpt.hpp.
| typedef dev::shmimMonitor<modalGainOpt, pcGainFactShmimT> MagAOX::app::modalGainOpt::pcGainFactShmimMonitorT |
Definition at line 761 of file modalGainOpt.hpp.
| typedef dev::shmimMonitor<modalGainOpt, pcMultFactShmimT> MagAOX::app::modalGainOpt::pcMultFactShmimMonitorT |
Definition at line 762 of file modalGainOpt.hpp.
Definition at line 757 of file modalGainOpt.hpp.
Definition at line 768 of file modalGainOpt.hpp.
Definition at line 736 of file modalGainOpt.hpp.
| typedef std::chrono::time_point<std::chrono::steady_clock> MagAOX::app::modalGainOpt::timePointT |
Definition at line 773 of file modalGainOpt.hpp.
|
inherited |
Definition at line 76 of file telemeter.hpp.
|
inherited |
Definition at line 182 of file MagAOXApp.hpp.
| typedef dev::shmimMonitor<modalGainOpt, wfsavgShmimT> MagAOX::app::modalGainOpt::wfsavgShmimMonitorT |
Definition at line 770 of file modalGainOpt.hpp.
| typedef dev::shmimMonitor<modalGainOpt, wfsmaskShmimT> MagAOX::app::modalGainOpt::wfsmaskShmimMonitorT |
Definition at line 771 of file modalGainOpt.hpp.
| MagAOX::app::modalGainOpt::modalGainOpt | ( | ) |
Default c'tor.
Definition at line 1426 of file modalGainOpt.hpp.
References MagAOX::app::dev::shmimMonitor< modalGainOpt, wfsavgShmimT >::m_getExistingFirst, MagAOX::app::dev::shmimMonitor< modalGainOpt, psdShmimT >::m_getExistingFirst, MagAOX::app::dev::shmimMonitor< modalGainOpt, freqShmimT >::m_getExistingFirst, MagAOX::app::dev::shmimMonitor< modalGainOpt, wfsmaskShmimT >::m_getExistingFirst, MagAOX::app::dev::shmimMonitor< modalGainOpt, noiseShmimT >::m_getExistingFirst, MagAOX::app::dev::shmimMonitor< modalGainOpt, gainFactShmimT >::m_getExistingFirst, MagAOX::app::dev::shmimMonitor< modalGainOpt, numpccoeffShmimT >::m_getExistingFirst, MagAOX::app::dev::shmimMonitor< modalGainOpt, multFactShmimT >::m_getExistingFirst, MagAOX::app::dev::shmimMonitor< modalGainOpt, tauShmimT >::m_getExistingFirst, MagAOX::app::dev::shmimMonitor< modalGainOpt, pcMultFactShmimT >::m_getExistingFirst, MagAOX::app::dev::shmimMonitor< modalGainOpt, acoeffShmimT >::m_getExistingFirst, MagAOX::app::dev::shmimMonitor< modalGainOpt, pcGainFactShmimT >::m_getExistingFirst, MagAOX::app::dev::shmimMonitor< modalGainOpt, gainCalShmimT >::m_getExistingFirst, MagAOX::app::dev::shmimMonitor< modalGainOpt, bcoeffShmimT >::m_getExistingFirst, and MagAOX::app::dev::shmimMonitor< modalGainOpt, gainCalFactShmimT >::m_getExistingFirst.
|
inlinenoexcept |
D'tor, declared and defined for noexcept.
Definition at line 1126 of file modalGainOpt.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 404 of file MagAOXApp.hpp.
| int MagAOX::app::modalGainOpt::allocate | ( | const acoeffShmimT & | dummy | ) |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3844 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log().
| int MagAOX::app::modalGainOpt::allocate | ( | const bcoeffShmimT & | dummy | ) |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3930 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log().
| int MagAOX::app::modalGainOpt::allocate | ( | const freqShmimT & | dummy | ) |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3462 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log().
| int MagAOX::app::modalGainOpt::allocate | ( | const gainCalFactShmimT & | dummy | ) |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 4083 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log().
| int MagAOX::app::modalGainOpt::allocate | ( | const gainCalShmimT & | dummy | ) |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 4018 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log().
| int MagAOX::app::modalGainOpt::allocate | ( | const gainFactShmimT & | dummy | ) |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3516 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), and MagAOX::app::dev::shmimMonitor< modalGainOpt, gainFactShmimT >::m_height.
| int MagAOX::app::modalGainOpt::allocate | ( | const multFactShmimT & | dummy | ) |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3575 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), and MagAOX::app::dev::shmimMonitor< modalGainOpt, multFactShmimT >::m_height.
| int MagAOX::app::modalGainOpt::allocate | ( | const noiseShmimT & | dummy | ) |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 4211 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log().
| int MagAOX::app::modalGainOpt::allocate | ( | const numpccoeffShmimT & | dummy | ) |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3752 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), and MagAOX::app::dev::shmimMonitor< modalGainOpt, numpccoeffShmimT >::m_height.
| int MagAOX::app::modalGainOpt::allocate | ( | const pcGainFactShmimT & | dummy | ) |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3634 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), and MagAOX::app::dev::shmimMonitor< modalGainOpt, pcGainFactShmimT >::m_height.
| int MagAOX::app::modalGainOpt::allocate | ( | const pcMultFactShmimT & | dummy | ) |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3693 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), and MagAOX::app::dev::shmimMonitor< modalGainOpt, pcMultFactShmimT >::m_height.
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3192 of file modalGainOpt.hpp.
References createImageStream(), destroyImageStream(), MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_clNtfCurrent, m_clNtfCurrentShmimName, m_clNtfCurrentStream, m_clNtfLP, m_clNtfLPShmimName, m_clNtfLPStream, m_clNtfSI, m_clNtfSIShmimName, m_clNtfSIStream, m_clPSDs, m_clXferCurrent, m_clXferCurrentShmimName, m_clXferCurrentStream, m_clXferLP, m_clXferLPShmimName, m_clXferLPStream, m_clXferSI, m_clXferSIShmimName, m_clXferSIStream, MagAOX::app::dev::shmimMonitor< modalGainOpt, psdShmimT >::m_dataType, m_gmaxSI, m_goptMutex, MagAOX::app::dev::shmimMonitor< modalGainOpt, psdShmimT >::m_height, m_maxGainLPShmimName, m_maxGainLPStream, m_maxGainSIShmimName, m_maxGainSIStream, m_modeVarLP, m_modeVarOL, m_modevarShmimName, m_modeVarSI, m_modevarStream, m_nFreq, m_nModes, m_noisePSDShmimName, m_noisePSDStream, m_nPSDs, m_olPSDs, m_olPSDShmimName, m_olPSDStream, m_optGainLP, m_optGainLPShmimName, m_optGainLPStream, m_optGainShmimName, m_optGainSI, m_optGainSIRaw, m_optGainSIRawShmimName, m_optGainSIRawStream, m_optGainSIShmimName, m_optGainSIStream, m_optGainStream, m_rawOlPSDs, m_rawOlPSDShmimName, m_rawOlPSDStream, m_siGainStateNeedsSync, m_sinceChange, m_smoothOlPSDs, m_smoothOlPSDShmimName, m_smoothOlPSDStream, m_timesOnLP, m_timesOnSI, m_updating, and MagAOX::app::dev::shmimMonitor< modalGainOpt, psdShmimT >::m_width.
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 4147 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log().
| int MagAOX::app::modalGainOpt::allocate | ( | const wfsavgShmimT & | dummy | ) |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 4276 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), MagAOX::app::dev::shmimMonitor< modalGainOpt, wfsavgShmimT >::m_height, and MagAOX::app::dev::shmimMonitor< modalGainOpt, wfsavgShmimT >::m_width.
| int MagAOX::app::modalGainOpt::allocate | ( | const wfsmaskShmimT & | dummy | ) |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 4304 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), MagAOX::app::dev::shmimMonitor< modalGainOpt, wfsmaskShmimT >::m_height, and MagAOX::app::dev::shmimMonitor< modalGainOpt, wfsmaskShmimT >::m_width.
| int MagAOX::app::modalGainOpt::allocatePCShmims | ( | ) |
Definition at line 3125 of file modalGainOpt.hpp.
References MagAOX::app::dev::connected, MagAOX::app::dev::shmimMonitor< modalGainOpt, pcMultFactShmimT >::create(), MagAOX::app::dev::shmimMonitor< modalGainOpt, pcGainFactShmimT >::create(), MagAOX::app::dev::shmimMonitor< modalGainOpt, bcoeffShmimT >::create(), MagAOX::app::dev::shmimMonitor< modalGainOpt, numpccoeffShmimT >::create(), MagAOX::app::dev::shmimMonitor< modalGainOpt, acoeffShmimT >::create(), MagAOX::app::MagAOXApp< true >::log(), m_defaultNCoeff, MagAOX::app::dev::shmimMonitor< modalGainOpt, pcMultFactShmimT >::m_height, MagAOX::app::dev::shmimMonitor< modalGainOpt, pcGainFactShmimT >::m_height, MagAOX::app::dev::shmimMonitor< modalGainOpt, bcoeffShmimT >::m_height, MagAOX::app::dev::shmimMonitor< modalGainOpt, numpccoeffShmimT >::m_height, MagAOX::app::dev::shmimMonitor< modalGainOpt, acoeffShmimT >::m_height, m_maxNCoeff, m_nModes, MagAOX::app::dev::shmimMonitor< modalGainOpt, acoeffShmimT >::m_smState, MagAOX::app::dev::shmimMonitor< modalGainOpt, numpccoeffShmimT >::m_smState, MagAOX::app::dev::shmimMonitor< modalGainOpt, bcoeffShmimT >::m_smState, MagAOX::app::dev::shmimMonitor< modalGainOpt, pcGainFactShmimT >::m_smState, MagAOX::app::dev::shmimMonitor< modalGainOpt, pcMultFactShmimT >::m_smState, MagAOX::app::dev::shmimMonitor< modalGainOpt, numpccoeffShmimT >::m_width, MagAOX::app::dev::shmimMonitor< modalGainOpt, pcGainFactShmimT >::m_width, MagAOX::app::dev::shmimMonitor< modalGainOpt, pcMultFactShmimT >::m_width, MagAOX::app::dev::shmimMonitor< modalGainOpt, acoeffShmimT >::m_width, MagAOX::app::dev::shmimMonitor< modalGainOpt, bcoeffShmimT >::m_width, and MGO_BREADCRUMB.
Referenced by checkSizes().
|
virtual |
Implementation of the FSM for modalGainOpt.
Implements MagAOX::app::MagAOXApp< true >.
Definition at line 2403 of file modalGainOpt.hpp.
References MagAOX::app::dev::telemeter< modalGainOpt >::appLogic(), MagAOX::app::extrapClosedLoopOlEstimateMethodElement(), MagAOX::app::extrapNoiseEstimateDomainElement(), MagAOX::app::extrapNoiseEstimateRangeElement(), MagAOX::app::extrapNoiseEstimateStatisticElement(), MagAOX::app::extrapPowerLawCrossoverModeElement(), INDI_IDLE, INDI_OK, MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_autoUpdate, m_dump, m_extrapClosedLoopOlEstimateMethod, m_extrapConfig, m_extrapNoiseEstimateDomain, m_extrapNoiseEstimateRange, m_extrapNoiseEstimateStatistic, m_extrapOL, m_extrapPowerLawCrossoverMode, m_gainGain, m_gainLeak, m_goptMutex, m_goptThread, MagAOX::app::MagAOXApp< true >::m_indiDriver, m_indiP_autoUpdate, m_indiP_dump, m_indiP_extrapClMinSignificantFraction, m_indiP_extrapClosedLoopOlEstimateMethod, m_indiP_extrapClSignificanceThreshold, m_indiP_extrapDropoutGapFactor, m_indiP_extrapDropoutMaxBins, m_indiP_extrapDropoutTinyFactor, m_indiP_extrapFitPowerLawIndex, m_indiP_extrapMethod, m_indiP_extrapNoiseEstimateDomain, m_indiP_extrapNoiseEstimateLowFreqMaxHz, m_indiP_extrapNoiseEstimateRange, m_indiP_extrapNoiseEstimateStatistic, m_indiP_extrapPowerLawAutoMaxFreqFraction, m_indiP_extrapPowerLawAutoSmoothWidthHz, m_indiP_extrapPowerLawBlendBins, m_indiP_extrapPowerLawCrossoverMode, m_indiP_extrapPowerLawFitBinWidthHz, m_indiP_extrapPowerLawFitIncludesMatchPoint, m_indiP_extrapPowerLawFitMaxFreqHz, m_indiP_extrapPowerLawFitMinFreqHz, m_indiP_extrapPowerLawIndex, m_indiP_extrapPowerLawMatchFallbackWindowHz, m_indiP_extrapPowerLawMatchFreq, m_indiP_extrapPowerLawNormFreq, m_indiP_extrapPowerLawOnlyAboveFreq, m_indiP_gainGain, m_indiP_gainLeak, m_indiP_modesOn, m_indiP_opticalGain, m_indiP_opticalGainUpdate, m_indiP_updateOnce, m_indiP_zeroGains, m_modesOn, m_modesOnLP, m_modesOnSI, m_opticalGain, m_opticalGainUpdate, m_updateOnce, m_zeroGains, MagAOX::app::olProcessMethodElement(), SHMIMMONITORT_APP_LOGIC, SHMIMMONITORT_UPDATE_INDI, MagAOX::app::indi::updateSelectionSwitchIfChanged(), MagAOX::app::MagAOXApp< true >::updateSwitchIfChanged(), and XWCAPP_THREAD_CHECK.
|
protected |
Apply an incoming frequency frame to the stored frequency scale.
| [in] | incoming | incoming frequency frame |
| [in] | size | number of frequency samples in incoming |
Definition at line 2977 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), m_fps, m_freq, m_freqUpdated, m_goptUpdated, and m_sinceChange.
Referenced by processImage(), and libXWCTest::modalGainOptTest::TEST_CASE().
|
protected |
Apply an incoming gain-factor frame to one of the stored gain vectors.
| gainFacts | [in.out] stored gain factors to resize and update | |
| [in] | incoming | incoming gain-factor frame |
| [in] | width | number of gain factors in incoming |
| [in] | predictorPath | true when the values came from the predictor path |
Definition at line 2891 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), m_loop, m_siGainStateNeedsSync, m_sinceChange, updateAppliedModeCount(), and MagAOX::app::dev::shmimMonitor< modalGainOpt, psdShmimT >::width().
Referenced by processImage(), processImage(), and libXWCTest::modalGainOptTest::TEST_CASE().
|
protected |
Apply an incoming multiplier frame to one of the stored multiplier vectors.
| multFacts | [in.out] stored multiplier factors to resize and update | |
| [in] | incoming | incoming multiplier frame |
| [in] | width | number of multiplier factors in incoming |
| [in] | predictorPath | true when the values came from the predictor path |
Definition at line 2933 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), m_goptUpdated, m_loop, m_pcgoptUpdated, m_sinceChange, and MagAOX::app::dev::shmimMonitor< modalGainOpt, psdShmimT >::width().
Referenced by processImage(), processImage(), and libXWCTest::modalGainOptTest::TEST_CASE().
|
virtual |
Shutdown the app.
Implements MagAOX::app::MagAOXApp< true >.
Definition at line 2627 of file modalGainOpt.hpp.
References MagAOX::app::dev::telemeter< modalGainOpt >::appShutdown(), destroyImageStream(), MagAOX::app::MagAOXApp< true >::log(), m_clNtfCurrentStream, m_clNtfLPStream, m_clNtfSIStream, m_clXferCurrentStream, m_clXferLPStream, m_clXferSIStream, m_goptSemaphore, m_goptSemaphoreInit, m_goptThread, m_maxGainLPStream, m_maxGainSIStream, m_modevarStream, m_noisePSDStream, m_olPSDStream, m_optGainLPStream, m_optGainSIRawStream, m_optGainSIStream, m_optGainStream, m_rawOlPSDStream, m_smoothOlPSDStream, SHMIMMONITORT_APP_SHUTDOWN, and XWCAPP_THREAD_STOP.
|
virtual |
Startup function.
Implements MagAOX::app::MagAOXApp< true >.
Definition at line 2049 of file modalGainOpt.hpp.
References MagAOX::app::indi::addNumberElement(), MagAOX::app::dev::telemeter< modalGainOpt >::appStartup(), MagAOX::app::c_extrapClosedLoopOlEstimateEtfOnly, MagAOX::app::c_extrapClosedLoopOlEstimateNtfAware, MagAOX::app::c_extrapNoiseEstimateClosedLoopPreXfer, MagAOX::app::c_extrapNoiseEstimateHighFreq, MagAOX::app::c_extrapNoiseEstimateLowFreq, MagAOX::app::c_extrapNoiseEstimateMinimum, MagAOX::app::c_extrapNoiseEstimateOpenLoop, MagAOX::app::c_extrapNoiseEstimatePercentile, MagAOX::app::c_extrapPowerLawCrossoverAutoSmoothedCrossing, MagAOX::app::c_extrapPowerLawCrossoverManual, MagAOX::app::c_olProcessLegacy, MagAOX::app::c_olProcessMoffatPeaks, MagAOX::app::c_olProcessNone, MagAOX::app::c_olProcessPowerLawOnly, CREATE_REG_INDI_NEW_NUMBERF, CREATE_REG_INDI_NEW_NUMBERI, CREATE_REG_INDI_NEW_REQUESTSWITCH, CREATE_REG_INDI_NEW_TOGGLESWITCH, CREATE_REG_INDI_RO_NUMBER, MagAOX::app::MagAOXApp< true >::createStandardIndiSelectionSw(), MagAOX::app::MagAOXApp< true >::createStandardIndiToggleSw(), MagAOX::app::extrapClosedLoopOlEstimateMethodElement(), MagAOX::app::extrapClosedLoopOlEstimateMethodLabel(), MagAOX::app::extrapNoiseEstimateDomainElement(), MagAOX::app::extrapNoiseEstimateDomainLabel(), MagAOX::app::extrapNoiseEstimateRangeElement(), MagAOX::app::extrapNoiseEstimateRangeLabel(), MagAOX::app::extrapNoiseEstimateStatisticElement(), MagAOX::app::extrapNoiseEstimateStatisticLabel(), MagAOX::app::extrapPowerLawCrossoverModeElement(), MagAOX::app::extrapPowerLawCrossoverModeLabel(), goptThreadStart(), INDI_NEWCALLBACK, MagAOX::app::MagAOXApp< true >::log(), m_goptSemaphore, m_goptSemaphoreInit, m_goptThread, m_goptThreadCpuset, m_goptThreadID, m_goptThreadInit, m_goptThreadPrio, m_goptThreadProp, m_indiP_autoUpdate, m_indiP_dump, m_indiP_emg, m_indiP_extrapClMinSignificantFraction, m_indiP_extrapClosedLoopOlEstimateMethod, m_indiP_extrapClSignificanceThreshold, m_indiP_extrapDropoutGapFactor, m_indiP_extrapDropoutMaxBins, m_indiP_extrapDropoutTinyFactor, m_indiP_extrapFitPowerLawIndex, m_indiP_extrapMethod, m_indiP_extrapNoiseEstimateDomain, m_indiP_extrapNoiseEstimateLowFreqMaxHz, m_indiP_extrapNoiseEstimateRange, m_indiP_extrapNoiseEstimateStatistic, m_indiP_extrapPowerLawAutoMaxFreqFraction, m_indiP_extrapPowerLawAutoSmoothWidthHz, m_indiP_extrapPowerLawBlendBins, m_indiP_extrapPowerLawCrossoverMode, m_indiP_extrapPowerLawFitBinWidthHz, m_indiP_extrapPowerLawFitIncludesMatchPoint, m_indiP_extrapPowerLawFitMaxFreqHz, m_indiP_extrapPowerLawFitMinFreqHz, m_indiP_extrapPowerLawIndex, m_indiP_extrapPowerLawMatchFallbackWindowHz, m_indiP_extrapPowerLawMatchFreq, m_indiP_extrapPowerLawNormFreq, m_indiP_extrapPowerLawOnlyAboveFreq, m_indiP_gainGain, m_indiP_gainLeak, m_indiP_loop, m_indiP_modesOn, m_indiP_opticalGain, m_indiP_opticalGainSource, m_indiP_opticalGainUpdate, m_indiP_pcGain, m_indiP_pcMult, m_indiP_pcOn, m_indiP_psdAvgTime, m_indiP_psdTime, m_indiP_siGain, m_indiP_siMult, m_indiP_updateOnce, m_indiP_zeroGains, m_loopName, m_opticalGainDevice, m_opticalGainProperty, m_psdDevice, m_wfsDevice, MagAOX::app::olProcessMethodElement(), MagAOX::app::olProcessMethodLabel(), MagAOX::app::stateCodes::OPERATING, REG_INDI_SETPROP, MagAOX::app::MagAOXApp< true >::registerIndiPropertyNew(), SHMIMMONITORT_APP_STARTUP, MagAOX::app::MagAOXApp< true >::state(), and XWCAPP_THREAD_START.
|
inherited |
|
inherited |
Get the calibration directory.
Definition at line 1273 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 278 of file MagAOXApp.hpp.
|
inline |
Definition at line 2677 of file modalGainOpt.hpp.
References MagAOX::app::dev::telemeter< modalGainOpt >::checkRecordTimes().
|
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.
| int MagAOX::app::modalGainOpt::checkSizes | ( | ) |
Check that all sizes and allocations have occurred.
Definition at line 4334 of file modalGainOpt.hpp.
References allocatePCShmims(), MagAOX::app::MagAOXApp< true >::log(), m_as, m_bs, m_clNtfCurrentStream, m_clNtfLPStream, m_clNtfSIStream, m_clPSDs, m_clXferCurrentStream, m_clXferLPStream, m_clXferSIStream, m_fps, m_freq, m_gainCalFacts, m_gainCals, m_gainFacts, m_multFacts, m_Na, m_NaCurrent, m_Nb, m_NbCurrent, m_nModes, m_noisePSDStream, m_olPSDStream, m_optGainLP, m_optGainLPStream, m_optGainSIRawStream, m_optGainSIStream, m_optGainStream, m_pcGainFacts, m_pcMultFacts, m_rawOlPSDStream, m_smoothOlPSDStream, and m_taus.
Referenced by goptThreadExec().
|
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 642 of file MagAOXApp.hpp.
|
inherited |
Get the config base file.
Definition at line 1268 of file MagAOXApp.hpp.
|
inherited |
Get the config directory.
Definition at line 1263 of file MagAOXApp.hpp.
|
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 384 of file MagAOXApp.hpp.
|
inherited |
Get the config name.
Definition at line 1257 of file MagAOXApp.hpp.
|
protected |
Count how many modes are enabled by a gain-factor vector.
| [in] | gainFacts | gain factors to inspect |
Definition at line 2866 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log().
Referenced by libXWCTest::modalGainOptTest::TEST_CASE(), and updateAppliedModeCount().
|
inherited |
Get the cpuset path.
Definition at line 1288 of file MagAOXApp.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protectedinherited |
Create the image.
This will create the shared memory image, erasing an existing. This is independent of the actual shmim monitoring function, which will pick up the new inode change on its own and restart the allocate() and processImage() cycle.
| [in] | width | width of the new image |
| [in] | height | height of the new image |
| [in] | depth | depth of the new image |
| [in] | datatype | CACAO data type of the new image |
| [in] | initData | [optional] data to initialize the new image with. Must be of size width*height*depth*sizeof(dataType) |
Definition at line 256 of file shmimMonitor.hpp.
|
protected |
Allocate and create an owned ImageStreamIO output stream.
| stream | [in.out] stream pointer to allocate and create | |
| [in] | name | shmim name for the output stream |
| [in] | size0 | first axis size |
| [in] | size1 | second axis size |
| [in] | size2 | third axis size |
| [in] | dataType | ImageStreamIO datatype for the stream |
Definition at line 2737 of file modalGainOpt.hpp.
References MagAOX::app::dev::shmimMonitor< modalGainOpt, psdShmimT >::dataType(), destroyImageStream(), and MagAOX::app::MagAOXApp< true >::log().
Referenced by allocate().
|
protectedinherited |
Create the INDI FIFOs.
Changes permissions to max available and creates the FIFOs at the configured path.
Definition at line 960 of file MagAOXApp.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 783 of file MagAOXApp.hpp.
|
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 748 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 762 of file MagAOXApp.hpp.
|
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 809 of file MagAOXApp.hpp.
|
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 840 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 822 of file MagAOXApp.hpp.
|
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 735 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 796 of file MagAOXApp.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 156 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inherited |
Definition at line 154 of file shmimMonitor.hpp.
|
inlineprivateinherited |
Access the derived class.
Definition at line 181 of file telemeter.hpp.
Destroy an owned ImageStreamIO output stream and clear its pointer.
| stream | [in.out] stream pointer to destroy and clear |
Definition at line 2725 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log().
Referenced by allocate(), appShutdown(), and createImageStream().
|
inherited |
Get the INDI control FIFO file name.
Definition at line 1317 of file MagAOXApp.hpp.
|
inherited |
Get the INDI input FIFO file name.
Definition at line 1305 of file MagAOXApp.hpp.
|
inherited |
Get the INDI output FIFO file name.
Definition at line 1311 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 308 of file MagAOXApp.hpp.
|
inherited |
Get the value of the git alert flag.
Definition at line 613 of file MagAOXApp.hpp.
|
protected |
Gain optimization thread function.
Runs until m_shutdown is true.
Definition at line 4654 of file modalGainOpt.hpp.
References MagAOX::app::modalPsdProcessor< realT >::analyzePsd(), MagAOX::app::modalPsdProcessor< realT >::c_defaultLpContinuumWidthHz, MagAOX::app::c_extrapClosedLoopOlEstimateNtfAware, MagAOX::app::c_extrapNoiseEstimateClosedLoopPreXfer, MagAOX::app::c_extrapNoiseEstimateOpenLoop, MagAOX::app::c_olProcessNone, checkSizes(), MagAOX::app::modalPsdProcessor< realT >::estimateNoisePsd(), MagAOX::app::extrapClosedLoopOlEstimateMethodName(), MagAOX::app::extrapNoiseEstimateDomainName(), MagAOX::app::extrapNoiseEstimateRangeName(), MagAOX::app::extrapNoiseEstimateStatisticName(), MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), flatlogs::logPrio::LOG_NOTICE, m_autoUpdate, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_clMinSignificantFraction, m_clNtfCurrent, m_clNtfCurrentStream, m_clNtfLP, m_clNtfLPStream, m_clNtfSI, m_clNtfSIStream, m_clPSDs, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_clSignificanceThreshold, m_clXferCurrent, m_clXferCurrentStream, m_clXferLP, m_clXferLPStream, m_clXferSI, m_clXferSIStream, m_doPCCalcs, m_dump, m_extrapClosedLoopOlEstimateMethod, m_extrapConfig, m_extrapNoiseEstimateDomain, m_extrapNoiseEstimateRange, m_extrapNoiseEstimateStatistic, m_extrapOL, m_freq, m_gain, m_gainCalFacts, m_gainCals, m_gainFacts, m_gmaxLP, m_gmaxSI, m_goptCurrent, m_goptLP, m_goptMutex, m_goptSemaphore, m_goptSI, m_goptThreadID, m_goptThreadInit, MagAOX::app::dev::shmimMonitor< modalGainOpt, gainFactShmimT >::m_imageStream, MagAOX::app::dev::shmimMonitor< modalGainOpt, bcoeffShmimT >::m_imageStream, MagAOX::app::dev::shmimMonitor< modalGainOpt, acoeffShmimT >::m_imageStream, MagAOX::app::dev::shmimMonitor< modalGainOpt, pcGainFactShmimT >::m_imageStream, m_linPred, m_loop, m_maxGainLPStream, m_maxGainSIStream, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_method, m_modesOnLP, m_modesOnSI, m_modeVarLP, m_modeVarOL, m_modeVarSI, m_modevarStream, m_Na, m_nModes, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_noiseEstimateLowFreqMaxHz, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_noiseEstimateRange, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_noiseEstimateStatistic, m_noisePSDStream, m_nPSDs, m_nRegCycles, m_olPSDs, m_olPSDStream, m_optGainLP, m_optGainLPStream, m_optGainSI, m_optGainSIRaw, m_optGainSIRawStream, m_optGainSIStream, m_optGainStream, m_opticalGain, m_pcGain, m_pcGainFacts, m_pcOn, m_rawOlPSDs, m_rawOlPSDStream, m_regCounter, m_regScale, MagAOX::app::MagAOXApp< true >::m_shutdown, m_siGainStateNeedsSync, m_sinceChange, m_smoothOlPSDs, m_smoothOlPSDStream, m_timesOnLP, m_timesOnSI, m_updateOnce, m_updating, MagAOX::app::dev::shmimMonitor< modalGainOpt, bcoeffShmimT >::m_width, MagAOX::app::dev::shmimMonitor< modalGainOpt, acoeffShmimT >::m_width, m_zeroGains, MGO_BREADCRUMB, MagAOX::app::olProcessMethodName(), refreshGoptStructures(), MagAOX::app::MagAOXApp< true >::shutdown(), syncSiGainStateFromAppliedGains(), updateIntegratedSiGain(), writePublishedGainArrays(), writePublishedPredictorArrays(), and XWC_SEM_WAIT_TS_RETVOID.
Referenced by goptThreadStart().
|
staticprotected |
Gain Optimization thread starter function.
| [in] | p | pointer to this |
Definition at line 4649 of file modalGainOpt.hpp.
References goptThreadExec().
Referenced by appStartup().
|
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 976 of file MagAOXApp.hpp.
|
protected |
Handle the closed-loop OL-estimation-method selection switch property.
Definition at line 6005 of file modalGainOpt.hpp.
References MagAOX::app::c_extrapClosedLoopOlEstimateEtfOnly, MagAOX::app::extrapClosedLoopOlEstimateMethodElement(), MagAOX::app::extrapClosedLoopOlEstimateMethodFromElement(), MagAOX::app::extrapClosedLoopOlEstimateMethodName(), INDI_OK, MagAOX::app::ipRecv, MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_closedLoopOlEstimateMethod, m_extrapClosedLoopOlEstimateMethod, m_extrapConfig, m_goptMutex, MagAOX::app::MagAOXApp< true >::m_indiDriver, m_indiP_extrapClosedLoopOlEstimateMethod, m_sinceChange, m_updating, MagAOX::app::target, and MagAOX::app::indi::updateSelectionSwitchIfChanged().
|
protected |
Handle the extrapolation-method selection switch property.
Definition at line 5729 of file modalGainOpt.hpp.
References MagAOX::app::c_olProcessNone, INDI_OK, MagAOX::app::ipRecv, MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_extrapOL, m_goptMutex, MagAOX::app::MagAOXApp< true >::m_indiDriver, m_indiP_extrapMethod, m_sinceChange, m_updating, MagAOX::app::olProcessMethodElement(), MagAOX::app::olProcessMethodFromElement(), MagAOX::app::olProcessMethodName(), MagAOX::app::target, and MagAOX::app::indi::updateSelectionSwitchIfChanged().
|
protected |
Handle the noise-estimation-domain selection switch property.
Definition at line 5795 of file modalGainOpt.hpp.
References MagAOX::app::c_extrapNoiseEstimateOpenLoop, MagAOX::app::extrapNoiseEstimateDomainElement(), MagAOX::app::extrapNoiseEstimateDomainFromElement(), MagAOX::app::extrapNoiseEstimateDomainName(), INDI_OK, MagAOX::app::ipRecv, MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_extrapConfig, m_extrapNoiseEstimateDomain, m_goptMutex, MagAOX::app::MagAOXApp< true >::m_indiDriver, m_indiP_extrapNoiseEstimateDomain, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_noiseEstimateDomain, m_sinceChange, m_updating, MagAOX::app::target, and MagAOX::app::indi::updateSelectionSwitchIfChanged().
|
protected |
Handle the noise-estimation-range selection switch property.
Definition at line 5866 of file modalGainOpt.hpp.
References MagAOX::app::c_extrapNoiseEstimateHighFreq, MagAOX::app::extrapNoiseEstimateRangeElement(), MagAOX::app::extrapNoiseEstimateRangeFromElement(), MagAOX::app::extrapNoiseEstimateRangeName(), INDI_OK, MagAOX::app::ipRecv, MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_extrapConfig, m_extrapNoiseEstimateRange, m_goptMutex, MagAOX::app::MagAOXApp< true >::m_indiDriver, m_indiP_extrapNoiseEstimateRange, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_noiseEstimateRange, m_sinceChange, m_updating, MagAOX::app::target, and MagAOX::app::indi::updateSelectionSwitchIfChanged().
|
protected |
Handle the noise-estimation-statistic selection switch property.
Definition at line 5934 of file modalGainOpt.hpp.
References MagAOX::app::c_extrapNoiseEstimatePercentile, MagAOX::app::extrapNoiseEstimateStatisticElement(), MagAOX::app::extrapNoiseEstimateStatisticFromElement(), MagAOX::app::extrapNoiseEstimateStatisticName(), INDI_OK, MagAOX::app::ipRecv, MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_extrapConfig, m_extrapNoiseEstimateStatistic, m_goptMutex, MagAOX::app::MagAOXApp< true >::m_indiDriver, m_indiP_extrapNoiseEstimateStatistic, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_noiseEstimateStatistic, m_sinceChange, m_updating, MagAOX::app::target, and MagAOX::app::indi::updateSelectionSwitchIfChanged().
|
protected |
Handle a standard target/current numeric extrapolation property update.
Definition at line 5671 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::indiTargetUpdate(), MagAOX::app::ipRecv, MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_goptMutex, m_sinceChange, m_updating, and MagAOX::app::target.
|
protected |
Handle the power-law crossover-mode selection switch property.
Definition at line 6076 of file modalGainOpt.hpp.
References MagAOX::app::c_extrapPowerLawCrossoverManual, MagAOX::app::extrapPowerLawCrossoverModeElement(), MagAOX::app::extrapPowerLawCrossoverModeFromElement(), MagAOX::app::extrapPowerLawCrossoverModeName(), INDI_OK, MagAOX::app::ipRecv, MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_extrapConfig, m_extrapPowerLawCrossoverMode, m_goptMutex, MagAOX::app::MagAOXApp< true >::m_indiDriver, m_indiP_extrapPowerLawCrossoverMode, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_powerLawCrossoverMode, m_sinceChange, m_updating, MagAOX::app::target, and MagAOX::app::indi::updateSelectionSwitchIfChanged().
|
protected |
Handle a boolean extrapolation toggle property update.
Definition at line 5699 of file modalGainOpt.hpp.
References MagAOX::app::extrapBoolString(), MagAOX::app::ipRecv, MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_goptMutex, m_sinceChange, m_updating, and MagAOX::app::target.
|
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 982 of file MagAOXApp.hpp.
|
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 992 of file MagAOXApp.hpp.
|
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 410 of file MagAOXApp.hpp.
|
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 1001 of file MagAOXApp.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
|
inherited |
Definition at line 152 of file shmimMonitor.hpp.
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_autoUpdate | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_dump | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapClMinSignificantFraction | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapClosedLoopOlEstimateMethod | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapClSignificanceThreshold | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapDropoutGapFactor | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapDropoutMaxBins | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapDropoutTinyFactor | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapFitPowerLawIndex | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapMethod | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapNoiseEstimateDomain | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapNoiseEstimateLowFreqMaxHz | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapNoiseEstimateRange | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapNoiseEstimateStatistic | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapPowerLawAutoMaxFreqFraction | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapPowerLawAutoSmoothWidthHz | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapPowerLawBlendBins | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapPowerLawCrossoverMode | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapPowerLawFitBinWidthHz | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapPowerLawFitIncludesMatchPoint | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapPowerLawFitMaxFreqHz | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapPowerLawFitMinFreqHz | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapPowerLawIndex | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapPowerLawMatchFallbackWindowHz | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapPowerLawMatchFreq | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapPowerLawNormFreq | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_extrapPowerLawOnlyAboveFreq | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_gainGain | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_gainLeak | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_opticalGain | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_opticalGainUpdate | |||
| ) |
References MagAOX::app::recordModalGainOpt().
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_updateOnce | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_NEWCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_zeroGains | |||
| ) |
|
inherited |
| MagAOX::app::modalGainOpt::INDI_SETCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_emg | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_SETCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_loop | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_SETCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_opticalGainSource | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_SETCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_pcGain | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_SETCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_pcMult | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_SETCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_pcOn | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_SETCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_psdAvgTime | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_SETCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_psdTime | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_SETCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_siGain | |||
| ) |
| MagAOX::app::modalGainOpt::INDI_SETCALLBACK_DECL | ( | modalGainOpt | , |
| m_indiP_siMult | |||
| ) |
|
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 944 of file MagAOXApp.hpp.
|
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 1098 of file MagAOXApp.hpp.
|
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 272 of file MagAOXApp.hpp.
|
virtual |
Definition at line 2044 of file modalGainOpt.hpp.
References loadConfigImpl().
Referenced by libXWCTest::modalGainOptTest::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 178 of file shmimMonitor.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 178 of file shmimMonitor.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 178 of file shmimMonitor.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 178 of file shmimMonitor.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 178 of file shmimMonitor.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 178 of file shmimMonitor.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 178 of file shmimMonitor.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 178 of file shmimMonitor.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 178 of file shmimMonitor.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 178 of file shmimMonitor.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 178 of file shmimMonitor.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 178 of file shmimMonitor.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 178 of file shmimMonitor.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 178 of file shmimMonitor.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 178 of file shmimMonitor.hpp.
| int MagAOX::app::modalGainOpt::loadConfigImpl | ( | mx::app::appConfigurator & | _config | ) |
Implementation of loadConfig logic, separated for testing.
This is called by loadConfig().
| [in] | _config | an application configuration from which to load values |
Definition at line 1861 of file modalGainOpt.hpp.
References MagAOX::app::extrapClosedLoopOlEstimateMethodFromName(), MagAOX::app::extrapClosedLoopOlEstimateMethodName(), MagAOX::app::extrapNoiseEstimateDomainFromName(), MagAOX::app::extrapNoiseEstimateDomainName(), MagAOX::app::extrapNoiseEstimateRangeFromName(), MagAOX::app::extrapNoiseEstimateRangeName(), MagAOX::app::extrapNoiseEstimateStatisticFromName(), MagAOX::app::extrapNoiseEstimateStatisticName(), MagAOX::app::extrapPowerLawCrossoverModeFromName(), MagAOX::app::extrapPowerLawCrossoverModeName(), MagAOX::app::dev::telemeter< modalGainOpt >::loadConfig(), MagAOX::app::MagAOXApp< true >::log(), flatlogs::logPrio::LOG_CRITICAL, m_autoUpdate, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_clMinSignificantFraction, m_clNtfCurrentShmimName, m_clNtfLPShmimName, m_clNtfSIShmimName, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_closedLoopOlEstimateMethod, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_clSignificanceThreshold, m_clXferCurrentShmimName, m_clXferLPShmimName, m_clXferSIShmimName, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_dropoutGapFactor, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_dropoutMaxBins, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_dropoutTinyFactor, m_extrapClosedLoopOlEstimateMethod, m_extrapConfig, m_extrapNoiseEstimateDomain, m_extrapNoiseEstimateRange, m_extrapNoiseEstimateStatistic, m_extrapOL, m_extrapPowerLawCrossoverMode, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_fitPowerLawIndex, m_gainGain, m_gainLeak, m_loopName, m_loopNum, m_maxGainLPShmimName, m_maxGainSIShmimName, m_modevarShmimName, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_noiseEstimateDomain, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_noiseEstimateLowFreqMaxHz, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_noiseEstimateRange, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_noiseEstimateStatistic, m_noisePSDShmimName, m_olPSDShmimName, m_optGainLPShmimName, m_optGainShmimName, m_optGainSIRawShmimName, m_optGainSIShmimName, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_peakDetectBroadFactor, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_peakDetectFactor, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_peakDetectMinWidthLog, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_peakDetectPasses, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_peakDetectWidthHz, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_peakMoffatBeta, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_powerLawAutoMaxFreqFraction, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_powerLawAutoSmoothWidthHz, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_powerLawBlendBins, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_powerLawCrossoverMode, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_powerLawFitBinWidthHz, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_powerLawFitIncludesMatchPoint, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_powerLawFitMaxFreqHz, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_powerLawFitMinFreqHz, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_powerLawIndex, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_powerLawMatchFallbackWindowHz, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_powerLawMatchFreq, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_powerLawNormFreq, MagAOX::app::modalPsdProcessor< realT >::processModelConfig::m_powerLawOnlyAboveFreq, m_psdDevice, m_rawOlPSDShmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, wfsmaskShmimT >::m_shmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, gainFactShmimT >::m_shmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, wfsavgShmimT >::m_shmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, noiseShmimT >::m_shmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, tauShmimT >::m_shmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, bcoeffShmimT >::m_shmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, psdShmimT >::m_shmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, pcGainFactShmimT >::m_shmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, acoeffShmimT >::m_shmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, pcMultFactShmimT >::m_shmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, multFactShmimT >::m_shmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, freqShmimT >::m_shmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, gainCalFactShmimT >::m_shmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, gainCalShmimT >::m_shmimName, MagAOX::app::dev::shmimMonitor< modalGainOpt, numpccoeffShmimT >::m_shmimName, MagAOX::app::MagAOXApp< true >::m_shutdown, m_smoothOlPSDShmimName, MagAOX::app::olProcessMethodFromName(), MagAOX::app::olProcessMethodName(), and SHMIMMONITORT_LOAD_CONFIG.
Referenced by loadConfig().
|
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 522 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 355 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] | level | [optional] the log level. The default is used if not specified. |
Definition at line 368 of file MagAOXApp.hpp.
|
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 377 of file MagAOXApp.hpp.
|
inherited |
Get the loop pause time.
Definition at line 1293 of file MagAOXApp.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 1155 of file MagAOXApp.hpp.
Definition at line 4640 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), m_counts, m_emg, m_noiseParams, and m_npix.
|
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 951 of file MagAOXApp.hpp.
|
protectedvirtualinherited |
This method is called when the change to poweroff is detected.
Reimplemented in MagAOX::app::alpaoCtrl, MagAOX::app::bmcCtrl, MagAOX::app::irisaoCtrl, MagAOX::app::zaberLowLevel, and MagAOX::app::zaberLowLevelBinary.
Definition at line 1200 of file MagAOXApp.hpp.
|
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 1216 of file MagAOXApp.hpp.
|
inherited |
Returns the current power state.
If power management is not enabled, this always returns 1=On.
Definition at line 1226 of file MagAOXApp.hpp.
|
inherited |
Returns the target power state.
If power management is not enabled, this always returns 1=On.
Definition at line 1235 of file MagAOXApp.hpp.
| int MagAOX::app::modalGainOpt::processImage | ( | void * | curr_src, |
| const acoeffShmimT & | dummy | ||
| ) |
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3851 of file modalGainOpt.hpp.
References MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_as, m_goptMutex, MagAOX::app::dev::shmimMonitor< modalGainOpt, acoeffShmimT >::m_height, m_loop, m_NaCurrent, m_pcgoptUpdated, m_pcOn, m_sinceChange, m_updating, and MagAOX::app::dev::shmimMonitor< modalGainOpt, acoeffShmimT >::m_width.
| int MagAOX::app::modalGainOpt::processImage | ( | void * | curr_src, |
| const bcoeffShmimT & | dummy | ||
| ) |
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3937 of file modalGainOpt.hpp.
References MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_bs, m_goptMutex, MagAOX::app::dev::shmimMonitor< modalGainOpt, bcoeffShmimT >::m_height, m_loop, m_NbCurrent, m_pcgoptUpdated, m_pcOn, m_sinceChange, m_updating, and MagAOX::app::dev::shmimMonitor< modalGainOpt, bcoeffShmimT >::m_width.
| int MagAOX::app::modalGainOpt::processImage | ( | void * | curr_src, |
| const freqShmimT & | dummy | ||
| ) |
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3469 of file modalGainOpt.hpp.
References applyFrequencyUpdate(), MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_fps, m_freq, m_goptMutex, MagAOX::app::dev::shmimMonitor< modalGainOpt, freqShmimT >::m_height, m_updating, and MagAOX::app::dev::shmimMonitor< modalGainOpt, freqShmimT >::m_width.
| int MagAOX::app::modalGainOpt::processImage | ( | void * | curr_src, |
| const gainCalFactShmimT & | dummy | ||
| ) |
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 4090 of file modalGainOpt.hpp.
References MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_gainCalFacts, m_goptMutex, MagAOX::app::dev::shmimMonitor< modalGainOpt, gainCalFactShmimT >::m_height, m_sinceChange, m_updating, and MagAOX::app::dev::shmimMonitor< modalGainOpt, gainCalFactShmimT >::m_width.
| int MagAOX::app::modalGainOpt::processImage | ( | void * | curr_src, |
| const gainCalShmimT & | dummy | ||
| ) |
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 4025 of file modalGainOpt.hpp.
References MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_gainCals, m_goptMutex, MagAOX::app::dev::shmimMonitor< modalGainOpt, gainCalShmimT >::m_height, m_sinceChange, m_updating, and MagAOX::app::dev::shmimMonitor< modalGainOpt, gainCalShmimT >::m_width.
| int MagAOX::app::modalGainOpt::processImage | ( | void * | curr_src, |
| const gainFactShmimT & | dummy | ||
| ) |
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3528 of file modalGainOpt.hpp.
References applyGainFactorUpdate(), MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_gainFacts, m_goptMutex, m_updating, and MagAOX::app::dev::shmimMonitor< modalGainOpt, gainFactShmimT >::m_width.
| int MagAOX::app::modalGainOpt::processImage | ( | void * | curr_src, |
| const multFactShmimT & | dummy | ||
| ) |
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3587 of file modalGainOpt.hpp.
References applyMultiplierUpdate(), MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_goptMutex, m_multFacts, m_updating, and MagAOX::app::dev::shmimMonitor< modalGainOpt, multFactShmimT >::m_width.
| int MagAOX::app::modalGainOpt::processImage | ( | void * | curr_src, |
| const noiseShmimT & | dummy | ||
| ) |
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 4218 of file modalGainOpt.hpp.
References MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_goptMutex, m_goptUpdated, MagAOX::app::dev::shmimMonitor< modalGainOpt, noiseShmimT >::m_height, m_noiseParams, m_sinceChange, m_updating, and MagAOX::app::dev::shmimMonitor< modalGainOpt, noiseShmimT >::m_width.
| int MagAOX::app::modalGainOpt::processImage | ( | void * | curr_src, |
| const numpccoeffShmimT & | dummy | ||
| ) |
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3765 of file modalGainOpt.hpp.
References MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_gmaxLP, m_goptMutex, m_goptUpdated, m_loop, m_Na, m_Nb, m_nRegCycles, m_regCounter, m_regScale, m_sinceChange, m_updating, MagAOX::app::dev::shmimMonitor< modalGainOpt, numpccoeffShmimT >::m_width, and nc.
| int MagAOX::app::modalGainOpt::processImage | ( | void * | curr_src, |
| const pcGainFactShmimT & | dummy | ||
| ) |
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3646 of file modalGainOpt.hpp.
References applyGainFactorUpdate(), MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_goptMutex, m_pcGainFacts, m_updating, and MagAOX::app::dev::shmimMonitor< modalGainOpt, pcGainFactShmimT >::m_width.
| int MagAOX::app::modalGainOpt::processImage | ( | void * | curr_src, |
| const pcMultFactShmimT & | dummy | ||
| ) |
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3705 of file modalGainOpt.hpp.
References applyMultiplierUpdate(), MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_goptMutex, m_pcMultFacts, m_updating, and MagAOX::app::dev::shmimMonitor< modalGainOpt, pcMultFactShmimT >::m_width.
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 3417 of file modalGainOpt.hpp.
References MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_clPSDs, m_goptMutex, m_goptSemaphore, MagAOX::app::dev::shmimMonitor< modalGainOpt, psdShmimT >::m_height, m_psdAvgTime, m_psdOverlapFraction, m_psdTime, m_sinceChange, m_updating, and MagAOX::app::dev::shmimMonitor< modalGainOpt, psdShmimT >::m_width.
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 4154 of file modalGainOpt.hpp.
References MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_goptMutex, m_goptUpdated, MagAOX::app::dev::shmimMonitor< modalGainOpt, tauShmimT >::m_height, m_sinceChange, m_taus, m_updating, and MagAOX::app::dev::shmimMonitor< modalGainOpt, tauShmimT >::m_width.
| int MagAOX::app::modalGainOpt::processImage | ( | void * | curr_src, |
| const wfsavgShmimT & | dummy | ||
| ) |
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 4284 of file modalGainOpt.hpp.
References MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_counts, m_goptMutex, MagAOX::app::dev::shmimMonitor< modalGainOpt, wfsavgShmimT >::m_height, m_wfsavg, m_wfsmask, and MagAOX::app::dev::shmimMonitor< modalGainOpt, wfsavgShmimT >::m_width.
| int MagAOX::app::modalGainOpt::processImage | ( | void * | curr_src, |
| const wfsmaskShmimT & | dummy | ||
| ) |
| [in] | curr_src | pointer to the start of the current frame |
| [in] | dummy | tag to differentiate shmimMonitor parents. |
Definition at line 4312 of file modalGainOpt.hpp.
References MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_counts, m_goptMutex, MagAOX::app::dev::shmimMonitor< modalGainOpt, wfsmaskShmimT >::m_height, m_npix, m_wfsavg, m_wfsmask, and MagAOX::app::dev::shmimMonitor< modalGainOpt, wfsmaskShmimT >::m_width.
Definition at line 2687 of file modalGainOpt.hpp.
References MagAOX::app::lock(), MagAOX::app::MagAOXApp< true >::log(), m_autoUpdate, m_gainGain, m_gainLeak, m_goptMutex, m_opticalGain, and m_opticalGainUpdate.
Referenced by recordTelem().
|
inline |
Definition at line 2682 of file modalGainOpt.hpp.
References recordModalGainOpt().
|
protected |
Refresh gain-optimization structures after coefficient, multiplier, or frequency changes. The gain-optimization mutex must be locked before calling this helper.
Definition at line 3010 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), m_as, m_bs, m_fps, m_freq, m_freqUpdated, m_gainFacts, m_gmaxSI, m_goptCurrent, m_goptLP, m_goptSI, m_goptUpdated, m_linPred, m_mult, m_multFacts, m_NaCurrent, m_NbCurrent, m_pcgoptUpdated, m_pcMult, m_pcMultFacts, m_pcOn, and m_taus.
Referenced by goptThreadExec(), and libXWCTest::modalGainOptTest::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 |
|
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 856 of file MagAOXApp.hpp.
|
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 866 of file MagAOXApp.hpp.
|
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 933 of file MagAOXApp.hpp.
|
inlineinherited |
Reset retry tracking for a monitored INDI Set-property subscription.
| callBack | [in/out] the subscription retry state to reset |
Definition at line 941 of file MagAOXApp.hpp.
|
inherited |
Get the secrets path.
Definition at line 1283 of file MagAOXApp.hpp.
|
inherited |
Definition at line 970 of file MagAOXApp.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 1121 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 1111 of file MagAOXApp.hpp.
|
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 1128 of file MagAOXApp.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 250 of file MagAOXApp.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 481 of file MagAOXApp.hpp.
|
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 490 of file MagAOXApp.hpp.
|
privateinherited |
Sets the handler for SIGTERM, SIGQUIT, and SIGINT.
Definition at line 401 of file MagAOXApp.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 262 of file MagAOXApp.hpp.
|
virtual |
Definition at line 1447 of file modalGainOpt.hpp.
References MagAOX::app::dev::telemeter< modalGainOpt >::setupConfig(), and SHMIMMONITORT_SETUP_CONFIG.
Referenced by libXWCTest::modalGainOptTest::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 168 of file shmimMonitor.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 168 of file shmimMonitor.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 168 of file shmimMonitor.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 168 of file shmimMonitor.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 168 of file shmimMonitor.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 168 of file shmimMonitor.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 168 of file shmimMonitor.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 168 of file shmimMonitor.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 168 of file shmimMonitor.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 168 of file shmimMonitor.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 168 of file shmimMonitor.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 168 of file shmimMonitor.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 168 of file shmimMonitor.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 168 of file shmimMonitor.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 168 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Definition at line 148 of file shmimMonitor.hpp.
|
inherited |
Get the value of the shutdown flag.
Definition at line 1299 of file MagAOXApp.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
protectedinherited |
Execute the monitoring thread.
< The semaphore to monitor for new image data
Definition at line 246 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
staticprotectedinherited |
Thread starter, called by MagAOXApp::threadStart on thread construction. Calls smThreadExec.
| [in] | s | a pointer to a shmimMonitor instance (normally this) |
Definition at line 243 of file shmimMonitor.hpp.
|
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 1144 of file MagAOXApp.hpp.
|
protectedinherited |
Start INDI Communications.
Definition at line 967 of file MagAOXApp.hpp.
|
inherited |
|
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 599 of file MagAOXApp.hpp.
|
inherited |
Get the value of the state alert flag.
Definition at line 607 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 632 of file MagAOXApp.hpp.
|
protected |
Synchronize the integrated SI gain state from the applied gain-factor stream.
Definition at line 3083 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), m_gainCalFacts, m_gainCals, m_gainFacts, m_optGainSI, m_optGainSIRaw, m_opticalGain, and m_siGainStateNeedsSync.
Referenced by goptThreadExec().
|
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 556 of file MagAOXApp.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
inherited |
Definition at line 158 of file shmimMonitor.hpp.
|
protectedinherited |
Remove the PID file.
Definition at line 525 of file MagAOXApp.hpp.
|
protected |
Update m_modesOn when a changed gain-factor stream matches the active control path.
| [in] | gainFacts | gain factors from the changed stream |
| [in] | predictorPath | true when the values came from the predictor path |
Definition at line 2881 of file modalGainOpt.hpp.
References countEnabledGainFactors(), MagAOX::app::MagAOXApp< true >::log(), m_modesOn, and m_pcOn.
Referenced by applyGainFactorUpdate(), and libXWCTest::modalGainOptTest::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 1031 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 1060 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 1014 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.
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 1077 of file MagAOXApp.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 284 of file shmimMonitor.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 284 of file shmimMonitor.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 284 of file shmimMonitor.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 284 of file shmimMonitor.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 284 of file shmimMonitor.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 284 of file shmimMonitor.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 284 of file shmimMonitor.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 284 of file shmimMonitor.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 284 of file shmimMonitor.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 284 of file shmimMonitor.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 284 of file shmimMonitor.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 284 of file shmimMonitor.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 284 of file shmimMonitor.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 284 of file shmimMonitor.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 284 of file shmimMonitor.hpp.
Apply one SI leaky-integrator update from the raw optimal gain.
Definition at line 3119 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), m_gainGain, m_gainLeak, m_optGainSI, and m_optGainSIRaw.
Referenced by goptThreadExec().
|
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 1085 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 1042 of file MagAOXApp.hpp.
|
protectedvirtualinherited |
This method is called while the power is off, once per FSM loop.
Reimplemented in MagAOX::app::alpaoCtrl, MagAOX::app::bmcCtrl, MagAOX::app::irisaoCtrl, MagAOX::app::zaberLowLevel, and MagAOX::app::zaberLowLevelBinary.
Definition at line 1207 of file MagAOXApp.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
inherited |
Definition at line 150 of file shmimMonitor.hpp.
|
protected |
Populate the published gain and variance arrays from the current optimization state.
| [out] | currentData | current optimal-gain stream buffer |
| [out] | siRawData | raw SI optimal-gain stream buffer |
| [out] | siData | integrated SI optimal-gain stream buffer |
| [out] | maxSiData | SI max-gain stream buffer |
| [out] | lpData | LP optimal-gain stream buffer |
| [out] | maxLpData | LP max-gain stream buffer |
| [out] | modeVarData | mode-variance buffer, laid out as 3 x N |
Definition at line 2782 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), m_gainCalFacts, m_gainCals, m_gmaxLP, m_gmaxSI, m_modeVarLP, m_modeVarOL, m_modeVarSI, m_optGainLP, m_optGainSI, m_optGainSIRaw, and m_opticalGain.
Referenced by goptThreadExec().
|
protected |
Populate the published predictive-control gain and coefficient arrays.
| pcGainData | [in.out] PC gain-factor stream buffer | |
| aCoeffData | [in.out] predictor a-coefficient stream buffer | |
| [in] | aWidth | entries stored per mode in aCoeffData |
| bCoeffData | [in.out] predictor b-coefficient stream buffer | |
| [in] | bWidth | entries stored per mode in bCoeffData |
| [in] | blend | when true, blend against existing values |
Definition at line 2808 of file modalGainOpt.hpp.
References MagAOX::app::MagAOXApp< true >::log(), m_gainCalFacts, m_gainCals, m_gainGain, m_goptLP, m_Na, m_Nb, m_optGainLP, and m_opticalGain.
Referenced by goptThreadExec().
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
|
friend |
Definition at line 736 of file modalGainOpt.hpp.
Definition at line 735 of file modalGainOpt.hpp.
|
protectedinherited |
Flag indicating that all registered Set properties have been updated since last Get.
Definition at line 716 of file MagAOXApp.hpp.
|
protected |
Definition at line 924 of file modalGainOpt.hpp.
Referenced by checkSizes(), processImage(), and refreshGoptStructures().
Flag controlling whether gains are automatically updated.
Definition at line 795 of file modalGainOpt.hpp.
Referenced by appLogic(), goptThreadExec(), loadConfigImpl(), and recordModalGainOpt().
|
protectedinherited |
The base path of the MagAO-X system.
Definition at line 188 of file MagAOXApp.hpp.
|
protected |
Definition at line 926 of file modalGainOpt.hpp.
Referenced by checkSizes(), processImage(), and refreshGoptStructures().
|
protectedinherited |
The path to calibration files for MagAOX.
Definition at line 196 of file MagAOXApp.hpp.
|
protected |
Published current closed-loop noise transfer function.
Definition at line 853 of file modalGainOpt.hpp.
Referenced by allocate(), and goptThreadExec().
|
protected |
Definition at line 955 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the current NTF
Definition at line 981 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), checkSizes(), and goptThreadExec().
|
protected |
Published predictive closed-loop noise transfer function.
Definition at line 860 of file modalGainOpt.hpp.
Referenced by allocate(), and goptThreadExec().
|
protected |
Definition at line 959 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the LP NTF
Definition at line 989 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), checkSizes(), and goptThreadExec().
|
protected |
Published simple-integrator closed-loop noise transfer function.
Definition at line 857 of file modalGainOpt.hpp.
Referenced by allocate(), and goptThreadExec().
|
protected |
Definition at line 957 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the SI NTF
Definition at line 985 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), checkSizes(), and goptThreadExec().
|
protected |
Definition at line 850 of file modalGainOpt.hpp.
Referenced by allocate(), checkSizes(), goptThreadExec(), and processImage().
|
protected |
Published current closed-loop error transfer function.
Definition at line 851 of file modalGainOpt.hpp.
Referenced by allocate(), and goptThreadExec().
|
protected |
Definition at line 954 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the current ETF
Definition at line 979 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), checkSizes(), and goptThreadExec().
|
protected |
Published predictive closed-loop error transfer function.
Definition at line 859 of file modalGainOpt.hpp.
Referenced by allocate(), and goptThreadExec().
|
protected |
Definition at line 958 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the LP ETF
Definition at line 987 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), checkSizes(), and goptThreadExec().
|
protected |
Published simple-integrator closed-loop error transfer function.
Definition at line 855 of file modalGainOpt.hpp.
Referenced by allocate(), and goptThreadExec().
|
protected |
Definition at line 956 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the SI ETF
Definition at line 983 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), checkSizes(), and goptThreadExec().
|
protectedinherited |
The name of a base config class for this app (minus .conf).
Definition at line 194 of file MagAOXApp.hpp.
|
protectedinherited |
The path to configuration files for MagAOX.
Definition at line 192 of file MagAOXApp.hpp.
|
protectedinherited |
The name of the configuration file (minus .conf).
Definition at line 190 of file MagAOXApp.hpp.
|
protected |
Definition at line 944 of file modalGainOpt.hpp.
Referenced by noisePSD(), processImage(), and processImage().
|
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 207 of file MagAOXApp.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO type code.
Definition at line 140 of file shmimMonitor.hpp.
|
protected |
Definition at line 805 of file modalGainOpt.hpp.
Referenced by allocatePCShmims().
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
|
protectedinherited |
The depth of the circular buffer in the stream.
Definition at line 138 of file shmimMonitor.hpp.
Definition at line 900 of file modalGainOpt.hpp.
Referenced by goptThreadExec().
|
protectedinherited |
Full path name of the INDI driver control FIFO.
This is currently only used to signal restarts.
Definition at line 727 of file MagAOXApp.hpp.
|
protectedinherited |
Full path name of the INDI driver input FIFO.
Definition at line 719 of file MagAOXApp.hpp.
|
protectedinherited |
Full path name of the INDI driver output FIFO.
Definition at line 722 of file MagAOXApp.hpp.
Flag to trigger a single update with no gain.
Definition at line 826 of file modalGainOpt.hpp.
Referenced by appLogic(), and goptThreadExec().
|
protected |
Definition at line 945 of file modalGainOpt.hpp.
Referenced by noisePSD().
|
privateinherited |
The user id of the process as called (i.e. the higher privileged id of the owner, root if setuid).
Definition at line 422 of file MagAOXApp.hpp.
|
privateinherited |
The real user id of the proces (i.e. the lower privileged id of the user)
Definition at line 421 of file MagAOXApp.hpp.
|
protected |
Which CL-to-OL reconstruction to use.
Definition at line 814 of file modalGainOpt.hpp.
Referenced by appLogic(), goptThreadExec(), handleExtrapClosedLoopOlEstimateMethodProperty(), and loadConfigImpl().
|
protected |
Configuration of the OL PSD extrapolation model.
Definition at line 801 of file modalGainOpt.hpp.
Referenced by appLogic(), goptThreadExec(), handleExtrapClosedLoopOlEstimateMethodProperty(), handleExtrapNoiseEstimateDomainProperty(), handleExtrapNoiseEstimateRangeProperty(), handleExtrapNoiseEstimateStatisticProperty(), handleExtrapPowerLawCrossoverModeProperty(), and loadConfigImpl().
|
protected |
Where to estimate the modal noise floor.
Definition at line 808 of file modalGainOpt.hpp.
Referenced by appLogic(), goptThreadExec(), handleExtrapNoiseEstimateDomainProperty(), and loadConfigImpl().
|
protected |
Which PSD end to use for the noise fit.
Definition at line 810 of file modalGainOpt.hpp.
Referenced by appLogic(), goptThreadExec(), handleExtrapNoiseEstimateRangeProperty(), and loadConfigImpl().
|
protected |
How the selected PSD bins are summarized into a noise floor.
Definition at line 812 of file modalGainOpt.hpp.
Referenced by appLogic(), goptThreadExec(), handleExtrapNoiseEstimateStatisticProperty(), and loadConfigImpl().
|
protected |
Which extrapolation method to use for the OL PSD.
Definition at line 807 of file modalGainOpt.hpp.
Referenced by appLogic(), goptThreadExec(), handleExtrapMethodProperty(), and loadConfigImpl().
|
protected |
How the power-law match/cutoff frequencies are chosen.
Definition at line 816 of file modalGainOpt.hpp.
Referenced by appLogic(), handleExtrapPowerLawCrossoverModeProperty(), and loadConfigImpl().
|
protected |
Definition at line 829 of file modalGainOpt.hpp.
Referenced by applyFrequencyUpdate(), checkSizes(), processImage(), and refreshGoptStructures().
|
protected |
Definition at line 848 of file modalGainOpt.hpp.
Referenced by applyFrequencyUpdate(), checkSizes(), goptThreadExec(), processImage(), and refreshGoptStructures().
Tracks if the frequency scale has updated, which necessitates additional calcs. If true, implies m_goptUpdate == true.
Definition at line 842 of file modalGainOpt.hpp.
Referenced by applyFrequencyUpdate(), and refreshGoptStructures().
|
protected |
Definition at line 892 of file modalGainOpt.hpp.
Referenced by goptThreadExec().
|
protected |
Definition at line 936 of file modalGainOpt.hpp.
Referenced by checkSizes(), goptThreadExec(), processImage(), syncSiGainStateFromAppliedGains(), writePublishedGainArrays(), and writePublishedPredictorArrays().
|
protected |
Definition at line 934 of file modalGainOpt.hpp.
Referenced by checkSizes(), goptThreadExec(), processImage(), syncSiGainStateFromAppliedGains(), writePublishedGainArrays(), and writePublishedPredictorArrays().
|
protected |
Definition at line 908 of file modalGainOpt.hpp.
Referenced by checkSizes(), goptThreadExec(), processImage(), refreshGoptStructures(), and syncSiGainStateFromAppliedGains().
|
protected |
The gain to use for SI gain correction updates. Default is 0.1.
Definition at line 799 of file modalGainOpt.hpp.
Referenced by appLogic(), loadConfigImpl(), recordModalGainOpt(), updateIntegratedSiGain(), and writePublishedPredictorArrays().
|
protected |
The leak factor used for SI gain integration. Default is 0.9.
Definition at line 800 of file modalGainOpt.hpp.
Referenced by appLogic(), loadConfigImpl(), recordModalGainOpt(), and updateIntegratedSiGain().
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
protectedinherited |
If set to true by derivedT, any existing image will be grabbed and sent to processImage before waiting on the semaphore.
Definition at line 127 of file shmimMonitor.hpp.
|
privateinherited |
Definition at line 582 of file MagAOXApp.hpp.
|
protected |
The previously calculated maximum gains for LP.
Definition at line 881 of file modalGainOpt.hpp.
Referenced by goptThreadExec(), processImage(), and writePublishedGainArrays().
|
protected |
The previously calculated maximum gains for SI.
Definition at line 873 of file modalGainOpt.hpp.
Referenced by allocate(), goptThreadExec(), refreshGoptStructures(), and writePublishedGainArrays().
|
protected |
Each mode gets its own gain optimizer.
Definition at line 832 of file modalGainOpt.hpp.
Referenced by goptThreadExec(), and refreshGoptStructures().
|
protected |
Definition at line 834 of file modalGainOpt.hpp.
Referenced by goptThreadExec(), refreshGoptStructures(), and writePublishedPredictorArrays().
|
protected |
Mutex for synchronizing updates.
Definition at line 1271 of file modalGainOpt.hpp.
Referenced by allocate(), appLogic(), goptThreadExec(), handleExtrapClosedLoopOlEstimateMethodProperty(), handleExtrapMethodProperty(), handleExtrapNoiseEstimateDomainProperty(), handleExtrapNoiseEstimateRangeProperty(), handleExtrapNoiseEstimateStatisticProperty(), handleExtrapNumberProperty(), handleExtrapPowerLawCrossoverModeProperty(), handleExtrapToggleProperty(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), and recordModalGainOpt().
|
protected |
Semaphore used to synchronize the psdShmim thread and the gopt thread.
Definition at line 1295 of file modalGainOpt.hpp.
Referenced by appShutdown(), appStartup(), goptThreadExec(), and processImage().
Tracks whether the gain optimization semaphore needs cleanup.
Definition at line 1297 of file modalGainOpt.hpp.
Referenced by appShutdown(), and appStartup().
|
protected |
Definition at line 833 of file modalGainOpt.hpp.
Referenced by goptThreadExec(), and refreshGoptStructures().
|
protected |
The gain optimization thread.
Definition at line 1286 of file modalGainOpt.hpp.
Referenced by appLogic(), appShutdown(), and appStartup().
|
protected |
The cpuset to use for the gain optimization thread.
Definition at line 1283 of file modalGainOpt.hpp.
Referenced by appStartup().
|
protected |
gain optimization thread PID.
Definition at line 1290 of file modalGainOpt.hpp.
Referenced by appStartup(), and goptThreadExec().
Initialization flag for the gain optimization thread.
Definition at line 1288 of file modalGainOpt.hpp.
Referenced by appStartup(), and goptThreadExec().
|
protected |
Priority of the gain optimization thread.
Definition at line 1281 of file modalGainOpt.hpp.
Referenced by appStartup().
|
protected |
The property to hold the gain optimization thread details.
Definition at line 1292 of file modalGainOpt.hpp.
Referenced by appStartup().
Tracks if a parameter has updated requiring updates to the m_gopt entries.
Definition at line 837 of file modalGainOpt.hpp.
Referenced by applyFrequencyUpdate(), applyMultiplierUpdate(), processImage(), processImage(), processImage(), and refreshGoptStructures().
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The height of the images in the stream.
Definition at line 137 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.hpp.
|
protectedinherited |
The ImageStreamIO shared memory buffer.
Definition at line 143 of file shmimMonitor.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 669 of file MagAOXApp.hpp.
|
inherited |
The INDI driver wrapper. Constructed and initialized by execute, which starts and stops communications.
Definition at line 659 of file MagAOXApp.hpp.
|
inherited |
Mutex for locking INDI communications.
Definition at line 662 of file MagAOXApp.hpp.
|
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 707 of file MagAOXApp.hpp.
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_autoUpdate |
Definition at line 1316 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
|
protectedinherited |
indi Property to clear an FSM alert.
Definition at line 1137 of file MagAOXApp.hpp.
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_dump |
Definition at line 1318 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_emg |
Definition at line 1351 of file modalGainOpt.hpp.
Referenced by appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapClMinSignificantFraction |
Definition at line 1349 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapClosedLoopOlEstimateMethod |
Definition at line 1330 of file modalGainOpt.hpp.
Referenced by appLogic(), appStartup(), and handleExtrapClosedLoopOlEstimateMethodProperty().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapClSignificanceThreshold |
Definition at line 1348 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapDropoutGapFactor |
Definition at line 1345 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapDropoutMaxBins |
Definition at line 1347 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapDropoutTinyFactor |
Definition at line 1346 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapFitPowerLawIndex |
Definition at line 1338 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapMethod |
Definition at line 1325 of file modalGainOpt.hpp.
Referenced by appLogic(), appStartup(), and handleExtrapMethodProperty().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapNoiseEstimateDomain |
Definition at line 1326 of file modalGainOpt.hpp.
Referenced by appLogic(), appStartup(), and handleExtrapNoiseEstimateDomainProperty().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapNoiseEstimateLowFreqMaxHz |
Definition at line 1329 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapNoiseEstimateRange |
Definition at line 1327 of file modalGainOpt.hpp.
Referenced by appLogic(), appStartup(), and handleExtrapNoiseEstimateRangeProperty().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapNoiseEstimateStatistic |
Definition at line 1328 of file modalGainOpt.hpp.
Referenced by appLogic(), appStartup(), and handleExtrapNoiseEstimateStatisticProperty().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapPowerLawAutoMaxFreqFraction |
Definition at line 1337 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapPowerLawAutoSmoothWidthHz |
Definition at line 1336 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapPowerLawBlendBins |
Definition at line 1344 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapPowerLawCrossoverMode |
Definition at line 1335 of file modalGainOpt.hpp.
Referenced by appLogic(), appStartup(), and handleExtrapPowerLawCrossoverModeProperty().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapPowerLawFitBinWidthHz |
Definition at line 1343 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapPowerLawFitIncludesMatchPoint |
Definition at line 1340 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapPowerLawFitMaxFreqHz |
Definition at line 1342 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapPowerLawFitMinFreqHz |
Definition at line 1341 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapPowerLawIndex |
Definition at line 1331 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapPowerLawMatchFallbackWindowHz |
Definition at line 1334 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapPowerLawMatchFreq |
Definition at line 1333 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapPowerLawNormFreq |
Definition at line 1332 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_extrapPowerLawOnlyAboveFreq |
Definition at line 1339 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the current frame size.
Definition at line 274 of file shmimMonitor.hpp.
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_gainGain |
Definition at line 1322 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_gainLeak |
Definition at line 1323 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_loop |
Definition at line 1354 of file modalGainOpt.hpp.
Referenced by appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_modesOn |
Definition at line 1361 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_opticalGain |
Definition at line 1320 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_opticalGainSource |
Definition at line 1363 of file modalGainOpt.hpp.
Referenced by appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_opticalGainUpdate |
Definition at line 1364 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_pcGain |
Definition at line 1357 of file modalGainOpt.hpp.
Referenced by appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_pcMult |
Definition at line 1358 of file modalGainOpt.hpp.
Referenced by appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_pcOn |
Definition at line 1359 of file modalGainOpt.hpp.
Referenced by appStartup().
|
protectedinherited |
INDI property used to communicate power state.
Definition at line 1193 of file MagAOXApp.hpp.
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_psdAvgTime |
Definition at line 1353 of file modalGainOpt.hpp.
Referenced by appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_psdTime |
Definition at line 1352 of file modalGainOpt.hpp.
Referenced by appStartup().
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
|
protectedinherited |
Property used to report the shmim buffer name.
Definition at line 272 of file shmimMonitor.hpp.
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_siGain |
Definition at line 1355 of file modalGainOpt.hpp.
Referenced by appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_siMult |
Definition at line 1356 of file modalGainOpt.hpp.
Referenced by appStartup().
|
protectedinherited |
indi Property to report the application state.
Definition at line 1134 of file MagAOXApp.hpp.
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_updateOnce |
Definition at line 1317 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
| pcf::IndiProperty MagAOX::app::modalGainOpt::m_indiP_zeroGains |
Definition at line 1324 of file modalGainOpt.hpp.
Referenced by appLogic(), and appStartup().
|
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 712 of file MagAOXApp.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protectedinherited |
The inode of the image stream file.
Definition at line 145 of file shmimMonitor.hpp.
|
protected |
Definition at line 835 of file modalGainOpt.hpp.
Referenced by goptThreadExec(), and refreshGoptStructures().
|
staticinherited |
Definition at line 345 of file MagAOXApp.hpp.
Definition at line 886 of file modalGainOpt.hpp.
Referenced by applyGainFactorUpdate(), applyMultiplierUpdate(), goptThreadExec(), processImage(), processImage(), and processImage().
|
protected |
The name of the loop control INDI device name.
Definition at line 784 of file modalGainOpt.hpp.
Referenced by appStartup(), and loadConfigImpl().
|
protected |
The number of the loop. Used to set shmim names, as in aolN_mgainfact.
Definition at line 781 of file modalGainOpt.hpp.
Referenced by loadConfigImpl().
|
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 209 of file MagAOXApp.hpp.
|
protected |
Definition at line 967 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the LP max gains
Definition at line 1004 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), and goptThreadExec().
|
protected |
Definition at line 964 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the SI max gains
Definition at line 999 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), and goptThreadExec().
|
inherited |
The maximum interval, in seconds, between telemetry records. Default is 10.0 seconds.
Definition at line 83 of file telemeter.hpp.
|
protected |
Definition at line 803 of file modalGainOpt.hpp.
Referenced by allocatePCShmims().
|
protected |
Definition at line 869 of file modalGainOpt.hpp.
Referenced by appLogic(), and updateAppliedModeCount().
|
protected |
Definition at line 884 of file modalGainOpt.hpp.
Referenced by appLogic(), and goptThreadExec().
|
protected |
Definition at line 876 of file modalGainOpt.hpp.
Referenced by appLogic(), and goptThreadExec().
|
protected |
Definition at line 866 of file modalGainOpt.hpp.
|
protected |
Definition at line 882 of file modalGainOpt.hpp.
Referenced by allocate(), goptThreadExec(), and writePublishedGainArrays().
|
protected |
Definition at line 867 of file modalGainOpt.hpp.
Referenced by allocate(), goptThreadExec(), and writePublishedGainArrays().
|
protected |
Definition at line 969 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
|
protected |
Definition at line 874 of file modalGainOpt.hpp.
Referenced by allocate(), goptThreadExec(), and writePublishedGainArrays().
The ImageStreamIO shared memory buffer to publish the mode variances
Definition at line 1007 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), and goptThreadExec().
|
protected |
Definition at line 894 of file modalGainOpt.hpp.
Referenced by refreshGoptStructures().
|
protected |
Definition at line 910 of file modalGainOpt.hpp.
Referenced by checkSizes(), processImage(), and refreshGoptStructures().
|
protected |
Definition at line 916 of file modalGainOpt.hpp.
Referenced by checkSizes(), goptThreadExec(), processImage(), and writePublishedPredictorArrays().
|
protected |
Definition at line 918 of file modalGainOpt.hpp.
Referenced by checkSizes(), processImage(), and refreshGoptStructures().
|
protected |
Definition at line 920 of file modalGainOpt.hpp.
Referenced by checkSizes(), processImage(), and writePublishedPredictorArrays().
|
protected |
Definition at line 922 of file modalGainOpt.hpp.
Referenced by checkSizes(), processImage(), and refreshGoptStructures().
|
protected |
Definition at line 821 of file modalGainOpt.hpp.
Referenced by allocate().
|
protected |
Definition at line 822 of file modalGainOpt.hpp.
Referenced by allocate(), allocatePCShmims(), checkSizes(), and goptThreadExec().
|
protected |
Definition at line 940 of file modalGainOpt.hpp.
Referenced by noisePSD(), and processImage().
|
protected |
Definition at line 953 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the noise PSDs
Definition at line 977 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), checkSizes(), and goptThreadExec().
|
protected |
Definition at line 946 of file modalGainOpt.hpp.
Referenced by noisePSD(), and processImage().
|
protected |
Definition at line 865 of file modalGainOpt.hpp.
Referenced by allocate(), and goptThreadExec().
|
protected |
How often to regularize each mode.
Definition at line 928 of file modalGainOpt.hpp.
Referenced by goptThreadExec(), and processImage().
|
protected |
Definition at line 862 of file modalGainOpt.hpp.
Referenced by allocate(), and goptThreadExec().
|
protected |
Definition at line 950 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the open loop PSDs
Definition at line 971 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), checkSizes(), and goptThreadExec().
|
protected |
Definition at line 880 of file modalGainOpt.hpp.
Referenced by allocate(), checkSizes(), goptThreadExec(), writePublishedGainArrays(), and writePublishedPredictorArrays().
|
protected |
Definition at line 966 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the LP optimal gains
Definition at line 1002 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), checkSizes(), and goptThreadExec().
|
protected |
Definition at line 961 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
|
protected |
The leaky-integrated SI optimal gains.
Definition at line 872 of file modalGainOpt.hpp.
Referenced by allocate(), goptThreadExec(), syncSiGainStateFromAppliedGains(), updateIntegratedSiGain(), and writePublishedGainArrays().
|
protected |
The raw SI optimal gains before leaky integration.
Definition at line 871 of file modalGainOpt.hpp.
Referenced by allocate(), goptThreadExec(), syncSiGainStateFromAppliedGains(), updateIntegratedSiGain(), and writePublishedGainArrays().
|
protected |
Definition at line 962 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the raw SI optimal gains
Definition at line 995 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), checkSizes(), and goptThreadExec().
|
protected |
Definition at line 963 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the integrated SI optimal gains
Definition at line 997 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), checkSizes(), and goptThreadExec().
The ImageStreamIO shared memory buffer to publish the current optimal gains
Definition at line 992 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), checkSizes(), and goptThreadExec().
|
protected |
Definition at line 888 of file modalGainOpt.hpp.
Referenced by appLogic(), goptThreadExec(), recordModalGainOpt(), syncSiGainStateFromAppliedGains(), writePublishedGainArrays(), and writePublishedPredictorArrays().
|
protected |
Definition at line 791 of file modalGainOpt.hpp.
Referenced by appStartup().
|
protected |
Definition at line 793 of file modalGainOpt.hpp.
|
protected |
Definition at line 792 of file modalGainOpt.hpp.
Referenced by appStartup().
|
protected |
Definition at line 890 of file modalGainOpt.hpp.
Flag controlling whether optical gain is automatically updated;
Definition at line 796 of file modalGainOpt.hpp.
Referenced by appLogic(), and recordModalGainOpt().
|
protected |
Definition at line 902 of file modalGainOpt.hpp.
Referenced by goptThreadExec().
|
protected |
Definition at line 912 of file modalGainOpt.hpp.
Referenced by checkSizes(), goptThreadExec(), and processImage().
Tracks if a parameter has updated requiring updates to the m_gopt entries.
Definition at line 839 of file modalGainOpt.hpp.
Referenced by applyMultiplierUpdate(), processImage(), processImage(), and refreshGoptStructures().
|
protected |
Definition at line 904 of file modalGainOpt.hpp.
Referenced by refreshGoptStructures().
|
protected |
Definition at line 914 of file modalGainOpt.hpp.
Referenced by checkSizes(), processImage(), and refreshGoptStructures().
Definition at line 906 of file modalGainOpt.hpp.
Referenced by goptThreadExec(), processImage(), processImage(), refreshGoptStructures(), and updateAppliedModeCount().
|
protectedinherited |
This process's PID.
Definition at line 506 of file MagAOXApp.hpp.
|
protectedinherited |
The INDI property name of the channel controlling this device's power.
Definition at line 1179 of file MagAOXApp.hpp.
|
protectedinherited |
The INDI device name of the power controller.
Definition at line 1178 of file MagAOXApp.hpp.
|
protectedinherited |
The INDI element name to monitor for this device's power state.
Definition at line 1180 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 1173 of file MagAOXApp.hpp.
|
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 1186 of file MagAOXApp.hpp.
|
protectedinherited |
Default time in sec to wait for device to boot after power on.
Definition at line 1183 of file MagAOXApp.hpp.
|
protectedinherited |
Current power state, 1=On, 0=Off, -1=Unk.
Definition at line 1190 of file MagAOXApp.hpp.
|
protectedinherited |
The INDI element name to monitor for this device's power state.
Definition at line 1181 of file MagAOXApp.hpp.
|
protectedinherited |
Current target power state, 1=On, 0=Off, -1=Unk.
Definition at line 1191 of file MagAOXApp.hpp.
|
protected |
Definition at line 845 of file modalGainOpt.hpp.
Referenced by processImage().
|
protected |
The INDI device name of the PSD calculator. Defaults to aolN_modevalPSDs where N is m_loopNum.
Definition at line 788 of file modalGainOpt.hpp.
Referenced by appStartup(), and loadConfigImpl().
|
protected |
Definition at line 846 of file modalGainOpt.hpp.
Referenced by processImage().
|
protected |
Definition at line 844 of file modalGainOpt.hpp.
Referenced by processImage().
|
protected |
Definition at line 863 of file modalGainOpt.hpp.
Referenced by allocate(), and goptThreadExec().
|
protected |
Definition at line 951 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the raw OL PSDs
Definition at line 973 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), checkSizes(), and goptThreadExec().
|
protected |
Counters to track when this mode was last regularized.
Definition at line 930 of file modalGainOpt.hpp.
Referenced by goptThreadExec(), and processImage().
|
protected |
The regularization scale factors for each mode.
Definition at line 932 of file modalGainOpt.hpp.
Referenced by goptThreadExec(), and processImage().
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Flag indicating tha the shared memory should be reinitialized.
Definition at line 224 of file shmimMonitor.hpp.
|
protectedinherited |
Path to the secrets directory, where passwords, etc, are stored.
Definition at line 200 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 397 of file MagAOXApp.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The image structure semaphore index.
Definition at line 134 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
The name of the shared memory image, is used in /tmp/<shmimName>.im.shm. Derived classes should set a default.
Definition at line 118 of file shmimMonitor.hpp.
|
protectedinherited |
Flag to signal it's time to shutdown. When not 0, the main loop exits.
Definition at line 214 of file MagAOXApp.hpp.
|
protected |
Definition at line 896 of file modalGainOpt.hpp.
Tracks whether the SI gain integrator state should be synced from the applied gain factors.
Definition at line 877 of file modalGainOpt.hpp.
Referenced by allocate(), applyGainFactorUpdate(), goptThreadExec(), and syncSiGainStateFromAppliedGains().
|
protected |
Definition at line 898 of file modalGainOpt.hpp.
|
protected |
Definition at line 948 of file modalGainOpt.hpp.
Referenced by allocate(), applyFrequencyUpdate(), applyGainFactorUpdate(), applyMultiplierUpdate(), goptThreadExec(), handleExtrapClosedLoopOlEstimateMethodProperty(), handleExtrapMethodProperty(), handleExtrapNoiseEstimateDomainProperty(), handleExtrapNoiseEstimateRangeProperty(), handleExtrapNoiseEstimateStatisticProperty(), handleExtrapNumberProperty(), handleExtrapPowerLawCrossoverModeProperty(), handleExtrapToggleProperty(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), and processImage().
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protectedinherited |
The cpuset to assign the shmimMonitor thread to. Ignored if empty (the default).
Definition at line 123 of file shmimMonitor.hpp.
|
protected |
Definition at line 864 of file modalGainOpt.hpp.
Referenced by allocate(), and goptThreadExec().
|
protected |
Definition at line 952 of file modalGainOpt.hpp.
Referenced by allocate(), and loadConfigImpl().
The ImageStreamIO shared memory buffer to publish the smoothed OL PSDs
Definition at line 975 of file modalGainOpt.hpp.
Referenced by allocate(), appShutdown(), checkSizes(), and goptThreadExec().
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 132 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
A separate thread for the actual monitoring.
Definition at line 240 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
The s.m. thread PID.
Definition at line 236 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Synchronizer for thread startup, to allow priority setting to finish.
Definition at line 234 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
Priority of the shmimMonitor thread, should normally be > 00.
Definition at line 121 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
protectedinherited |
The property to hold the s.m. thread details.
Definition at line 238 of file shmimMonitor.hpp.
|
privateinherited |
The application's state. Never ever set this directly, use state(const stateCodeT & s).
Definition at line 576 of file MagAOXApp.hpp.
|
privateinherited |
Definition at line 579 of file MagAOXApp.hpp.
|
privateinherited |
Counter and flag for use to log errors just once. Never ever access directly, use stateLogged().
Definition at line 584 of file MagAOXApp.hpp.
|
privateinherited |
The save-set user id of the process.
Definition at line 424 of file MagAOXApp.hpp.
|
protectedinherited |
The path to the system directory, for PID file, etc.
Definition at line 198 of file MagAOXApp.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protectedinherited |
Definition at line 130 of file shmimMonitor.hpp.
|
protected |
Definition at line 938 of file modalGainOpt.hpp.
Referenced by checkSizes(), processImage(), and refreshGoptStructures().
|
inherited |
Definition at line 81 of file telemeter.hpp.
|
protected |
Definition at line 883 of file modalGainOpt.hpp.
Referenced by allocate(), and goptThreadExec().
|
protected |
Definition at line 875 of file modalGainOpt.hpp.
Referenced by allocate(), and goptThreadExec().
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
|
protectedinherited |
The size of the type, in bytes. Result of sizeof.
Definition at line 141 of file shmimMonitor.hpp.
Flag to trigger a single update with gain.
Definition at line 824 of file modalGainOpt.hpp.
Referenced by appLogic(), and goptThreadExec().
Flag used to indicate to the goptThread that it should stop calculations ASAP
Definition at line 1275 of file modalGainOpt.hpp.
Referenced by allocate(), goptThreadExec(), handleExtrapClosedLoopOlEstimateMethodProperty(), handleExtrapMethodProperty(), handleExtrapNoiseEstimateDomainProperty(), handleExtrapNoiseEstimateRangeProperty(), handleExtrapNoiseEstimateStatisticProperty(), handleExtrapNumberProperty(), handleExtrapPowerLawCrossoverModeProperty(), handleExtrapToggleProperty(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), processImage(), and processImage().
|
staticconstexprprotectedinherited |
Flag controlling whether INDI is used. If false, then no INDI code executes.
Definition at line 654 of file MagAOXApp.hpp.
|
protected |
Definition at line 942 of file modalGainOpt.hpp.
Referenced by processImage(), and processImage().
|
protected |
Definition at line 786 of file modalGainOpt.hpp.
Referenced by appStartup().
|
protected |
Definition at line 943 of file modalGainOpt.hpp.
Referenced by processImage(), and processImage().
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
|
protectedinherited |
The width of the images in the stream.
Definition at line 136 of file shmimMonitor.hpp.
Flag requesting the SI gain integrator state be zeroed.
Definition at line 827 of file modalGainOpt.hpp.
Referenced by appLogic(), and goptThreadExec().
|
protectedinherited |
The name of the PID file.
Definition at line 504 of file MagAOXApp.hpp.