diff options
Diffstat (limited to 'PhysX_3.4/Documentation/PhysXAPI/files/PxQueryReport_8h-source.html')
| -rw-r--r-- | PhysX_3.4/Documentation/PhysXAPI/files/PxQueryReport_8h-source.html | 248 |
1 files changed, 248 insertions, 0 deletions
diff --git a/PhysX_3.4/Documentation/PhysXAPI/files/PxQueryReport_8h-source.html b/PhysX_3.4/Documentation/PhysXAPI/files/PxQueryReport_8h-source.html new file mode 100644 index 00000000..c1a47007 --- /dev/null +++ b/PhysX_3.4/Documentation/PhysXAPI/files/PxQueryReport_8h-source.html @@ -0,0 +1,248 @@ +<html> + <head> + <title>NVIDIA(R) PhysX(R) SDK 3.4 API Reference: PxQueryReport.h Source File</title> + <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> + <LINK HREF="NVIDIA.css" REL="stylesheet" TYPE="text/css"> + </head> + + <body bgcolor="#FFFFFF"> + <div id="header"> + <hr class="first"> + <img alt="" src="images/PhysXlogo.png" align="middle"> <br> + <center> + <a class="qindex" href="main.html">Main Page</a> + <a class="qindex" href="hierarchy.html">Class Hierarchy</a> + <a class="qindex" href="annotated.html">Compound List</a> + <a class="qindex" href="functions.html">Compound Members</a> + </center> + <hr class="second"> + </div> +<!-- Generated by Doxygen 1.5.8 --> +<h1>PxQueryReport.h</h1><a href="PxQueryReport_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// This code contains NVIDIA Confidential Information and is disclosed to you</span> +<a name="l00002"></a>00002 <span class="comment">// under a form of NVIDIA software license agreement provided separately to you.</span> +<a name="l00003"></a>00003 <span class="comment">//</span> +<a name="l00004"></a>00004 <span class="comment">// Notice</span> +<a name="l00005"></a>00005 <span class="comment">// NVIDIA Corporation and its licensors retain all intellectual property and</span> +<a name="l00006"></a>00006 <span class="comment">// proprietary rights in and to this software and related documentation and</span> +<a name="l00007"></a>00007 <span class="comment">// any modifications thereto. Any use, reproduction, disclosure, or</span> +<a name="l00008"></a>00008 <span class="comment">// distribution of this software and related documentation without an express</span> +<a name="l00009"></a>00009 <span class="comment">// license agreement from NVIDIA Corporation is strictly prohibited.</span> +<a name="l00010"></a>00010 <span class="comment">//</span> +<a name="l00011"></a>00011 <span class="comment">// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES</span> +<a name="l00012"></a>00012 <span class="comment">// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO</span> +<a name="l00013"></a>00013 <span class="comment">// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,</span> +<a name="l00014"></a>00014 <span class="comment">// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.</span> +<a name="l00015"></a>00015 <span class="comment">//</span> +<a name="l00016"></a>00016 <span class="comment">// Information and code furnished is believed to be accurate and reliable.</span> +<a name="l00017"></a>00017 <span class="comment">// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such</span> +<a name="l00018"></a>00018 <span class="comment">// information or for any infringement of patents or other rights of third parties that may</span> +<a name="l00019"></a>00019 <span class="comment">// result from its use. No license is granted by implication or otherwise under any patent</span> +<a name="l00020"></a>00020 <span class="comment">// or patent rights of NVIDIA Corporation. Details are subject to change without notice.</span> +<a name="l00021"></a>00021 <span class="comment">// This code supersedes and replaces all information previously supplied.</span> +<a name="l00022"></a>00022 <span class="comment">// NVIDIA Corporation products are not authorized for use as critical</span> +<a name="l00023"></a>00023 <span class="comment">// components in life support devices or systems without express written approval of</span> +<a name="l00024"></a>00024 <span class="comment">// NVIDIA Corporation.</span> +<a name="l00025"></a>00025 <span class="comment">//</span> +<a name="l00026"></a>00026 <span class="comment">// Copyright (c) 2008-2016 NVIDIA Corporation. All rights reserved.</span> +<a name="l00027"></a>00027 <span class="comment">// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved.</span> +<a name="l00028"></a>00028 <span class="comment">// Copyright (c) 2001-2004 NovodeX AG. All rights reserved. </span> +<a name="l00029"></a>00029 +<a name="l00030"></a>00030 +<a name="l00031"></a>00031 <span class="preprocessor">#ifndef PX_PHYSICS_NX_SCENEQUERYREPORT</span> +<a name="l00032"></a>00032 <span class="preprocessor"></span><span class="preprocessor">#define PX_PHYSICS_NX_SCENEQUERYREPORT</span> +<a name="l00033"></a>00033 <span class="preprocessor"></span> +<a name="l00036"></a>00036 <span class="preprocessor">#include "<a class="code" href="PxPhysXConfig_8h.html">PxPhysXConfig.h</a>"</span> +<a name="l00037"></a>00037 <span class="preprocessor">#include "<a class="code" href="PxVec3_8h.html">foundation/PxVec3.h</a>"</span> +<a name="l00038"></a>00038 <span class="preprocessor">#include "<a class="code" href="PxFlags_8h.html">foundation/PxFlags.h</a>"</span> +<a name="l00039"></a>00039 +<a name="l00040"></a>00040 <span class="preprocessor">#if !PX_DOXYGEN</span> +<a name="l00041"></a>00041 <span class="preprocessor"></span><span class="keyword">namespace </span>physx +<a name="l00042"></a>00042 { +<a name="l00043"></a>00043 <span class="preprocessor">#endif</span> +<a name="l00044"></a>00044 <span class="preprocessor"></span> +<a name="l00045"></a>00045 <span class="keyword">class </span><a class="code" href="classPxShape.html" title="Abstract class for collision shapes.">PxShape</a>; +<a name="l00046"></a>00046 <span class="keyword">class </span><a class="code" href="classPxRigidActor.html" title="PxRigidActor represents a base class shared between dynamic and static rigid bodies...">PxRigidActor</a>; +<a name="l00047"></a>00047 +<a name="l00061"></a><a class="code" href="structPxHitFlag.html">00061</a> <span class="keyword">struct </span><a class="code" href="structPxHitFlag.html" title="Scene query and geometry query behavior flags.">PxHitFlag</a> +<a name="l00062"></a>00062 { +<a name="l00063"></a><a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b64">00063</a> <span class="keyword">enum</span> <a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b64">Enum</a> +<a name="l00064"></a>00064 { +<a name="l00065"></a><a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b6421e4769575db55be01d8f91e06c59b1a">00065</a> ePOSITION = (1<<0), +<a name="l00066"></a><a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b645972f664c2fbe85c992fb9aaba46a5cf">00066</a> eNORMAL = (1<<1), +<a name="l00067"></a><a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b648bcc72eb9965eae03f53182e7e4b79ae">00067</a> <a class="code" href="group__foundation.html#gfd8f8779793627061774cfcfa1b9fbd7">PX_DEPRECATED</a> eDISTANCE = (1<<2), +<a name="l00068"></a><a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b64ac585040db8a8a2839de7104a81a370c">00068</a> eUV = (1<<3), +<a name="l00069"></a><a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b647ec4e2f321d4fe4e3d02c4e4b532cc9b">00069</a> eASSUME_NO_INITIAL_OVERLAP = (1<<4), +<a name="l00070"></a>00070 +<a name="l00071"></a><a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b64de0c4ad4267c954d51e99905e69a399e">00071</a> eMESH_MULTIPLE = (1<<5), +<a name="l00072"></a><a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b64639d134a27861f74e3721dbd7be65bbc">00072</a> eMESH_ANY = (1<<6), +<a name="l00073"></a>00073 +<a name="l00074"></a><a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b64aff8ff06630f9388c0ff8f20b7bbd9d3">00074</a> eMESH_BOTH_SIDES = (1<<7), +<a name="l00075"></a>00075 +<a name="l00076"></a>00076 +<a name="l00077"></a><a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b64f903d9ed69a9b2d397ca289752aaeef1">00077</a> ePRECISE_SWEEP = (1<<8), +<a name="l00078"></a>00078 +<a name="l00079"></a><a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b64d01fd75af43a6dffeafafb40489ac7b9">00079</a> eMTD = (1<<9), +<a name="l00080"></a><a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b647193a2accbac7b56c15ba83461b716c8">00080</a> eFACE_INDEX = (1<<10), +<a name="l00081"></a>00081 +<a name="l00082"></a><a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b64fbdec54374d753fed4682d855aac7270">00082</a> eDEFAULT = ePOSITION|eNORMAL|eDISTANCE|eFACE_INDEX, +<a name="l00083"></a>00083 +<a name="l00085"></a><a class="code" href="structPxHitFlag.html#44c173f6ddf0522ffbd8fa3c585e6b6496f3049caa29758b18308a37e97370f1">00085</a> eMODIFIABLE_FLAGS = eMESH_MULTIPLE|eMESH_BOTH_SIDES|eASSUME_NO_INITIAL_OVERLAP|ePRECISE_SWEEP +<a name="l00086"></a>00086 }; +<a name="l00087"></a>00087 }; +<a name="l00088"></a>00088 +<a name="l00089"></a>00089 +<a name="l00095"></a>00095 <a class="code" href="group__foundation.html#ge7f303c47b02361f07922467952ea49d">PX_FLAGS_TYPEDEF</a>(<a class="code" href="structPxHitFlag.html" title="Scene query and geometry query behavior flags.">PxHitFlag</a>, <a class="code" href="namespacephysx.html#9caf1cbcda071b6d2a9c069faa99da23">PxU16</a>) +<a name="l00096"></a>00096 +<a name="l00097"></a>00097 +<a name="l00104"></a><a class="code" href="structPxActorShape.html">00104</a> struct <a class="code" href="structPxActorShape.html" title="collection of set bits defined in PxHitFlag.">PxActorShape</a> +<a name="l00105"></a>00105 { +<a name="l00106"></a><a class="code" href="structPxActorShape.html#05dd357bb0aba0bb5dd8150be3f9857e">00106</a> <a class="code" href="group__foundation.html#gcb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <a class="code" href="structPxActorShape.html#05dd357bb0aba0bb5dd8150be3f9857e">PxActorShape</a>() : actor(NULL), shape(NULL) {} +<a name="l00107"></a><a class="code" href="structPxActorShape.html#2f394ba364da63d6a087692683792de5">00107</a> <a class="code" href="group__foundation.html#gcb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <a class="code" href="structPxActorShape.html#2f394ba364da63d6a087692683792de5">PxActorShape</a>(<a class="code" href="classPxRigidActor.html" title="PxRigidActor represents a base class shared between dynamic and static rigid bodies...">PxRigidActor</a>* a, <a class="code" href="classPxShape.html" title="Abstract class for collision shapes.">PxShape</a>* s) : actor(a), shape(s) {} +<a name="l00108"></a>00108 +<a name="l00109"></a><a class="code" href="structPxActorShape.html#0d8da15967ebaee8935725195bbd509a">00109</a> <a class="code" href="classPxRigidActor.html" title="PxRigidActor represents a base class shared between dynamic and static rigid bodies...">PxRigidActor</a>* actor; +<a name="l00110"></a><a class="code" href="structPxActorShape.html#ee7fb87ffc62391b2968ce8f954416f7">00110</a> <a class="code" href="classPxShape.html" title="Abstract class for collision shapes.">PxShape</a>* shape; +<a name="l00111"></a>00111 }; +<a name="l00112"></a>00112 +<a name="l00113"></a>00113 +<a name="l00117"></a><a class="code" href="structPxQueryHit.html">00117</a> <span class="keyword">struct </span><a class="code" href="structPxQueryHit.html" title="Scene query hit information.">PxQueryHit</a> : <span class="keyword">public</span> <a class="code" href="structPxActorShape.html" title="collection of set bits defined in PxHitFlag.">PxActorShape</a> +<a name="l00118"></a>00118 { +<a name="l00119"></a><a class="code" href="structPxQueryHit.html#f8b229617f39cc007c74a646f8026dff">00119</a> <a class="code" href="group__foundation.html#gcb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <a class="code" href="structPxQueryHit.html#f8b229617f39cc007c74a646f8026dff">PxQueryHit</a>() : faceIndex(0xFFFFffff) {} +<a name="l00120"></a>00120 +<a name="l00129"></a><a class="code" href="structPxQueryHit.html#e3462529024eafa98ed2abe1b3b9146c">00129</a> <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> faceIndex; +<a name="l00130"></a>00130 }; +<a name="l00131"></a>00131 +<a name="l00138"></a><a class="code" href="structPxLocationHit.html">00138</a> <span class="keyword">struct </span><a class="code" href="structPxLocationHit.html" title="Scene query hit information for raycasts and sweeps returning hit position and normal...">PxLocationHit</a> : <span class="keyword">public</span> <a class="code" href="structPxQueryHit.html" title="Scene query hit information.">PxQueryHit</a> +<a name="l00139"></a>00139 { +<a name="l00140"></a><a class="code" href="structPxLocationHit.html#9dce7a1e378082e86859350601591072">00140</a> <a class="code" href="group__foundation.html#gcb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <a class="code" href="structPxLocationHit.html#9dce7a1e378082e86859350601591072">PxLocationHit</a>() : flags(0), position(<a class="code" href="classPxVec3.html" title="3 Element vector class.">PxVec3</a>(0)), normal(<a class="code" href="classPxVec3.html" title="3 Element vector class.">PxVec3</a>(0)), distance(<a class="code" href="group__foundation.html#g1afd8c76d275a787af09ebfceaf7fc30">PX_MAX_REAL</a>) {} +<a name="l00141"></a>00141 +<a name="l00148"></a><a class="code" href="structPxLocationHit.html#9d330de5e9a063ef91e034f7de7f1224">00148</a> <a class="code" href="group__foundation.html#gcb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <span class="keywordtype">bool</span> <a class="code" href="structPxLocationHit.html#9d330de5e9a063ef91e034f7de7f1224">hadInitialOverlap</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (distance <= 0.0f); } +<a name="l00149"></a>00149 +<a name="l00150"></a>00150 <span class="comment">// the following fields are set in accordance with the #PxHitFlags</span> +<a name="l00151"></a><a class="code" href="structPxLocationHit.html#7a253cb291ae5850342dada5b4dfce34">00151</a> PxHitFlags flags; +<a name="l00152"></a><a class="code" href="structPxLocationHit.html#b7481e53d2f35a8249ae862d337fe5ac">00152</a> <a class="code" href="classPxVec3.html" title="3 Element vector class.">PxVec3</a> position; +<a name="l00153"></a>00153 +<a name="l00154"></a><a class="code" href="structPxLocationHit.html#0e4815489090f4faced5e91f6f6cd336">00154</a> <a class="code" href="classPxVec3.html" title="3 Element vector class.">PxVec3</a> normal; +<a name="l00155"></a>00155 +<a name="l00160"></a><a class="code" href="structPxLocationHit.html#daccd7aa233279818ecdf50356ed0c76">00160</a> <a class="code" href="namespacephysx.html#b4cf332bdb6e8b183e40b6973acc1e9b">PxF32</a> distance; +<a name="l00161"></a>00161 }; +<a name="l00162"></a>00162 +<a name="l00163"></a>00163 +<a name="l00175"></a><a class="code" href="structPxRaycastHit.html">00175</a> <span class="keyword">struct </span><a class="code" href="structPxRaycastHit.html" title="Stores results of raycast queries.">PxRaycastHit</a> : <span class="keyword">public</span> <a class="code" href="structPxLocationHit.html" title="Scene query hit information for raycasts and sweeps returning hit position and normal...">PxLocationHit</a> +<a name="l00176"></a>00176 { +<a name="l00177"></a><a class="code" href="structPxRaycastHit.html#5e1097c8e1265bf67cd92ea6c39122c0">00177</a> <a class="code" href="group__foundation.html#gcb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <a class="code" href="structPxRaycastHit.html#5e1097c8e1265bf67cd92ea6c39122c0">PxRaycastHit</a>() : u(0.0f), v(0.0f) {} +<a name="l00178"></a>00178 +<a name="l00179"></a>00179 <span class="comment">// the following fields are set in accordance with the #PxHitFlags</span> +<a name="l00180"></a>00180 +<a name="l00181"></a><a class="code" href="structPxRaycastHit.html#43a429012ce502bac4636be3e5540f29">00181</a> <a class="code" href="namespacephysx.html#727d2d8426e2a21ebbc522fa65c3f97a">PxReal</a> u, v; +<a name="l00182"></a>00182 <span class="preprocessor">#if !PX_P64_FAMILY</span> +<a name="l00183"></a><a class="code" href="structPxRaycastHit.html#251f56ec3d168a814467301f61a120c7">00183</a> <span class="preprocessor"></span> <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> padTo16Bytes[3]; +<a name="l00184"></a>00184 <span class="preprocessor">#endif</span> +<a name="l00185"></a>00185 <span class="preprocessor"></span>}; +<a name="l00186"></a>00186 +<a name="l00187"></a>00187 +<a name="l00193"></a><a class="code" href="structPxOverlapHit.html#27b1ad19e9c07c2d6463707b6f18b684">00193</a> <span class="keyword">struct </span><a class="code" href="structPxOverlapHit.html" title="Stores results of overlap queries.">PxOverlapHit</a>: <span class="keyword">public</span> <a class="code" href="structPxQueryHit.html" title="Scene query hit information.">PxQueryHit</a> { <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> padTo16Bytes; }; +<a name="l00194"></a>00194 +<a name="l00195"></a>00195 +<a name="l00201"></a><a class="code" href="structPxSweepHit.html">00201</a> <span class="keyword">struct </span><a class="code" href="structPxSweepHit.html" title="Stores results of sweep queries.">PxSweepHit</a> : <span class="keyword">public</span> <a class="code" href="structPxLocationHit.html" title="Scene query hit information for raycasts and sweeps returning hit position and normal...">PxLocationHit</a> +<a name="l00202"></a>00202 { +<a name="l00203"></a><a class="code" href="structPxSweepHit.html#7a872b4eff912e5e37e1ee8d551547ac">00203</a> <a class="code" href="group__foundation.html#gcb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <a class="code" href="structPxSweepHit.html#7a872b4eff912e5e37e1ee8d551547ac">PxSweepHit</a>() {} +<a name="l00204"></a>00204 +<a name="l00205"></a><a class="code" href="structPxSweepHit.html#4bf1a7791ef7aa0d5030fdd2756a607f">00205</a> <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> padTo16Bytes; +<a name="l00206"></a>00206 }; +<a name="l00207"></a>00207 +<a name="l00208"></a>00208 +<a name="l00217"></a><a class="code" href="group__scenequery.html#g4d0184965c0a910f5c96cb69c0690f5c">00217</a> <span class="keyword">typedef</span> <span class="keywordtype">bool</span> <a class="code" href="group__scenequery.html#g4d0184965c0a910f5c96cb69c0690f5c" title="Describes query behavior after returning a partial query result via a callback.">PxAgain</a>; +<a name="l00218"></a>00218 +<a name="l00219"></a>00219 +<a name="l00233"></a>00233 <span class="keyword">template</span><<span class="keyword">typename</span> HitType> +<a name="l00234"></a><a class="code" href="structPxHitCallback.html">00234</a> <span class="keyword">struct </span><a class="code" href="structPxHitCallback.html" title="This callback class facilitates reporting scene query hits (intersections) to the...">PxHitCallback</a> +<a name="l00235"></a>00235 { +<a name="l00236"></a><a class="code" href="structPxHitCallback.html#63b2851eaf99b190fc468e00e8d1e55d">00236</a> HitType block; +<a name="l00237"></a><a class="code" href="structPxHitCallback.html#c20c6d1c2dd520d771da9b63f7f4f363">00237</a> <span class="keywordtype">bool</span> hasBlock; +<a name="l00238"></a>00238 +<a name="l00239"></a><a class="code" href="structPxHitCallback.html#a3fa478af9db3e043a540fca72a2f468">00239</a> HitType* touches; +<a name="l00240"></a>00240 +<a name="l00245"></a><a class="code" href="structPxHitCallback.html#0e64f72a5edf7c442ce81e3e4a8c61d1">00245</a> <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> maxNbTouches; +<a name="l00246"></a>00246 +<a name="l00250"></a><a class="code" href="structPxHitCallback.html#549f6828e98c9aeaee9012defa100f74">00250</a> <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> nbTouches; +<a name="l00251"></a>00251 +<a name="l00263"></a><a class="code" href="structPxHitCallback.html#062cff2cdd2dfe1f63d0549758ea2627">00263</a> <a class="code" href="structPxHitCallback.html" title="This callback class facilitates reporting scene query hits (intersections) to the...">PxHitCallback</a>(HitType* aTouches, <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> aMaxNbTouches) +<a name="l00264"></a>00264 : hasBlock(false), touches(aTouches), maxNbTouches(aMaxNbTouches), nbTouches(0) +<a name="l00265"></a>00265 {} +<a name="l00266"></a>00266 +<a name="l00287"></a>00287 <span class="keyword">virtual</span> <a class="code" href="group__scenequery.html#g4d0184965c0a910f5c96cb69c0690f5c" title="Describes query behavior after returning a partial query result via a callback.">PxAgain</a> processTouches(<span class="keyword">const</span> HitType* buffer, <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> nbHits) = 0; +<a name="l00288"></a>00288 +<a name="l00289"></a><a class="code" href="structPxHitCallback.html#86b66684b448ec43083edf3aa1983234">00289</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="structPxHitCallback.html#86b66684b448ec43083edf3aa1983234" title="Query finalization callback, called after the last processTouches callback.">finalizeQuery</a>() {} +<a name="l00290"></a>00290 +<a name="l00291"></a><a class="code" href="structPxHitCallback.html#7fbb5959c9fcc98834745644422210c3">00291</a> <span class="keyword">virtual</span> <a class="code" href="structPxHitCallback.html#7fbb5959c9fcc98834745644422210c3">~PxHitCallback</a>() {} +<a name="l00292"></a>00292 +<a name="l00294"></a><a class="code" href="structPxHitCallback.html#8ff687b42ac0273e730c714bf66dae49">00294</a> <a class="code" href="group__foundation.html#g6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> <span class="keywordtype">bool</span> <a class="code" href="structPxHitCallback.html#8ff687b42ac0273e730c714bf66dae49" title="Returns true if any blocking or touching hits were encountered during a query.">hasAnyHits</a>() { <span class="keywordflow">return</span> (hasBlock || (nbTouches > 0)); } +<a name="l00295"></a>00295 }; +<a name="l00296"></a>00296 +<a name="l00297"></a>00297 +<a name="l00311"></a>00311 <span class="keyword">template</span><<span class="keyword">typename</span> HitType> +<a name="l00312"></a><a class="code" href="structPxHitBuffer.html">00312</a> <span class="keyword">struct </span><a class="code" href="structPxHitBuffer.html" title="Returns scene query hits (intersections) to the user in a preallocated buffer.">PxHitBuffer</a> : <span class="keyword">public</span> <a class="code" href="structPxHitCallback.html" title="This callback class facilitates reporting scene query hits (intersections) to the...">PxHitCallback</a><HitType> +<a name="l00313"></a>00313 { +<a name="l00324"></a><a class="code" href="structPxHitBuffer.html#89bcec685c76c5cdc0662eb52b67d699">00324</a> <a class="code" href="structPxHitBuffer.html#89bcec685c76c5cdc0662eb52b67d699" title="Initializes the buffer with user memory.">PxHitBuffer</a>(HitType* aTouches = NULL, <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> aMaxNbTouches = 0) : <a class="code" href="structPxHitCallback.html" title="This callback class facilitates reporting scene query hits (intersections) to the...">PxHitCallback</a><HitType>(aTouches, aMaxNbTouches) {} +<a name="l00325"></a>00325 +<a name="l00327"></a><a class="code" href="structPxHitBuffer.html#cc1a660048a41387c74d362719669a3f">00327</a> <a class="code" href="group__foundation.html#gcb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> <a class="code" href="structPxHitBuffer.html#cc1a660048a41387c74d362719669a3f" title="Computes the number of any hits in this result, blocking or touching.">getNbAnyHits</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> getNbTouches() + <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a>(this->hasBlock); } +<a name="l00329"></a><a class="code" href="structPxHitBuffer.html#03c5d03b908348194193456ae29be988">00329</a> <a class="code" href="group__foundation.html#gcb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <span class="keyword">const</span> HitType& <a class="code" href="structPxHitBuffer.html#03c5d03b908348194193456ae29be988" title="Convenience iterator used to access any hits in this result, blocking or touching...">getAnyHit</a>(<span class="keyword">const</span> <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> index)<span class="keyword"> const </span>{ <a class="code" href="group__foundation.html#g4a83a657390b324a460f14684e5accee">PX_ASSERT</a>(index < getNbTouches() + <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a>(this->hasBlock)); +<a name="l00330"></a>00330 <span class="keywordflow">return</span> index < getNbTouches() ? getTouches()[index] : this->block; } +<a name="l00331"></a>00331 +<a name="l00332"></a><a class="code" href="structPxHitBuffer.html#8bf58cc81ca6587e1d9974f2864dacb2">00332</a> <a class="code" href="group__foundation.html#gcb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> <a class="code" href="structPxHitBuffer.html#8bf58cc81ca6587e1d9974f2864dacb2">getNbTouches</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> this->nbTouches; } +<a name="l00333"></a><a class="code" href="structPxHitBuffer.html#ab32a62e05389a4cc2c3baa2db0b3500">00333</a> <a class="code" href="group__foundation.html#gcb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <span class="keyword">const</span> HitType* <a class="code" href="structPxHitBuffer.html#ab32a62e05389a4cc2c3baa2db0b3500">getTouches</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> this->touches; } +<a name="l00334"></a><a class="code" href="structPxHitBuffer.html#92b117a1958a0cdcbb4aec3bc1fa1f64">00334</a> <a class="code" href="group__foundation.html#gcb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <span class="keyword">const</span> HitType& <a class="code" href="structPxHitBuffer.html#92b117a1958a0cdcbb4aec3bc1fa1f64">getTouch</a>(<span class="keyword">const</span> <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> index)<span class="keyword"> const </span>{ <a class="code" href="group__foundation.html#g4a83a657390b324a460f14684e5accee">PX_ASSERT</a>(index < getNbTouches()); <span class="keywordflow">return</span> getTouches()[index]; } +<a name="l00335"></a><a class="code" href="structPxHitBuffer.html#6cd9ee7153cc87849af8b365fa558ee1">00335</a> <a class="code" href="group__foundation.html#gcb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> <a class="code" href="structPxHitBuffer.html#6cd9ee7153cc87849af8b365fa558ee1">getMaxNbTouches</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> this->maxNbTouches; } +<a name="l00336"></a>00336 +<a name="l00337"></a><a class="code" href="structPxHitBuffer.html#f3810ae6d94b93028e7a7d813f820cb4">00337</a> <span class="keyword">virtual</span> <a class="code" href="structPxHitBuffer.html#f3810ae6d94b93028e7a7d813f820cb4">~PxHitBuffer</a>() {} +<a name="l00338"></a>00338 +<a name="l00339"></a>00339 <span class="keyword">protected</span>: +<a name="l00340"></a>00340 <span class="comment">// stops after the first callback</span> +<a name="l00341"></a><a class="code" href="structPxHitBuffer.html#f60ac2d3405c5af467f767f812f3f01d">00341</a> <span class="keyword">virtual</span> <a class="code" href="group__scenequery.html#g4d0184965c0a910f5c96cb69c0690f5c" title="Describes query behavior after returning a partial query result via a callback.">PxAgain</a> <a class="code" href="structPxHitBuffer.html#f60ac2d3405c5af467f767f812f3f01d" title="virtual callback function used to communicate query results to the user.">processTouches</a>(<span class="keyword">const</span> HitType* buffer, <a class="code" href="namespacephysx.html#9b7fbd746d18bf5b6545713a8d818f41">PxU32</a> nbHits) { <a class="code" href="group__foundation.html#g3b618390d8743c532c4131cb931df43a">PX_UNUSED</a>(buffer); <a class="code" href="group__foundation.html#g3b618390d8743c532c4131cb931df43a">PX_UNUSED</a>(nbHits); <span class="keywordflow">return</span> <span class="keyword">false</span>; } +<a name="l00342"></a>00342 }; +<a name="l00343"></a>00343 +<a name="l00344"></a>00344 +<a name="l00346"></a><a class="code" href="group__scenequery.html#g4dbe8142d799492bd8e7c5ec70bfac41">00346</a> <span class="keyword">typedef</span> <a class="code" href="structPxHitCallback.html">PxHitCallback<PxRaycastHit></a> <a class="code" href="structPxHitCallback.html">PxRaycastCallback</a>; +<a name="l00347"></a>00347 +<a name="l00349"></a><a class="code" href="group__scenequery.html#g9baa3a8cad31bbb8ef666fe01b3afeb7">00349</a> <span class="keyword">typedef</span> <a class="code" href="structPxHitCallback.html">PxHitCallback<PxOverlapHit></a> <a class="code" href="structPxHitCallback.html">PxOverlapCallback</a>; +<a name="l00350"></a>00350 +<a name="l00352"></a><a class="code" href="group__scenequery.html#g6f93f556cef747d50f643499928dd865">00352</a> <span class="keyword">typedef</span> <a class="code" href="structPxHitCallback.html">PxHitCallback<PxSweepHit></a> <a class="code" href="structPxHitCallback.html">PxSweepCallback</a>; +<a name="l00353"></a>00353 +<a name="l00355"></a><a class="code" href="group__scenequery.html#gb21a68ce9e5a18aa742111920b75a84c">00355</a> <span class="keyword">typedef</span> <a class="code" href="structPxHitBuffer.html">PxHitBuffer<PxRaycastHit></a> <a class="code" href="structPxHitBuffer.html">PxRaycastBuffer</a>; +<a name="l00356"></a>00356 +<a name="l00358"></a><a class="code" href="group__scenequery.html#g54a708942a891f3321c2427d5c160750">00358</a> <span class="keyword">typedef</span> <a class="code" href="structPxHitBuffer.html">PxHitBuffer<PxOverlapHit></a> <a class="code" href="structPxHitBuffer.html">PxOverlapBuffer</a>; +<a name="l00359"></a>00359 +<a name="l00361"></a><a class="code" href="group__scenequery.html#gecfed2b83a930b922b3d95e22ff30665">00361</a> <span class="keyword">typedef</span> <a class="code" href="structPxHitBuffer.html">PxHitBuffer<PxSweepHit></a> <a class="code" href="structPxHitBuffer.html">PxSweepBuffer</a>; +<a name="l00362"></a>00362 +<a name="l00364"></a>00364 <span class="keyword">template</span> <<span class="keywordtype">int</span> N> +<a name="l00365"></a><a class="code" href="structPxRaycastBufferN.html">00365</a> <span class="keyword">struct </span><a class="code" href="structPxRaycastBufferN.html" title="Returns touching raycast hits to the user in a fixed size array embedded in the buffer...">PxRaycastBufferN</a> : <span class="keyword">public</span> <a class="code" href="structPxHitBuffer.html" title="Returns scene query hits (intersections) to the user in a preallocated buffer.">PxHitBuffer</a><PxRaycastHit> +<a name="l00366"></a>00366 { +<a name="l00367"></a><a class="code" href="structPxRaycastBufferN.html#5b3d65b24c0fe8377e0ed2f6ca604537">00367</a> <a class="code" href="structPxRaycastHit.html" title="Stores results of raycast queries.">PxRaycastHit</a> hits[N]; +<a name="l00368"></a><a class="code" href="structPxRaycastBufferN.html#75c64893a9241f9e962c4f144345698f">00368</a> <a class="code" href="structPxRaycastBufferN.html#75c64893a9241f9e962c4f144345698f">PxRaycastBufferN</a>() : <a class="code" href="structPxHitBuffer.html" title="Returns scene query hits (intersections) to the user in a preallocated buffer.">PxHitBuffer</a><<a class="code" href="structPxRaycastHit.html" title="Stores results of raycast queries.">PxRaycastHit</a>>(hits, N) {} +<a name="l00369"></a>00369 }; +<a name="l00370"></a>00370 +<a name="l00372"></a>00372 <span class="keyword">template</span> <<span class="keywordtype">int</span> N> +<a name="l00373"></a><a class="code" href="structPxOverlapBufferN.html">00373</a> <span class="keyword">struct </span><a class="code" href="structPxOverlapBufferN.html" title="Returns touching overlap hits to the user in a fixed size array embedded in the buffer...">PxOverlapBufferN</a> : <span class="keyword">public</span> <a class="code" href="structPxHitBuffer.html" title="Returns scene query hits (intersections) to the user in a preallocated buffer.">PxHitBuffer</a><PxOverlapHit> +<a name="l00374"></a>00374 { +<a name="l00375"></a><a class="code" href="structPxOverlapBufferN.html#35f94542f30624e2f77c24060815f6da">00375</a> <a class="code" href="structPxOverlapHit.html" title="Stores results of overlap queries.">PxOverlapHit</a> hits[N]; +<a name="l00376"></a><a class="code" href="structPxOverlapBufferN.html#0b62aca23f26fef278dcbac1cb729291">00376</a> <a class="code" href="structPxOverlapBufferN.html#0b62aca23f26fef278dcbac1cb729291">PxOverlapBufferN</a>() : <a class="code" href="structPxHitBuffer.html" title="Returns scene query hits (intersections) to the user in a preallocated buffer.">PxHitBuffer</a><<a class="code" href="structPxOverlapHit.html" title="Stores results of overlap queries.">PxOverlapHit</a>>(hits, N) {} +<a name="l00377"></a>00377 }; +<a name="l00378"></a>00378 +<a name="l00380"></a>00380 <span class="keyword">template</span> <<span class="keywordtype">int</span> N> +<a name="l00381"></a><a class="code" href="structPxSweepBufferN.html">00381</a> <span class="keyword">struct </span><a class="code" href="structPxSweepBufferN.html" title="Returns touching sweep hits to the user in a fixed size array embedded in the buffer...">PxSweepBufferN</a> : <span class="keyword">public</span> <a class="code" href="structPxHitBuffer.html" title="Returns scene query hits (intersections) to the user in a preallocated buffer.">PxHitBuffer</a><PxSweepHit> +<a name="l00382"></a>00382 { +<a name="l00383"></a><a class="code" href="structPxSweepBufferN.html#ce8e98273056b9c23dd4337c7024544f">00383</a> <a class="code" href="structPxSweepHit.html" title="Stores results of sweep queries.">PxSweepHit</a> hits[N]; +<a name="l00384"></a><a class="code" href="structPxSweepBufferN.html#b8be2772b4fe811563efc01824201a61">00384</a> <a class="code" href="structPxSweepBufferN.html#b8be2772b4fe811563efc01824201a61">PxSweepBufferN</a>() : <a class="code" href="structPxHitBuffer.html" title="Returns scene query hits (intersections) to the user in a preallocated buffer.">PxHitBuffer</a><<a class="code" href="structPxSweepHit.html" title="Stores results of sweep queries.">PxSweepHit</a>>(hits, N) {} +<a name="l00385"></a>00385 }; +<a name="l00386"></a>00386 +<a name="l00387"></a>00387 <span class="preprocessor">#if !PX_DOXYGEN</span> +<a name="l00388"></a>00388 <span class="preprocessor"></span>} <span class="comment">// namespace physx</span> +<a name="l00389"></a>00389 <span class="preprocessor">#endif</span> +<a name="l00390"></a>00390 <span class="preprocessor"></span> +<a name="l00392"></a>00392 <span class="preprocessor">#endif</span> +</pre></div></div> + +<hr style="width: 100%; height: 2px;"><br> +Copyright © 2008-2016 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved. <a href="http://www.nvidia.com ">www.nvidia.com</a> +</body> +</html> |