History

Merge branch master into protocol_changes

HifiExperiments committed 2 years ago

Commit ee705d21 parent f9e729b370 files · +11827 −6045Browse files

Showing the changes to libraries/script-engine/src/ScriptManagerScriptingInterface.h (1 of 370 files). Show all

Unified · Split

libraries/script-engine/src/ScriptManagerScriptingInterface.h+42−2
@@ -512,7 +512,7 @@ public: · 511 unmodified lines
512512
513513 /*@jsdoc
514514 * Start collecting object statistics that can later be reported with Script.dumpHeapObjectStatistics().
515− * @function Script.dumpHeapObjectStatistics
515+ * @function Script.startCollectingObjectStatistics
516516 */
517517 Q_INVOKABLE void startCollectingObjectStatistics();
518518
@@ -557,7 +557,47 @@ public: · 38 unmodified lines
557557 */
558558 Q_INVOKABLE void stopProfilingAndSave();
559559
560−signals:
560+ /*@jsdoc
561+ * After calling this function current script engine will start receiving server-side entity script messages
562+ * through signals such as errorEntityMessage. This function can be invoked both from client-side entity scripts
563+ * and from interface scripts.
564+ * @function Script.subscribeToServerEntityScriptMessages
565+ * @param {Uuid=} entityID - The ID of the entity that requests entity server script messages. Only needs to be specified
566+ * for entity scripts, and must not be specified for other types of scripts.
567+ */
568+
569+ Q_INVOKABLE void requestServerEntityScriptMessages();
570+ Q_INVOKABLE void requestServerEntityScriptMessages(const QUuid& entityID);
571+
572+ /*@jsdoc
573+ * Calling this function signalizes that current script doesn't require stop receiving server-side entity script messages
574+ * through signals such as errorEntityMessage. This function can be invoked both from client-side entity scripts
575+ * and from interface scripts.
576+ * @function Script.unsubscribeFromServerEntityScriptMessages
577+ * @param {Uuid=} entityID - The ID of the entity that requests entity server script messages. Only needs to be specified
578+ * for entity scripts, and must not be specified for other types of scripts.
579+ */
580+
581+ Q_INVOKABLE void removeServerEntityScriptMessagesRequest();
582+ Q_INVOKABLE void removeServerEntityScriptMessagesRequest(const QUuid& entityID);
583+
584+ /*@jsdoc
585+ * This decodes Base64 string and returns contents as ArrayBuffer.
586+ * @function Script.atob
587+ * @param {String} base64 - String with Base64-encoded binary data.
588+ * @returns {ArrayBuffer} Decoded binary data.
589+ */
590+ Q_INVOKABLE QByteArray atob(const QString &base64);
591+
592+ /*@jsdoc
593+ * This encodes ArrayBuffer and returns Base64-encoded string.
594+ * @function Script.btoa
595+ * @param {ArrayBuffer} binary - Data to be encoded.
596+ * @returns {String} String with Base64-encoded binary data.
597+ */
598+ Q_INVOKABLE QString btoa(const QByteArray &binary);
599+
600+ signals:
561601
562602 /*@jsdoc
563603 * @function Script.scriptLoaded