Stellarium
HEAD
|
Data Structures | |
class | RemoteSync |
Main class of the RemoteSync plug-in. More... | |
Provides state synchronization for multiple Stellarium instances running in a network. See manual for detailed description.
This plugin makes use of the QLoggingCategory infrastructure. By default it is very verbose. To reduce verbosity, configure an environment variable with these entries (Note the closing semicolon!): QT_LOGGING_RULES="stel.plugin.remoteSync.debug=false; stel.plugin.remoteSync.client.debug=false; stel.plugin.remoteSync.protocol.debug=true;"
The final parts may be debug|info|warning|critical = true|false. Default=true.
class RemoteSync |
Main class of the RemoteSync plug-in.
Provides a synchronization mechanism for multiple Stellarium instances in a network. This plugin has been developed during ESA SoCiS 2015/2016.
Public Types | |
enum | SyncState { IDLE , SERVER , CLIENT , CLIENT_CONNECTING , CLIENT_CLOSING , CLIENT_WAIT_RECONNECT } |
enum | ClientBehavior { NONE , RECONNECT , QUIT } |
Defines behavior when client connection is lost/server quits. | |
Public Types inherited from StelModule | |
enum | StelModuleSelectAction { AddToSelection , ReplaceSelection , RemoveFromSelection } |
Enum used when selecting objects to define whether to add to, replace, or remove from the existing selection list. More... | |
enum | StelModuleActionName { ActionDraw , ActionUpdate , ActionHandleMouseClicks , ActionHandleMouseMoves , ActionHandleKeys } |
Define the possible action for which an order is defined. More... | |
Public Slots | |
void | setClientServerHost (const QString &clientServerHost) |
void | setClientServerPort (const int port) |
void | setServerPort (const int port) |
void | setClientSyncOptions (SyncClient::SyncOptions options) |
void | setStelPropFilter (const QStringList &stelPropFilter) |
void | setConnectionLostBehavior (const RemoteSync::ClientBehavior bh) |
void | setQuitBehavior (const RemoteSync::ClientBehavior bh) |
void | startServer () |
Starts the plugin in server mode, on the port specified by the serverPort property. More... | |
void | stopServer () |
Tries to disconnect all current clients and stops the server, returning to the IDLE state. More... | |
void | connectToServer () |
Connects the plugin to the server specified by the clientServerHost and clientServerPort properties. More... | |
void | disconnectFromServer () |
Disconnects from the server and returns to the IDLE state. More... | |
void | loadSettings () |
Load the plug-in's settings from the configuration file. More... | |
void | saveSettings () |
Save the plug-in's settings to the configuration file. More... | |
void | restoreDefaultSettings () |
Restore the plug-in's settings to the default state. More... | |
Signals | |
void | errorOccurred (const QString &errorString) |
void | clientServerHostChanged (const QString &clientServerHost) |
void | clientServerPortChanged (const int port) |
void | serverPortChanged (const int port) |
void | clientSyncOptionsChanged (const SyncClient::SyncOptions options) |
void | stelPropFilterChanged (const QStringList &stelPropFilter) |
void | connectionLostBehaviorChanged (const RemoteSync::ClientBehavior bh) |
void | quitBehaviorChanged (const RemoteSync::ClientBehavior bh) |
void | stateChanged (RemoteSync::SyncState state) |
Public Member Functions | |
void | init () override |
Initialize itself. More... | |
void | update (double deltaTime) override |
Update the module with respect to the time. More... | |
double | getCallOrder (StelModuleActionName actionName) const override |
Return the value defining the order of call for the given action For example if stars.callOrder[ActionDraw] == 10 and constellation.callOrder[ActionDraw] == 11, the stars module will be drawn before the constellations. More... | |
bool | configureGui (bool show=true) override |
Detect or show the configuration GUI elements for the module. More... | |
QString | getClientServerHost () const |
quint16 | getClientServerPort () const |
quint16 | getServerPort () const |
SyncClient::SyncOptions | getClientSyncOptions () const |
QStringList | getStelPropFilter () const |
ClientBehavior | getConnectionLostBehavior () const |
ClientBehavior | getQuitBehavior () const |
SyncState | getState () const |
Public Member Functions inherited from StelModule | |
StelModule () | |
Constructor. Every derived class MUST call setObjectName(className) in its constructor. | |
virtual void | deinit () |
Called before the module will be deleted, and before the OpenGL context is suppressed. More... | |
virtual QSettings * | getSettings () |
Return module-specific settings. More... | |
virtual void | draw (StelCore *core) |
Execute all the drawing functions for this module. More... | |
virtual QString | getModuleVersion () const |
Get the version of the module, default is stellarium main version. | |
virtual QString | getAuthorName () const |
Get the name of the module author. | |
virtual QString | getAuthorEmail () const |
Get the email address of the module author. | |
virtual void | handleMouseClicks (class QMouseEvent *) |
Handle mouse clicks. More... | |
virtual void | handleMouseWheel (class QWheelEvent *) |
Handle mouse wheel. More... | |
virtual bool | handleMouseMoves (int x, int y, Qt::MouseButtons b) |
Handle mouse moves. More... | |
virtual void | handleKeys (class QKeyEvent *e) |
Handle key events. More... | |
virtual bool | handlePinch (qreal scale, bool started) |
Handle pinch gesture events. More... | |
Static Public Member Functions | |
static bool | isPropertyBlacklisted (const QString &name) |
Very few propertries cannot be synchronized for technical reasons. | |
Additional Inherited Members | |
Protected Member Functions inherited from StelModule | |
class StelAction * | addAction (const QString &id, const QString &groupId, const QString &text, QObject *target, const char *slot, const QString &shortcut="", const QString &altShortcut="") |
convenience methods to add an action (call to slot) to the StelActionMgr object. More... | |
class StelAction * | addAction (const QString &id, const QString &groupId, const QString &text, const char *slot, const QString &shortcut="", const QString &altShortcut="") |
convenience methods to add an action (call to own slot) to the StelActionMgr object. More... | |
StelAction * | addAction (const QString &id, const QString &groupId, const QString &text, QObject *contextObject, std::function< void()> lambda, const QString &shortcut="", const QString &altShortcut="") |
convenience methods to add an action (call to Lambda functor) to the StelActionMgr object. More... | |
|
overridevirtual |
Detect or show the configuration GUI elements for the module.
This is to be used with plugins to display a configuration dialog from the plugin list window.
show | if true, make the configuration GUI visible. If false, hide the config GUI if there is one. |
Reimplemented from StelModule.
|
slot |
Connects the plugin to the server specified by the clientServerHost and clientServerPort properties.
If currently in a state other than IDLE or CLIENT_WAIT_RECONNECT, this call has no effect.
|
slot |
Disconnects from the server and returns to the IDLE state.
Only has an effect in the CLIENT state.
|
overridevirtual |
Return the value defining the order of call for the given action For example if stars.callOrder[ActionDraw] == 10 and constellation.callOrder[ActionDraw] == 11, the stars module will be drawn before the constellations.
actionName | the name of the action for which we want the call order |
Reimplemented from StelModule.
|
overridevirtual |
Initialize itself.
If the initialization takes significant time, the progress should be displayed on the loading bar.
Implements StelModule.
|
slot |
Load the plug-in's settings from the configuration file.
Settings are kept in the "RemoteSync" section in Stellarium's configuration file. If no such section exists, it will load default values.
|
slot |
Restore the plug-in's settings to the default state.
Replace the plug-in's settings in Stellarium's configuration file with the default values and re-load them. Uses internally loadSettings() and saveSettings().
|
slot |
Save the plug-in's settings to the configuration file.
|
slot |
Starts the plugin in server mode, on the port specified by the serverPort property.
If currently in a state other than IDLE, this call has no effect.
|
slot |
Tries to disconnect all current clients and stops the server, returning to the IDLE state.
Only has an effect in the SERVER state.
|
overridevirtual |
Update the module with respect to the time.
deltaTime | the time increment in second since last call. |
Reimplemented from StelModule.