User:Daggerstab/TelescopeControl rewrite

From Stellarium Wiki
Jump to: navigation, search
DRAFT/BRAINSTORMING

Short-term

Tasks and steps necessary for completing the ongoing rewrite of the Telescope Control plug-in:

  • doing away with "slots". Telescope clients/reticles should be identified with a string.
    • the implementation of the new telescopes.json format should be finished (at the moment, it still uses slots).
    • telescope numbers/shortcuts should be another telescope property
  • INDI client class(es?)
    • INCOMING: should emit signals when a property is defined/updated/deleted
    • OUTGOING: should provide a mechanism for setting property values by the client (unclear paradigm at the moment)
    • should support multiple named devices in the same INDI stream (connection)
    • should support multiple INDI streams
    • should support acting as a server/calling indiserver (long term target?)
    • should support all kinds of INDI properties, including BLOBs
      • in the beginning, BLOBs can just be saved with an appropriate filename/timestamp
    • should be able to provide "device snooping" (redirecting the output from one device to another)
    • should be able to provide logging
  • INDI telescope client class
    • should be based on INDI standard properties
    • should be able to connect/disconnect
    • should be able to detect whether J2000 or JNow coordinates are used
    • all functions other than the basic "go to" and "receive current position" should be handled by the INDI control panel (see below)
  • GUI: INDI device selector/editor (a window or a tab allowing the selection of installed INDI devices/drivers)
    • should be able to detect if the INDI package/drivers is installed
    • should read the XML list of drivers and display a device selector (a QComboBox listing only telescopes as a beginning)
    • should provide a way of changing the directory where it looks for the INDI drivers/indiserver
  • GUI: INDI control panel - a dynamically generated window.
    • uses tabs within tabs - top level for devices, another level within devices for groups of properties
    • receives signals from the INDI client
    • (I'm still not sure what mechanism exactly to use for setting new values of the properties)

Long term

  • porting of some basic INDI drivers to Windows
  • built-in FITS viewer (requires a dependency on cfitsio)

Information

Personal tools
Namespaces
Variants
Actions
in this wiki
other languages
Toolbox