Ekos::Scheduler
#include <scheduler.h>

Public Types | |
enum | SchedulerColumns { SCHEDCOL_NAME = 0, SCHEDCOL_STATUS, SCHEDCOL_CAPTURES, SCHEDCOL_ALTITUDE, SCHEDCOL_STARTTIME, SCHEDCOL_ENDTIME } |
![]() | |
enum | RenderFlag |
![]() | |
enum | PaintDeviceMetric |
Properties | |
QStringList | logText |
QString | profile |
Ekos::SchedulerState | status |
![]() | |
acceptDrops | |
accessibleDescription | |
accessibleName | |
autoFillBackground | |
baseSize | |
childrenRect | |
childrenRegion | |
contextMenuPolicy | |
cursor | |
enabled | |
focus | |
focusPolicy | |
font | |
frameGeometry | |
frameSize | |
fullScreen | |
geometry | |
height | |
inputMethodHints | |
isActiveWindow | |
layoutDirection | |
locale | |
maximized | |
maximumHeight | |
maximumSize | |
maximumWidth | |
minimized | |
minimumHeight | |
minimumSize | |
minimumSizeHint | |
minimumWidth | |
modal | |
mouseTracking | |
normalGeometry | |
palette | |
pos | |
rect | |
size | |
sizeHint | |
sizeIncrement | |
sizePolicy | |
statusTip | |
styleSheet | |
tabletTracking | |
toolTip | |
toolTipDuration | |
updatesEnabled | |
visible | |
whatsThis | |
width | |
windowFilePath | |
windowFlags | |
windowIcon | |
windowIconText | |
windowModality | |
windowModified | |
windowOpacity | |
windowTitle | |
x | |
y | |
![]() | |
objectName | |
Signals | |
void | jobEnded (const QString &jobName, const QString &endReason) |
void | jobStarted (const QString &jobName) |
void | jobsUpdated (QJsonArray jobsList) |
void | newLog (const QString &text) |
void | newStatus (Ekos::SchedulerState state) |
void | newTarget (const QString &) |
void | targetDistance (double distance) |
void | weatherChanged (ISD::Weather::Status state) |
Public Member Functions | |
Scheduler () | |
Scheduler (const QString path, const QString interface, const QString &ekosPathStr, const QString &ekosInterfaceStr) | |
SchedulerJob * | activeJob () |
void | addJob () |
void | addObject (SkyObject *object) |
void | appendLogText (const QString &) |
void | applyConfig () |
void | clearLog () |
bool | createJobSequence (XMLEle *root, const QString &prefix, const QString &outputDir) |
QString | getCurrentJobName () |
ErrorHandlingStrategy | getErrorHandlingStrategy () |
QJsonArray | getJSONJobs () |
QString | getLogText () |
void | getNextAction () |
QJsonObject | getSchedulerSettings () |
XMLEle * | getSequenceJobRoot (const QString &filename) const |
bool | importMosaic (const QJsonObject &payload) |
Q_SCRIPTABLE bool | loadScheduler (const QString &fileURL) |
QStringList | logText () |
QSharedPointer< SchedulerModuleState > | moduleState () const |
QString | profile () |
Q_SCRIPTABLE Q_NOREPLY void | removeAllJobs () |
void | removeJob () |
void | removeOneJob (int index) |
Q_SCRIPTABLE void | resetAllJobs () |
void | saveJob () |
Q_SCRIPTABLE bool | saveScheduler (const QUrl &fileURL) |
void | setAbortedJobManagementSettings (const QJsonObject &settings) |
void | setErrorHandlingStrategy (ErrorHandlingStrategy strategy) |
void | setJobCompletionConditions (const QJsonObject &settings) |
void | setJobConstraints (const QJsonObject &settings) |
void | setJobStartupConditions (const QJsonObject &settings) |
void | setObservatoryShutdownProcedure (const QJsonObject &settings) |
void | setObservatoryStartupProcedure (const QJsonObject &settings) |
void | setPrimarySettings (const QJsonObject &settings) |
void | setProfile (const QString &profile) |
Q_SCRIPTABLE void | setSequence (const QString &sequenceFileURL) |
void | setSettings (const QJsonObject &settings) |
Q_SCRIPTABLE void | sortJobsPerAltitude () |
Q_SCRIPTABLE Q_NOREPLY void | start () |
void | startCapture (bool restart=false) |
Ekos::SchedulerState | status () |
Q_SCRIPTABLE Q_NOREPLY void | stop () |
void | toggleScheduler () |
void | updateTable () |
![]() | |
QWidget (QWidget *parent, Qt::WindowFlags f) | |
bool | acceptDrops () const const |
QString | accessibleDescription () const const |
QString | accessibleName () const const |
QList< QAction * > | actions () const const |
void | activateWindow () |
void | addAction (QAction *action) |
void | addActions (QList< QAction * > actions) |
void | adjustSize () |
bool | autoFillBackground () const const |
QPalette::ColorRole | backgroundRole () const const |
QBackingStore * | backingStore () const const |
QSize | baseSize () const const |
QWidget * | childAt (const QPoint &p) const const |
QWidget * | childAt (int x, int y) const const |
QRect | childrenRect () const const |
QRegion | childrenRegion () const const |
void | clearFocus () |
void | clearMask () |
bool | close () |
QMargins | contentsMargins () const const |
QRect | contentsRect () const const |
Qt::ContextMenuPolicy | contextMenuPolicy () const const |
QCursor | cursor () const const |
void | customContextMenuRequested (const QPoint &pos) |
WId | effectiveWinId () const const |
void | ensurePolished () const const |
Qt::FocusPolicy | focusPolicy () const const |
QWidget * | focusProxy () const const |
QWidget * | focusWidget () const const |
const QFont & | font () const const |
QFontInfo | fontInfo () const const |
QFontMetrics | fontMetrics () const const |
QPalette::ColorRole | foregroundRole () const const |
QRect | frameGeometry () const const |
QSize | frameSize () const const |
const QRect & | geometry () const const |
void | getContentsMargins (int *left, int *top, int *right, int *bottom) const const |
QPixmap | grab (const QRect &rectangle) |
void | grabGesture (Qt::GestureType gesture, Qt::GestureFlags flags) |
void | grabKeyboard () |
void | grabMouse () |
void | grabMouse (const QCursor &cursor) |
int | grabShortcut (const QKeySequence &key, Qt::ShortcutContext context) |
QGraphicsEffect * | graphicsEffect () const const |
QGraphicsProxyWidget * | graphicsProxyWidget () const const |
bool | hasEditFocus () const const |
bool | hasFocus () const const |
virtual bool | hasHeightForWidth () const const |
bool | hasMouseTracking () const const |
bool | hasTabletTracking () const const |
int | height () const const |
virtual int | heightForWidth (int w) const const |
void | hide () |
Qt::InputMethodHints | inputMethodHints () const const |
virtual QVariant | inputMethodQuery (Qt::InputMethodQuery query) const const |
void | insertAction (QAction *before, QAction *action) |
void | insertActions (QAction *before, QList< QAction * > actions) |
bool | isActiveWindow () const const |
bool | isAncestorOf (const QWidget *child) const const |
bool | isEnabled () const const |
bool | isEnabledTo (const QWidget *ancestor) const const |
bool | isEnabledToTLW () const const |
bool | isFullScreen () const const |
bool | isHidden () const const |
bool | isMaximized () const const |
bool | isMinimized () const const |
bool | isModal () const const |
bool | isTopLevel () const const |
bool | isVisible () const const |
bool | isVisibleTo (const QWidget *ancestor) const const |
bool | isWindow () const const |
bool | isWindowModified () const const |
QLayout * | layout () const const |
Qt::LayoutDirection | layoutDirection () const const |
QLocale | locale () const const |
void | lower () |
QPoint | mapFrom (const QWidget *parent, const QPoint &pos) const const |
QPoint | mapFromGlobal (const QPoint &pos) const const |
QPoint | mapFromParent (const QPoint &pos) const const |
QPoint | mapTo (const QWidget *parent, const QPoint &pos) const const |
QPoint | mapToGlobal (const QPoint &pos) const const |
QPoint | mapToParent (const QPoint &pos) const const |
QRegion | mask () const const |
int | maximumHeight () const const |
QSize | maximumSize () const const |
int | maximumWidth () const const |
int | minimumHeight () const const |
QSize | minimumSize () const const |
virtual QSize | minimumSizeHint () const const |
int | minimumWidth () const const |
void | move (const QPoint &) |
void | move (int x, int y) |
QWidget * | nativeParentWidget () const const |
QWidget * | nextInFocusChain () const const |
QRect | normalGeometry () const const |
void | overrideWindowFlags (Qt::WindowFlags flags) |
virtual QPaintEngine * | paintEngine () const const override |
const QPalette & | palette () const const |
QWidget * | parentWidget () const const |
QPoint | pos () const const |
QWidget * | previousInFocusChain () const const |
QWIDGETSIZE_MAX QWIDGETSIZE_MAX | |
void | raise () |
QRect | rect () const const |
void | releaseKeyboard () |
void | releaseMouse () |
void | releaseShortcut (int id) |
void | removeAction (QAction *action) |
void | render (QPaintDevice *target, const QPoint &targetOffset, const QRegion &sourceRegion, QWidget::RenderFlags renderFlags) |
void | render (QPainter *painter, const QPoint &targetOffset, const QRegion &sourceRegion, QWidget::RenderFlags renderFlags) |
void | repaint () |
void | repaint (const QRect &rect) |
void | repaint (const QRegion &rgn) |
void | repaint (int x, int y, int w, int h) |
void | resize (const QSize &) |
void | resize (int w, int h) |
bool | restoreGeometry (const QByteArray &geometry) |
QByteArray | saveGeometry () const const |
QScreen * | screen () const const |
void | scroll (int dx, int dy) |
void | scroll (int dx, int dy, const QRect &r) |
void | setAcceptDrops (bool on) |
void | setAccessibleDescription (const QString &description) |
void | setAccessibleName (const QString &name) |
void | setAttribute (Qt::WidgetAttribute attribute, bool on) |
void | setAutoFillBackground (bool enabled) |
void | setBackgroundRole (QPalette::ColorRole role) |
void | setBaseSize (const QSize &) |
void | setBaseSize (int basew, int baseh) |
void | setContentsMargins (const QMargins &margins) |
void | setContentsMargins (int left, int top, int right, int bottom) |
void | setContextMenuPolicy (Qt::ContextMenuPolicy policy) |
void | setCursor (const QCursor &) |
void | setDisabled (bool disable) |
void | setEditFocus (bool enable) |
void | setEnabled (bool) |
void | setFixedHeight (int h) |
void | setFixedSize (const QSize &s) |
void | setFixedSize (int w, int h) |
void | setFixedWidth (int w) |
void | setFocus () |
void | setFocus (Qt::FocusReason reason) |
void | setFocusPolicy (Qt::FocusPolicy policy) |
void | setFocusProxy (QWidget *w) |
void | setFont (const QFont &) |
void | setForegroundRole (QPalette::ColorRole role) |
void | setGeometry (const QRect &) |
void | setGeometry (int x, int y, int w, int h) |
void | setGraphicsEffect (QGraphicsEffect *effect) |
void | setHidden (bool hidden) |
void | setInputMethodHints (Qt::InputMethodHints hints) |
void | setLayout (QLayout *layout) |
void | setLayoutDirection (Qt::LayoutDirection direction) |
void | setLocale (const QLocale &locale) |
void | setMask (const QBitmap &bitmap) |
void | setMask (const QRegion ®ion) |
void | setMaximumHeight (int maxh) |
void | setMaximumSize (const QSize &) |
void | setMaximumSize (int maxw, int maxh) |
void | setMaximumWidth (int maxw) |
void | setMinimumHeight (int minh) |
void | setMinimumSize (const QSize &) |
void | setMinimumSize (int minw, int minh) |
void | setMinimumWidth (int minw) |
void | setMouseTracking (bool enable) |
void | setPalette (const QPalette &) |
void | setParent (QWidget *parent) |
void | setParent (QWidget *parent, Qt::WindowFlags f) |
void | setShortcutAutoRepeat (int id, bool enable) |
void | setShortcutEnabled (int id, bool enable) |
void | setSizeIncrement (const QSize &) |
void | setSizeIncrement (int w, int h) |
void | setSizePolicy (QSizePolicy) |
void | setSizePolicy (QSizePolicy::Policy horizontal, QSizePolicy::Policy vertical) |
void | setStatusTip (const QString &) |
void | setStyle (QStyle *style) |
void | setStyleSheet (const QString &styleSheet) |
void | setTabletTracking (bool enable) |
void | setToolTip (const QString &) |
void | setToolTipDuration (int msec) |
void | setUpdatesEnabled (bool enable) |
void | setupUi (QWidget *widget) |
virtual void | setVisible (bool visible) |
void | setWhatsThis (const QString &) |
void | setWindowFilePath (const QString &filePath) |
void | setWindowFlag (Qt::WindowType flag, bool on) |
void | setWindowFlags (Qt::WindowFlags type) |
void | setWindowIcon (const QIcon &icon) |
void | setWindowIconText (const QString &) |
void | setWindowModality (Qt::WindowModality windowModality) |
void | setWindowModified (bool) |
void | setWindowOpacity (qreal level) |
void | setWindowRole (const QString &role) |
void | setWindowState (Qt::WindowStates windowState) |
void | setWindowTitle (const QString &) |
void | show () |
void | showFullScreen () |
void | showMaximized () |
void | showMinimized () |
void | showNormal () |
QSize | size () const const |
virtual QSize | sizeHint () const const |
QSize | sizeIncrement () const const |
QSizePolicy | sizePolicy () const const |
void | stackUnder (QWidget *w) |
QString | statusTip () const const |
QStyle * | style () const const |
QString | styleSheet () const const |
bool | testAttribute (Qt::WidgetAttribute attribute) const const |
QString | toolTip () const const |
int | toolTipDuration () const const |
QWidget * | topLevelWidget () const const |
bool | underMouse () const const |
void | ungrabGesture (Qt::GestureType gesture) |
void | unsetCursor () |
void | unsetLayoutDirection () |
void | unsetLocale () |
void | update () |
void | update (const QRect &rect) |
void | update (const QRegion &rgn) |
void | update (int x, int y, int w, int h) |
void | updateGeometry () |
bool | updatesEnabled () const const |
QRegion | visibleRegion () const const |
QString | whatsThis () const const |
int | width () const const |
QWidget * | window () const const |
QString | windowFilePath () const const |
Qt::WindowFlags | windowFlags () const const |
QWindow * | windowHandle () const const |
QIcon | windowIcon () const const |
void | windowIconChanged (const QIcon &icon) |
QString | windowIconText () const const |
void | windowIconTextChanged (const QString &iconText) |
Qt::WindowModality | windowModality () const const |
qreal | windowOpacity () const const |
QString | windowRole () const const |
Qt::WindowStates | windowState () const const |
QString | windowTitle () const const |
void | windowTitleChanged (const QString &title) |
Qt::WindowType | windowType () const const |
WId | winId () const const |
int | x () const const |
int | y () const const |
![]() | |
QObject (QObject *parent) | |
bool | blockSignals (bool block) |
const QObjectList & | children () const const |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const |
void | deleteLater () |
void | destroyed (QObject *obj) |
bool | disconnect (const char *signal, const QObject *receiver, const char *method) const const |
bool | disconnect (const QObject *receiver, const char *method) const const |
void | dumpObjectInfo () |
void | dumpObjectInfo () const const |
void | dumpObjectTree () |
void | dumpObjectTree () const const |
QList< QByteArray > | dynamicPropertyNames () const const |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
T | findChild (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QRegExp ®Exp, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QString &name, Qt::FindChildOptions options) const const |
bool | inherits (const char *className) const const |
void | installEventFilter (QObject *filterObj) |
bool | isWidgetType () const const |
bool | isWindowType () const const |
void | killTimer (int id) |
virtual const QMetaObject * | metaObject () const const |
void | moveToThread (QThread *targetThread) |
QString | objectName () const const |
void | objectNameChanged (const QString &objectName) |
QObject * | parent () const const |
QVariant | property (const char *name) const const |
Q_CLASSINFO (Name, Value) | |
Q_DISABLE_COPY (Class) | |
Q_DISABLE_COPY_MOVE (Class) | |
Q_DISABLE_MOVE (Class) | |
Q_EMIT Q_EMIT | |
Q_ENUM (...) | |
Q_ENUM_NS (...) | |
Q_ENUMS (...) | |
Q_FLAG (...) | |
Q_FLAG_NS (...) | |
Q_FLAGS (...) | |
Q_GADGET Q_GADGET | |
Q_INTERFACES (...) | |
Q_INVOKABLE Q_INVOKABLE | |
Q_NAMESPACE Q_NAMESPACE | |
Q_NAMESPACE_EXPORT (EXPORT_MACRO) | |
Q_OBJECT Q_OBJECT | |
Q_PROPERTY (...) | |
Q_REVISION Q_REVISION | |
Q_SET_OBJECT_NAME (Object) | |
Q_SIGNAL Q_SIGNAL | |
Q_SIGNALS Q_SIGNALS | |
Q_SLOT Q_SLOT | |
Q_SLOTS Q_SLOTS | |
T | qFindChild (const QObject *obj, const QString &name) |
QList< T > | qFindChildren (const QObject *obj, const QRegExp ®Exp) |
QList< T > | qFindChildren (const QObject *obj, const QString &name) |
T | qobject_cast (const QObject *object) |
T | qobject_cast (QObject *object) |
QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT | |
void | removeEventFilter (QObject *obj) |
void | setObjectName (const QString &name) |
void | setParent (QObject *parent) |
bool | setProperty (const char *name, const QVariant &value) |
bool | signalsBlocked () const const |
int | startTimer (int interval, Qt::TimerType timerType) |
int | startTimer (std::chrono::milliseconds time, Qt::TimerType timerType) |
QThread * | thread () const const |
![]() | |
int | colorCount () const const |
int | depth () const const |
int | devicePixelRatio () const const |
qreal | devicePixelRatioF () const const |
int | height () const const |
int | heightMM () const const |
int | logicalDpiX () const const |
int | logicalDpiY () const const |
bool | paintingActive () const const |
int | physicalDpiX () const const |
int | physicalDpiY () const const |
int | width () const const |
int | widthMM () const const |
Static Public Member Functions | |
static bool | estimateJobTime (SchedulerJob *schedJob, const QMap< QString, uint16_t > &capturedFramesCount, Scheduler *scheduler) |
static bool | loadSequenceQueue (const QString &fileURL, SchedulerJob *schedJob, QList< SequenceJob * > &jobs, bool &hasAutoFocus, Scheduler *scheduler) |
![]() | |
QWidget * | createWindowContainer (QWindow *window, QWidget *parent, Qt::WindowFlags flags) |
QWidget * | find (WId id) |
QWidget * | keyboardGrabber () |
QWidget * | mouseGrabber () |
void | setTabOrder (QWidget *first, QWidget *second) |
![]() | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, Functor functor) |
bool | disconnect (const QMetaObject::Connection &connection) |
bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method) |
bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
bool | disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method) |
QString | tr (const char *sourceText, const char *disambiguation, int n) |
QString | trUtf8 (const char *sourceText, const char *disambiguation, int n) |
Protected Slots | |
bool | appendEkosScheduleList (const QString &fileURL) |
void | checkInterfaceReady (QDBusInterface *iface) |
void | checkJobStage () |
void | checkJobStageEplogue () |
bool | checkStatus () |
void | checkTwilightWarning (bool enabled) |
void | clickQueueTable (QModelIndex index) |
void | findNextJob () |
void | load (bool clearQueue, const QString &filename="") |
void | loadJob (QModelIndex i) |
void | moveJobDown () |
void | moveJobUp () |
void | pause () |
void | queueTableSelectionChanged (QModelIndex current, QModelIndex previous) |
void | registerNewDevice (const QString &name, int interface) |
void | registerNewModule (const QString &name) |
bool | reorderJobs (QList< SchedulerJob * > reordered_sublist) |
void | resetJobEdit () |
void | resumeCheckStatus () |
void | save () |
void | saveAs () |
void | selectFITS () |
void | selectObject () |
void | selectSequence () |
void | selectShutdownScript () |
void | selectStartupScript () |
void | setAlignStatus (Ekos::AlignState status) |
void | setCaptureComplete (const QVariantMap &metadata) |
void | setCaptureStatus (Ekos::CaptureState status) |
void | setEkosCommunicationStatus (Ekos::CommunicationStatus status) |
void | setFocusStatus (Ekos::FocusState status) |
void | setGuideStatus (Ekos::GuideState status) |
void | setINDICommunicationStatus (Ekos::CommunicationStatus status) |
void | setJobAddApply (bool add_mode) |
void | setJobManipulation (bool can_reorder, bool can_delete) |
void | setMountStatus (ISD::Mount::Status status) |
void | setPaused () |
void | setWeatherStatus (ISD::Weather::Status status) |
bool | shouldSchedulerSleep (SchedulerJob *currentJob) |
void | simClockScaleChanged (float) |
void | simClockTimeChanged () |
void | solverDone (bool timedOut, bool success, const FITSImage::Solution &solution, double elapsedSeconds) |
void | startJobEvaluation () |
void | stopCurrentJobAction () |
bool | syncControl (const QJsonObject &settings, const QString &key, QWidget *widget) |
void | syncGUIToGeneralSettings () |
void | syncGUIToJob (SchedulerJob *job) |
void | syncProperties () |
void | updateNightTime (SchedulerJob const *job=nullptr) |
void | wakeUpScheduler () |
Protected Member Functions | |
void | setDirty () |
void | setJobStatusCells (int row) |
void | watchJobChanges (bool enable) |
![]() | |
virtual void | actionEvent (QActionEvent *event) |
virtual void | changeEvent (QEvent *event) |
virtual void | closeEvent (QCloseEvent *event) |
virtual void | contextMenuEvent (QContextMenuEvent *event) |
void | create (WId window, bool initializeWindow, bool destroyOldWindow) |
void | destroy (bool destroyWindow, bool destroySubWindows) |
virtual void | dragEnterEvent (QDragEnterEvent *event) |
virtual void | dragLeaveEvent (QDragLeaveEvent *event) |
virtual void | dragMoveEvent (QDragMoveEvent *event) |
virtual void | dropEvent (QDropEvent *event) |
virtual void | enterEvent (QEvent *event) |
virtual bool | event (QEvent *event) override |
virtual void | focusInEvent (QFocusEvent *event) |
bool | focusNextChild () |
virtual bool | focusNextPrevChild (bool next) |
virtual void | focusOutEvent (QFocusEvent *event) |
bool | focusPreviousChild () |
virtual void | hideEvent (QHideEvent *event) |
virtual void | initPainter (QPainter *painter) const const override |
virtual void | inputMethodEvent (QInputMethodEvent *event) |
virtual void | keyPressEvent (QKeyEvent *event) |
virtual void | keyReleaseEvent (QKeyEvent *event) |
virtual void | leaveEvent (QEvent *event) |
virtual int | metric (QPaintDevice::PaintDeviceMetric m) const const override |
virtual void | mouseDoubleClickEvent (QMouseEvent *event) |
virtual void | mouseMoveEvent (QMouseEvent *event) |
virtual void | mousePressEvent (QMouseEvent *event) |
virtual void | mouseReleaseEvent (QMouseEvent *event) |
virtual void | moveEvent (QMoveEvent *event) |
virtual bool | nativeEvent (const QByteArray &eventType, void *message, long *result) |
virtual void | paintEvent (QPaintEvent *event) |
virtual void | resizeEvent (QResizeEvent *event) |
virtual void | showEvent (QShowEvent *event) |
virtual void | tabletEvent (QTabletEvent *event) |
void | updateMicroFocus () |
virtual void | wheelEvent (QWheelEvent *event) |
![]() | |
virtual void | childEvent (QChildEvent *event) |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | customEvent (QEvent *event) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
bool | isSignalConnected (const QMetaMethod &signal) const const |
int | receivers (const char *signal) const const |
QObject * | sender () const const |
int | senderSignalIndex () const const |
virtual void | timerEvent (QTimerEvent *event) |
Additional Inherited Members | |
![]() | |
DrawChildren | |
DrawWindowBackground | |
IgnoreMask | |
typedef | RenderFlags |
![]() | |
typedef | QObjectList |
![]() | |
PdmDepth | |
PdmDevicePixelRatio | |
PdmDevicePixelRatioScaled | |
PdmDpiX | |
PdmDpiY | |
PdmHeight | |
PdmHeightMM | |
PdmNumColors | |
PdmPhysicalDpiX | |
PdmPhysicalDpiY | |
PdmWidth | |
PdmWidthMM | |
Detailed Description
The Ekos scheduler is a simple scheduler class to orchestrate automated multi object observation jobs.
- Version
- 1.2
Definition at line 49 of file scheduler.h.
Member Enumeration Documentation
◆ SchedulerColumns
Columns, in the same order as UI.
Definition at line 60 of file scheduler.h.
Constructor & Destructor Documentation
◆ Scheduler() [1/2]
Ekos::Scheduler::Scheduler | ( | ) |
Constructor, the starndard scheduler constructor.
Definition at line 231 of file scheduler.cpp.
◆ Scheduler() [2/2]
Ekos::Scheduler::Scheduler | ( | const QString | path, |
const QString | interface, | ||
const QString & | ekosPathStr, | ||
const QString & | ekosInterfaceStr | ||
) |
DebugConstructor, a constructor used in testing with a mock ekos.
Definition at line 237 of file scheduler.cpp.
Member Function Documentation
◆ addJob()
void Ekos::Scheduler::addJob | ( | ) |
addJob Add a new job from form values
Definition at line 971 of file scheduler.cpp.
◆ appendEkosScheduleList
|
protectedslot |
appendEkosScheduleList Append the contents of an ESL file to the queue.
- Parameters
-
fileURL File URL to load contents from.
- Returns
- True if contents were loaded successfully, else false.
Definition at line 2625 of file scheduler.cpp.
◆ checkInterfaceReady
|
protectedslot |
checkInterfaceReady Sometimes syncProperties() is not sufficient since the ready signal could have fired already and cannot be relied on to know once a module interface is ready.
Therefore, we explicitly check if the module interface is ready.
- Parameters
-
iface interface to test for readiness.
Definition at line 4408 of file scheduler.cpp.
◆ checkJobStage
|
protectedslot |
checkJobStage Check the progress of the job states and make DBUS call to start the next stage until the job is complete.
Definition at line 2221 of file scheduler.cpp.
◆ checkStatus
|
protectedslot |
checkJobStatus Check the overall state of the scheduler, Ekos, and INDI.
When all is OK, it calls evaluateJobs() when no job is current or executeJob() if a job is selected.
- Returns
- False if this function needs to be called again later, true if situation is stable and operations may continue.
Definition at line 2095 of file scheduler.cpp.
◆ checkTwilightWarning
|
protectedslot |
displayTwilightWarning Display twilight warning to user if it is unchecked.
Definition at line 4027 of file scheduler.cpp.
◆ clickQueueTable
|
protectedslot |
jobSelectionChanged Update UI state when the job list is clicked once.
Definition at line 1397 of file scheduler.cpp.
◆ createJobSequence()
bool Ekos::Scheduler::createJobSequence | ( | XMLEle * | root, |
const QString & | prefix, | ||
const QString & | outputDir | ||
) |
createJobSequence Creates a job sequence for the mosaic tool given the prefix and output dir.
The currently selected sequence file is modified and a new version given the supplied parameters are saved to the output directory
- Parameters
-
prefix Prefix to set for the job sequence outputDir Output dir to set for the job sequence
- Returns
- True if new file is saved, false otherwise
Definition at line 3967 of file scheduler.cpp.
◆ estimateJobTime()
|
static |
estimateJobTime Estimates the time the job takes to complete based on the sequence file and what modules to utilize during the observation run.
- Parameters
-
job target job capturedFramesCount a map of what's been captured already scheduler instance of the scheduler used for logging. Can be nullptr.
- Returns
- Estimated time in seconds.
Definition at line 3517 of file scheduler.cpp.
◆ findNextJob
|
protectedslot |
findNextJob Check if the job met the completion criteria, and if it did, then it search for next job candidate.
If no jobs are found, it starts the shutdown stage.
Definition at line 2984 of file scheduler.cpp.
◆ getErrorHandlingStrategy()
ErrorHandlingStrategy Ekos::Scheduler::getErrorHandlingStrategy | ( | ) |
retrieve the error handling strategy from the UI
Definition at line 3889 of file scheduler.cpp.
◆ getNextAction()
void Ekos::Scheduler::getNextAction | ( | ) |
getNextAction Checking for the next appropriate action regarding the current state of the scheduler and execute it
Definition at line 2433 of file scheduler.cpp.
◆ importMosaic()
bool Ekos::Scheduler::importMosaic | ( | const QJsonObject & | payload | ) |
importMosaic Import mosaic into planner and generate jobs for the scheduler.
- Parameters
-
payload metadata for the mosaic information.
- Note
- Only Telescopius.com mosaic format is now supported.
Definition at line 5134 of file scheduler.cpp.
◆ load
|
protectedslot |
load Open a file dialog to select an ESL file, and load its contents.
- Parameters
-
clearQueue Clear the queue before loading, or append ESL contents to queue. filename If not empty, this file will be used instead of poping up a dialog.
Definition at line 2577 of file scheduler.cpp.
◆ loadJob
|
protectedslot |
editJob Edit an observation job
- Parameters
-
i index model in queue table
Definition at line 1337 of file scheduler.cpp.
◆ loadScheduler()
bool Ekos::Scheduler::loadScheduler | ( | const QString & | fileURL | ) |
DBUS interface function.
Loads the Ekos Scheduler List (.esl) file.
- Parameters
-
fileURL path to a file
- Returns
- true if loading file is successful, false otherwise.
Definition at line 2619 of file scheduler.cpp.
◆ loadSequenceQueue()
|
static |
loadSequenceQueue Loads what's necessary to estimate job completion time from a capture sequence queue file
- Parameters
-
fileURL the filename schedJob the SchedulerJob is modified according to the contents of the sequence queue jobs the returned values read from the file hasAutoFocus a return value indicating whether autofocus can be triggered by the sequence. scheduler instance of the scheduler used for logging. Can be nullptr.
- Returns
- Estimated time in seconds.
Definition at line 4053 of file scheduler.cpp.
◆ moveJobDown
|
protectedslot |
moveJobDown Move the selected job down in the list.
Definition at line 1502 of file scheduler.cpp.
◆ moveJobUp
|
protectedslot |
moveJobUp Move the selected job up in the job list.
Definition at line 1468 of file scheduler.cpp.
◆ queueTableSelectionChanged
|
protectedslot |
Update scheduler parameters to the currently selected scheduler job.
- Parameters
-
current table position previous table position
Definition at line 1376 of file scheduler.cpp.
◆ registerNewDevice
|
protectedslot |
registerNewDevice register interfaces associated with devices
- Parameters
-
name Device name interface Device driver interface
Definition at line 4218 of file scheduler.cpp.
◆ registerNewModule
|
protectedslot |
registerNewModule Register an Ekos module as it arrives via DBus and create the appropriate DBus interface to communicate with it.
- Parameters
-
name of module
Definition at line 4279 of file scheduler.cpp.
◆ removeAllJobs()
void Ekos::Scheduler::removeAllJobs | ( | ) |
◆ removeJob()
void Ekos::Scheduler::removeJob | ( | ) |
Remove a job from current table row.
- Parameters
-
index
Definition at line 1587 of file scheduler.cpp.
◆ removeOneJob()
void Ekos::Scheduler::removeOneJob | ( | int | index | ) |
Remove a job by selecting a table row.
- Parameters
-
index
Definition at line 1637 of file scheduler.cpp.
◆ reorderJobs
|
protectedslot |
reorderJobs Change the order of jobs in the UI based on a subset of its jobs.
Definition at line 1439 of file scheduler.cpp.
◆ resetAllJobs()
void Ekos::Scheduler::resetAllJobs | ( | ) |
◆ resumeCheckStatus
|
protectedslot |
resumeCheckStatus If the scheduler primary loop was suspended due to weather or sleep event, resume it again.
Definition at line 3882 of file scheduler.cpp.
◆ saveJob()
void Ekos::Scheduler::saveJob | ( | ) |
addToQueue Construct a SchedulerJob and add it to the queue or save job settings from current form values.
jobUnderEdit determines whether to add or edit
Definition at line 989 of file scheduler.cpp.
◆ saveScheduler()
bool Ekos::Scheduler::saveScheduler | ( | const QUrl & | fileURL | ) |
saveScheduler Save scheduler jobs to a file
- Parameters
-
path path of a file
- Returns
- true on success, false on failure.
Definition at line 5195 of file scheduler.cpp.
◆ selectFITS
|
protectedslot |
Selects FITS file for solving.
Definition at line 809 of file scheduler.cpp.
◆ selectObject
|
protectedslot |
select object from KStars's find dialog.
Definition at line 775 of file scheduler.cpp.
◆ selectSequence
|
protectedslot |
Selects sequence queue.
Definition at line 932 of file scheduler.cpp.
◆ selectShutdownScript
|
protectedslot |
Selects sequence queue.
Definition at line 956 of file scheduler.cpp.
◆ selectStartupScript
|
protectedslot |
Selects sequence queue.
Definition at line 941 of file scheduler.cpp.
◆ setCaptureComplete
|
protectedslot |
setCaptureComplete Handle one sequence image completion.
This is used now only to run alignment check to ensure it does not deviation from current scheduler job target.
- Parameters
-
metadata Metadata for image including filename, exposure, filter, hfr..etc.
Definition at line 4741 of file scheduler.cpp.
◆ setDirty()
|
protected |
Marks the currently selected SchedulerJob as modified change.
This triggers job re-evaluation. Next time save button is invoked, the complete content is written to disk.
Definition at line 3285 of file scheduler.cpp.
◆ setErrorHandlingStrategy()
void Ekos::Scheduler::setErrorHandlingStrategy | ( | ErrorHandlingStrategy | strategy | ) |
select the error handling strategy (no restart, restart after all terminated, restart immediately)
Definition at line 3900 of file scheduler.cpp.
◆ setJobAddApply
|
protectedslot |
setJobAddApply Set first button state to add new job or apply changes.
Definition at line 1402 of file scheduler.cpp.
◆ setJobManipulation
|
protectedslot |
setJobManipulation Enable or disable job manipulation buttons.
Definition at line 1420 of file scheduler.cpp.
◆ setJobStatusCells()
|
protected |
Associate job table cells on a row to the corresponding SchedulerJob.
- Parameters
-
row is an integer indexing the row to associate cells from, and also the index of the job in the job list..
Definition at line 1542 of file scheduler.cpp.
◆ setSequence()
void Ekos::Scheduler::setSequence | ( | const QString & | sequenceFileURL | ) |
DBUS interface function.
Set the file URL pointing to the capture sequence file
- Parameters
-
sequenceFileURL URL of the capture sequence file
Definition at line 910 of file scheduler.cpp.
◆ shouldSchedulerSleep
|
protectedslot |
shouldSchedulerSleep Check if the scheduler needs to sleep until the job is ready
- Parameters
-
currentJob Job to check
- Returns
- True if we set the scheduler to sleep mode. False, if not required and we need to execute now
Definition at line 4661 of file scheduler.cpp.
◆ solverDone
|
protectedslot |
solverDone Process solver solution after it is done.
- Parameters
-
timedOut True if the process timed out. success True if successful, false otherwise. solution The solver solution if successful. elapsedSeconds How many seconds elapsed to solve the image.
Definition at line 4793 of file scheduler.cpp.
◆ sortJobsPerAltitude()
void Ekos::Scheduler::sortJobsPerAltitude | ( | ) |
◆ start()
void Ekos::Scheduler::start | ( | ) |
DBUS interface function.
Start the scheduler main loop and evaluate jobs and execute them accordingly.
Definition at line 147 of file scheduler.cpp.
◆ startCapture()
void Ekos::Scheduler::startCapture | ( | bool | restart = false | ) |
startCapture The current job file name is solved to an url which is fed to ekos.
We then start the capture process
- Parameters
-
restart Set to true if the goal to restart an existing sequence. The only difference is that when a sequence is restarted, sequence file is not loaded from disk again since that results in erasing all the history of the capture process.
◆ startJobEvaluation
|
protectedslot |
startJobEvaluation Start job evaluation only without starting the scheduler process itself.
Display the result to the user.
Definition at line 3826 of file scheduler.cpp.
◆ stop()
void Ekos::Scheduler::stop | ( | ) |
◆ stopCurrentJobAction
|
protectedslot |
stopCurrentJobAction Stop whatever action taking place in the current job (eg.
capture, guiding...etc).
Definition at line 2531 of file scheduler.cpp.
◆ syncGUIToGeneralSettings
|
protectedslot |
syncGUIToGeneralSettings set all UI fields that are not job specific
Definition at line 1295 of file scheduler.cpp.
◆ syncGUIToJob
|
protectedslot |
set all GUI fields to the values of the given scheduler job
Definition at line 1204 of file scheduler.cpp.
◆ syncProperties
|
protectedslot |
syncProperties Sync startup properties from the various device to enable/disable features in the scheduler like the ability to park/unpark..etc
Definition at line 4336 of file scheduler.cpp.
◆ updateNightTime
|
protectedslot |
updateNightTime update the Twilight restriction with the argument job properties.
- Parameters
-
job SchedulerJob for which to display the next dawn and dusk, or the job currently selected if null, or today's next dawn and dusk if no job is selected.
Definition at line 1321 of file scheduler.cpp.
◆ updateTable()
void Ekos::Scheduler::updateTable | ( | ) |
Update table cells for all jobs.
For framing assistant
Definition at line 1536 of file scheduler.cpp.
◆ wakeUpScheduler
|
protectedslot |
checkWeather Check weather status and act accordingly depending on the current status of the scheduler and running jobs.
wakeUpScheduler Wake up scheduler from sleep state
Definition at line 1982 of file scheduler.cpp.
◆ watchJobChanges()
|
protected |
Enables signal watch on SchedulerJob form values in order to apply changes to current job.
- Parameters
-
enable is the toggle flag, true to watch for changes, false to ignore them.
Definition at line 601 of file scheduler.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2023 The KDE developers.
Generated on Fri Dec 1 2023 04:06:04 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.