Stellarium 0.14.3
|
Main class of the Solar System Editor plug-in. More...
#include <SolarSystemEditor.hpp>
Public Types | |
enum | UpdateFlag { UpdateNameAndNumber = 0x01, UpdateType = 0x02, UpdateOrbitalElements = 0x04, UpdateMagnitudeParameters = 0x08 } |
Flags to control the updateSolarSystemConfigurationFile() function. More... | |
Public Slots | |
void | resetSolarSystemToDefault () |
Resets the Solar System configuration file and reloads the Solar System. More... | |
Signals | |
void | solarSystemChanged () |
Public Member Functions | |
virtual void | init () |
called when the plug-in is loaded. More... | |
virtual void | deinit () |
called before the plug-in is un-loaded. More... | |
virtual void | update (double deltaTime) |
virtual void | draw (StelCore *core) |
draws on the view port. More... | |
virtual double | getCallOrder (StelModuleActionName actionName) const |
virtual bool | configureGui (bool show) |
called when the "configure" button in the "Plugins" tab is pressed More... | |
SsoElements | readMpcOneLineCometElements (QString oneLineElements) |
Reads a single comet's orbital elements from a string. More... | |
SsoElements | readMpcOneLineMinorPlanetElements (QString oneLineElements) |
Reads a single minor planet's orbital elements from a string. More... | |
SsoElements | readXEphemOneLineElements (QString oneLineElements) |
Reads a single object's orbital elements from a string. More... | |
QList< SsoElements > | readMpcOneLineCometElementsFromFile (QString filePath) |
Reads a list of comet orbital elements from a file. More... | |
QList< SsoElements > | readMpcOneLineMinorPlanetElementsFromFile (QString filePath) |
Reads a list of minor planet orbital elements from a file. More... | |
QList< SsoElements > | readXEphemOneLineElementsFromFile (QString filePath) |
Reads a list of Solar System object orbital elements from a file. More... | |
bool | appendToSolarSystemConfigurationFile (SsoElements object) |
Adds a new entry at the end of the user solar system configuration file. More... | |
bool | appendToSolarSystemConfigurationFile (QList< SsoElements >) |
Adds new entries at the end of the user solar system configuration file. More... | |
Q_DECLARE_FLAGS (UpdateFlags, UpdateFlag) bool updateSolarSystemConfigurationFile(QList< SsoElements > objects | |
Updates entries in the user solar system configuration file. More... | |
QHash< QString, QString > | getDefaultSsoIdentifiers () |
Returns the names of the objects listed in the default ssystem.ini. More... | |
QHash< QString, QString > | listAllLoadedSsoIdentifiers () |
Lists the objects listed in the current user ssystem.ini. More... | |
bool | removeSsoWithName (QString name) |
Removes an object from the user Solar System configuration file. More... | |
bool | copySolarSystemConfigurationFileTo (QString filePath) |
bool | replaceSolarSystemConfigurationFileWith (QString filePath) |
QString | getCustomSolarSystemFilePath () const |
returns the path More... | |
Public Attributes | |
UpdateFlags | flags |
Main class of the Solar System Editor plug-in.
Solar System bodies are identified by their names in Stellarium, but entries in the configuration file are identified by their group (section) names. This makes more difficult the detection of duplicates.
Definition at line 59 of file SolarSystemEditor.hpp.
Flags to control the updateSolarSystemConfigurationFile() function.
Definition at line 181 of file SolarSystemEditor.hpp.
bool SolarSystemEditor::appendToSolarSystemConfigurationFile | ( | SsoElements | object | ) |
Adds a new entry at the end of the user solar system configuration file.
This function writes directly to the file. See the note on why QSettings was not used in the description of appendToSolarSystemConfigurationFile(QList<SsoElements>) Duplicates are removed: If any section in the file matches the "section_name" value of the inserted entry, it is removed.
bool SolarSystemEditor::appendToSolarSystemConfigurationFile | ( | QList< SsoElements > | ) |
Adds new entries at the end of the user solar system configuration file.
This function writes directly to the file. QSettings was not used, as:
Duplicates are removed: If any section in the file matches the "section_name" value of a new entry, it is removed. Invalid entries in the list (that don't contain a value for "section_name" or it is an empty string) are skipped and the processing continues from the next entry.
|
virtual |
called when the "configure" button in the "Plugins" tab is pressed
|
virtual |
called before the plug-in is un-loaded.
Useful for stopping processes, unloading textures, etc.
|
virtual |
draws on the view port.
Dialog windows don't need explicit drawing, it's done automatically. If a plug-in draws on the screen, it should be able to respect the night vision mode.
|
inline |
returns the path
Definition at line 218 of file SolarSystemEditor.hpp.
|
inline |
Returns the names of the objects listed in the default ssystem.ini.
The default solar system configuration file is assumed to be the one in the installation directory.
Definition at line 198 of file SolarSystemEditor.hpp.
|
virtual |
QHash<QString,QString> SolarSystemEditor::listAllLoadedSsoIdentifiers | ( | ) |
Lists the objects listed in the current user ssystem.ini.
As the name suggests, the list is compiled when the function is run.
SolarSystemEditor::Q_DECLARE_FLAGS | ( | UpdateFlags | , |
UpdateFlag | |||
) |
Updates entries in the user solar system configuration file.
objects | a list of data for already existing objects (non-existing ones are skipped); |
flags | flags controlling what is being updated. See UpdateFlag. |
SsoElements SolarSystemEditor::readMpcOneLineCometElements | ( | QString | oneLineElements | ) |
Reads a single comet's orbital elements from a string.
This function converts a line of comet orbital elements in MPC format to a hash in Stellarium's ssystem.ini format. The MPC's one-line orbital elements format for comets is described on their website: http://www.minorplanetcenter.org/iau/info/CometOrbitFormat.html
QList<SsoElements> SolarSystemEditor::readMpcOneLineCometElementsFromFile | ( | QString | filePath | ) |
Reads a list of comet orbital elements from a file.
This function reads a list of comet orbital elements in MPC's one-line format from a file (one comet per line) and converts it to a list of hashes in Stellarium's ssystem.ini format. Example source file is the list of observable comets on the MPC's site: http://www.minorplanetcenter.org/iau/Ephemerides/Comets/Soft00Cmt.txt readMpcOneLineCometElements() is used internally to parse each line.
SsoElements SolarSystemEditor::readMpcOneLineMinorPlanetElements | ( | QString | oneLineElements | ) |
Reads a single minor planet's orbital elements from a string.
This function converts a line of minor planet orbital elements in MPC format to a hash in Stellarium's ssystem.ini format. The MPC's one-line orbital elements format for minor planets is described on their website: http://www.minorplanetcenter.org/iau/info/MPOrbitFormat.html
QList<SsoElements> SolarSystemEditor::readMpcOneLineMinorPlanetElementsFromFile | ( | QString | filePath | ) |
Reads a list of minor planet orbital elements from a file.
This function reads a list of minor planets orbital elements in MPC's one-line format from a file (one comet per line) and converts it to a list of hashes in Stellarium's ssystem.ini format. Example source file is the list of bright asteroids on the MPC's site: http://www.minorplanetcenter.org/iau/Ephemerides/Bright/2010/Soft00Bright.txt readMpcOneLineMinorPlanetElements() is used internally to parse each line.
SsoElements SolarSystemEditor::readXEphemOneLineElements | ( | QString | oneLineElements | ) |
Reads a single object's orbital elements from a string.
This function converts a line of orbital elements in XEphem format to a hash in Stellarium's ssystem.ini format. http://www.clearskyinstitute.com/xephem/help/xephem.html#mozTocId468501 It recognises only the 'e', 'h' and 'p' types of orbits in XEphem's format (comets and minor planets). It is used in handling on-line search queries to the MPC's Minor Planet and Comet Ephemeris System, as using the MPC format causes long object names to be truncated due to the fixed width of the columns. An object's type (comet or asteroid) is determined based on its name.
QList<SsoElements> SolarSystemEditor::readXEphemOneLineElementsFromFile | ( | QString | filePath | ) |
Reads a list of Solar System object orbital elements from a file.
This function reads a list of Solar System object orbital elements in XEphem's one-line format (one object per line, comment lines starting with # are skipped) and converts it to a list of hashes in Stellarium's ssystem.ini format. XEphem's file format is described in its manual: http://www.clearskyinstitute.com/xephem/help/xephem.html#mozTocId468501 Example source file can be any of the lists of objects on the MPC site: http://www.minorplanetcenter.org/iau/Ephemerides/Comets/Soft03Cmt.txt http://www.minorplanetcenter.org/iau/Ephemerides/Bright/2010/Soft03Bright.txt readXEphemOneLineElements() is used internally to parse each line.
bool SolarSystemEditor::removeSsoWithName | ( | QString | name | ) |
Removes an object from the user Solar System configuration file.
Reloads the Solar System on successfull removal.
|
slot |
Resets the Solar System configuration file and reloads the Solar System.