plico.utils package¶
Submodules¶
plico.utils.addtree module¶
- plico.utils.addtree.addtree(src, dst, symlinks=False)¶
- plico.utils.addtree.mkdirp(dirname)¶
plico.utils.barrier module¶
- class plico.utils.barrier.Barrier(timeoutSec, pollingPeriodSec=0.1, timeModule=<module 'time' (built-in)>)¶
Bases:
object
- waitFor(predicate)¶
- classmethod waitUntil(predicate, timeoutSec, period=0.5, timeModule=<module 'time' (built-in)>)¶
- exception plico.utils.barrier.BarrierTimeout(message)¶
Bases:
Exception
plico.utils.base_runner module¶
plico.utils.calibration_installer module¶
plico.utils.concurrent_loop module¶
- class plico.utils.concurrent_loop.ConcurrentLoop(name, convergable, interStepTimeSec, logFailureFunc)¶
Bases:
Loop
- close()¶
- deinitialize()¶
- getConvergenceStepCount()¶
- hasConverged()¶
- initialize()¶
- isClosed()¶
- isInitialized()¶
- name()¶
- open()¶
- performOnePass()¶
- setStopDurationLimitSec(durationSec)¶
- exception plico.utils.concurrent_loop.ConcurrentLoopException¶
Bases:
Exception
- class plico.utils.concurrent_loop.WorkerThread(name, closedFunc, convergable, interStepTimeSec, stepCounter, logFailureFunc)¶
Bases:
Thread
- run()¶
Method representing the thread’s activity.
You may override this method in a subclass. The standard run() method invokes the callable object passed to the object’s constructor as the target argument, if any, with sequential and keyword arguments taken from the args and kwargs arguments, respectively.
- setStopDurationLimitSec(limitSec)¶
- stop()¶
plico.utils.config_file_manager module¶
plico.utils.configuration module¶
plico.utils.constants module¶
plico.utils.control_loop module¶
- class plico.utils.control_loop.FaultTolerantControlLoop(steppable, logger, timeModule=<module 'time' (built-in)>, loopPeriodInSecond=1)¶
Bases:
ControlLoop
- start()¶
- class plico.utils.control_loop.IntolerantControlLoop(steppable, logger, timeModule=<module 'time' (built-in)>, loopPeriodInSecond=1)¶
Bases:
ControlLoop
- start()¶
plico.utils.convergeable module¶
plico.utils.decorator module¶
- exception plico.utils.decorator.ReturnTypeMismatchError¶
Bases:
Exception
- plico.utils.decorator.cacheResult(f)¶
- plico.utils.decorator.logEnterAndExit(enterMessage, exitMessage, level='notice')¶
- plico.utils.decorator.logFailureAndContinue(func)¶
- plico.utils.decorator.logFailureAndRaise(func)¶
- plico.utils.decorator.logTime(f)¶
- plico.utils.decorator.override(f)¶
- plico.utils.decorator.returns(returnType)¶
- plico.utils.decorator.returnsForExample(exampleInstance)¶
- plico.utils.decorator.returnsNone(f)¶
- plico.utils.decorator.suppressException(resultInCaseOfFailure=None)¶
- plico.utils.decorator.synchronized(item)¶
plico.utils.executor module¶
- exception plico.utils.executor.BusyExecutorException(message, nameOfCurrentTask)¶
Bases:
Exception
- class plico.utils.executor.DelayedTaskControl¶
Bases:
TaskControl
- isDone()¶
- isRunning()¶
- markAsDone()¶
- waitForCompletion(timeoutSec)¶
- class plico.utils.executor.DoneTaskControl¶
Bases:
TaskControl
- isDone()¶
- isRunning()¶
- waitForCompletion(timeoutSec)¶
- class plico.utils.executor.ExecutorFactory¶
Bases:
object
- static buildMultiThreadExecutor(maxNumThreads)¶
- static buildSingleThreadExecutor(logger=<plico.utils.logger.PythonLogger object>)¶
- static buildSingleThreadImmediateExecutor(logger=<plico.utils.logger.PythonLogger object>)¶
- class plico.utils.executor.FunctionTask(func, *args, **kwds)¶
Bases:
Task
- NO_RESULT = <object object>¶
- getException()¶
- getResult()¶
- name()¶
- perform()¶
- reraiseExceptionIfAny()¶
- withName(name)¶
- exception plico.utils.executor.FunctionTaskException¶
Bases:
Exception
- class plico.utils.executor.FutureTaskControl(future, taskName, logger)¶
Bases:
TaskControl
- isDone()¶
- isRunning()¶
- waitForCompletion(timeoutSec=None)¶
- class plico.utils.executor.MultiThreadExecutor(maxThreads, logger=<plico.utils.logger.PythonLogger object>)¶
Bases:
Executor
- execute(task)¶
- class plico.utils.executor.SerialExecutor(logger=<plico.utils.logger.PythonLogger object>)¶
Bases:
Executor
- execute(task)¶
- class plico.utils.executor.SingleThreadExecutor(logger=<plico.utils.logger.PythonLogger object>)¶
Bases:
MultiThreadExecutor
- class plico.utils.executor.SingleThreadImmediateExecutor(singleThreadExecutor)¶
Bases:
Executor
- execute(task)¶
- isIdle()¶
- class plico.utils.executor.TaskControl¶
Bases:
object
- abstract isDone()¶
- abstract isRunning()¶
- abstract waitForCompletion(timeoutSec)¶
- class plico.utils.executor.TaskDelayingExecutor¶
Bases:
Executor
- execute(task)¶
- executeDelayedTasks()¶
- getDelayedTasks()¶
- exception plico.utils.executor.TaskTimeoutError(msg)¶
Bases:
Exception
- plico.utils.executor.logTaskFailure(func)¶
plico.utils.fake_convergeable module¶
- class plico.utils.fake_convergeable.FakeConvergeable¶
Bases:
Convergeable
- blockStep()¶
- getConvergenceStepCount()¶
- getMeasureConvergenceCount()¶
- hasConverged()¶
- measureConvergence()¶
- name()¶
- performOneConvergenceStep()¶
- requestPanic()¶
- setAsConverged()¶
- setAsUnconverged()¶
- setStepSleepDurationSec(durationSec)¶
- unblockStep()¶
plico.utils.fake_loop module¶
plico.utils.fits_file_based_calibration_manager module¶
- class plico.utils.fits_file_based_calibration_manager.FitsFileBasedCalibrationManager¶
Bases:
object
plico.utils.hackerable module¶
plico.utils.image_moments module¶
- class plico.utils.image_moments.ImageMoments(image, shiftPixels=0.5)¶
Bases:
object
- centralMoment(iord, jord)¶
- centralNormalizedMoment(iord, jord)¶
- centroid()¶
- covarianceMatrix()¶
- eccentricity()¶
- effectiveRadius()¶
- eigenvalues()¶
- orientation()¶
- principalMomentsOfInertia()¶
- rawMoment(iord, jord)¶
- semiAxes()¶
- xBar()¶
- yBar()¶
plico.utils.kill_process_by_name module¶
- plico.utils.kill_process_by_name.killProcessByName(processName)¶
plico.utils.logger module¶
- class plico.utils.logger.AbstractLogger¶
Bases:
object
- abstract debug(m)¶
- abstract error(m)¶
- abstract fatal(m)¶
- abstract notice(m)¶
- abstract warn(m)¶
- class plico.utils.logger.DummyLogger¶
Bases:
AbstractLogger
- debug(m)¶
- error(m)¶
- fatal(m)¶
- notice(m)¶
- warn(m)¶
- class plico.utils.logger.DummyLoggerFactory¶
Bases:
AbstractLoggerFactory
- getLogger(name)¶
- class plico.utils.logger.Logger¶
Bases:
object
- DEFAULT_LOGGER_FACTORY¶
alias of
PythonLoggerFactory
- static of(loggerName)¶
- static setLoggerFactory(loggerFactory)¶
- exception plico.utils.logger.LoggerException¶
Bases:
Exception
- class plico.utils.logger.LoggerListener¶
Bases:
object
- onDebug(message)¶
- onError(message)¶
- onFatal(message)¶
- onNotice(message)¶
- onWarning(message)¶
- class plico.utils.logger.ObservableLogger(wrappedLogger)¶
Bases:
AbstractLogger
- addListener(listener)¶
- debug(m)¶
- error(m)¶
- fatal(m)¶
- notice(m)¶
- warn(m)¶
- class plico.utils.logger.ObservableLoggerFactory(wrappedLoggerFactory)¶
Bases:
AbstractLoggerFactory
- addListener(loggerListener)¶
- getLogger(name)¶
- getLoggerMap()¶
- class plico.utils.logger.PythonLogger(logger)¶
Bases:
AbstractLogger
- debug(m)¶
- error(m)¶
- fatal(m)¶
- notice(m)¶
- setRelativePathRadix(radix)¶
- warn(m)¶
- class plico.utils.logger.PythonLoggerFactory¶
Bases:
AbstractLoggerFactory
- getLogger(name)¶
plico.utils.loop module¶
- class plico.utils.loop.Loop¶
Bases:
object
- abstract close()¶
- abstract getConvergenceStepCount()¶
- abstract hasConverged()¶
- abstract isClosed()¶
- abstract name()¶
- abstract open()¶
- abstract performOnePass()¶
- exception plico.utils.loop.LoopException(message)¶
Bases:
Exception
plico.utils.plico_scipy module¶
- plico.utils.plico_scipy.binom(*args, **kwargs)¶
- plico.utils.plico_scipy.curve_fit(*args, **kwargs)¶
- plico.utils.plico_scipy.gaussian_filter(*args, **kwargs)¶
- plico.utils.plico_scipy.leastsq(*args, **kwargs)¶
- plico.utils.plico_scipy.medfilt2d(*args, **kwargs)¶
- plico.utils.plico_scipy.median_filter(*args, **kwargs)¶
- plico.utils.plico_scipy.minimize(*args, **kwargs)¶
- plico.utils.plico_scipy.pinv(*args, **kwargs)¶
- plico.utils.plico_scipy.pinv2(*args, **kwargs)¶
- plico.utils.plico_scipy.rotate(*args, **kwargs)¶
- plico.utils.plico_scipy.splev(*args, **kwargs)¶
- plico.utils.plico_scipy.splrep(*args, **kwargs)¶
- plico.utils.plico_scipy.svdvals(*args, **kwargs)¶
plico.utils.serverinfoable module¶
plico.utils.snapshotable module¶
plico.utils.starter_script_creator_base module¶
plico.utils.stepable module¶
plico.utils.timekeeper module¶
plico.utils.timeout module¶
plico.utils.timestamp module¶
plico.utils.zernike_generator module¶
- class plico.utils.zernike_generator.ZernikeGenerator(nPixelOnDiameter)¶
Bases:
object
A class to generate Zernike polynomials and gradient of Zernike polynomials
Example
>>> numberOfPixelOnPupilDiameter= 64 >>> zg= ZernikeGenerator(numberOfPixelOnPupilDiameter) >>> asti= zg.getZernike(5) >>> asti[ >>> type(asti) numpy.ma.core.MaskedArray >>> asti.shape (64,64) >>> dTiltdx= zg.getDerivativeX(2) >>> dTiltdx.mean() 2.0 >>> dTiltdx.ptp() 0.0
- getDerivativeX(index)¶
- getDerivativeXDict(indexVector)¶
- getDerivativeY(index)¶
- getDerivativeYDict(indexVector)¶
- getRadius()¶
- getZernike(index)¶
Retrieve a map representing the index-th Zernike polynomial
- Parameters:
index (int) – The index of Zernike map to be generated, following Noll 1976 ordering.
- Returns:
A map representing the index-th Zernike polynomial
- Return type:
np.array
- getZernikeDict(indexVector)¶