- * A static class containing global data.
- * This is used in both core and GUI modules. Where appropriate, accessors are thread-safe
- * to account for that fact.
- */
-class Quassel : public QObject {
+ * This class is mostly a globally synchronized data store, meant for storing systemwide settings such
+ * as identities or network lists. This class is a singleton, but not static as we'd like to use signals and
+ * slots with it.
+ * The global object is used in both Core and GUI clients. Storing and retrieving data is thread-safe.
+ * \note While updated data is propagated to all the remote parts of Quassel quite quickly, the synchronization
+ * protocol is in no way designed to guarantee strict consistency at all times. In other words, it may
+ * well happen that different instances of global data differ from one another for a little while until
+ * all update messages have been processed. You should never rely on all global data stores being consistent.
+*/
+class Global : public QObject {