From 9040e45be7d8f72d60c8dc9af78b7ff7f0d3d168 Mon Sep 17 00:00:00 2001 From: David Rowe Date: Tue, 15 May 2018 11:43:49 +1200 Subject: [PATCH] RayPick API JSDoc stubs --- .../src/raypick/RayPickScriptingInterface.h | 157 ++++++++++++++++++ 1 file changed, 157 insertions(+) diff --git a/interface/src/raypick/RayPickScriptingInterface.h b/interface/src/raypick/RayPickScriptingInterface.h index 3795f191b3..ce692e2003 100644 --- a/interface/src/raypick/RayPickScriptingInterface.h +++ b/interface/src/raypick/RayPickScriptingInterface.h @@ -18,6 +18,30 @@ #include "PickScriptingInterface.h" +/**jsdoc + * Synonym for {@link Picks} as used for ray picks. + * + * @namespace RayPick + * + * @hifi-interface + * @hifi-client-entity + * + * @property {number} PICK_NOTHING Read-only. + * @property {number} PICK_ENTITIES Read-only. + * @property {number} PICK_OVERLAYS Read-only. + * @property {number} PICK_AVATARS Read-only. + * @property {number} PICK_HUD Read-only. + * @property {number} PICK_COARSE Read-only. + * @property {number} PICK_INCLUDE_INVISIBLE Read-only. + * @property {number} PICK_INCLUDE_NONCOLLIDABLE Read-only. + * @property {number} PICK_ALL_INTERSECTIONS Read-only. + * @property {number} INTERSECTED_NONE Read-only. + * @property {number} INTERSECTED_ENTITY Read-only. + * @property {number} INTERSECTED_OVERLAY Read-only. + * @property {number} INTERSECTED_AVATAR Read-only. + * @property {number} INTERSECTED_HUD Read-only. + */ + class RayPickScriptingInterface : public QObject, public Dependency { Q_OBJECT Q_PROPERTY(unsigned int PICK_NOTHING READ PICK_NOTHING CONSTANT) @@ -37,34 +61,167 @@ class RayPickScriptingInterface : public QObject, public Dependency { SINGLETON_DEPENDENCY public: + + /**jsdoc + * @function RayPick.createRayPick + * @param {Picks.RayPickProperties} + * @returns {number} + */ Q_INVOKABLE unsigned int createRayPick(const QVariant& properties); + + /**jsdoc + * @function RayPick.enableRayPick + * @param {number} id + */ Q_INVOKABLE void enableRayPick(unsigned int uid); + + /**jsdoc + * @function RayPick.disableRayPick + * @param {number} id + */ Q_INVOKABLE void disableRayPick(unsigned int uid); + + /**jsdoc + * @function RayPick.removeRayPick + * @param {number} id + */ Q_INVOKABLE void removeRayPick(unsigned int uid); + + /**jsdoc + * @function RayPick.getPrevRayPickResult + * @param {number} id + * @returns {Picks.RayPickResult} + */ Q_INVOKABLE QVariantMap getPrevRayPickResult(unsigned int uid); + + /**jsdoc + * @function RayPick.setPrecisionPicking + * @param {number} id + * @param {boolean} precisionPicking + */ Q_INVOKABLE void setPrecisionPicking(unsigned int uid, bool precisionPicking); + + /**jsdoc + * @function RayPick.setIgnoreItems + * @param {number} id + * @param {Uuid[]) ignoreEntities + */ Q_INVOKABLE void setIgnoreItems(unsigned int uid, const QScriptValue& ignoreEntities); + + /**jsdoc + * @function RayPick.setIncludeItems + * @param {number} id + * @param {Uuid[]) includeEntities + */ Q_INVOKABLE void setIncludeItems(unsigned int uid, const QScriptValue& includeEntities); + + /**jsdoc + * @function RayPick.isLeftHand + * @param {number} id + * @returns {boolean} + */ Q_INVOKABLE bool isLeftHand(unsigned int uid); + + /**jsdoc + * @function RayPick.isRightHand + * @param {number} id + * @returns {boolean} + */ Q_INVOKABLE bool isRightHand(unsigned int uid); + + /**jsdoc + * @function RayPick.isMouse + * @param {number} id + * @returns {boolean} + */ Q_INVOKABLE bool isMouse(unsigned int uid); public slots: + + /**jsdoc + * @function RayPick.PICK_NOTHING + * @returns {number} + */ static unsigned int PICK_NOTHING() { return PickScriptingInterface::PICK_NOTHING(); } + + /**jsdoc + * @function RayPick.PICK_ENTITIES + * @returns {number} + */ static unsigned int PICK_ENTITIES() { return PickScriptingInterface::PICK_ENTITIES(); } + + /**jsdoc + * @function RayPick.PICK_OVERLAYS + * @returns {number} + */ static unsigned int PICK_OVERLAYS() { return PickScriptingInterface::PICK_OVERLAYS(); } + + /**jsdoc + * @function RayPick.PICK_AVATARS + * @returns {number} + */ static unsigned int PICK_AVATARS() { return PickScriptingInterface::PICK_AVATARS(); } + + /**jsdoc + * @function RayPick.PICK_HUD + * @returns {number} + */ static unsigned int PICK_HUD() { return PickScriptingInterface::PICK_HUD(); } + + /**jsdoc + * @function RayPick.PICK_COARSE + * @returns {number} + */ static unsigned int PICK_COARSE() { return PickScriptingInterface::PICK_COARSE(); } + + /**jsdoc + * @function RayPick.PICK_INCLUDE_INVISIBLE + * @returns {number} + */ static unsigned int PICK_INCLUDE_INVISIBLE() { return PickScriptingInterface::PICK_INCLUDE_INVISIBLE(); } + + /**jsdoc + * @function RayPick.PICK_INCLUDE_NONCOLLIDABLE + * @returns {number} + */ static unsigned int PICK_INCLUDE_NONCOLLIDABLE() { return PickScriptingInterface::PICK_INCLUDE_NONCOLLIDABLE(); } + + /**jsdoc + * @function RayPick.PICK_ALL_INTERSECTIONS + * @returns {number} + */ static unsigned int PICK_ALL_INTERSECTIONS() { return PickScriptingInterface::PICK_ALL_INTERSECTIONS(); } + + /**jsdoc + * @function RayPick.INTERSECTED_NONE + * @returns {number} + */ static unsigned int INTERSECTED_NONE() { return PickScriptingInterface::INTERSECTED_NONE(); } + + /**jsdoc + * @function RayPick.INTERSECTED_ENTITY + * @returns {number} + */ static unsigned int INTERSECTED_ENTITY() { return PickScriptingInterface::INTERSECTED_ENTITY(); } + + /**jsdoc + * @function RayPick.INTERSECTED_OVERLAY + * @returns {number} + */ static unsigned int INTERSECTED_OVERLAY() { return PickScriptingInterface::INTERSECTED_OVERLAY(); } + + /**jsdoc + * @function RayPick.INTERSECTED_AVATAR + * @returns {number} + */ static unsigned int INTERSECTED_AVATAR() { return PickScriptingInterface::INTERSECTED_AVATAR(); } + + /**jsdoc + * @function RayPick.INTERSECTED_HUD + * @returns {number} + */ static unsigned int INTERSECTED_HUD() { return PickScriptingInterface::INTERSECTED_HUD(); } };