1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.9.1"/>
<title>FLEX: NvFlex.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="flex.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="nvidia.png"/></td>
<td style="padding-left: 0.5em;">
<div id="projectname">FLEX
 <span id="projectnumber">1.2.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">NvFlex.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="_nv_flex_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// This code contains NVIDIA Confidential Information and is disclosed to you</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">// under a form of NVIDIA software license agreement provided separately to you.</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">//</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">// Notice</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">// NVIDIA Corporation and its licensors retain all intellectual property and</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">// proprietary rights in and to this software and related documentation and</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">// any modifications thereto. Any use, reproduction, disclosure, or</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">// distribution of this software and related documentation without an express</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">// license agreement from NVIDIA Corporation is strictly prohibited.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">//</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment">// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment">// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment">//</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment">// Information and code furnished is believed to be accurate and reliable.</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment">// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment">// information or for any infringement of patents or other rights of third parties that may</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">// result from its use. No license is granted by implication or otherwise under any patent</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="comment">// or patent rights of NVIDIA Corporation. Details are subject to change without notice.</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment">// This code supersedes and replaces all information previously supplied.</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="comment">// NVIDIA Corporation products are not authorized for use as critical</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment">// components in life support devices or systems without express written approval of</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="comment">// NVIDIA Corporation.</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="comment">//</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="comment">// Copyright (c) 2013-2020 NVIDIA Corporation. All rights reserved.</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#ifndef NV_FLEX_H</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#define NV_FLEX_H</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#if _WIN32</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#define NV_FLEX_API __declspec(dllexport)</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#else</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#define NV_FLEX_API</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> </div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment">// least 2 significant digits define minor version, eg: 10 -> version 0.10</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#define NV_FLEX_VERSION 120</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keyword">extern</span> <span class="stringliteral">"C"</span> {</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318"> 52</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a> <a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e"> 57</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a> <a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> </div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a"> 62</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a> <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a6541b33eaca7b2323e73b30cea34d16c"> 67</a></span> <span class="keyword">enum</span> <a class="code" href="_nv_flex_8h.html#a6541b33eaca7b2323e73b30cea34d16c">NvFlexMapFlags</a></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> {</div>
<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a6541b33eaca7b2323e73b30cea34d16ca11adf517d180983daec217e761acc3d6"> 69</a></span>  <a class="code" href="_nv_flex_8h.html#a6541b33eaca7b2323e73b30cea34d16ca11adf517d180983daec217e761acc3d6">eNvFlexMapWait</a> = 0, </div>
<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a6541b33eaca7b2323e73b30cea34d16ca1bd450ab65ccc06288fae95e23d5e6f1"> 70</a></span>  <a class="code" href="_nv_flex_8h.html#a6541b33eaca7b2323e73b30cea34d16ca1bd450ab65ccc06288fae95e23d5e6f1">eNvFlexMapDoNotWait</a> = 1, </div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> };</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a169e4c126acf46bdebf76c36a44deca3"> 76</a></span> <span class="keyword">enum</span> <a class="code" href="_nv_flex_8h.html#a169e4c126acf46bdebf76c36a44deca3">NvFlexBufferType</a></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> {</div>
<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a169e4c126acf46bdebf76c36a44deca3aec63221ddc1b13eff4db55fbf6cd85f8"> 78</a></span>  <a class="code" href="_nv_flex_8h.html#a169e4c126acf46bdebf76c36a44deca3aec63221ddc1b13eff4db55fbf6cd85f8">eNvFlexBufferHost</a> = 0, </div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a169e4c126acf46bdebf76c36a44deca3a103255fa795b55a7f430a41493002576"> 79</a></span>  <a class="code" href="_nv_flex_8h.html#a169e4c126acf46bdebf76c36a44deca3a103255fa795b55a7f430a41493002576">eNvFlexBufferDevice</a> = 1, </div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> };</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div>
<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a46f5d35902f7da40628247175a174f3b"> 85</a></span> <span class="keyword">enum</span> <a class="code" href="_nv_flex_8h.html#a46f5d35902f7da40628247175a174f3b">NvFlexRelaxationMode</a></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> {</div>
<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a46f5d35902f7da40628247175a174f3ba33711a4b466d606d68dee43918f819db"> 87</a></span>  <a class="code" href="_nv_flex_8h.html#a46f5d35902f7da40628247175a174f3ba33711a4b466d606d68dee43918f819db">eNvFlexRelaxationGlobal</a> = 0, </div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a46f5d35902f7da40628247175a174f3ba858afe9529e908c2bc8ce92da8943b7c"> 88</a></span>  <a class="code" href="_nv_flex_8h.html#a46f5d35902f7da40628247175a174f3ba858afe9529e908c2bc8ce92da8943b7c">eNvFlexRelaxationLocal</a> = 1 </div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> };</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> </div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> </div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html"> 95</a></span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#struct_nv_flex_params">NvFlexParams</a></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> {</div>
<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a572c9bf93128466e27d57f225f4d0188"> 97</a></span>  <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#a572c9bf93128466e27d57f225f4d0188">numIterations</a>; </div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a482a7c3b197c4df656e9509fbd04032c"> 99</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a482a7c3b197c4df656e9509fbd04032c">gravity</a>[3]; </div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aa6eddaa3a6eb35917c093dcabf69a200"> 100</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#aa6eddaa3a6eb35917c093dcabf69a200">radius</a>; </div>
<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ab7c54d6c0b3d3595780e5179bf62ebc4"> 101</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#ab7c54d6c0b3d3595780e5179bf62ebc4">solidRestDistance</a>; </div>
<div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ad019ad1901bc33d43e3a60df0dfe9b09"> 102</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#ad019ad1901bc33d43e3a60df0dfe9b09">fluidRestDistance</a>; </div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <span class="comment">// common params</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a27a185172ad1951d40c476ade8307068"> 105</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a27a185172ad1951d40c476ade8307068">dynamicFriction</a>; </div>
<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#af0a34fd0cdf686022650be9f895cbf2f"> 106</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#af0a34fd0cdf686022650be9f895cbf2f">staticFriction</a>; </div>
<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#af7a56fc54644e7020e105f2ff41dfb60"> 107</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#af7a56fc54644e7020e105f2ff41dfb60">particleFriction</a>; </div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#afc306cb48c313ee518461d60c1014485"> 108</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#afc306cb48c313ee518461d60c1014485">restitution</a>; </div>
<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a8114a049f5e16f7d1b960f3ac4993fdb"> 109</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a8114a049f5e16f7d1b960f3ac4993fdb">adhesion</a>; </div>
<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a533a78227b462a268c905f9c307c4bd6"> 110</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a533a78227b462a268c905f9c307c4bd6">sleepThreshold</a>; </div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  </div>
<div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ab003c023dde289dee075c49db022ccaf"> 112</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#ab003c023dde289dee075c49db022ccaf">maxSpeed</a>; </div>
<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a0def9c3ceff57bbae5bcec15f6d64b36"> 113</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a0def9c3ceff57bbae5bcec15f6d64b36">maxAcceleration</a>; </div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  </div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ab98a2aba477ab4d4178bf677852bf544"> 115</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#ab98a2aba477ab4d4178bf677852bf544">shockPropagation</a>; </div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aeff62427426510eeb1cf5625e14ff585"> 116</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#aeff62427426510eeb1cf5625e14ff585">dissipation</a>; </div>
<div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a6198445df7f341ec75f37e1dfb44830c"> 117</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a6198445df7f341ec75f37e1dfb44830c">damping</a>; </div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  <span class="comment">// cloth params</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aafb92c4fa45ce9614cdfd349b3722c8a"> 120</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#aafb92c4fa45ce9614cdfd349b3722c8a">wind</a>[3]; </div>
<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a7043181449aebf540351d1d2f785cf4a"> 121</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a7043181449aebf540351d1d2f785cf4a">drag</a>; </div>
<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#af9bb710afb22ec5ed50679aef8717777"> 122</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#af9bb710afb22ec5ed50679aef8717777">lift</a>; </div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  <span class="comment">// fluid params</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a3ef4d1035530c3583bdf983c7e62b472"> 125</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a3ef4d1035530c3583bdf983c7e62b472">cohesion</a>; </div>
<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5628f890f4ae070e405feaf1f81a7b85"> 126</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a5628f890f4ae070e405feaf1f81a7b85">surfaceTension</a>; </div>
<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a40f452b4edbf11b793f31286a0ae270e"> 127</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a40f452b4edbf11b793f31286a0ae270e">viscosity</a>; </div>
<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ae763dd9bfcfa4092c0165a506e32e18b"> 128</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#ae763dd9bfcfa4092c0165a506e32e18b">vorticityConfinement</a>; </div>
<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a608af97e77a912e959b0e825082a9cd6"> 129</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a608af97e77a912e959b0e825082a9cd6">anisotropyScale</a>; </div>
<div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ab136ae1511a39ef570c010f321eff206"> 130</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#ab136ae1511a39ef570c010f321eff206">anisotropyMin</a>; </div>
<div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5e37444b8c96e0880a428d9ea58dbf54"> 131</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a5e37444b8c96e0880a428d9ea58dbf54">anisotropyMax</a>; </div>
<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ac017e05107d0362d3d03a14eaadf0657"> 132</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#ac017e05107d0362d3d03a14eaadf0657">smoothing</a>; </div>
<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a3f93fba688338576ff3258b034525dc5"> 133</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a3f93fba688338576ff3258b034525dc5">solidPressure</a>; </div>
<div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a05f92015449662f5a2f5d5e9ecdc2c6e"> 134</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a05f92015449662f5a2f5d5e9ecdc2c6e">freeSurfaceDrag</a>; </div>
<div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ae2e480822cc06ec249ee2557f6cc8ee1"> 135</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#ae2e480822cc06ec249ee2557f6cc8ee1">buoyancy</a>; </div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> </div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  <span class="comment">// diffuse params</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#acdde802d58e1558c03e449e04ae33f15"> 138</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#acdde802d58e1558c03e449e04ae33f15">diffuseThreshold</a>; </div>
<div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5be673031b100c3861fd9eb824fcf00f"> 139</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a5be673031b100c3861fd9eb824fcf00f">diffuseBuoyancy</a>; </div>
<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a4bf0ccff128c165560dba52afb748d7e"> 140</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a4bf0ccff128c165560dba52afb748d7e">diffuseDrag</a>; </div>
<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a7ade7491cd0693a6d7c5e88a99298378"> 141</a></span>  <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#a7ade7491cd0693a6d7c5e88a99298378">diffuseBallistic</a>; </div>
<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a469950744e0b7222969762a89b992255"> 142</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a469950744e0b7222969762a89b992255">diffuseLifetime</a>; </div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> </div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  <span class="comment">// collision params</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a55bf1f547086b8e469f2c3b20c9ae39d"> 145</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a55bf1f547086b8e469f2c3b20c9ae39d">collisionDistance</a>; </div>
<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aeecd11525503649b579ae262b671fbc8"> 146</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#aeecd11525503649b579ae262b671fbc8">particleCollisionMargin</a>; </div>
<div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a0e4cb2f91d3b7d122000d36a7d67ab81"> 147</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a0e4cb2f91d3b7d122000d36a7d67ab81">shapeCollisionMargin</a>; </div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div>
<div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ae54ff0cacfedd4333aa1a1f9b9291906"> 149</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#ae54ff0cacfedd4333aa1a1f9b9291906">planes</a>[8][4]; </div>
<div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ab4f2eb16c8aba6371fbae51a991eaaa5"> 150</a></span>  <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#ab4f2eb16c8aba6371fbae51a991eaaa5">numPlanes</a>; </div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
<div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ac2f8dff9857a86683aa6e55c058888d7"> 152</a></span>  <a class="code" href="_nv_flex_8h.html#a46f5d35902f7da40628247175a174f3b">NvFlexRelaxationMode</a> <a class="code" href="_nv_flex_8h.html#ac2f8dff9857a86683aa6e55c058888d7">relaxationMode</a>;</div>
<div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a8a1b3c24aa73606bcd47a72473db9629"> 153</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a8a1b3c24aa73606bcd47a72473db9629">relaxationFactor</a>; </div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> };</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> </div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> </div>
<div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644"> 160</a></span> <span class="keyword">enum</span> <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644">NvFlexPhase</a></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> {</div>
<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644ad108f6ebf28346813cfd3602d984bb32"> 162</a></span>  <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644ad108f6ebf28346813cfd3602d984bb32">eNvFlexPhaseGroupMask</a> = 0x000fffff, </div>
<div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a7b776084468bae4e3566484cf34d0154"> 163</a></span>  <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a7b776084468bae4e3566484cf34d0154">eNvFlexPhaseFlagsMask</a> = 0x00f00000, </div>
<div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644ae4ea43366942f719f40e8526ad21a038"> 164</a></span>  <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644ae4ea43366942f719f40e8526ad21a038">eNvFlexPhaseShapeChannelMask</a> = 0x7f000000, </div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  </div>
<div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a453a23cc8e9d2e6097b5be187f3c6977"> 166</a></span>  <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a453a23cc8e9d2e6097b5be187f3c6977">eNvFlexPhaseSelfCollide</a> = 1 << 20, </div>
<div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a76a62d3a5df428f18e01f8b37573a7b1"> 167</a></span>  <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a76a62d3a5df428f18e01f8b37573a7b1">eNvFlexPhaseSelfCollideFilter</a> = 1 << 21, </div>
<div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a1728772beb1746ace4c549b2ed8f1d74"> 168</a></span>  <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a1728772beb1746ace4c549b2ed8f1d74">eNvFlexPhaseFluid</a> = 1 << 22, </div>
<div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a52ee05f3e425c336856277774bc9f69f"> 169</a></span>  <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a52ee05f3e425c336856277774bc9f69f">eNvFlexPhaseUnused</a> = 1 << 23, </div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  </div>
<div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a66aa70953a97744621e2afa41d0e32d2"> 171</a></span>  <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a66aa70953a97744621e2afa41d0e32d2">eNvFlexPhaseShapeChannel0</a> = 1 << 24, </div>
<div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a1de4e956764950e501bcb8376a70f5a9"> 172</a></span>  <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a1de4e956764950e501bcb8376a70f5a9">eNvFlexPhaseShapeChannel1</a> = 1 << 25, </div>
<div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644aa3a4fd0d5930b31199334e500ac2d7c8"> 173</a></span>  <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644aa3a4fd0d5930b31199334e500ac2d7c8">eNvFlexPhaseShapeChannel2</a> = 1 << 26, </div>
<div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644ab4034dbf78d6045ee13278531ee21c2b"> 174</a></span>  <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644ab4034dbf78d6045ee13278531ee21c2b">eNvFlexPhaseShapeChannel3</a> = 1 << 27, </div>
<div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644af309316efb695be38a4e15986be21ef9"> 175</a></span>  <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644af309316efb695be38a4e15986be21ef9">eNvFlexPhaseShapeChannel4</a> = 1 << 28, </div>
<div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a92bbb75d47ea0058a9a89deb0abec67f"> 176</a></span>  <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a92bbb75d47ea0058a9a89deb0abec67f">eNvFlexPhaseShapeChannel5</a> = 1 << 29, </div>
<div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a0c8d08e646d2713e34d7e2dd6e7b21f2"> 177</a></span>  <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a0c8d08e646d2713e34d7e2dd6e7b21f2">eNvFlexPhaseShapeChannel6</a> = 1 << 30, </div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> };</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> </div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> </div>
<div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a615e8070212c24a70e7a849120c13353"> 189</a></span> NV_FLEX_API <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#a615e8070212c24a70e7a849120c13353">NvFlexMakePhaseWithChannels</a>(<span class="keywordtype">int</span> group, <span class="keywordtype">int</span> particleFlags, <span class="keywordtype">int</span> shapeChannels) { <span class="keywordflow">return</span> (group & <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644ad108f6ebf28346813cfd3602d984bb32">eNvFlexPhaseGroupMask</a>) | (particleFlags & <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a7b776084468bae4e3566484cf34d0154">eNvFlexPhaseFlagsMask</a>) | (shapeChannels & <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644ae4ea43366942f719f40e8526ad21a038">eNvFlexPhaseShapeChannelMask</a>); }</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> </div>
<div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ab43db5f28808f8038cfc9330d4b47d57"> 194</a></span> NV_FLEX_API <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#ab43db5f28808f8038cfc9330d4b47d57">NvFlexMakePhase</a>(<span class="keywordtype">int</span> group, <span class="keywordtype">int</span> particleFlags) { <span class="keywordflow">return</span> <a class="code" href="_nv_flex_8h.html#a615e8070212c24a70e7a849120c13353">NvFlexMakePhaseWithChannels</a>(group, particleFlags, <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644ae4ea43366942f719f40e8526ad21a038">eNvFlexPhaseShapeChannelMask</a>); }</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> </div>
<div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html"> 200</a></span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#struct_nv_flex_timers">NvFlexTimers</a></div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> {</div>
<div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aaf8baa00e709ff8fd40d114f00bee0b6"> 202</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#aaf8baa00e709ff8fd40d114f00bee0b6">predict</a>; </div>
<div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aba34bc2bc8736e3a0cf18a7a6b56ff68"> 203</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#aba34bc2bc8736e3a0cf18a7a6b56ff68">createCellIndices</a>; </div>
<div class="line"><a name="l00204"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ae45cb18deec2db8ff44d181e80f24695"> 204</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#ae45cb18deec2db8ff44d181e80f24695">sortCellIndices</a>; </div>
<div class="line"><a name="l00205"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a98b4df3721709c862ef5d09edcc6d4c3"> 205</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a98b4df3721709c862ef5d09edcc6d4c3">createGrid</a>; </div>
<div class="line"><a name="l00206"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a6071050991cf71a8d9ff28ea968479af"> 206</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a6071050991cf71a8d9ff28ea968479af">reorder</a>; </div>
<div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ac1f3c3a1eeeb57cf5b20d030a788e25c"> 207</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#ac1f3c3a1eeeb57cf5b20d030a788e25c">collideParticles</a>; </div>
<div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ae4203fb9cf4772c3186f96cc2d9f6ea8"> 208</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#ae4203fb9cf4772c3186f96cc2d9f6ea8">collideShapes</a>; </div>
<div class="line"><a name="l00209"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#afc20d27121f49b61be9cc6bd4c25f547"> 209</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#afc20d27121f49b61be9cc6bd4c25f547">collideTriangles</a>; </div>
<div class="line"><a name="l00210"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aaa36ba5ee44e34e762167fb0b8b3292e"> 210</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#aaa36ba5ee44e34e762167fb0b8b3292e">collideFields</a>; </div>
<div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a49f7117a457a716e7790904209f68707"> 211</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a49f7117a457a716e7790904209f68707">calculateDensity</a>; </div>
<div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#abe52b62e7af361f387d67414b9e2cf9b"> 212</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#abe52b62e7af361f387d67414b9e2cf9b">solveDensities</a>; </div>
<div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a4d10188e917ae045e0e903f3db1c638d"> 213</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a4d10188e917ae045e0e903f3db1c638d">solveVelocities</a>; </div>
<div class="line"><a name="l00214"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#abdd60b0a83674283d09b4897fdd637a2"> 214</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#abdd60b0a83674283d09b4897fdd637a2">solveShapes</a>; </div>
<div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a57e4d27b0aa8774e479fa66d65079f78"> 215</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a57e4d27b0aa8774e479fa66d65079f78">solveSprings</a>; </div>
<div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a215e06106ec0cdbbcd405055a4535d1d"> 216</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a215e06106ec0cdbbcd405055a4535d1d">solveContacts</a>; </div>
<div class="line"><a name="l00217"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a75eade1512d023cb19da5b7ebbad10f3"> 217</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a75eade1512d023cb19da5b7ebbad10f3">solveInflatables</a>; </div>
<div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#afc5d58e7f591213c3fe1c31b4d440eb6"> 218</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#afc5d58e7f591213c3fe1c31b4d440eb6">applyDeltas</a>; </div>
<div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#af9b72d2909ef335b12a46cdbd4b71f57"> 219</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#af9b72d2909ef335b12a46cdbd4b71f57">calculateAnisotropy</a>; </div>
<div class="line"><a name="l00220"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a2ff723870a6eba26d9f3bb7e5250b27f"> 220</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a2ff723870a6eba26d9f3bb7e5250b27f">updateDiffuse</a>; </div>
<div class="line"><a name="l00221"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a8cb34cbcf9def6817d6d5d3c07177052"> 221</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a8cb34cbcf9def6817d6d5d3c07177052">updateTriangles</a>; </div>
<div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a1a1e69f26e02e8b3fca1d3636a7f3f13"> 222</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a1a1e69f26e02e8b3fca1d3636a7f3f13">updateNormals</a>; </div>
<div class="line"><a name="l00223"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a9d825db54bc9a0bca998b3654db3b20e"> 223</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a9d825db54bc9a0bca998b3654db3b20e">finalize</a>; </div>
<div class="line"><a name="l00224"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a2f85189cbc3014b73164cf8c4eb87e0a"> 224</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a2f85189cbc3014b73164cf8c4eb87e0a">updateBounds</a>; </div>
<div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a3c4d2aa395ff8d0f70a6380448943be2"> 225</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a3c4d2aa395ff8d0f70a6380448943be2">total</a>; </div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> };</div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> </div>
<div class="line"><a name="l00231"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfca"> 231</a></span> <span class="keyword">enum</span> <a class="code" href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfca">NvFlexErrorSeverity</a></div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> {</div>
<div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa8aed6496f033604148138299fa075edd"> 233</a></span>  <a class="code" href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa8aed6496f033604148138299fa075edd">eNvFlexLogError</a> = 0, </div>
<div class="line"><a name="l00234"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa03d239332ae87f46270855dd06b6e58f"> 234</a></span>  <a class="code" href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa03d239332ae87f46270855dd06b6e58f">eNvFlexLogInfo</a> = 1, </div>
<div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa5538835c4767004ba5fd443ada08ea61"> 235</a></span>  <a class="code" href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa5538835c4767004ba5fd443ada08ea61">eNvFlexLogWarning</a> = 2, </div>
<div class="line"><a name="l00236"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa77b51759e33d60b2caf327bb4835351e"> 236</a></span>  <a class="code" href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa77b51759e33d60b2caf327bb4835351e">eNvFlexLogDebug</a> = 4, </div>
<div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa8feff72c0b0391e8adf3ddb6c39ef10e"> 237</a></span>  <a class="code" href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa8feff72c0b0391e8adf3ddb6c39ef10e">eNvFlexLogAll</a> = -1, </div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> };</div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> </div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  </div>
<div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9"> 243</a></span> <span class="keyword">enum</span> <a class="code" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9">NvFlexSolverCallbackStage</a></div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> {</div>
<div class="line"><a name="l00245"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a9f3914fdb03915a14ebe55a2c730e7ff"> 245</a></span>  <a class="code" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a9f3914fdb03915a14ebe55a2c730e7ff">eNvFlexStageIterationStart</a>, </div>
<div class="line"><a name="l00246"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9ab75a912c3990b0fbd6b06a6741a20e69"> 246</a></span>  <a class="code" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9ab75a912c3990b0fbd6b06a6741a20e69">eNvFlexStageIterationEnd</a>, </div>
<div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a79ce9005dbc92198a1f180c6afde6a44"> 247</a></span>  <a class="code" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a79ce9005dbc92198a1f180c6afde6a44">eNvFlexStageSubstepBegin</a>, </div>
<div class="line"><a name="l00248"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a6f13e2ebdbf21f8c8ebcfe1ac9160586"> 248</a></span>  <a class="code" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a6f13e2ebdbf21f8c8ebcfe1ac9160586">eNvFlexStageSubstepEnd</a>, </div>
<div class="line"><a name="l00249"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a260340ba9071892bd8795c3b29289806"> 249</a></span>  <a class="code" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a260340ba9071892bd8795c3b29289806">eNvFlexStageUpdateEnd</a>, </div>
<div class="line"><a name="l00250"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a1f2e7acff9b3b74922f90240d29fd1b3"> 250</a></span>  <a class="code" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a1f2e7acff9b3b74922f90240d29fd1b3">eNvFlexStageCount</a>, </div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> };</div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> </div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> </div>
<div class="line"><a name="l00266"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html"> 266</a></span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#struct_nv_flex_solver_callback_params">NvFlexSolverCallbackParams</a></div>
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> {</div>
<div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a3974e1e608d9f532d5520dc158b47903"> 268</a></span>  <a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* <a class="code" href="_nv_flex_8h.html#a3974e1e608d9f532d5520dc158b47903">solver</a>; </div>
<div class="line"><a name="l00269"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5b9af9cf4d889b4772cb61cefda92a87"> 269</a></span>  <span class="keywordtype">void</span>* <a class="code" href="_nv_flex_8h.html#a5b9af9cf4d889b4772cb61cefda92a87">userData</a>; </div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> </div>
<div class="line"><a name="l00271"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a8ed42f9bd016cbcef45c96b5b32ca609"> 271</a></span>  <span class="keywordtype">float</span>* <a class="code" href="_nv_flex_8h.html#a8ed42f9bd016cbcef45c96b5b32ca609">particles</a>; </div>
<div class="line"><a name="l00272"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ac48a490fa3d62cc678c309dd4b8cbf18"> 272</a></span>  <span class="keywordtype">float</span>* <a class="code" href="_nv_flex_8h.html#ac48a490fa3d62cc678c309dd4b8cbf18">velocities</a>; </div>
<div class="line"><a name="l00273"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a9e5f943053d43d7e1a6b149babe4fe44"> 273</a></span>  <span class="keywordtype">int</span>* <a class="code" href="_nv_flex_8h.html#a9e5f943053d43d7e1a6b149babe4fe44">phases</a>; </div>
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> </div>
<div class="line"><a name="l00275"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ac32019f7dd1f30ab8a7391a417ed02c9"> 275</a></span>  <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#ac32019f7dd1f30ab8a7391a417ed02c9">numActive</a>; </div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>  </div>
<div class="line"><a name="l00277"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a843360ebf23cd00e5eff72d19e796dd9"> 277</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a843360ebf23cd00e5eff72d19e796dd9">dt</a>; </div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> </div>
<div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#abe564dbbbd4957542322b60d77a70e29"> 279</a></span>  <span class="keyword">const</span> <span class="keywordtype">int</span>* <a class="code" href="_nv_flex_8h.html#abe564dbbbd4957542322b60d77a70e29">originalToSortedMap</a>; </div>
<div class="line"><a name="l00280"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a9b65813d2a2d3f99db162d39a62481f8"> 280</a></span>  <span class="keyword">const</span> <span class="keywordtype">int</span>* <a class="code" href="_nv_flex_8h.html#a9b65813d2a2d3f99db162d39a62481f8">sortedToOriginalMap</a>; </div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> };</div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> </div>
<div class="line"><a name="l00285"></a><span class="lineno"><a class="line" href="struct_nv_flex_solver_callback.html"> 285</a></span> <span class="keyword">struct </span><a class="code" href="struct_nv_flex_solver_callback.html">NvFlexSolverCallback</a></div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> {</div>
<div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="struct_nv_flex_solver_callback.html#a2878301f697313b3ef3ad1bc2410c915"> 288</a></span>  <span class="keywordtype">void</span>* <a class="code" href="struct_nv_flex_solver_callback.html#a2878301f697313b3ef3ad1bc2410c915">userData</a>;</div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>  </div>
<div class="line"><a name="l00291"></a><span class="lineno"><a class="line" href="struct_nv_flex_solver_callback.html#a728134bf4d667b207539d7318e42e92a"> 291</a></span>  void (*<span class="keyword">function</span>)(<a class="code" href="_nv_flex_8h.html#struct_nv_flex_solver_callback_params">NvFlexSolverCallbackParams</a> params);</div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> };</div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> </div>
<div class="line"><a name="l00297"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#abe6f00c9b94debbf7c181082a14076d5"> 297</a></span> <span class="keyword">typedef</span> void (*<a class="code" href="_nv_flex_8h.html#abe6f00c9b94debbf7c181082a14076d5">NvFlexErrorCallback</a>)(<a class="code" href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfca">NvFlexErrorSeverity</a> type, <span class="keyword">const</span> <span class="keywordtype">char</span>* msg, <span class="keyword">const</span> <span class="keywordtype">char</span>* file, <span class="keywordtype">int</span> line);</div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> </div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> </div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> </div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> </div>
<div class="line"><a name="l00304"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a9b2d3dc5ac42011aeec4e13be2e14252"> 304</a></span> <span class="keyword">enum</span> <a class="code" href="_nv_flex_8h.html#a9b2d3dc5ac42011aeec4e13be2e14252">NvFlexComputeType</a></div>
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> {</div>
<div class="line"><a name="l00306"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a9b2d3dc5ac42011aeec4e13be2e14252ad0c27f7aafdc4fe569722025c8eb2178"> 306</a></span>  <a class="code" href="_nv_flex_8h.html#a9b2d3dc5ac42011aeec4e13be2e14252ad0c27f7aafdc4fe569722025c8eb2178">eNvFlexCUDA</a>, </div>
<div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a9b2d3dc5ac42011aeec4e13be2e14252a297a93979a88fda6e6b551dcab5fb3df"> 307</a></span>  <a class="code" href="_nv_flex_8h.html#a9b2d3dc5ac42011aeec4e13be2e14252a297a93979a88fda6e6b551dcab5fb3df">eNvFlexD3D11</a>, </div>
<div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a9b2d3dc5ac42011aeec4e13be2e14252a15e78a7baf13cc7fd73f255ac84f0943"> 308</a></span>  <a class="code" href="_nv_flex_8h.html#a9b2d3dc5ac42011aeec4e13be2e14252a15e78a7baf13cc7fd73f255ac84f0943">eNvFlexD3D12</a>, </div>
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> };</div>
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> </div>
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> </div>
<div class="line"><a name="l00314"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html"> 314</a></span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#struct_nv_flex_init_desc">NvFlexInitDesc</a></div>
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> {</div>
<div class="line"><a name="l00316"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5890b9e46d626cfa19994976ea53c52e"> 316</a></span>  <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#a5890b9e46d626cfa19994976ea53c52e">deviceIndex</a>; </div>
<div class="line"><a name="l00317"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a23b8779c1516647ef5ed7f8010d619ff"> 317</a></span>  <span class="keywordtype">bool</span> <a class="code" href="_nv_flex_8h.html#a23b8779c1516647ef5ed7f8010d619ff">enableExtensions</a>; </div>
<div class="line"><a name="l00318"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a7e760844341b78a547ca4e29abf48806"> 318</a></span>  <span class="keywordtype">void</span>* <a class="code" href="_nv_flex_8h.html#a7e760844341b78a547ca4e29abf48806">renderDevice</a>; </div>
<div class="line"><a name="l00319"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#abf304d5c1f8f041fa46a2bfb0bdf56fe"> 319</a></span>  <span class="keywordtype">void</span>* <a class="code" href="_nv_flex_8h.html#abf304d5c1f8f041fa46a2bfb0bdf56fe">renderContext</a>; </div>
<div class="line"><a name="l00320"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ad1d0256dac295346120fda40f6eea7e2"> 320</a></span>  <span class="keywordtype">void</span>* <a class="code" href="_nv_flex_8h.html#ad1d0256dac295346120fda40f6eea7e2">computeContext</a>; </div>
<div class="line"><a name="l00321"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ad9503e8b23e084c0f940be3dcca9af2e"> 321</a></span>  <span class="keywordtype">bool</span> <a class="code" href="_nv_flex_8h.html#ad9503e8b23e084c0f940be3dcca9af2e">runOnRenderContext</a>; </div>
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> </div>
<div class="line"><a name="l00323"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aeeeaf91dad0804d1dd3125e592a3260b"> 323</a></span>  <a class="code" href="_nv_flex_8h.html#a9b2d3dc5ac42011aeec4e13be2e14252">NvFlexComputeType</a> <a class="code" href="_nv_flex_8h.html#aeeeaf91dad0804d1dd3125e592a3260b">computeType</a>; </div>
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> };</div>
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> </div>
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> NV_FLEX_API <a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* <a class="code" href="_nv_flex_8h.html#a687e5ec141948f779faa9183b68cb743">NvFlexInit</a>(<span class="keywordtype">int</span> version = NV_FLEX_VERSION, <a class="code" href="_nv_flex_8h.html#abe6f00c9b94debbf7c181082a14076d5">NvFlexErrorCallback</a> errorFunc = 0, <a class="code" href="_nv_flex_8h.html#struct_nv_flex_init_desc">NvFlexInitDesc</a>* desc = 0);</div>
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> </div>
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#aaf59e45ada57c7f958a8030099cbe211">NvFlexShutdown</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib);</div>
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> </div>
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> NV_FLEX_API <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#ac25ec5de38c177db51198bb620644d36">NvFlexGetVersion</a>();</div>
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> </div>
<div class="line"><a name="l00353"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aee5c235d5fab40831cf339680aa25560"> 353</a></span> <span class="keyword">enum</span> <a class="code" href="_nv_flex_8h.html#aee5c235d5fab40831cf339680aa25560">NvFlexFeatureMode</a></div>
<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> {</div>
<div class="line"><a name="l00355"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aee5c235d5fab40831cf339680aa25560a3ab06dc4cd4aa073ab0f2d96a56c499d"> 355</a></span>  <a class="code" href="_nv_flex_8h.html#aee5c235d5fab40831cf339680aa25560a3ab06dc4cd4aa073ab0f2d96a56c499d">eNvFlexFeatureModeDefault</a> = 0, </div>
<div class="line"><a name="l00356"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aee5c235d5fab40831cf339680aa25560a421fe1e1bb00fc41e9b32208cd9155f5"> 356</a></span>  <a class="code" href="_nv_flex_8h.html#aee5c235d5fab40831cf339680aa25560a421fe1e1bb00fc41e9b32208cd9155f5">eNvFlexFeatureModeSimpleSolids</a> = 1, </div>
<div class="line"><a name="l00357"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aee5c235d5fab40831cf339680aa25560aeab2b8a68b528d46e11b71ad0f4d83f2"> 357</a></span>  <a class="code" href="_nv_flex_8h.html#aee5c235d5fab40831cf339680aa25560aeab2b8a68b528d46e11b71ad0f4d83f2">eNvFlexFeatureModeSimpleFluids</a> = 2, </div>
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> };</div>
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> </div>
<div class="line"><a name="l00363"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html"> 363</a></span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#struct_nv_flex_solver_desc">NvFlexSolverDesc</a></div>
<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> {</div>
<div class="line"><a name="l00365"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a0999d825c8760e19ba4c980d2eb097ac"> 365</a></span>  <a class="code" href="_nv_flex_8h.html#aee5c235d5fab40831cf339680aa25560">NvFlexFeatureMode</a> <a class="code" href="_nv_flex_8h.html#a0999d825c8760e19ba4c980d2eb097ac">featureMode</a>; </div>
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> </div>
<div class="line"><a name="l00367"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aedf73c7aa1f4df92c7724d58f4dcb266"> 367</a></span>  <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#aedf73c7aa1f4df92c7724d58f4dcb266">maxParticles</a>; </div>
<div class="line"><a name="l00368"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a39ab69ac3fbde631b71f59f5bbbf1bdf"> 368</a></span>  <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#a39ab69ac3fbde631b71f59f5bbbf1bdf">maxDiffuseParticles</a>; </div>
<div class="line"><a name="l00369"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a5ea0cd160a13a72924340184edfbea2f"> 369</a></span>  <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#a5ea0cd160a13a72924340184edfbea2f">maxNeighborsPerParticle</a>; </div>
<div class="line"><a name="l00370"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a97d23c69cd4f343be14dedd911605276"> 370</a></span>  <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#a97d23c69cd4f343be14dedd911605276">maxContactsPerParticle</a>; </div>
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> };</div>
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> </div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a69a33d464c002a8916a5925c6ef32ae6">NvFlexSetSolverDescDefaults</a>(<a class="code" href="_nv_flex_8h.html#struct_nv_flex_solver_desc">NvFlexSolverDesc</a>* desc);</div>
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> </div>
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> NV_FLEX_API <a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* <a class="code" href="_nv_flex_8h.html#a9e925acbc34675dfe247da017cbd855f">NvFlexCreateSolver</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_solver_desc">NvFlexSolverDesc</a>* desc);</div>
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> </div>
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a1d755d7b090f7ed5c4c50d2d3fef1558">NvFlexDestroySolver</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver);</div>
<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> </div>
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> NV_FLEX_API <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#ad53909027df03c6a352746d8ddc088ef">NvFlexGetSolvers</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, <a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>** solvers, <span class="keywordtype">int</span> n);</div>
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> </div>
<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> NV_FLEX_API <a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* <a class="code" href="_nv_flex_8h.html#ae0d57e4fc2b3b51ec08f7da0a28ff343">NvFlexGetSolverLibrary</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver);</div>
<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> </div>
<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#afd6aff58269d6c359df2453c96397840">NvFlexGetSolverDesc</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#struct_nv_flex_solver_desc">NvFlexSolverDesc</a>* desc);</div>
<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> </div>
<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> NV_FLEX_API <a class="code" href="struct_nv_flex_solver_callback.html">NvFlexSolverCallback</a> <a class="code" href="_nv_flex_8h.html#ac5427457488ab3f2de91cf65335dda08">NvFlexRegisterSolverCallback</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="struct_nv_flex_solver_callback.html">NvFlexSolverCallback</a> <span class="keyword">function</span>, <a class="code" href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9">NvFlexSolverCallbackStage</a> stage);</div>
<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> </div>
<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#ac75370f005fd453fe8a324fe62be1b5c">NvFlexUpdateSolver</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <span class="keywordtype">float</span> dt, <span class="keywordtype">int</span> substeps, <span class="keywordtype">bool</span> enableTimers);</div>
<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> </div>
<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#ae2db6ad8006027c1acf2315a0d15fe71">NvFlexSetParams</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_params">NvFlexParams</a>* params);</div>
<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> </div>
<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a581b458848039220203547af53de128f">NvFlexGetParams</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#struct_nv_flex_params">NvFlexParams</a>* params);</div>
<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> </div>
<div class="line"><a name="l00512"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html"> 512</a></span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a></div>
<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> {</div>
<div class="line"><a name="l00514"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ae01bc8c45cf48f5faed2a8e78df1c678"> 514</a></span>  <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#ae01bc8c45cf48f5faed2a8e78df1c678">srcOffset</a>; <span class="comment">//<! Offset in elements from the start of the source buffer to begin reading from</span></div>
<div class="line"><a name="l00515"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aa544809448a95c3864e1443c7a507d7f"> 515</a></span>  <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#aa544809448a95c3864e1443c7a507d7f">dstOffset</a>; <span class="comment">//<! Offset in elements from the start of the destination buffer to being writing to</span></div>
<div class="line"><a name="l00516"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#af842f041f92c608b3ebfa2092caea889"> 516</a></span>  <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#af842f041f92c608b3ebfa2092caea889">elementCount</a>; <span class="comment">//<! Number of elements to copy</span></div>
<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> };</div>
<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> </div>
<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#adc0c97635cdbb3da7b571574a3b38990">NvFlexSetActive</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* indices, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> </div>
<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a1bd4b70e0118abe18ca5fe85157299b6">NvFlexGetActive</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* indices, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> </div>
<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a677dc591fe443ae058701966c52d1316">NvFlexSetActiveCount</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <span class="keywordtype">int</span> n);</div>
<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> </div>
<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> NV_FLEX_API <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#a2345372dea2ad4f043153a84e7a2c407">NvFlexGetActiveCount</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver);</div>
<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> </div>
<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a7ec5ebe3e98a44a2058d6be74b2cb633">NvFlexSetParticles</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* p, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> </div>
<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#aaff62cfd50431d82af5d04a6c9ac4ffd">NvFlexGetParticles</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* p, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> </div>
<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a125cfd9817437bb4f4bcb9418efa3dda">NvFlexSetRestParticles</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* p, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> </div>
<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#aafc89f87307602fb9bfa8f6668122121">NvFlexGetRestParticles</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* p, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> </div>
<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> </div>
<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a96a771dd328d019e6164e5f23d29ffcb">NvFlexGetSmoothParticles</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* p, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> </div>
<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#ae2b271f123db0054512936f2acc6467f">NvFlexSetVelocities</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* v, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#afbcbff4e4865105514c194398ab3a7b0">NvFlexGetVelocities</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* v, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> </div>
<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#aa1d44495e442f8cae874c635ef847478">NvFlexSetPhases</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* phases, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#accc944f0e76ee2e5d67c3f977b150806">NvFlexGetPhases</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* phases, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> </div>
<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a32e8fdb39029a2564c129bd493c52058">NvFlexSetNormals</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* normals, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> </div>
<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a73d87b460a34c52ff4b616e97a53ade7">NvFlexGetNormals</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* normals, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> </div>
<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> </div>
<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#ae67c0cab2ecee8eb9485a26ef0fad6a9">NvFlexSetSprings</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* indices, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* restLengths, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* stiffness, <span class="keywordtype">int</span> numSprings);</div>
<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#aab5f90f4024d71d08c3f9327c6d8c184">NvFlexGetSprings</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* indices, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* restLengths, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* stiffness, <span class="keywordtype">int</span> numSprings);</div>
<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> </div>
<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#aa8b7bfeffb0fa7dc6dbd291fee87edc9">NvFlexSetRigids</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* offsets, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* indices, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* restPositions, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* restNormals, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* stiffness, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* thresholds, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* creeps, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* rotations, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* translations, <span class="keywordtype">int</span> numRigids, <span class="keywordtype">int</span> numIndices);</div>
<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> </div>
<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#ab5cc56e228374b1da0910356b3172b4e">NvFlexGetRigids</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* offsets, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* indices, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* restPositions, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* restNormals, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* stiffness, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* thresholds, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* creeps, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* rotations, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* translations);</div>
<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> </div>
<div class="line"><a name="l00730"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a2aea4c3d772b4dbccb7dd9ba37c1bdc0"> 730</a></span> <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#a2aea4c3d772b4dbccb7dd9ba37c1bdc0">NvFlexTriangleMeshId</a>;</div>
<div class="line"><a name="l00731"></a><span class="lineno"> 731</span> </div>
<div class="line"><a name="l00735"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a56e990c5bfbc89677988cbf2471c0ade"> 735</a></span> <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#a56e990c5bfbc89677988cbf2471c0ade">NvFlexDistanceFieldId</a>;</div>
<div class="line"><a name="l00736"></a><span class="lineno"> 736</span> </div>
<div class="line"><a name="l00742"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a7ab5aa68da7ca1f69211a900f1a1c586"> 742</a></span> <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#a7ab5aa68da7ca1f69211a900f1a1c586">NvFlexConvexMeshId</a>;</div>
<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> </div>
<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> NV_FLEX_API NvFlexTriangleMeshId <a class="code" href="_nv_flex_8h.html#afdda5a5210938a1e8a7c3a8218ad468e">NvFlexCreateTriangleMesh</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib);</div>
<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> </div>
<div class="line"><a name="l00758"></a><span class="lineno"> 758</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a4cb4462803ebff105d151fd45b4efad6">NvFlexDestroyTriangleMesh</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, NvFlexTriangleMeshId mesh);</div>
<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> </div>
<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> NV_FLEX_API <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#ab1924ab797971290931b32258b847767">NvFlexGetTriangleMeshes</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, NvFlexTriangleMeshId* meshes, <span class="keywordtype">int</span> n);</div>
<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> </div>
<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a4958c555f0ed65dee54c37af32529356">NvFlexUpdateTriangleMesh</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, NvFlexTriangleMeshId mesh, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* vertices, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* indices, <span class="keywordtype">int</span> numVertices, <span class="keywordtype">int</span> numTriangles, <span class="keyword">const</span> <span class="keywordtype">float</span>* lower, <span class="keyword">const</span> <span class="keywordtype">float</span>* upper);</div>
<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> </div>
<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a60794d849b4184335e2a0ddec0a9e6a2">NvFlexGetTriangleMeshBounds</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, <span class="keyword">const</span> NvFlexTriangleMeshId mesh, <span class="keywordtype">float</span>* lower, <span class="keywordtype">float</span>* upper);</div>
<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> </div>
<div class="line"><a name="l00802"></a><span class="lineno"> 802</span> NV_FLEX_API NvFlexDistanceFieldId <a class="code" href="_nv_flex_8h.html#a5c28caf6d5d513c5adacd4fbc782f308">NvFlexCreateDistanceField</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib);</div>
<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> </div>
<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#ab11bdd7f778d17af16cefea33265cb65">NvFlexDestroyDistanceField</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, NvFlexDistanceFieldId sdf);</div>
<div class="line"><a name="l00811"></a><span class="lineno"> 811</span> </div>
<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> NV_FLEX_API <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#a554d54b930dad17e638ddd30c6dac46f">NvFlexGetDistanceFields</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, NvFlexDistanceFieldId* sdfs, <span class="keywordtype">int</span> n);</div>
<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> </div>
<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a584ffb275b9986fd5444ed1a7ea247d9">NvFlexUpdateDistanceField</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, NvFlexDistanceFieldId sdf, <span class="keywordtype">int</span> dimx, <span class="keywordtype">int</span> dimy, <span class="keywordtype">int</span> dimz, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* field);</div>
<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> </div>
<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> NV_FLEX_API NvFlexConvexMeshId <a class="code" href="_nv_flex_8h.html#afbaafe2b1006352002b03aabaca531cc">NvFlexCreateConvexMesh</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib);</div>
<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> </div>
<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#ac85b6372e5c7bfc508ecb7b8c59c72a0">NvFlexDestroyConvexMesh</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, NvFlexConvexMeshId convex);</div>
<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> </div>
<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> NV_FLEX_API <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#aa392608715b2304f06606d498bd69312">NvFlexGetConvexMeshes</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, NvFlexConvexMeshId* meshes, <span class="keywordtype">int</span> n);</div>
<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> </div>
<div class="line"><a name="l00873"></a><span class="lineno"> 873</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#ab452c355f92dda050d4b4dafb8e71b03">NvFlexUpdateConvexMesh</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, NvFlexConvexMeshId convex, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* planes, <span class="keywordtype">int</span> numPlanes, <span class="keyword">const</span> <span class="keywordtype">float</span>* lower, <span class="keyword">const</span> <span class="keywordtype">float</span>* upper);</div>
<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> </div>
<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#ad56e661161763579afb375b3841eb5ff">NvFlexGetConvexMeshBounds</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, NvFlexConvexMeshId mesh, <span class="keywordtype">float</span>* lower, <span class="keywordtype">float</span>* upper);</div>
<div class="line"><a name="l00884"></a><span class="lineno"> 884</span> </div>
<div class="line"><a name="l00888"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html"> 888</a></span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#struct_nv_flex_sphere_geometry">NvFlexSphereGeometry</a></div>
<div class="line"><a name="l00889"></a><span class="lineno"> 889</span> {</div>
<div class="line"><a name="l00890"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a7a6e24c01235abc364ed12570ab15f84"> 890</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a7a6e24c01235abc364ed12570ab15f84">radius</a>;</div>
<div class="line"><a name="l00891"></a><span class="lineno"> 891</span> };</div>
<div class="line"><a name="l00892"></a><span class="lineno"> 892</span> </div>
<div class="line"><a name="l00896"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html"> 896</a></span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#struct_nv_flex_capsule_geometry">NvFlexCapsuleGeometry</a></div>
<div class="line"><a name="l00897"></a><span class="lineno"> 897</span> {</div>
<div class="line"><a name="l00898"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a1241ff3522eafac4b402370a7a6525d8"> 898</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a1241ff3522eafac4b402370a7a6525d8">radius</a>;</div>
<div class="line"><a name="l00899"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#aef1b5bceccca709ebb782d2ea8a61dc9"> 899</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#aef1b5bceccca709ebb782d2ea8a61dc9">halfHeight</a>;</div>
<div class="line"><a name="l00900"></a><span class="lineno"> 900</span> };</div>
<div class="line"><a name="l00901"></a><span class="lineno"> 901</span> </div>
<div class="line"><a name="l00905"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html"> 905</a></span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#struct_nv_flex_box_geometry">NvFlexBoxGeometry</a></div>
<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> {</div>
<div class="line"><a name="l00907"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ab669c404607156367b09878870dbe30c"> 907</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#ab669c404607156367b09878870dbe30c">halfExtents</a>[3];</div>
<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> };</div>
<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> </div>
<div class="line"><a name="l00913"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html"> 913</a></span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#struct_nv_flex_convex_mesh_geometry">NvFlexConvexMeshGeometry</a></div>
<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> {</div>
<div class="line"><a name="l00915"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a800620cc4888bbe5696c5f0e19b22bb9"> 915</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a800620cc4888bbe5696c5f0e19b22bb9">scale</a>[3];</div>
<div class="line"><a name="l00916"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#abdc984644770fec15d7af740c9730186"> 916</a></span>  NvFlexConvexMeshId <a class="code" href="_nv_flex_8h.html#abdc984644770fec15d7af740c9730186">mesh</a>;</div>
<div class="line"><a name="l00917"></a><span class="lineno"> 917</span> };</div>
<div class="line"><a name="l00918"></a><span class="lineno"> 918</span> </div>
<div class="line"><a name="l00922"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html"> 922</a></span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#struct_nv_flex_triangle_mesh_geometry">NvFlexTriangleMeshGeometry</a></div>
<div class="line"><a name="l00923"></a><span class="lineno"> 923</span> {</div>
<div class="line"><a name="l00924"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ab6e2aa06b69e92cbd3b2bca19f18e794"> 924</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#ab6e2aa06b69e92cbd3b2bca19f18e794">scale</a>[3]; </div>
<div class="line"><a name="l00925"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#af6a50e64591866ae2390a57e3342566c"> 925</a></span>  NvFlexTriangleMeshId <a class="code" href="_nv_flex_8h.html#af6a50e64591866ae2390a57e3342566c">mesh</a>; </div>
<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> };</div>
<div class="line"><a name="l00927"></a><span class="lineno"> 927</span> </div>
<div class="line"><a name="l00932"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html"> 932</a></span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#struct_nv_flex_s_d_f_geometry">NvFlexSDFGeometry</a></div>
<div class="line"><a name="l00933"></a><span class="lineno"> 933</span> {</div>
<div class="line"><a name="l00934"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a0008a52f6ae1e17c436b095549bf1c78"> 934</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a0008a52f6ae1e17c436b095549bf1c78">scale</a>; </div>
<div class="line"><a name="l00935"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a0a6936f3cb0544ad624f1dea6b7eb50c"> 935</a></span>  NvFlexDistanceFieldId <a class="code" href="_nv_flex_8h.html#a0a6936f3cb0544ad624f1dea6b7eb50c">field</a>; </div>
<div class="line"><a name="l00936"></a><span class="lineno"> 936</span> };</div>
<div class="line"><a name="l00937"></a><span class="lineno"> 937</span> </div>
<div class="line"><a name="l00942"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html"> 942</a></span> <span class="keyword">union </span><a class="code" href="_nv_flex_8h.html#union_nv_flex_collision_geometry">NvFlexCollisionGeometry</a></div>
<div class="line"><a name="l00943"></a><span class="lineno"> 943</span> {</div>
<div class="line"><a name="l00944"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a0e3c0e02ec7addd25ebb3355a8865bfb"> 944</a></span>  <a class="code" href="_nv_flex_8h.html#struct_nv_flex_sphere_geometry">NvFlexSphereGeometry</a> <a class="code" href="_nv_flex_8h.html#a0e3c0e02ec7addd25ebb3355a8865bfb">sphere</a>;</div>
<div class="line"><a name="l00945"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a8ad5aa3c9c9456607de9a2c9f1d0d2c1"> 945</a></span>  <a class="code" href="_nv_flex_8h.html#struct_nv_flex_capsule_geometry">NvFlexCapsuleGeometry</a> <a class="code" href="_nv_flex_8h.html#a8ad5aa3c9c9456607de9a2c9f1d0d2c1">capsule</a>;</div>
<div class="line"><a name="l00946"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a53e827707abaf2e03b78c3c88469d7bf"> 946</a></span>  <a class="code" href="_nv_flex_8h.html#struct_nv_flex_box_geometry">NvFlexBoxGeometry</a> <a class="code" href="_nv_flex_8h.html#a53e827707abaf2e03b78c3c88469d7bf">box</a>;</div>
<div class="line"><a name="l00947"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ae701fdcc0e7bf26c1dfc54d400ffb3d2"> 947</a></span>  <a class="code" href="_nv_flex_8h.html#struct_nv_flex_convex_mesh_geometry">NvFlexConvexMeshGeometry</a> <a class="code" href="_nv_flex_8h.html#ae701fdcc0e7bf26c1dfc54d400ffb3d2">convexMesh</a>;</div>
<div class="line"><a name="l00948"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a064e3ce30320610d495ba3faa72dc8d6"> 948</a></span>  <a class="code" href="_nv_flex_8h.html#struct_nv_flex_triangle_mesh_geometry">NvFlexTriangleMeshGeometry</a> <a class="code" href="_nv_flex_8h.html#a064e3ce30320610d495ba3faa72dc8d6">triMesh</a>;</div>
<div class="line"><a name="l00949"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ac0049037dcff7a769030acd567eac6cd"> 949</a></span>  <a class="code" href="_nv_flex_8h.html#struct_nv_flex_s_d_f_geometry">NvFlexSDFGeometry</a> <a class="code" href="_nv_flex_8h.html#ac0049037dcff7a769030acd567eac6cd">sdf</a>;</div>
<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> };</div>
<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> </div>
<div class="line"><a name="l00952"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26ba"> 952</a></span> <span class="keyword">enum</span> <a class="code" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26ba">NvFlexCollisionShapeType</a></div>
<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> {</div>
<div class="line"><a name="l00954"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baae22144512ae098865c6725af16a68ad3"> 954</a></span>  <a class="code" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baae22144512ae098865c6725af16a68ad3">eNvFlexShapeSphere</a> = 0, </div>
<div class="line"><a name="l00955"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baa1724c140b583fbf2c11c14a24dd3764a"> 955</a></span>  <a class="code" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baa1724c140b583fbf2c11c14a24dd3764a">eNvFlexShapeCapsule</a> = 1, </div>
<div class="line"><a name="l00956"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baab17c8dd4f9500016b77a9b49de3c48e7"> 956</a></span>  <a class="code" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baab17c8dd4f9500016b77a9b49de3c48e7">eNvFlexShapeBox</a> = 2, </div>
<div class="line"><a name="l00957"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baaed52f0e803c6745ffc1a5f018a8756ce"> 957</a></span>  <a class="code" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baaed52f0e803c6745ffc1a5f018a8756ce">eNvFlexShapeConvexMesh</a> = 3, </div>
<div class="line"><a name="l00958"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baa315488da382a5e9794c83358385f7ae1"> 958</a></span>  <a class="code" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baa315488da382a5e9794c83358385f7ae1">eNvFlexShapeTriangleMesh</a> = 4, </div>
<div class="line"><a name="l00959"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baa1fd78f8694b954f8d12fe7d911f17180"> 959</a></span>  <a class="code" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baa1fd78f8694b954f8d12fe7d911f17180">eNvFlexShapeSDF</a> = 5, </div>
<div class="line"><a name="l00960"></a><span class="lineno"> 960</span> };</div>
<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> </div>
<div class="line"><a name="l00962"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304c"> 962</a></span> <span class="keyword">enum</span> <a class="code" href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304c">NvFlexCollisionShapeFlags</a></div>
<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> {</div>
<div class="line"><a name="l00964"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304cae8a10737948abf6973f0f1d66bae7ef8"> 964</a></span>  <a class="code" href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304cae8a10737948abf6973f0f1d66bae7ef8">eNvFlexShapeFlagTypeMask</a> = 0x7, </div>
<div class="line"><a name="l00965"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304cadc6740cf6d829fba159d92e43ffb5992"> 965</a></span>  <a class="code" href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304cadc6740cf6d829fba159d92e43ffb5992">eNvFlexShapeFlagDynamic</a> = 0x8, </div>
<div class="line"><a name="l00966"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304ca409215fa9b917f2d0830a66bd11b3ff8"> 966</a></span>  <a class="code" href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304ca409215fa9b917f2d0830a66bd11b3ff8">eNvFlexShapeFlagTrigger</a> = 0x10, </div>
<div class="line"><a name="l00967"></a><span class="lineno"> 967</span>  </div>
<div class="line"><a name="l00968"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304caa1c1225f6b8b2906c83748cfc46b81d9"> 968</a></span>  <a class="code" href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304caa1c1225f6b8b2906c83748cfc46b81d9">eNvFlexShapeFlagReserved</a> = 0xffffff00</div>
<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> };</div>
<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> </div>
<div class="line"><a name="l00978"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ad83b7fb561a91467a3094771bb682b96"> 978</a></span> NV_FLEX_API <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#ad83b7fb561a91467a3094771bb682b96">NvFlexMakeShapeFlagsWithChannels</a>(<a class="code" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26ba">NvFlexCollisionShapeType</a> type, <span class="keywordtype">bool</span> dynamic, <span class="keywordtype">int</span> shapeChannels) { <span class="keywordflow">return</span> type | (dynamic?<a class="code" href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304cadc6740cf6d829fba159d92e43ffb5992">eNvFlexShapeFlagDynamic</a>:0) | shapeChannels; }</div>
<div class="line"><a name="l00979"></a><span class="lineno"> 979</span> </div>
<div class="line"><a name="l00983"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#ad6ee1e23e0c49aad63df8f605182de3a"> 983</a></span> NV_FLEX_API <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#ad6ee1e23e0c49aad63df8f605182de3a">NvFlexMakeShapeFlags</a>(<a class="code" href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26ba">NvFlexCollisionShapeType</a> type, <span class="keywordtype">bool</span> dynamic) { <span class="keywordflow">return</span> <a class="code" href="_nv_flex_8h.html#ad83b7fb561a91467a3094771bb682b96">NvFlexMakeShapeFlagsWithChannels</a>(type, dynamic, <a class="code" href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644ae4ea43366942f719f40e8526ad21a038">eNvFlexPhaseShapeChannelMask</a>); }</div>
<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> </div>
<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> </div>
<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#aea4e7117722df53dfe44c676496117fa">NvFlexSetShapes</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* geometry, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* shapePositions, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* shapeRotations, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* shapePrevPositions, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* shapePrevRotations, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* shapeFlags, <span class="keywordtype">int</span> numShapes);</div>
<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> </div>
<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#aa03d94be697cdc3aaa56e469d87255a4">NvFlexSetDynamicTriangles</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* indices, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* normals, <span class="keywordtype">int</span> numTris);</div>
<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#abdfd0834422dd99154a27962614525e5">NvFlexGetDynamicTriangles</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* indices, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* normals, <span class="keywordtype">int</span> numTris);</div>
<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span> </div>
<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a7f2b59fba77c60ce116e1eac57d63e50">NvFlexSetInflatables</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* startTris, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* numTris, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* restVolumes, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* overPressures, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* constraintScales, <span class="keywordtype">int</span> numInflatables);</div>
<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span> </div>
<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a3a20cc2539983a009caaf77ec9ceab82">NvFlexGetDensities</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* densities, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span> </div>
<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#aef768edc8e4df1a78a94a6c971541550">NvFlexGetAnisotropy</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* q1, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* q2, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* q3, <span class="keyword">const</span> <a class="code" href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a>* desc);</div>
<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#afa458a6eec8b0d117e53c40c13788fd9">NvFlexGetDiffuseParticles</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* p, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* v, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* count);</div>
<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> </div>
<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a5a7213593dd9a23d9d67f8517d1da9de">NvFlexSetDiffuseParticles</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* p, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* v, <span class="keywordtype">int</span> n);</div>
<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span> </div>
<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a7edac9cf450917147b83e98f5cb09f5d">NvFlexGetContacts</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* planes, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* velocities, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* indices, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* counts);</div>
<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span> </div>
<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#abbee38b5413bbfd1db914c66fcdfc616">NvFlexGetNeighbors</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* neighbors, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* counts, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* apiToInternal, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* internalToApi);</div>
<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span> </div>
<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#ab1eec84a21b1872fba11c9b4cc1d1629">NvFlexGetBounds</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* lower, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* upper);</div>
<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span> </div>
<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span> NV_FLEX_API <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#aa77d2a4edd4ccd79c9389854dca80613">NvFlexGetDeviceLatency</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span>* begin, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span>* end, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span>* frequency);</div>
<div class="line"><a name="l01166"></a><span class="lineno"> 1166</span> </div>
<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#ab16b6d2e11e0ab417ee6c4cf16f0a27d">NvFlexGetTimers</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#struct_nv_flex_timers">NvFlexTimers</a>* timers);</div>
<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span> </div>
<div class="line"><a name="l01182"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html"> 1182</a></span> <span class="keyword">struct </span><a class="code" href="_nv_flex_8h.html#struct_nv_flex_detail_timer">NvFlexDetailTimer</a></div>
<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span> { </div>
<div class="line"><a name="l01184"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a3ddbb30a2fde4a2e9ccec7854300b1d4"> 1184</a></span>  <span class="keywordtype">char</span>* <a class="code" href="_nv_flex_8h.html#a3ddbb30a2fde4a2e9ccec7854300b1d4">name</a>; </div>
<div class="line"><a name="l01185"></a><span class="lineno"><a class="line" href="_nv_flex_8h.html#a83f6117fe98bc6426027a9b784fd737c"> 1185</a></span>  <span class="keywordtype">float</span> <a class="code" href="_nv_flex_8h.html#a83f6117fe98bc6426027a9b784fd737c">time</a>;</div>
<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span> };</div>
<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span> </div>
<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span> NV_FLEX_API <span class="keywordtype">int</span> <a class="code" href="_nv_flex_8h.html#ab1efb6764f65900cb09f0188ad6da08a">NvFlexGetDetailTimers</a>(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#struct_nv_flex_detail_timer">NvFlexDetailTimer</a>** timers);</div>
<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span> </div>
<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span> NV_FLEX_API <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* <a class="code" href="_nv_flex_8h.html#ad48f83b8442323687d2268206e913496">NvFlexAllocBuffer</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, <span class="keywordtype">int</span> elementCount, <span class="keywordtype">int</span> elementByteStride, <a class="code" href="_nv_flex_8h.html#a169e4c126acf46bdebf76c36a44deca3">NvFlexBufferType</a> type);</div>
<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span> </div>
<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#ab559759820a4322aff061745ef26c867">NvFlexFreeBuffer</a>(<a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* buf);</div>
<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span> </div>
<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span> NV_FLEX_API <span class="keywordtype">void</span>* <a class="code" href="_nv_flex_8h.html#a0898bb9210440b159688d4647f6eb083">NvFlexMap</a>(<a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* buffer, <span class="keywordtype">int</span> flags);</div>
<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span> </div>
<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a054cb27646a389ea257d1bbde46a6e97">NvFlexUnmap</a>(<a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* buffer);</div>
<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span> </div>
<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span> NV_FLEX_API <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* <a class="code" href="_nv_flex_8h.html#aab83daf46e5a9428a0ad76fb75e8ec7e">NvFlexRegisterOGLBuffer</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, <span class="keywordtype">int</span> buf, <span class="keywordtype">int</span> elementCount, <span class="keywordtype">int</span> elementByteStride);</div>
<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span> </div>
<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a78045a8d4e856372df108dc616a94cd8">NvFlexUnregisterOGLBuffer</a>(<a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* buf);</div>
<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span> </div>
<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span> NV_FLEX_API <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* <a class="code" href="_nv_flex_8h.html#ab487e68ce1c84ce1eec0c85b7daf5aa0">NvFlexRegisterD3DBuffer</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, <span class="keywordtype">void</span>* buffer, <span class="keywordtype">int</span> elementCount, <span class="keywordtype">int</span> elementByteStride);</div>
<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span> </div>
<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#ad607e7916e5d76b384a61f1c1f94ab32">NvFlexUnregisterD3DBuffer</a>(<a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* buf);</div>
<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span> </div>
<div class="line"><a name="l01299"></a><span class="lineno"> 1299</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a42ec7b30c79d4733e6a756b5d9b15ee6">NvFlexAcquireContext</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib);</div>
<div class="line"><a name="l01300"></a><span class="lineno"> 1300</span> </div>
<div class="line"><a name="l01305"></a><span class="lineno"> 1305</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#ae6671f352bd77e296609d0bc2a57fd11">NvFlexRestoreContext</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib);</div>
<div class="line"><a name="l01306"></a><span class="lineno"> 1306</span> </div>
<div class="line"><a name="l01312"></a><span class="lineno"> 1312</span> NV_FLEX_API <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="_nv_flex_8h.html#a4c451971259524c6878b6b1ed4023ada">NvFlexGetDeviceName</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib);</div>
<div class="line"><a name="l01313"></a><span class="lineno"> 1313</span> </div>
<div class="line"><a name="l01323"></a><span class="lineno"> 1323</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a2ac0a898a565a2cdf13b80acd4a3555c">NvFlexGetDeviceAndContext</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, <span class="keywordtype">void</span>** device, <span class="keywordtype">void</span>** context);</div>
<div class="line"><a name="l01324"></a><span class="lineno"> 1324</span>  </div>
<div class="line"><a name="l01325"></a><span class="lineno"> 1325</span> </div>
<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a898eb8e66a456dd2266c694f29cab600">NvFlexFlush</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib);</div>
<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span> </div>
<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span> NV_FLEX_API <span class="keywordtype">void</span> <a class="code" href="_nv_flex_8h.html#a615d2e6eec2486a5db815d929f9c642c">NvFlexWait</a>(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib);</div>
<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span> </div>
<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span> </div>
<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span> NV_FLEX_API <span class="keywordtype">void</span> NvFlexSetDebug(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <span class="keywordtype">bool</span> enable);</div>
<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span> NV_FLEX_API <span class="keywordtype">void</span> NvFlexGetShapeBVH(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <span class="keywordtype">void</span>* bvh);</div>
<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span> NV_FLEX_API <span class="keywordtype">void</span> NvFlexCopySolver(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* dst, <a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* src);</div>
<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span> NV_FLEX_API <span class="keywordtype">void</span> NvFlexCopyDeviceToHost(<a class="code" href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a>* solver, <a class="code" href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a>* pDevice, <span class="keywordtype">void</span>* pHost, <span class="keywordtype">int</span> size, <span class="keywordtype">int</span> stride);</div>
<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span> NV_FLEX_API <span class="keywordtype">void</span> NvFlexComputeWaitForGraphics(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib);</div>
<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span> NV_FLEX_API <span class="keywordtype">void</span> NvFlexGetDataAftermath(<a class="code" href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a>* lib, <span class="keywordtype">void</span>* pDataOut, <span class="keywordtype">void</span>* pStatusOut);</div>
<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span> </div>
<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span> </div>
<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span> } <span class="comment">// extern "C"</span></div>
<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span> </div>
<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span> <span class="preprocessor">#endif // NV_FLEX_H</span></div>
<div class="ttc" id="_nv_flex_8h_html_a2345372dea2ad4f043153a84e7a2c407"><div class="ttname"><a href="_nv_flex_8h.html#a2345372dea2ad4f043153a84e7a2c407">NvFlexGetActiveCount</a></div><div class="ttdeci">NV_FLEX_API int NvFlexGetActiveCount(NvFlexSolver *solver)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644a52ee05f3e425c336856277774bc9f69f"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a52ee05f3e425c336856277774bc9f69f">eNvFlexPhaseUnused</a></div><div class="ttdoc">Reserved. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:169</div></div>
<div class="ttc" id="_nv_flex_8h_html_abdd60b0a83674283d09b4897fdd637a2"><div class="ttname"><a href="_nv_flex_8h.html#abdd60b0a83674283d09b4897fdd637a2">NvFlexTimers::solveShapes</a></div><div class="ttdeci">float solveShapes</div><div class="ttdoc">Time spent solving rigid body constraints. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:214</div></div>
<div class="ttc" id="_nv_flex_8h_html_ac5427457488ab3f2de91cf65335dda08"><div class="ttname"><a href="_nv_flex_8h.html#ac5427457488ab3f2de91cf65335dda08">NvFlexRegisterSolverCallback</a></div><div class="ttdeci">NV_FLEX_API NvFlexSolverCallback NvFlexRegisterSolverCallback(NvFlexSolver *solver, NvFlexSolverCallback function, NvFlexSolverCallbackStage stage)</div></div>
<div class="ttc" id="_nv_flex_8h_html_accc944f0e76ee2e5d67c3f977b150806"><div class="ttname"><a href="_nv_flex_8h.html#accc944f0e76ee2e5d67c3f977b150806">NvFlexGetPhases</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetPhases(NvFlexSolver *solver, NvFlexBuffer *phases, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a7a6e24c01235abc364ed12570ab15f84"><div class="ttname"><a href="_nv_flex_8h.html#a7a6e24c01235abc364ed12570ab15f84">NvFlexSphereGeometry::radius</a></div><div class="ttdeci">float radius</div><div class="ttdef"><b>Definition:</b> NvFlex.h:890</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab4435b3857752360375fe52fc992cfcaa5538835c4767004ba5fd443ada08ea61"><div class="ttname"><a href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa5538835c4767004ba5fd443ada08ea61">eNvFlexLogWarning</a></div><div class="ttdoc">Warning messages. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:235</div></div>
<div class="ttc" id="_nv_flex_8h_html_a57e4d27b0aa8774e479fa66d65079f78"><div class="ttname"><a href="_nv_flex_8h.html#a57e4d27b0aa8774e479fa66d65079f78">NvFlexTimers::solveSprings</a></div><div class="ttdeci">float solveSprings</div><div class="ttdoc">Time spent solving distance constraints. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:215</div></div>
<div class="ttc" id="_nv_flex_8h_html_a6541b33eaca7b2323e73b30cea34d16c"><div class="ttname"><a href="_nv_flex_8h.html#a6541b33eaca7b2323e73b30cea34d16c">NvFlexMapFlags</a></div><div class="ttdeci">NvFlexMapFlags</div><div class="ttdef"><b>Definition:</b> NvFlex.h:67</div></div>
<div class="ttc" id="_nv_flex_8h_html_a39ab69ac3fbde631b71f59f5bbbf1bdf"><div class="ttname"><a href="_nv_flex_8h.html#a39ab69ac3fbde631b71f59f5bbbf1bdf">NvFlexSolverDesc::maxDiffuseParticles</a></div><div class="ttdeci">int maxDiffuseParticles</div><div class="ttdoc">Maximum number of diffuse particles in the solver. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:368</div></div>
<div class="ttc" id="_nv_flex_8h_html_abe6f00c9b94debbf7c181082a14076d5"><div class="ttname"><a href="_nv_flex_8h.html#abe6f00c9b94debbf7c181082a14076d5">NvFlexErrorCallback</a></div><div class="ttdeci">void(* NvFlexErrorCallback)(NvFlexErrorSeverity type, const char *msg, const char *file, int line)</div><div class="ttdef"><b>Definition:</b> NvFlex.h:297</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab4435b3857752360375fe52fc992cfcaa03d239332ae87f46270855dd06b6e58f"><div class="ttname"><a href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa03d239332ae87f46270855dd06b6e58f">eNvFlexLogInfo</a></div><div class="ttdoc">Information messages. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:234</div></div>
<div class="ttc" id="_nv_flex_8h_html_ac017e05107d0362d3d03a14eaadf0657"><div class="ttname"><a href="_nv_flex_8h.html#ac017e05107d0362d3d03a14eaadf0657">NvFlexParams::smoothing</a></div><div class="ttdeci">float smoothing</div><div class="ttdoc">Control the strength of Laplacian smoothing in particles for rendering, if zero then smoothed positio...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:132</div></div>
<div class="ttc" id="_nv_flex_8h_html_ae2db6ad8006027c1acf2315a0d15fe71"><div class="ttname"><a href="_nv_flex_8h.html#ae2db6ad8006027c1acf2315a0d15fe71">NvFlexSetParams</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetParams(NvFlexSolver *solver, const NvFlexParams *params)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a4f80c8bcfa6de99a52983adb13d80db9a260340ba9071892bd8795c3b29289806"><div class="ttname"><a href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a260340ba9071892bd8795c3b29289806">eNvFlexStageUpdateEnd</a></div><div class="ttdoc">Called at the end of solver update after the final substep has completed. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:249</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644ab4034dbf78d6045ee13278531ee21c2b"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644ab4034dbf78d6045ee13278531ee21c2b">eNvFlexPhaseShapeChannel3</a></div><div class="ttdoc">Particle will collide with shapes with channel 3 set (see NvFlexMakeShapeFlags()) ...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:174</div></div>
<div class="ttc" id="_nv_flex_8h_html_a4958c555f0ed65dee54c37af32529356"><div class="ttname"><a href="_nv_flex_8h.html#a4958c555f0ed65dee54c37af32529356">NvFlexUpdateTriangleMesh</a></div><div class="ttdeci">NV_FLEX_API void NvFlexUpdateTriangleMesh(NvFlexLibrary *lib, NvFlexTriangleMeshId mesh, NvFlexBuffer *vertices, NvFlexBuffer *indices, int numVertices, int numTriangles, const float *lower, const float *upper)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a054cb27646a389ea257d1bbde46a6e97"><div class="ttname"><a href="_nv_flex_8h.html#a054cb27646a389ea257d1bbde46a6e97">NvFlexUnmap</a></div><div class="ttdeci">NV_FLEX_API void NvFlexUnmap(NvFlexBuffer *buffer)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644a453a23cc8e9d2e6097b5be187f3c6977"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a453a23cc8e9d2e6097b5be187f3c6977">eNvFlexPhaseSelfCollide</a></div><div class="ttdoc">If set this particle will interact with particles of the same group. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:166</div></div>
<div class="ttc" id="_nv_flex_8h_html_aba34bc2bc8736e3a0cf18a7a6b56ff68"><div class="ttname"><a href="_nv_flex_8h.html#aba34bc2bc8736e3a0cf18a7a6b56ff68">NvFlexTimers::createCellIndices</a></div><div class="ttdeci">float createCellIndices</div><div class="ttdoc">Time spent creating grid indices. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:203</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644af309316efb695be38a4e15986be21ef9"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644af309316efb695be38a4e15986be21ef9">eNvFlexPhaseShapeChannel4</a></div><div class="ttdoc">Particle will collide with shapes with channel 4 set (see NvFlexMakeShapeFlags()) ...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:175</div></div>
<div class="ttc" id="_nv_flex_8h_html_a0e4cb2f91d3b7d122000d36a7d67ab81"><div class="ttname"><a href="_nv_flex_8h.html#a0e4cb2f91d3b7d122000d36a7d67ab81">NvFlexParams::shapeCollisionMargin</a></div><div class="ttdeci">float shapeCollisionMargin</div><div class="ttdoc">Increases the radius used during contact finding against kinematic shapes. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:147</div></div>
<div class="ttc" id="_nv_flex_8h_html_a0008a52f6ae1e17c436b095549bf1c78"><div class="ttname"><a href="_nv_flex_8h.html#a0008a52f6ae1e17c436b095549bf1c78">NvFlexSDFGeometry::scale</a></div><div class="ttdeci">float scale</div><div class="ttdoc">Uniform scale of SDF, this corresponds to the world space width of the shape. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:934</div></div>
<div class="ttc" id="_nv_flex_8h_html_a7ade7491cd0693a6d7c5e88a99298378"><div class="ttname"><a href="_nv_flex_8h.html#a7ade7491cd0693a6d7c5e88a99298378">NvFlexParams::diffuseBallistic</a></div><div class="ttdeci">int diffuseBallistic</div><div class="ttdoc">The number of neighbors below which a diffuse particle is considered ballistic. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:141</div></div>
<div class="ttc" id="_nv_flex_8h_html_aa8b7bfeffb0fa7dc6dbd291fee87edc9"><div class="ttname"><a href="_nv_flex_8h.html#aa8b7bfeffb0fa7dc6dbd291fee87edc9">NvFlexSetRigids</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetRigids(NvFlexSolver *solver, NvFlexBuffer *offsets, NvFlexBuffer *indices, NvFlexBuffer *restPositions, NvFlexBuffer *restNormals, NvFlexBuffer *stiffness, NvFlexBuffer *thresholds, NvFlexBuffer *creeps, NvFlexBuffer *rotations, NvFlexBuffer *translations, int numRigids, int numIndices)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a46f5d35902f7da40628247175a174f3b"><div class="ttname"><a href="_nv_flex_8h.html#a46f5d35902f7da40628247175a174f3b">NvFlexRelaxationMode</a></div><div class="ttdeci">NvFlexRelaxationMode</div><div class="ttdef"><b>Definition:</b> NvFlex.h:85</div></div>
<div class="ttc" id="_nv_flex_8h_html_a7043181449aebf540351d1d2f785cf4a"><div class="ttname"><a href="_nv_flex_8h.html#a7043181449aebf540351d1d2f785cf4a">NvFlexParams::drag</a></div><div class="ttdeci">float drag</div><div class="ttdoc">Drag force applied to particles belonging to dynamic triangles, proportional to velocity^2*area in th...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:121</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab4435b3857752360375fe52fc992cfca"><div class="ttname"><a href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfca">NvFlexErrorSeverity</a></div><div class="ttdeci">NvFlexErrorSeverity</div><div class="ttdef"><b>Definition:</b> NvFlex.h:231</div></div>
<div class="ttc" id="_nv_flex_8h_html_aa1d44495e442f8cae874c635ef847478"><div class="ttname"><a href="_nv_flex_8h.html#aa1d44495e442f8cae874c635ef847478">NvFlexSetPhases</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetPhases(NvFlexSolver *solver, NvFlexBuffer *phases, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab003c023dde289dee075c49db022ccaf"><div class="ttname"><a href="_nv_flex_8h.html#ab003c023dde289dee075c49db022ccaf">NvFlexParams::maxSpeed</a></div><div class="ttdeci">float maxSpeed</div><div class="ttdoc">The magnitude of particle velocity will be clamped to this value at the end of each step...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:112</div></div>
<div class="ttc" id="_nv_flex_8h_html_aee5c235d5fab40831cf339680aa25560a3ab06dc4cd4aa073ab0f2d96a56c499d"><div class="ttname"><a href="_nv_flex_8h.html#aee5c235d5fab40831cf339680aa25560a3ab06dc4cd4aa073ab0f2d96a56c499d">eNvFlexFeatureModeDefault</a></div><div class="ttdoc">All features enabled. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:355</div></div>
<div class="ttc" id="_nv_flex_8h_html_ae54ff0cacfedd4333aa1a1f9b9291906"><div class="ttname"><a href="_nv_flex_8h.html#ae54ff0cacfedd4333aa1a1f9b9291906">NvFlexParams::planes</a></div><div class="ttdeci">float planes[8][4]</div><div class="ttdoc">Collision planes in the form ax + by + cz + d = 0. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:149</div></div>
<div class="ttc" id="_nv_flex_8h_html_a3ef4d1035530c3583bdf983c7e62b472"><div class="ttname"><a href="_nv_flex_8h.html#a3ef4d1035530c3583bdf983c7e62b472">NvFlexParams::cohesion</a></div><div class="ttdeci">float cohesion</div><div class="ttdoc">Control how strongly particles hold each other together, default: 0.025, range [0.0, +inf]. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:125</div></div>
<div class="ttc" id="_nv_flex_8h_html_af0a34fd0cdf686022650be9f895cbf2f"><div class="ttname"><a href="_nv_flex_8h.html#af0a34fd0cdf686022650be9f895cbf2f">NvFlexParams::staticFriction</a></div><div class="ttdeci">float staticFriction</div><div class="ttdoc">Coefficient of static friction used when colliding against shapes. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:106</div></div>
<div class="ttc" id="_nv_flex_8h_html_ac1f3c3a1eeeb57cf5b20d030a788e25c"><div class="ttname"><a href="_nv_flex_8h.html#ac1f3c3a1eeeb57cf5b20d030a788e25c">NvFlexTimers::collideParticles</a></div><div class="ttdeci">float collideParticles</div><div class="ttdoc">Time spent finding particle neighbors. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:207</div></div>
<div class="ttc" id="_nv_flex_8h_html_a73d87b460a34c52ff4b616e97a53ade7"><div class="ttname"><a href="_nv_flex_8h.html#a73d87b460a34c52ff4b616e97a53ade7">NvFlexGetNormals</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetNormals(NvFlexSolver *solver, NvFlexBuffer *normals, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a8ad5aa3c9c9456607de9a2c9f1d0d2c1"><div class="ttname"><a href="_nv_flex_8h.html#a8ad5aa3c9c9456607de9a2c9f1d0d2c1">NvFlexCollisionGeometry::capsule</a></div><div class="ttdeci">NvFlexCapsuleGeometry capsule</div><div class="ttdef"><b>Definition:</b> NvFlex.h:945</div></div>
<div class="ttc" id="_nv_flex_8h_html_aaf8baa00e709ff8fd40d114f00bee0b6"><div class="ttname"><a href="_nv_flex_8h.html#aaf8baa00e709ff8fd40d114f00bee0b6">NvFlexTimers::predict</a></div><div class="ttdeci">float predict</div><div class="ttdoc">Time spent in prediction. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:202</div></div>
<div class="ttc" id="_nv_flex_8h_html_afa458a6eec8b0d117e53c40c13788fd9"><div class="ttname"><a href="_nv_flex_8h.html#afa458a6eec8b0d117e53c40c13788fd9">NvFlexGetDiffuseParticles</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetDiffuseParticles(NvFlexSolver *solver, NvFlexBuffer *p, NvFlexBuffer *v, NvFlexBuffer *count)</div></div>
<div class="ttc" id="_nv_flex_8h_html_struct_nv_flex_convex_mesh_geometry"><div class="ttname"><a href="_nv_flex_8h.html#struct_nv_flex_convex_mesh_geometry">NvFlexConvexMeshGeometry</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:913</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ea0cd160a13a72924340184edfbea2f"><div class="ttname"><a href="_nv_flex_8h.html#a5ea0cd160a13a72924340184edfbea2f">NvFlexSolverDesc::maxNeighborsPerParticle</a></div><div class="ttdeci">int maxNeighborsPerParticle</div><div class="ttdoc">Maximum number of neighbors per-particle, for solids this can be around 32, for fluids up to 128 may ...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:369</div></div>
<div class="ttc" id="_nv_flex_8h_html_a2ff723870a6eba26d9f3bb7e5250b27f"><div class="ttname"><a href="_nv_flex_8h.html#a2ff723870a6eba26d9f3bb7e5250b27f">NvFlexTimers::updateDiffuse</a></div><div class="ttdeci">float updateDiffuse</div><div class="ttdoc">Time spent updating diffuse particles. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:220</div></div>
<div class="ttc" id="_nv_flex_8h_html_a0e3c0e02ec7addd25ebb3355a8865bfb"><div class="ttname"><a href="_nv_flex_8h.html#a0e3c0e02ec7addd25ebb3355a8865bfb">NvFlexCollisionGeometry::sphere</a></div><div class="ttdeci">NvFlexSphereGeometry sphere</div><div class="ttdef"><b>Definition:</b> NvFlex.h:944</div></div>
<div class="ttc" id="_nv_flex_8h_html_a55bf1f547086b8e469f2c3b20c9ae39d"><div class="ttname"><a href="_nv_flex_8h.html#a55bf1f547086b8e469f2c3b20c9ae39d">NvFlexParams::collisionDistance</a></div><div class="ttdeci">float collisionDistance</div><div class="ttdoc">Distance particles maintain against shapes, note that for robust collision against triangle meshes th...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:145</div></div>
<div class="ttc" id="_nv_flex_8h_html_a064e3ce30320610d495ba3faa72dc8d6"><div class="ttname"><a href="_nv_flex_8h.html#a064e3ce30320610d495ba3faa72dc8d6">NvFlexCollisionGeometry::triMesh</a></div><div class="ttdeci">NvFlexTriangleMeshGeometry triMesh</div><div class="ttdef"><b>Definition:</b> NvFlex.h:948</div></div>
<div class="ttc" id="_nv_flex_8h_html_a215e06106ec0cdbbcd405055a4535d1d"><div class="ttname"><a href="_nv_flex_8h.html#a215e06106ec0cdbbcd405055a4535d1d">NvFlexTimers::solveContacts</a></div><div class="ttdeci">float solveContacts</div><div class="ttdoc">Time spent solving contact constraints. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:216</div></div>
<div class="ttc" id="_nv_flex_8h_html_a677dc591fe443ae058701966c52d1316"><div class="ttname"><a href="_nv_flex_8h.html#a677dc591fe443ae058701966c52d1316">NvFlexSetActiveCount</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetActiveCount(NvFlexSolver *solver, int n)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644a7b776084468bae4e3566484cf34d0154"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a7b776084468bae4e3566484cf34d0154">eNvFlexPhaseFlagsMask</a></div><div class="ttdoc">Bits [20, 23] hold flags about how the particle behave. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:163</div></div>
<div class="ttc" id="_nv_flex_8h_html_a31c31ea4f96cd4fdadc6b7317691304caa1c1225f6b8b2906c83748cfc46b81d9"><div class="ttname"><a href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304caa1c1225f6b8b2906c83748cfc46b81d9">eNvFlexShapeFlagReserved</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:968</div></div>
<div class="ttc" id="_nv_flex_8h_html_aeeeaf91dad0804d1dd3125e592a3260b"><div class="ttname"><a href="_nv_flex_8h.html#aeeeaf91dad0804d1dd3125e592a3260b">NvFlexInitDesc::computeType</a></div><div class="ttdeci">NvFlexComputeType computeType</div><div class="ttdoc">Set to eNvFlexD3D11 if DirectX 11 should be used, eNvFlexD3D12 for DirectX 12, this must match the li...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:323</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab11bdd7f778d17af16cefea33265cb65"><div class="ttname"><a href="_nv_flex_8h.html#ab11bdd7f778d17af16cefea33265cb65">NvFlexDestroyDistanceField</a></div><div class="ttdeci">NV_FLEX_API void NvFlexDestroyDistanceField(NvFlexLibrary *lib, NvFlexDistanceFieldId sdf)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a9b2d3dc5ac42011aeec4e13be2e14252a297a93979a88fda6e6b551dcab5fb3df"><div class="ttname"><a href="_nv_flex_8h.html#a9b2d3dc5ac42011aeec4e13be2e14252a297a93979a88fda6e6b551dcab5fb3df">eNvFlexD3D11</a></div><div class="ttdoc">Use DirectX 11 compute for Flex, the application must link against the D3D libraries. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:307</div></div>
<div class="ttc" id="_nv_flex_8h_html_a1d755d7b090f7ed5c4c50d2d3fef1558"><div class="ttname"><a href="_nv_flex_8h.html#a1d755d7b090f7ed5c4c50d2d3fef1558">NvFlexDestroySolver</a></div><div class="ttdeci">NV_FLEX_API void NvFlexDestroySolver(NvFlexSolver *solver)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a31c31ea4f96cd4fdadc6b7317691304cae8a10737948abf6973f0f1d66bae7ef8"><div class="ttname"><a href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304cae8a10737948abf6973f0f1d66bae7ef8">eNvFlexShapeFlagTypeMask</a></div><div class="ttdoc">Lower 3 bits holds the type of the collision shape given by the NvFlexCollisionShapeType enum...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:964</div></div>
<div class="ttc" id="_nv_flex_8h_html_abe564dbbbd4957542322b60d77a70e29"><div class="ttname"><a href="_nv_flex_8h.html#abe564dbbbd4957542322b60d77a70e29">NvFlexSolverCallbackParams::originalToSortedMap</a></div><div class="ttdeci">const int * originalToSortedMap</div><div class="ttdoc">Device pointer that maps the sorted callback data to the original position given by SetParticles() ...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:279</div></div>
<div class="ttc" id="_nv_flex_8h_html_aef1b5bceccca709ebb782d2ea8a61dc9"><div class="ttname"><a href="_nv_flex_8h.html#aef1b5bceccca709ebb782d2ea8a61dc9">NvFlexCapsuleGeometry::halfHeight</a></div><div class="ttdeci">float halfHeight</div><div class="ttdef"><b>Definition:</b> NvFlex.h:899</div></div>
<div class="ttc" id="_nv_flex_8h_html_a6541b33eaca7b2323e73b30cea34d16ca11adf517d180983daec217e761acc3d6"><div class="ttname"><a href="_nv_flex_8h.html#a6541b33eaca7b2323e73b30cea34d16ca11adf517d180983daec217e761acc3d6">eNvFlexMapWait</a></div><div class="ttdoc">Calling thread will be blocked until buffer is ready for access, default. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:69</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5a7213593dd9a23d9d67f8517d1da9de"><div class="ttname"><a href="_nv_flex_8h.html#a5a7213593dd9a23d9d67f8517d1da9de">NvFlexSetDiffuseParticles</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetDiffuseParticles(NvFlexSolver *solver, NvFlexBuffer *p, NvFlexBuffer *v, int n)</div></div>
<div class="ttc" id="_nv_flex_8h_html_afaeb57f4ee7e54b1ae1b912a465ed39e"><div class="ttname"><a href="_nv_flex_8h.html#afaeb57f4ee7e54b1ae1b912a465ed39e">NvFlexSolver</a></div><div class="ttdeci">struct NvFlexSolver NvFlexSolver</div><div class="ttdef"><b>Definition:</b> NvFlex.h:57</div></div>
<div class="ttc" id="_nv_flex_8h_html_a4f80c8bcfa6de99a52983adb13d80db9a6f13e2ebdbf21f8c8ebcfe1ac9160586"><div class="ttname"><a href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a6f13e2ebdbf21f8c8ebcfe1ac9160586">eNvFlexStageSubstepEnd</a></div><div class="ttdoc">Called at the end of each substep after the velocity has been updated by the constraints. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:248</div></div>
<div class="ttc" id="_nv_flex_8h_html_a8ed42f9bd016cbcef45c96b5b32ca609"><div class="ttname"><a href="_nv_flex_8h.html#a8ed42f9bd016cbcef45c96b5b32ca609">NvFlexSolverCallbackParams::particles</a></div><div class="ttdeci">float * particles</div><div class="ttdoc">Device pointer to the active particle basic data in the form x,y,z,1/m. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:271</div></div>
<div class="ttc" id="_nv_flex_8h_html_a1bd4b70e0118abe18ca5fe85157299b6"><div class="ttname"><a href="_nv_flex_8h.html#a1bd4b70e0118abe18ca5fe85157299b6">NvFlexGetActive</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetActive(NvFlexSolver *solver, NvFlexBuffer *indices, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a7f2b59fba77c60ce116e1eac57d63e50"><div class="ttname"><a href="_nv_flex_8h.html#a7f2b59fba77c60ce116e1eac57d63e50">NvFlexSetInflatables</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetInflatables(NvFlexSolver *solver, NvFlexBuffer *startTris, NvFlexBuffer *numTris, NvFlexBuffer *restVolumes, NvFlexBuffer *overPressures, NvFlexBuffer *constraintScales, int numInflatables)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a615d2e6eec2486a5db815d929f9c642c"><div class="ttname"><a href="_nv_flex_8h.html#a615d2e6eec2486a5db815d929f9c642c">NvFlexWait</a></div><div class="ttdeci">NV_FLEX_API void NvFlexWait(NvFlexLibrary *lib)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a7ec5ebe3e98a44a2058d6be74b2cb633"><div class="ttname"><a href="_nv_flex_8h.html#a7ec5ebe3e98a44a2058d6be74b2cb633">NvFlexSetParticles</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetParticles(NvFlexSolver *solver, NvFlexBuffer *p, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_struct_nv_flex_sphere_geometry"><div class="ttname"><a href="_nv_flex_8h.html#struct_nv_flex_sphere_geometry">NvFlexSphereGeometry</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:888</div></div>
<div class="ttc" id="_nv_flex_8h_html_struct_nv_flex_solver_desc"><div class="ttname"><a href="_nv_flex_8h.html#struct_nv_flex_solver_desc">NvFlexSolverDesc</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:363</div></div>
<div class="ttc" id="_nv_flex_8h_html_aa544809448a95c3864e1443c7a507d7f"><div class="ttname"><a href="_nv_flex_8h.html#aa544809448a95c3864e1443c7a507d7f">NvFlexCopyDesc::dstOffset</a></div><div class="ttdeci">int dstOffset</div><div class="ttdef"><b>Definition:</b> NvFlex.h:515</div></div>
<div class="ttc" id="_nv_flex_8h_html_a4f80c8bcfa6de99a52983adb13d80db9a9f3914fdb03915a14ebe55a2c730e7ff"><div class="ttname"><a href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a9f3914fdb03915a14ebe55a2c730e7ff">eNvFlexStageIterationStart</a></div><div class="ttdoc">Called at the beginning of each constraint iteration. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:245</div></div>
<div class="ttc" id="_nv_flex_8h_html_a60794d849b4184335e2a0ddec0a9e6a2"><div class="ttname"><a href="_nv_flex_8h.html#a60794d849b4184335e2a0ddec0a9e6a2">NvFlexGetTriangleMeshBounds</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetTriangleMeshBounds(NvFlexLibrary *lib, const NvFlexTriangleMeshId mesh, float *lower, float *upper)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ad83b7fb561a91467a3094771bb682b96"><div class="ttname"><a href="_nv_flex_8h.html#ad83b7fb561a91467a3094771bb682b96">NvFlexMakeShapeFlagsWithChannels</a></div><div class="ttdeci">NV_FLEX_API int NvFlexMakeShapeFlagsWithChannels(NvFlexCollisionShapeType type, bool dynamic, int shapeChannels)</div><div class="ttdef"><b>Definition:</b> NvFlex.h:978</div></div>
<div class="ttc" id="_nv_flex_8h_html_struct_nv_flex_solver_callback_params"><div class="ttname"><a href="_nv_flex_8h.html#struct_nv_flex_solver_callback_params">NvFlexSolverCallbackParams</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:266</div></div>
<div class="ttc" id="_nv_flex_8h_html_afbaafe2b1006352002b03aabaca531cc"><div class="ttname"><a href="_nv_flex_8h.html#afbaafe2b1006352002b03aabaca531cc">NvFlexCreateConvexMesh</a></div><div class="ttdeci">NV_FLEX_API NvFlexConvexMeshId NvFlexCreateConvexMesh(NvFlexLibrary *lib)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a0898bb9210440b159688d4647f6eb083"><div class="ttname"><a href="_nv_flex_8h.html#a0898bb9210440b159688d4647f6eb083">NvFlexMap</a></div><div class="ttdeci">NV_FLEX_API void * NvFlexMap(NvFlexBuffer *buffer, int flags)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a83f6117fe98bc6426027a9b784fd737c"><div class="ttname"><a href="_nv_flex_8h.html#a83f6117fe98bc6426027a9b784fd737c">NvFlexDetailTimer::time</a></div><div class="ttdeci">float time</div><div class="ttdef"><b>Definition:</b> NvFlex.h:1185</div></div>
<div class="ttc" id="_nv_flex_8h_html_union_nv_flex_collision_geometry"><div class="ttname"><a href="_nv_flex_8h.html#union_nv_flex_collision_geometry">NvFlexCollisionGeometry</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:942</div></div>
<div class="ttc" id="_nv_flex_8h_html_a1a1e69f26e02e8b3fca1d3636a7f3f13"><div class="ttname"><a href="_nv_flex_8h.html#a1a1e69f26e02e8b3fca1d3636a7f3f13">NvFlexTimers::updateNormals</a></div><div class="ttdeci">float updateNormals</div><div class="ttdoc">Time spent updating vertex normals. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:222</div></div>
<div class="ttc" id="_nv_flex_8h_html_a2aea4c3d772b4dbccb7dd9ba37c1bdc0"><div class="ttname"><a href="_nv_flex_8h.html#a2aea4c3d772b4dbccb7dd9ba37c1bdc0">NvFlexTriangleMeshId</a></div><div class="ttdeci">unsigned int NvFlexTriangleMeshId</div><div class="ttdef"><b>Definition:</b> NvFlex.h:730</div></div>
<div class="ttc" id="_nv_flex_8h_html_a46f5d35902f7da40628247175a174f3ba858afe9529e908c2bc8ce92da8943b7c"><div class="ttname"><a href="_nv_flex_8h.html#a46f5d35902f7da40628247175a174f3ba858afe9529e908c2bc8ce92da8943b7c">eNvFlexRelaxationLocal</a></div><div class="ttdoc">The relaxation factor is a fixed multiplier on each constraint's delta divided by the particle's cons...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:88</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab487e68ce1c84ce1eec0c85b7daf5aa0"><div class="ttname"><a href="_nv_flex_8h.html#ab487e68ce1c84ce1eec0c85b7daf5aa0">NvFlexRegisterD3DBuffer</a></div><div class="ttdeci">NV_FLEX_API NvFlexBuffer * NvFlexRegisterD3DBuffer(NvFlexLibrary *lib, void *buffer, int elementCount, int elementByteStride)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ad9503e8b23e084c0f940be3dcca9af2e"><div class="ttname"><a href="_nv_flex_8h.html#ad9503e8b23e084c0f940be3dcca9af2e">NvFlexInitDesc::runOnRenderContext</a></div><div class="ttdeci">bool runOnRenderContext</div><div class="ttdoc">If true, run Flex on D3D11 render context, or D3D12 direct queue. If false, run on a D3D12 compute qu...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:321</div></div>
<div class="ttc" id="_nv_flex_8h_html_a31c31ea4f96cd4fdadc6b7317691304ca409215fa9b917f2d0830a66bd11b3ff8"><div class="ttname"><a href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304ca409215fa9b917f2d0830a66bd11b3ff8">eNvFlexShapeFlagTrigger</a></div><div class="ttdoc">Indicates that the shape is a trigger volume, this means it will not perform any collision response...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:966</div></div>
<div class="ttc" id="_nv_flex_8h_html_aee5c235d5fab40831cf339680aa25560aeab2b8a68b528d46e11b71ad0f4d83f2"><div class="ttname"><a href="_nv_flex_8h.html#aee5c235d5fab40831cf339680aa25560aeab2b8a68b528d46e11b71ad0f4d83f2">eNvFlexFeatureModeSimpleFluids</a></div><div class="ttdoc">Simple single phase fluid-only particles (no solids) </div><div class="ttdef"><b>Definition:</b> NvFlex.h:357</div></div>
<div class="ttc" id="_nv_flex_8h_html_a0506ae712f846087b8647ea389ac26baae22144512ae098865c6725af16a68ad3"><div class="ttname"><a href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baae22144512ae098865c6725af16a68ad3">eNvFlexShapeSphere</a></div><div class="ttdoc">A sphere shape, see FlexSphereGeometry. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:954</div></div>
<div class="ttc" id="_nv_flex_8h_html_a0506ae712f846087b8647ea389ac26baa1fd78f8694b954f8d12fe7d911f17180"><div class="ttname"><a href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baa1fd78f8694b954f8d12fe7d911f17180">eNvFlexShapeSDF</a></div><div class="ttdoc">A signed distance field shape, see FlexSDFGeometry. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:959</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5890b9e46d626cfa19994976ea53c52e"><div class="ttname"><a href="_nv_flex_8h.html#a5890b9e46d626cfa19994976ea53c52e">NvFlexInitDesc::deviceIndex</a></div><div class="ttdeci">int deviceIndex</div><div class="ttdoc">The GPU device index that should be used, if there is already a CUDA context on the calling thread th...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:316</div></div>
<div class="ttc" id="_nv_flex_8h_html_a40f452b4edbf11b793f31286a0ae270e"><div class="ttname"><a href="_nv_flex_8h.html#a40f452b4edbf11b793f31286a0ae270e">NvFlexParams::viscosity</a></div><div class="ttdeci">float viscosity</div><div class="ttdoc">Smoothes particle velocities using XSPH viscosity. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:127</div></div>
<div class="ttc" id="_nv_flex_8h_html_af6a50e64591866ae2390a57e3342566c"><div class="ttname"><a href="_nv_flex_8h.html#af6a50e64591866ae2390a57e3342566c">NvFlexTriangleMeshGeometry::mesh</a></div><div class="ttdeci">NvFlexTriangleMeshId mesh</div><div class="ttdoc">A triangle mesh pointer created by NvFlexCreateTriangleMesh() </div><div class="ttdef"><b>Definition:</b> NvFlex.h:925</div></div>
<div class="ttc" id="_nv_flex_8h_html_a8114a049f5e16f7d1b960f3ac4993fdb"><div class="ttname"><a href="_nv_flex_8h.html#a8114a049f5e16f7d1b960f3ac4993fdb">NvFlexParams::adhesion</a></div><div class="ttdeci">float adhesion</div><div class="ttdoc">Controls how strongly particles stick to surfaces they hit, default 0.0, range [0.0, +inf]. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:109</div></div>
<div class="ttc" id="_nv_flex_8h_html_a78045a8d4e856372df108dc616a94cd8"><div class="ttname"><a href="_nv_flex_8h.html#a78045a8d4e856372df108dc616a94cd8">NvFlexUnregisterOGLBuffer</a></div><div class="ttdeci">NV_FLEX_API void NvFlexUnregisterOGLBuffer(NvFlexBuffer *buf)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab669c404607156367b09878870dbe30c"><div class="ttname"><a href="_nv_flex_8h.html#ab669c404607156367b09878870dbe30c">NvFlexBoxGeometry::halfExtents</a></div><div class="ttdeci">float halfExtents[3]</div><div class="ttdef"><b>Definition:</b> NvFlex.h:907</div></div>
<div class="ttc" id="_nv_flex_8h_html_struct_nv_flex_box_geometry"><div class="ttname"><a href="_nv_flex_8h.html#struct_nv_flex_box_geometry">NvFlexBoxGeometry</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:905</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5c28caf6d5d513c5adacd4fbc782f308"><div class="ttname"><a href="_nv_flex_8h.html#a5c28caf6d5d513c5adacd4fbc782f308">NvFlexCreateDistanceField</a></div><div class="ttdeci">NV_FLEX_API NvFlexDistanceFieldId NvFlexCreateDistanceField(NvFlexLibrary *lib)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a9e5f943053d43d7e1a6b149babe4fe44"><div class="ttname"><a href="_nv_flex_8h.html#a9e5f943053d43d7e1a6b149babe4fe44">NvFlexSolverCallbackParams::phases</a></div><div class="ttdeci">int * phases</div><div class="ttdoc">Device pointer to the active particle phase data. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:273</div></div>
<div class="ttc" id="_nv_flex_8h_html_a898eb8e66a456dd2266c694f29cab600"><div class="ttname"><a href="_nv_flex_8h.html#a898eb8e66a456dd2266c694f29cab600">NvFlexFlush</a></div><div class="ttdeci">NV_FLEX_API void NvFlexFlush(NvFlexLibrary *lib)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab1eec84a21b1872fba11c9b4cc1d1629"><div class="ttname"><a href="_nv_flex_8h.html#ab1eec84a21b1872fba11c9b4cc1d1629">NvFlexGetBounds</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetBounds(NvFlexSolver *solver, NvFlexBuffer *lower, NvFlexBuffer *upper)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a169e4c126acf46bdebf76c36a44deca3aec63221ddc1b13eff4db55fbf6cd85f8"><div class="ttname"><a href="_nv_flex_8h.html#a169e4c126acf46bdebf76c36a44deca3aec63221ddc1b13eff4db55fbf6cd85f8">eNvFlexBufferHost</a></div><div class="ttdoc">A host mappable buffer, pinned memory on CUDA, staging buffer on DX. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:78</div></div>
<div class="ttc" id="_nv_flex_8h_html_ac32019f7dd1f30ab8a7391a417ed02c9"><div class="ttname"><a href="_nv_flex_8h.html#ac32019f7dd1f30ab8a7391a417ed02c9">NvFlexSolverCallbackParams::numActive</a></div><div class="ttdeci">int numActive</div><div class="ttdoc">The number of active particles returned, the callback data only return pointers to active particle da...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:275</div></div>
<div class="ttc" id="_nv_flex_8h_html_ae0d57e4fc2b3b51ec08f7da0a28ff343"><div class="ttname"><a href="_nv_flex_8h.html#ae0d57e4fc2b3b51ec08f7da0a28ff343">NvFlexGetSolverLibrary</a></div><div class="ttdeci">NV_FLEX_API NvFlexLibrary * NvFlexGetSolverLibrary(NvFlexSolver *solver)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a50a3933d3f7b77d0500c702b1fa9ba9a"><div class="ttname"><a href="_nv_flex_8h.html#a50a3933d3f7b77d0500c702b1fa9ba9a">NvFlexBuffer</a></div><div class="ttdeci">struct NvFlexBuffer NvFlexBuffer</div><div class="ttdef"><b>Definition:</b> NvFlex.h:62</div></div>
<div class="ttc" id="_nv_flex_8h_html_ae45cb18deec2db8ff44d181e80f24695"><div class="ttname"><a href="_nv_flex_8h.html#ae45cb18deec2db8ff44d181e80f24695">NvFlexTimers::sortCellIndices</a></div><div class="ttdeci">float sortCellIndices</div><div class="ttdoc">Time spent sorting grid indices. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:204</div></div>
<div class="ttc" id="_nv_flex_8h_html_ae01bc8c45cf48f5faed2a8e78df1c678"><div class="ttname"><a href="_nv_flex_8h.html#ae01bc8c45cf48f5faed2a8e78df1c678">NvFlexCopyDesc::srcOffset</a></div><div class="ttdeci">int srcOffset</div><div class="ttdef"><b>Definition:</b> NvFlex.h:514</div></div>
<div class="ttc" id="_nv_flex_8h_html_aedf73c7aa1f4df92c7724d58f4dcb266"><div class="ttname"><a href="_nv_flex_8h.html#aedf73c7aa1f4df92c7724d58f4dcb266">NvFlexSolverDesc::maxParticles</a></div><div class="ttdeci">int maxParticles</div><div class="ttdoc">Maximum number of regular particles in the solver. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:367</div></div>
<div class="ttc" id="_nv_flex_8h_html_aafc89f87307602fb9bfa8f6668122121"><div class="ttname"><a href="_nv_flex_8h.html#aafc89f87307602fb9bfa8f6668122121">NvFlexGetRestParticles</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetRestParticles(NvFlexSolver *solver, NvFlexBuffer *p, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a97d23c69cd4f343be14dedd911605276"><div class="ttname"><a href="_nv_flex_8h.html#a97d23c69cd4f343be14dedd911605276">NvFlexSolverDesc::maxContactsPerParticle</a></div><div class="ttdeci">int maxContactsPerParticle</div><div class="ttdoc">Maximum number of collision contacts per-particle. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:370</div></div>
<div class="ttc" id="_nv_flex_8h_html_ad1d0256dac295346120fda40f6eea7e2"><div class="ttname"><a href="_nv_flex_8h.html#ad1d0256dac295346120fda40f6eea7e2">NvFlexInitDesc::computeContext</a></div><div class="ttdeci">void * computeContext</div><div class="ttdoc">Direct3D context to use for simulation, if none is specified a new context will be created...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:320</div></div>
<div class="ttc" id="_nv_flex_8h_html_aa6eddaa3a6eb35917c093dcabf69a200"><div class="ttname"><a href="_nv_flex_8h.html#aa6eddaa3a6eb35917c093dcabf69a200">NvFlexParams::radius</a></div><div class="ttdeci">float radius</div><div class="ttdoc">The maximum interaction radius for particles. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:100</div></div>
<div class="ttc" id="_nv_flex_8h_html_a7edac9cf450917147b83e98f5cb09f5d"><div class="ttname"><a href="_nv_flex_8h.html#a7edac9cf450917147b83e98f5cb09f5d">NvFlexGetContacts</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetContacts(NvFlexSolver *solver, NvFlexBuffer *planes, NvFlexBuffer *velocities, NvFlexBuffer *indices, NvFlexBuffer *counts)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a53e827707abaf2e03b78c3c88469d7bf"><div class="ttname"><a href="_nv_flex_8h.html#a53e827707abaf2e03b78c3c88469d7bf">NvFlexCollisionGeometry::box</a></div><div class="ttdeci">NvFlexBoxGeometry box</div><div class="ttdef"><b>Definition:</b> NvFlex.h:946</div></div>
<div class="ttc" id="_nv_flex_8h_html_ac48a490fa3d62cc678c309dd4b8cbf18"><div class="ttname"><a href="_nv_flex_8h.html#ac48a490fa3d62cc678c309dd4b8cbf18">NvFlexSolverCallbackParams::velocities</a></div><div class="ttdeci">float * velocities</div><div class="ttdoc">Device pointer to the active particle velocity data in the form x,y,z,w (last component is not used) ...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:272</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644a1de4e956764950e501bcb8376a70f5a9"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a1de4e956764950e501bcb8376a70f5a9">eNvFlexPhaseShapeChannel1</a></div><div class="ttdoc">Particle will collide with shapes with channel 1 set (see NvFlexMakeShapeFlags()) ...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:172</div></div>
<div class="ttc" id="_nv_flex_8h_html_aa77d2a4edd4ccd79c9389854dca80613"><div class="ttname"><a href="_nv_flex_8h.html#aa77d2a4edd4ccd79c9389854dca80613">NvFlexGetDeviceLatency</a></div><div class="ttdeci">NV_FLEX_API float NvFlexGetDeviceLatency(NvFlexSolver *solver, unsigned long long *begin, unsigned long long *end, unsigned long long *frequency)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab136ae1511a39ef570c010f321eff206"><div class="ttname"><a href="_nv_flex_8h.html#ab136ae1511a39ef570c010f321eff206">NvFlexParams::anisotropyMin</a></div><div class="ttdeci">float anisotropyMin</div><div class="ttdoc">Clamp the anisotropy scale to this fraction of the radius. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:130</div></div>
<div class="ttc" id="_nv_flex_8h_html_afc5d58e7f591213c3fe1c31b4d440eb6"><div class="ttname"><a href="_nv_flex_8h.html#afc5d58e7f591213c3fe1c31b4d440eb6">NvFlexTimers::applyDeltas</a></div><div class="ttdeci">float applyDeltas</div><div class="ttdoc">Time spent adding position deltas to particles. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:218</div></div>
<div class="ttc" id="_nv_flex_8h_html_a0a6936f3cb0544ad624f1dea6b7eb50c"><div class="ttname"><a href="_nv_flex_8h.html#a0a6936f3cb0544ad624f1dea6b7eb50c">NvFlexSDFGeometry::field</a></div><div class="ttdeci">NvFlexDistanceFieldId field</div><div class="ttdoc">A signed distance field pointer created by NvFlexCreateDistanceField() </div><div class="ttdef"><b>Definition:</b> NvFlex.h:935</div></div>
<div class="ttc" id="_nv_flex_8h_html_a49f7117a457a716e7790904209f68707"><div class="ttname"><a href="_nv_flex_8h.html#a49f7117a457a716e7790904209f68707">NvFlexTimers::calculateDensity</a></div><div class="ttdeci">float calculateDensity</div><div class="ttdoc">Time spent calculating fluid density. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:211</div></div>
<div class="ttc" id="struct_nv_flex_solver_callback_html_a2878301f697313b3ef3ad1bc2410c915"><div class="ttname"><a href="struct_nv_flex_solver_callback.html#a2878301f697313b3ef3ad1bc2410c915">NvFlexSolverCallback::userData</a></div><div class="ttdeci">void * userData</div><div class="ttdef"><b>Definition:</b> NvFlex.h:288</div></div>
<div class="ttc" id="_nv_flex_8h_html_a0506ae712f846087b8647ea389ac26baa1724c140b583fbf2c11c14a24dd3764a"><div class="ttname"><a href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baa1724c140b583fbf2c11c14a24dd3764a">eNvFlexShapeCapsule</a></div><div class="ttdoc">A capsule shape, see FlexCapsuleGeometry. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:955</div></div>
<div class="ttc" id="_nv_flex_8h_html_afdda5a5210938a1e8a7c3a8218ad468e"><div class="ttname"><a href="_nv_flex_8h.html#afdda5a5210938a1e8a7c3a8218ad468e">NvFlexCreateTriangleMesh</a></div><div class="ttdeci">NV_FLEX_API NvFlexTriangleMeshId NvFlexCreateTriangleMesh(NvFlexLibrary *lib)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ad53909027df03c6a352746d8ddc088ef"><div class="ttname"><a href="_nv_flex_8h.html#ad53909027df03c6a352746d8ddc088ef">NvFlexGetSolvers</a></div><div class="ttdeci">NV_FLEX_API int NvFlexGetSolvers(NvFlexLibrary *lib, NvFlexSolver **solvers, int n)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a0999d825c8760e19ba4c980d2eb097ac"><div class="ttname"><a href="_nv_flex_8h.html#a0999d825c8760e19ba4c980d2eb097ac">NvFlexSolverDesc::featureMode</a></div><div class="ttdeci">NvFlexFeatureMode featureMode</div><div class="ttdoc">Control which features are enabled. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:365</div></div>
<div class="ttc" id="_nv_flex_8h_html_aaf59e45ada57c7f958a8030099cbe211"><div class="ttname"><a href="_nv_flex_8h.html#aaf59e45ada57c7f958a8030099cbe211">NvFlexShutdown</a></div><div class="ttdeci">NV_FLEX_API void NvFlexShutdown(NvFlexLibrary *lib)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a3974e1e608d9f532d5520dc158b47903"><div class="ttname"><a href="_nv_flex_8h.html#a3974e1e608d9f532d5520dc158b47903">NvFlexSolverCallbackParams::solver</a></div><div class="ttdeci">NvFlexSolver * solver</div><div class="ttdoc">Pointer to the solver that the callback is registered to. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:268</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644a1728772beb1746ace4c549b2ed8f1d74"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a1728772beb1746ace4c549b2ed8f1d74">eNvFlexPhaseFluid</a></div><div class="ttdoc">If set this particle will generate fluid density constraints for its overlapping neighbors. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:168</div></div>
<div class="ttc" id="_nv_flex_8h_html_aee5c235d5fab40831cf339680aa25560"><div class="ttname"><a href="_nv_flex_8h.html#aee5c235d5fab40831cf339680aa25560">NvFlexFeatureMode</a></div><div class="ttdeci">NvFlexFeatureMode</div><div class="ttdef"><b>Definition:</b> NvFlex.h:353</div></div>
<div class="ttc" id="_nv_flex_8h_html_a554d54b930dad17e638ddd30c6dac46f"><div class="ttname"><a href="_nv_flex_8h.html#a554d54b930dad17e638ddd30c6dac46f">NvFlexGetDistanceFields</a></div><div class="ttdeci">NV_FLEX_API int NvFlexGetDistanceFields(NvFlexLibrary *lib, NvFlexDistanceFieldId *sdfs, int n)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644">NvFlexPhase</a></div><div class="ttdeci">NvFlexPhase</div><div class="ttdef"><b>Definition:</b> NvFlex.h:160</div></div>
<div class="ttc" id="_nv_flex_8h_html_ad607e7916e5d76b384a61f1c1f94ab32"><div class="ttname"><a href="_nv_flex_8h.html#ad607e7916e5d76b384a61f1c1f94ab32">NvFlexUnregisterD3DBuffer</a></div><div class="ttdeci">NV_FLEX_API void NvFlexUnregisterD3DBuffer(NvFlexBuffer *buf)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a533a78227b462a268c905f9c307c4bd6"><div class="ttname"><a href="_nv_flex_8h.html#a533a78227b462a268c905f9c307c4bd6">NvFlexParams::sleepThreshold</a></div><div class="ttdeci">float sleepThreshold</div><div class="ttdoc">Particles with a velocity magnitude < this threshold will be considered fixed. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:110</div></div>
<div class="ttc" id="_nv_flex_8h_html_ac25ec5de38c177db51198bb620644d36"><div class="ttname"><a href="_nv_flex_8h.html#ac25ec5de38c177db51198bb620644d36">NvFlexGetVersion</a></div><div class="ttdeci">NV_FLEX_API int NvFlexGetVersion()</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab1924ab797971290931b32258b847767"><div class="ttname"><a href="_nv_flex_8h.html#ab1924ab797971290931b32258b847767">NvFlexGetTriangleMeshes</a></div><div class="ttdeci">NV_FLEX_API int NvFlexGetTriangleMeshes(NvFlexLibrary *lib, NvFlexTriangleMeshId *meshes, int n)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5e37444b8c96e0880a428d9ea58dbf54"><div class="ttname"><a href="_nv_flex_8h.html#a5e37444b8c96e0880a428d9ea58dbf54">NvFlexParams::anisotropyMax</a></div><div class="ttdeci">float anisotropyMax</div><div class="ttdoc">Clamp the anisotropy scale to this fraction of the radius. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:131</div></div>
<div class="ttc" id="_nv_flex_8h_html_afc20d27121f49b61be9cc6bd4c25f547"><div class="ttname"><a href="_nv_flex_8h.html#afc20d27121f49b61be9cc6bd4c25f547">NvFlexTimers::collideTriangles</a></div><div class="ttdeci">float collideTriangles</div><div class="ttdoc">Time spent colliding triangle shapes. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:209</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab1efb6764f65900cb09f0188ad6da08a"><div class="ttname"><a href="_nv_flex_8h.html#ab1efb6764f65900cb09f0188ad6da08a">NvFlexGetDetailTimers</a></div><div class="ttdeci">NV_FLEX_API int NvFlexGetDetailTimers(NvFlexSolver *solver, NvFlexDetailTimer **timers)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ad56e661161763579afb375b3841eb5ff"><div class="ttname"><a href="_nv_flex_8h.html#ad56e661161763579afb375b3841eb5ff">NvFlexGetConvexMeshBounds</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetConvexMeshBounds(NvFlexLibrary *lib, NvFlexConvexMeshId mesh, float *lower, float *upper)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a31c31ea4f96cd4fdadc6b7317691304cadc6740cf6d829fba159d92e43ffb5992"><div class="ttname"><a href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304cadc6740cf6d829fba159d92e43ffb5992">eNvFlexShapeFlagDynamic</a></div><div class="ttdoc">Indicates the shape is dynamic and should have lower priority over static collision shapes...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:965</div></div>
<div class="ttc" id="_nv_flex_8h_html_a6541b33eaca7b2323e73b30cea34d16ca1bd450ab65ccc06288fae95e23d5e6f1"><div class="ttname"><a href="_nv_flex_8h.html#a6541b33eaca7b2323e73b30cea34d16ca1bd450ab65ccc06288fae95e23d5e6f1">eNvFlexMapDoNotWait</a></div><div class="ttdoc">Calling thread will check if buffer is ready for access, if not ready then the method will return NUL...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:70</div></div>
<div class="ttc" id="_nv_flex_8h_html_a615e8070212c24a70e7a849120c13353"><div class="ttname"><a href="_nv_flex_8h.html#a615e8070212c24a70e7a849120c13353">NvFlexMakePhaseWithChannels</a></div><div class="ttdeci">NV_FLEX_API int NvFlexMakePhaseWithChannels(int group, int particleFlags, int shapeChannels)</div><div class="ttdef"><b>Definition:</b> NvFlex.h:189</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab43db5f28808f8038cfc9330d4b47d57"><div class="ttname"><a href="_nv_flex_8h.html#ab43db5f28808f8038cfc9330d4b47d57">NvFlexMakePhase</a></div><div class="ttdeci">NV_FLEX_API int NvFlexMakePhase(int group, int particleFlags)</div><div class="ttdef"><b>Definition:</b> NvFlex.h:194</div></div>
<div class="ttc" id="_nv_flex_8h_html_adc0c97635cdbb3da7b571574a3b38990"><div class="ttname"><a href="_nv_flex_8h.html#adc0c97635cdbb3da7b571574a3b38990">NvFlexSetActive</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetActive(NvFlexSolver *solver, NvFlexBuffer *indices, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab98a2aba477ab4d4178bf677852bf544"><div class="ttname"><a href="_nv_flex_8h.html#ab98a2aba477ab4d4178bf677852bf544">NvFlexParams::shockPropagation</a></div><div class="ttdeci">float shockPropagation</div><div class="ttdoc">Artificially decrease the mass of particles based on height from a fixed reference point...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:115</div></div>
<div class="ttc" id="_nv_flex_8h_html_a4c451971259524c6878b6b1ed4023ada"><div class="ttname"><a href="_nv_flex_8h.html#a4c451971259524c6878b6b1ed4023ada">NvFlexGetDeviceName</a></div><div class="ttdeci">NV_FLEX_API const char * NvFlexGetDeviceName(NvFlexLibrary *lib)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ac85b6372e5c7bfc508ecb7b8c59c72a0"><div class="ttname"><a href="_nv_flex_8h.html#ac85b6372e5c7bfc508ecb7b8c59c72a0">NvFlexDestroyConvexMesh</a></div><div class="ttdeci">NV_FLEX_API void NvFlexDestroyConvexMesh(NvFlexLibrary *lib, NvFlexConvexMeshId convex)</div></div>
<div class="ttc" id="_nv_flex_8h_html_aaa36ba5ee44e34e762167fb0b8b3292e"><div class="ttname"><a href="_nv_flex_8h.html#aaa36ba5ee44e34e762167fb0b8b3292e">NvFlexTimers::collideFields</a></div><div class="ttdeci">float collideFields</div><div class="ttdoc">Time spent colliding signed distance field shapes. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:210</div></div>
<div class="ttc" id="_nv_flex_8h_html_af9b72d2909ef335b12a46cdbd4b71f57"><div class="ttname"><a href="_nv_flex_8h.html#af9b72d2909ef335b12a46cdbd4b71f57">NvFlexTimers::calculateAnisotropy</a></div><div class="ttdeci">float calculateAnisotropy</div><div class="ttdoc">Time spent calculating particle anisotropy for fluid. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:219</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644a0c8d08e646d2713e34d7e2dd6e7b21f2"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a0c8d08e646d2713e34d7e2dd6e7b21f2">eNvFlexPhaseShapeChannel6</a></div><div class="ttdoc">Particle will collide with shapes with channel 6 set (see NvFlexMakeShapeFlags()) ...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:177</div></div>
<div class="ttc" id="_nv_flex_8h_html_aaff62cfd50431d82af5d04a6c9ac4ffd"><div class="ttname"><a href="_nv_flex_8h.html#aaff62cfd50431d82af5d04a6c9ac4ffd">NvFlexGetParticles</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetParticles(NvFlexSolver *solver, NvFlexBuffer *p, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_abf304d5c1f8f041fa46a2bfb0bdf56fe"><div class="ttname"><a href="_nv_flex_8h.html#abf304d5c1f8f041fa46a2bfb0bdf56fe">NvFlexInitDesc::renderContext</a></div><div class="ttdeci">void * renderContext</div><div class="ttdoc">Direct3D context that the app is using for rendering. In DirectX 12 this should be a ID3D12CommandQue...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:319</div></div>
<div class="ttc" id="_nv_flex_8h_html_a3078976e98f370a9fbdb11db80f1f318"><div class="ttname"><a href="_nv_flex_8h.html#a3078976e98f370a9fbdb11db80f1f318">NvFlexLibrary</a></div><div class="ttdeci">struct NvFlexLibrary NvFlexLibrary</div><div class="ttdef"><b>Definition:</b> NvFlex.h:52</div></div>
<div class="ttc" id="_nv_flex_8h_html_a42ec7b30c79d4733e6a756b5d9b15ee6"><div class="ttname"><a href="_nv_flex_8h.html#a42ec7b30c79d4733e6a756b5d9b15ee6">NvFlexAcquireContext</a></div><div class="ttdeci">NV_FLEX_API void NvFlexAcquireContext(NvFlexLibrary *lib)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a687e5ec141948f779faa9183b68cb743"><div class="ttname"><a href="_nv_flex_8h.html#a687e5ec141948f779faa9183b68cb743">NvFlexInit</a></div><div class="ttdeci">NV_FLEX_API NvFlexLibrary * NvFlexInit(int version=NV_FLEX_VERSION, NvFlexErrorCallback errorFunc=0, NvFlexInitDesc *desc=0)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a05f92015449662f5a2f5d5e9ecdc2c6e"><div class="ttname"><a href="_nv_flex_8h.html#a05f92015449662f5a2f5d5e9ecdc2c6e">NvFlexParams::freeSurfaceDrag</a></div><div class="ttdeci">float freeSurfaceDrag</div><div class="ttdoc">Drag force applied to boundary fluid particles. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:134</div></div>
<div class="ttc" id="_nv_flex_8h_html_a32e8fdb39029a2564c129bd493c52058"><div class="ttname"><a href="_nv_flex_8h.html#a32e8fdb39029a2564c129bd493c52058">NvFlexSetNormals</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetNormals(NvFlexSolver *solver, NvFlexBuffer *normals, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ac0049037dcff7a769030acd567eac6cd"><div class="ttname"><a href="_nv_flex_8h.html#ac0049037dcff7a769030acd567eac6cd">NvFlexCollisionGeometry::sdf</a></div><div class="ttdeci">NvFlexSDFGeometry sdf</div><div class="ttdef"><b>Definition:</b> NvFlex.h:949</div></div>
<div class="ttc" id="_nv_flex_8h_html_a0def9c3ceff57bbae5bcec15f6d64b36"><div class="ttname"><a href="_nv_flex_8h.html#a0def9c3ceff57bbae5bcec15f6d64b36">NvFlexParams::maxAcceleration</a></div><div class="ttdeci">float maxAcceleration</div><div class="ttdoc">The magnitude of particle acceleration will be clamped to this value at the end of each step (limits ...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:113</div></div>
<div class="ttc" id="_nv_flex_8h_html_aafb92c4fa45ce9614cdfd349b3722c8a"><div class="ttname"><a href="_nv_flex_8h.html#aafb92c4fa45ce9614cdfd349b3722c8a">NvFlexParams::wind</a></div><div class="ttdeci">float wind[3]</div><div class="ttdoc">Constant acceleration applied to particles that belong to dynamic triangles, drag needs to be > 0 for...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:120</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644a92bbb75d47ea0058a9a89deb0abec67f"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a92bbb75d47ea0058a9a89deb0abec67f">eNvFlexPhaseShapeChannel5</a></div><div class="ttdoc">Particle will collide with shapes with channel 5 set (see NvFlexMakeShapeFlags()) ...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:176</div></div>
<div class="ttc" id="_nv_flex_8h_html_a9e925acbc34675dfe247da017cbd855f"><div class="ttname"><a href="_nv_flex_8h.html#a9e925acbc34675dfe247da017cbd855f">NvFlexCreateSolver</a></div><div class="ttdeci">NV_FLEX_API NvFlexSolver * NvFlexCreateSolver(NvFlexLibrary *lib, const NvFlexSolverDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a584ffb275b9986fd5444ed1a7ea247d9"><div class="ttname"><a href="_nv_flex_8h.html#a584ffb275b9986fd5444ed1a7ea247d9">NvFlexUpdateDistanceField</a></div><div class="ttdeci">NV_FLEX_API void NvFlexUpdateDistanceField(NvFlexLibrary *lib, NvFlexDistanceFieldId sdf, int dimx, int dimy, int dimz, NvFlexBuffer *field)</div></div>
<div class="ttc" id="_nv_flex_8h_html_struct_nv_flex_timers"><div class="ttname"><a href="_nv_flex_8h.html#struct_nv_flex_timers">NvFlexTimers</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:200</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5628f890f4ae070e405feaf1f81a7b85"><div class="ttname"><a href="_nv_flex_8h.html#a5628f890f4ae070e405feaf1f81a7b85">NvFlexParams::surfaceTension</a></div><div class="ttdeci">float surfaceTension</div><div class="ttdoc">Controls how strongly particles attempt to minimize surface area, default: 0.0, range: [0...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:126</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644a66aa70953a97744621e2afa41d0e32d2"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a66aa70953a97744621e2afa41d0e32d2">eNvFlexPhaseShapeChannel0</a></div><div class="ttdoc">Particle will collide with shapes with channel 0 set (see NvFlexMakeShapeFlags()) ...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:171</div></div>
<div class="ttc" id="_nv_flex_8h_html_a843360ebf23cd00e5eff72d19e796dd9"><div class="ttname"><a href="_nv_flex_8h.html#a843360ebf23cd00e5eff72d19e796dd9">NvFlexSolverCallbackParams::dt</a></div><div class="ttdeci">float dt</div><div class="ttdoc">The per-update time-step, this is the value passed to NvFlexUpdateSolver() </div><div class="ttdef"><b>Definition:</b> NvFlex.h:277</div></div>
<div class="ttc" id="_nv_flex_8h_html_ad019ad1901bc33d43e3a60df0dfe9b09"><div class="ttname"><a href="_nv_flex_8h.html#ad019ad1901bc33d43e3a60df0dfe9b09">NvFlexParams::fluidRestDistance</a></div><div class="ttdeci">float fluidRestDistance</div><div class="ttdoc">The distance fluid particles are spaced at the rest density, must be in the range (0...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:102</div></div>
<div class="ttc" id="_nv_flex_8h_html_a6071050991cf71a8d9ff28ea968479af"><div class="ttname"><a href="_nv_flex_8h.html#a6071050991cf71a8d9ff28ea968479af">NvFlexTimers::reorder</a></div><div class="ttdeci">float reorder</div><div class="ttdoc">Time spent reordering particles. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:206</div></div>
<div class="ttc" id="_nv_flex_8h_html_a56e990c5bfbc89677988cbf2471c0ade"><div class="ttname"><a href="_nv_flex_8h.html#a56e990c5bfbc89677988cbf2471c0ade">NvFlexDistanceFieldId</a></div><div class="ttdeci">unsigned int NvFlexDistanceFieldId</div><div class="ttdef"><b>Definition:</b> NvFlex.h:735</div></div>
<div class="ttc" id="_nv_flex_8h_html_a0506ae712f846087b8647ea389ac26baa315488da382a5e9794c83358385f7ae1"><div class="ttname"><a href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baa315488da382a5e9794c83358385f7ae1">eNvFlexShapeTriangleMesh</a></div><div class="ttdoc">A triangle mesh shape, see FlexTriangleMeshGeometry. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:958</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644a76a62d3a5df428f18e01f8b37573a7b1"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644a76a62d3a5df428f18e01f8b37573a7b1">eNvFlexPhaseSelfCollideFilter</a></div><div class="ttdoc">If set this particle will ignore collisions with particles closer than the radius in the rest pose...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:167</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab16b6d2e11e0ab417ee6c4cf16f0a27d"><div class="ttname"><a href="_nv_flex_8h.html#ab16b6d2e11e0ab417ee6c4cf16f0a27d">NvFlexGetTimers</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetTimers(NvFlexSolver *solver, NvFlexTimers *timers)</div></div>
<div class="ttc" id="_nv_flex_8h_html_abdc984644770fec15d7af740c9730186"><div class="ttname"><a href="_nv_flex_8h.html#abdc984644770fec15d7af740c9730186">NvFlexConvexMeshGeometry::mesh</a></div><div class="ttdeci">NvFlexConvexMeshId mesh</div><div class="ttdef"><b>Definition:</b> NvFlex.h:916</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab5cc56e228374b1da0910356b3172b4e"><div class="ttname"><a href="_nv_flex_8h.html#ab5cc56e228374b1da0910356b3172b4e">NvFlexGetRigids</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetRigids(NvFlexSolver *solver, NvFlexBuffer *offsets, NvFlexBuffer *indices, NvFlexBuffer *restPositions, NvFlexBuffer *restNormals, NvFlexBuffer *stiffness, NvFlexBuffer *thresholds, NvFlexBuffer *creeps, NvFlexBuffer *rotations, NvFlexBuffer *translations)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ae701fdcc0e7bf26c1dfc54d400ffb3d2"><div class="ttname"><a href="_nv_flex_8h.html#ae701fdcc0e7bf26c1dfc54d400ffb3d2">NvFlexCollisionGeometry::convexMesh</a></div><div class="ttdeci">NvFlexConvexMeshGeometry convexMesh</div><div class="ttdef"><b>Definition:</b> NvFlex.h:947</div></div>
<div class="ttc" id="_nv_flex_8h_html_a4f80c8bcfa6de99a52983adb13d80db9"><div class="ttname"><a href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9">NvFlexSolverCallbackStage</a></div><div class="ttdeci">NvFlexSolverCallbackStage</div><div class="ttdef"><b>Definition:</b> NvFlex.h:243</div></div>
<div class="ttc" id="_nv_flex_8h_html_aeff62427426510eeb1cf5625e14ff585"><div class="ttname"><a href="_nv_flex_8h.html#aeff62427426510eeb1cf5625e14ff585">NvFlexParams::dissipation</a></div><div class="ttdeci">float dissipation</div><div class="ttdoc">Damps particle velocity based on how many particle contacts it has. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:116</div></div>
<div class="ttc" id="_nv_flex_8h_html_a0506ae712f846087b8647ea389ac26ba"><div class="ttname"><a href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26ba">NvFlexCollisionShapeType</a></div><div class="ttdeci">NvFlexCollisionShapeType</div><div class="ttdef"><b>Definition:</b> NvFlex.h:952</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab4435b3857752360375fe52fc992cfcaa77b51759e33d60b2caf327bb4835351e"><div class="ttname"><a href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa77b51759e33d60b2caf327bb4835351e">eNvFlexLogDebug</a></div><div class="ttdoc">Used only in debug version of dll. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:236</div></div>
<div class="ttc" id="_nv_flex_8h_html_aa392608715b2304f06606d498bd69312"><div class="ttname"><a href="_nv_flex_8h.html#aa392608715b2304f06606d498bd69312">NvFlexGetConvexMeshes</a></div><div class="ttdeci">NV_FLEX_API int NvFlexGetConvexMeshes(NvFlexLibrary *lib, NvFlexConvexMeshId *meshes, int n)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a9b2d3dc5ac42011aeec4e13be2e14252ad0c27f7aafdc4fe569722025c8eb2178"><div class="ttname"><a href="_nv_flex_8h.html#a9b2d3dc5ac42011aeec4e13be2e14252ad0c27f7aafdc4fe569722025c8eb2178">eNvFlexCUDA</a></div><div class="ttdoc">Use CUDA compute for Flex, the application must link against the CUDA libraries. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:306</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab452c355f92dda050d4b4dafb8e71b03"><div class="ttname"><a href="_nv_flex_8h.html#ab452c355f92dda050d4b4dafb8e71b03">NvFlexUpdateConvexMesh</a></div><div class="ttdeci">NV_FLEX_API void NvFlexUpdateConvexMesh(NvFlexLibrary *lib, NvFlexConvexMeshId convex, NvFlexBuffer *planes, int numPlanes, const float *lower, const float *upper)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ac2f8dff9857a86683aa6e55c058888d7"><div class="ttname"><a href="_nv_flex_8h.html#ac2f8dff9857a86683aa6e55c058888d7">NvFlexParams::relaxationMode</a></div><div class="ttdeci">NvFlexRelaxationMode relaxationMode</div><div class="ttdoc">How the relaxation is applied inside the solver. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:152</div></div>
<div class="ttc" id="_nv_flex_8h_html_af9bb710afb22ec5ed50679aef8717777"><div class="ttname"><a href="_nv_flex_8h.html#af9bb710afb22ec5ed50679aef8717777">NvFlexParams::lift</a></div><div class="ttdeci">float lift</div><div class="ttdoc">Lift force applied to particles belonging to dynamic triangles, proportional to velocity^2*area in th...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:122</div></div>
<div class="ttc" id="_nv_flex_8h_html_a2ac0a898a565a2cdf13b80acd4a3555c"><div class="ttname"><a href="_nv_flex_8h.html#a2ac0a898a565a2cdf13b80acd4a3555c">NvFlexGetDeviceAndContext</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetDeviceAndContext(NvFlexLibrary *lib, void **device, void **context)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a7e760844341b78a547ca4e29abf48806"><div class="ttname"><a href="_nv_flex_8h.html#a7e760844341b78a547ca4e29abf48806">NvFlexInitDesc::renderDevice</a></div><div class="ttdeci">void * renderDevice</div><div class="ttdoc">Direct3D device to use for simulation, if none is specified a new device and context will be created...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:318</div></div>
<div class="ttc" id="_nv_flex_8h_html_a0506ae712f846087b8647ea389ac26baab17c8dd4f9500016b77a9b49de3c48e7"><div class="ttname"><a href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baab17c8dd4f9500016b77a9b49de3c48e7">eNvFlexShapeBox</a></div><div class="ttdoc">A box shape, see FlexBoxGeometry. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:956</div></div>
<div class="ttc" id="_nv_flex_8h_html_a6198445df7f341ec75f37e1dfb44830c"><div class="ttname"><a href="_nv_flex_8h.html#a6198445df7f341ec75f37e1dfb44830c">NvFlexParams::damping</a></div><div class="ttdeci">float damping</div><div class="ttdoc">Viscous drag force, applies a force proportional, and opposite to the particle velocity. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:117</div></div>
<div class="ttc" id="_nv_flex_8h_html_aa03d94be697cdc3aaa56e469d87255a4"><div class="ttname"><a href="_nv_flex_8h.html#aa03d94be697cdc3aaa56e469d87255a4">NvFlexSetDynamicTriangles</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetDynamicTriangles(NvFlexSolver *solver, NvFlexBuffer *indices, NvFlexBuffer *normals, int numTris)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a31c31ea4f96cd4fdadc6b7317691304c"><div class="ttname"><a href="_nv_flex_8h.html#a31c31ea4f96cd4fdadc6b7317691304c">NvFlexCollisionShapeFlags</a></div><div class="ttdeci">NvFlexCollisionShapeFlags</div><div class="ttdef"><b>Definition:</b> NvFlex.h:962</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab4f2eb16c8aba6371fbae51a991eaaa5"><div class="ttname"><a href="_nv_flex_8h.html#ab4f2eb16c8aba6371fbae51a991eaaa5">NvFlexParams::numPlanes</a></div><div class="ttdeci">int numPlanes</div><div class="ttdoc">Num collision planes. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:150</div></div>
<div class="ttc" id="_nv_flex_8h_html_ad48f83b8442323687d2268206e913496"><div class="ttname"><a href="_nv_flex_8h.html#ad48f83b8442323687d2268206e913496">NvFlexAllocBuffer</a></div><div class="ttdeci">NV_FLEX_API NvFlexBuffer * NvFlexAllocBuffer(NvFlexLibrary *lib, int elementCount, int elementByteStride, NvFlexBufferType type)</div></div>
<div class="ttc" id="_nv_flex_8h_html_struct_nv_flex_params"><div class="ttname"><a href="_nv_flex_8h.html#struct_nv_flex_params">NvFlexParams</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:95</div></div>
<div class="ttc" id="_nv_flex_8h_html_ae4203fb9cf4772c3186f96cc2d9f6ea8"><div class="ttname"><a href="_nv_flex_8h.html#ae4203fb9cf4772c3186f96cc2d9f6ea8">NvFlexTimers::collideShapes</a></div><div class="ttdeci">float collideShapes</div><div class="ttdoc">Time spent colliding convex shapes. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:208</div></div>
<div class="ttc" id="_nv_flex_8h_html_af7a56fc54644e7020e105f2ff41dfb60"><div class="ttname"><a href="_nv_flex_8h.html#af7a56fc54644e7020e105f2ff41dfb60">NvFlexParams::particleFriction</a></div><div class="ttdeci">float particleFriction</div><div class="ttdoc">Coefficient of friction used when colliding particles. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:107</div></div>
<div class="ttc" id="_nv_flex_8h_html_ac75370f005fd453fe8a324fe62be1b5c"><div class="ttname"><a href="_nv_flex_8h.html#ac75370f005fd453fe8a324fe62be1b5c">NvFlexUpdateSolver</a></div><div class="ttdeci">NV_FLEX_API void NvFlexUpdateSolver(NvFlexSolver *solver, float dt, int substeps, bool enableTimers)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a98b4df3721709c862ef5d09edcc6d4c3"><div class="ttname"><a href="_nv_flex_8h.html#a98b4df3721709c862ef5d09edcc6d4c3">NvFlexTimers::createGrid</a></div><div class="ttdeci">float createGrid</div><div class="ttdoc">Time spent creating grid. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:205</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644ad108f6ebf28346813cfd3602d984bb32"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644ad108f6ebf28346813cfd3602d984bb32">eNvFlexPhaseGroupMask</a></div><div class="ttdoc">Bits [ 0, 19] represent the particle group for controlling collisions. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:162</div></div>
<div class="ttc" id="_nv_flex_8h_html_ae2e480822cc06ec249ee2557f6cc8ee1"><div class="ttname"><a href="_nv_flex_8h.html#ae2e480822cc06ec249ee2557f6cc8ee1">NvFlexParams::buoyancy</a></div><div class="ttdeci">float buoyancy</div><div class="ttdoc">Gravity is scaled by this value for fluid particles. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:135</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab4435b3857752360375fe52fc992cfcaa8feff72c0b0391e8adf3ddb6c39ef10e"><div class="ttname"><a href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa8feff72c0b0391e8adf3ddb6c39ef10e">eNvFlexLogAll</a></div><div class="ttdoc">All log types. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:237</div></div>
<div class="ttc" id="_nv_flex_8h_html_aea4e7117722df53dfe44c676496117fa"><div class="ttname"><a href="_nv_flex_8h.html#aea4e7117722df53dfe44c676496117fa">NvFlexSetShapes</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetShapes(NvFlexSolver *solver, NvFlexBuffer *geometry, NvFlexBuffer *shapePositions, NvFlexBuffer *shapeRotations, NvFlexBuffer *shapePrevPositions, NvFlexBuffer *shapePrevRotations, NvFlexBuffer *shapeFlags, int numShapes)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a9b2d3dc5ac42011aeec4e13be2e14252a15e78a7baf13cc7fd73f255ac84f0943"><div class="ttname"><a href="_nv_flex_8h.html#a9b2d3dc5ac42011aeec4e13be2e14252a15e78a7baf13cc7fd73f255ac84f0943">eNvFlexD3D12</a></div><div class="ttdoc">Use DirectX 12 compute for Flex, the application must link against the D3D libraries. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:308</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab6e2aa06b69e92cbd3b2bca19f18e794"><div class="ttname"><a href="_nv_flex_8h.html#ab6e2aa06b69e92cbd3b2bca19f18e794">NvFlexTriangleMeshGeometry::scale</a></div><div class="ttdeci">float scale[3]</div><div class="ttdoc">The scale of the object from local space to world space. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:924</div></div>
<div class="ttc" id="_nv_flex_8h_html_abe52b62e7af361f387d67414b9e2cf9b"><div class="ttname"><a href="_nv_flex_8h.html#abe52b62e7af361f387d67414b9e2cf9b">NvFlexTimers::solveDensities</a></div><div class="ttdeci">float solveDensities</div><div class="ttdoc">Time spent solving density constraints. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:212</div></div>
<div class="ttc" id="_nv_flex_8h_html_a96a771dd328d019e6164e5f23d29ffcb"><div class="ttname"><a href="_nv_flex_8h.html#a96a771dd328d019e6164e5f23d29ffcb">NvFlexGetSmoothParticles</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetSmoothParticles(NvFlexSolver *solver, NvFlexBuffer *p, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_aef768edc8e4df1a78a94a6c971541550"><div class="ttname"><a href="_nv_flex_8h.html#aef768edc8e4df1a78a94a6c971541550">NvFlexGetAnisotropy</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetAnisotropy(NvFlexSolver *solver, NvFlexBuffer *q1, NvFlexBuffer *q2, NvFlexBuffer *q3, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a4cb4462803ebff105d151fd45b4efad6"><div class="ttname"><a href="_nv_flex_8h.html#a4cb4462803ebff105d151fd45b4efad6">NvFlexDestroyTriangleMesh</a></div><div class="ttdeci">NV_FLEX_API void NvFlexDestroyTriangleMesh(NvFlexLibrary *lib, NvFlexTriangleMeshId mesh)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a482a7c3b197c4df656e9509fbd04032c"><div class="ttname"><a href="_nv_flex_8h.html#a482a7c3b197c4df656e9509fbd04032c">NvFlexParams::gravity</a></div><div class="ttdeci">float gravity[3]</div><div class="ttdoc">Constant acceleration applied to all particles. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:99</div></div>
<div class="ttc" id="_nv_flex_8h_html_a4f80c8bcfa6de99a52983adb13d80db9ab75a912c3990b0fbd6b06a6741a20e69"><div class="ttname"><a href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9ab75a912c3990b0fbd6b06a6741a20e69">eNvFlexStageIterationEnd</a></div><div class="ttdoc">Called at the end of each constraint iteration. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:246</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab4435b3857752360375fe52fc992cfcaa8aed6496f033604148138299fa075edd"><div class="ttname"><a href="_nv_flex_8h.html#ab4435b3857752360375fe52fc992cfcaa8aed6496f033604148138299fa075edd">eNvFlexLogError</a></div><div class="ttdoc">Error messages. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:233</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab559759820a4322aff061745ef26c867"><div class="ttname"><a href="_nv_flex_8h.html#ab559759820a4322aff061745ef26c867">NvFlexFreeBuffer</a></div><div class="ttdeci">NV_FLEX_API void NvFlexFreeBuffer(NvFlexBuffer *buf)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644ae4ea43366942f719f40e8526ad21a038"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644ae4ea43366942f719f40e8526ad21a038">eNvFlexPhaseShapeChannelMask</a></div><div class="ttdoc">Bits [24, 30] hold flags representing what shape collision channels particles will collide with...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:164</div></div>
<div class="ttc" id="_nv_flex_8h_html_a75eade1512d023cb19da5b7ebbad10f3"><div class="ttname"><a href="_nv_flex_8h.html#a75eade1512d023cb19da5b7ebbad10f3">NvFlexTimers::solveInflatables</a></div><div class="ttdeci">float solveInflatables</div><div class="ttdoc">Time spent solving pressure constraints. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:217</div></div>
<div class="ttc" id="_nv_flex_8h_html_a4f80c8bcfa6de99a52983adb13d80db9a79ce9005dbc92198a1f180c6afde6a44"><div class="ttname"><a href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a79ce9005dbc92198a1f180c6afde6a44">eNvFlexStageSubstepBegin</a></div><div class="ttdoc">Called at the beginning of each substep after the prediction step has been completed. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:247</div></div>
<div class="ttc" id="_nv_flex_8h_html_aee5c235d5fab40831cf339680aa25560a421fe1e1bb00fc41e9b32208cd9155f5"><div class="ttname"><a href="_nv_flex_8h.html#aee5c235d5fab40831cf339680aa25560a421fe1e1bb00fc41e9b32208cd9155f5">eNvFlexFeatureModeSimpleSolids</a></div><div class="ttdoc">Simple per-particle collision (no per-particle SDF normals, no fluids) </div><div class="ttdef"><b>Definition:</b> NvFlex.h:356</div></div>
<div class="ttc" id="_nv_flex_8h_html_struct_nv_flex_init_desc"><div class="ttname"><a href="_nv_flex_8h.html#struct_nv_flex_init_desc">NvFlexInitDesc</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:314</div></div>
<div class="ttc" id="_nv_flex_8h_html_a46f5d35902f7da40628247175a174f3ba33711a4b466d606d68dee43918f819db"><div class="ttname"><a href="_nv_flex_8h.html#a46f5d35902f7da40628247175a174f3ba33711a4b466d606d68dee43918f819db">eNvFlexRelaxationGlobal</a></div><div class="ttdoc">The relaxation factor is a fixed multiplier on each constraint's position delta. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:87</div></div>
<div class="ttc" id="_nv_flex_8h_html_afbcbff4e4865105514c194398ab3a7b0"><div class="ttname"><a href="_nv_flex_8h.html#afbcbff4e4865105514c194398ab3a7b0">NvFlexGetVelocities</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetVelocities(NvFlexSolver *solver, NvFlexBuffer *v, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_struct_nv_flex_capsule_geometry"><div class="ttname"><a href="_nv_flex_8h.html#struct_nv_flex_capsule_geometry">NvFlexCapsuleGeometry</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:896</div></div>
<div class="ttc" id="_nv_flex_8h_html_a3c4d2aa395ff8d0f70a6380448943be2"><div class="ttname"><a href="_nv_flex_8h.html#a3c4d2aa395ff8d0f70a6380448943be2">NvFlexTimers::total</a></div><div class="ttdeci">float total</div><div class="ttdoc">Sum of all timers above. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:225</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5b9af9cf4d889b4772cb61cefda92a87"><div class="ttname"><a href="_nv_flex_8h.html#a5b9af9cf4d889b4772cb61cefda92a87">NvFlexSolverCallbackParams::userData</a></div><div class="ttdeci">void * userData</div><div class="ttdoc">Pointer to the user data provided to NvFlexRegisterSolverCallback() </div><div class="ttdef"><b>Definition:</b> NvFlex.h:269</div></div>
<div class="ttc" id="_nv_flex_8h_html_a3a20cc2539983a009caaf77ec9ceab82"><div class="ttname"><a href="_nv_flex_8h.html#a3a20cc2539983a009caaf77ec9ceab82">NvFlexGetDensities</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetDensities(NvFlexSolver *solver, NvFlexBuffer *densities, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a1241ff3522eafac4b402370a7a6525d8"><div class="ttname"><a href="_nv_flex_8h.html#a1241ff3522eafac4b402370a7a6525d8">NvFlexCapsuleGeometry::radius</a></div><div class="ttdeci">float radius</div><div class="ttdef"><b>Definition:</b> NvFlex.h:898</div></div>
<div class="ttc" id="_nv_flex_8h_html_abdfd0834422dd99154a27962614525e5"><div class="ttname"><a href="_nv_flex_8h.html#abdfd0834422dd99154a27962614525e5">NvFlexGetDynamicTriangles</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetDynamicTriangles(NvFlexSolver *solver, NvFlexBuffer *indices, NvFlexBuffer *normals, int numTris)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ad6ee1e23e0c49aad63df8f605182de3a"><div class="ttname"><a href="_nv_flex_8h.html#ad6ee1e23e0c49aad63df8f605182de3a">NvFlexMakeShapeFlags</a></div><div class="ttdeci">NV_FLEX_API int NvFlexMakeShapeFlags(NvFlexCollisionShapeType type, bool dynamic)</div><div class="ttdef"><b>Definition:</b> NvFlex.h:983</div></div>
<div class="ttc" id="_nv_flex_8h_html_aab83daf46e5a9428a0ad76fb75e8ec7e"><div class="ttname"><a href="_nv_flex_8h.html#aab83daf46e5a9428a0ad76fb75e8ec7e">NvFlexRegisterOGLBuffer</a></div><div class="ttdeci">NV_FLEX_API NvFlexBuffer * NvFlexRegisterOGLBuffer(NvFlexLibrary *lib, int buf, int elementCount, int elementByteStride)</div></div>
<div class="ttc" id="_nv_flex_8h_html_struct_nv_flex_detail_timer"><div class="ttname"><a href="_nv_flex_8h.html#struct_nv_flex_detail_timer">NvFlexDetailTimer</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:1182</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5ad2a7745fcb4d4afd5b5f1bda074644aa3a4fd0d5930b31199334e500ac2d7c8"><div class="ttname"><a href="_nv_flex_8h.html#a5ad2a7745fcb4d4afd5b5f1bda074644aa3a4fd0d5930b31199334e500ac2d7c8">eNvFlexPhaseShapeChannel2</a></div><div class="ttdoc">Particle will collide with shapes with channel 2 set (see NvFlexMakeShapeFlags()) ...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:173</div></div>
<div class="ttc" id="_nv_flex_8h_html_a8a1b3c24aa73606bcd47a72473db9629"><div class="ttname"><a href="_nv_flex_8h.html#a8a1b3c24aa73606bcd47a72473db9629">NvFlexParams::relaxationFactor</a></div><div class="ttdeci">float relaxationFactor</div><div class="ttdoc">Control the convergence rate of the parallel solver, default: 1, values greater than 1 may lead to in...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:153</div></div>
<div class="ttc" id="_nv_flex_8h_html_ae67c0cab2ecee8eb9485a26ef0fad6a9"><div class="ttname"><a href="_nv_flex_8h.html#ae67c0cab2ecee8eb9485a26ef0fad6a9">NvFlexSetSprings</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetSprings(NvFlexSolver *solver, NvFlexBuffer *indices, NvFlexBuffer *restLengths, NvFlexBuffer *stiffness, int numSprings)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a9d825db54bc9a0bca998b3654db3b20e"><div class="ttname"><a href="_nv_flex_8h.html#a9d825db54bc9a0bca998b3654db3b20e">NvFlexTimers::finalize</a></div><div class="ttdeci">float finalize</div><div class="ttdoc">Time spent finalizing state. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:223</div></div>
<div class="ttc" id="_nv_flex_8h_html_a9b65813d2a2d3f99db162d39a62481f8"><div class="ttname"><a href="_nv_flex_8h.html#a9b65813d2a2d3f99db162d39a62481f8">NvFlexSolverCallbackParams::sortedToOriginalMap</a></div><div class="ttdeci">const int * sortedToOriginalMap</div><div class="ttdoc">Device pointer that maps the original particle index to the index in the callback data structure...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:280</div></div>
<div class="ttc" id="_nv_flex_8h_html_a9b2d3dc5ac42011aeec4e13be2e14252"><div class="ttname"><a href="_nv_flex_8h.html#a9b2d3dc5ac42011aeec4e13be2e14252">NvFlexComputeType</a></div><div class="ttdeci">NvFlexComputeType</div><div class="ttdef"><b>Definition:</b> NvFlex.h:304</div></div>
<div class="ttc" id="_nv_flex_8h_html_abbee38b5413bbfd1db914c66fcdfc616"><div class="ttname"><a href="_nv_flex_8h.html#abbee38b5413bbfd1db914c66fcdfc616">NvFlexGetNeighbors</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetNeighbors(NvFlexSolver *solver, NvFlexBuffer *neighbors, NvFlexBuffer *counts, NvFlexBuffer *apiToInternal, NvFlexBuffer *internalToApi)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a27a185172ad1951d40c476ade8307068"><div class="ttname"><a href="_nv_flex_8h.html#a27a185172ad1951d40c476ade8307068">NvFlexParams::dynamicFriction</a></div><div class="ttdeci">float dynamicFriction</div><div class="ttdoc">Coefficient of friction used when colliding against shapes. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:105</div></div>
<div class="ttc" id="_nv_flex_8h_html_struct_nv_flex_s_d_f_geometry"><div class="ttname"><a href="_nv_flex_8h.html#struct_nv_flex_s_d_f_geometry">NvFlexSDFGeometry</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:932</div></div>
<div class="ttc" id="_nv_flex_8h_html_a800620cc4888bbe5696c5f0e19b22bb9"><div class="ttname"><a href="_nv_flex_8h.html#a800620cc4888bbe5696c5f0e19b22bb9">NvFlexConvexMeshGeometry::scale</a></div><div class="ttdeci">float scale[3]</div><div class="ttdef"><b>Definition:</b> NvFlex.h:915</div></div>
<div class="ttc" id="struct_nv_flex_solver_callback_html"><div class="ttname"><a href="struct_nv_flex_solver_callback.html">NvFlexSolverCallback</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:285</div></div>
<div class="ttc" id="_nv_flex_8h_html_a5be673031b100c3861fd9eb824fcf00f"><div class="ttname"><a href="_nv_flex_8h.html#a5be673031b100c3861fd9eb824fcf00f">NvFlexParams::diffuseBuoyancy</a></div><div class="ttdeci">float diffuseBuoyancy</div><div class="ttdoc">Scales force opposing gravity that diffuse particles receive. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:139</div></div>
<div class="ttc" id="_nv_flex_8h_html_a2f85189cbc3014b73164cf8c4eb87e0a"><div class="ttname"><a href="_nv_flex_8h.html#a2f85189cbc3014b73164cf8c4eb87e0a">NvFlexTimers::updateBounds</a></div><div class="ttdeci">float updateBounds</div><div class="ttdoc">Time spent updating particle bounds. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:224</div></div>
<div class="ttc" id="_nv_flex_8h_html_a3ddbb30a2fde4a2e9ccec7854300b1d4"><div class="ttname"><a href="_nv_flex_8h.html#a3ddbb30a2fde4a2e9ccec7854300b1d4">NvFlexDetailTimer::name</a></div><div class="ttdeci">char * name</div><div class="ttdef"><b>Definition:</b> NvFlex.h:1184</div></div>
<div class="ttc" id="_nv_flex_8h_html_ab7c54d6c0b3d3595780e5179bf62ebc4"><div class="ttname"><a href="_nv_flex_8h.html#ab7c54d6c0b3d3595780e5179bf62ebc4">NvFlexParams::solidRestDistance</a></div><div class="ttdeci">float solidRestDistance</div><div class="ttdoc">The distance non-fluid particles attempt to maintain from each other, must be in the range (0...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:101</div></div>
<div class="ttc" id="_nv_flex_8h_html_a69a33d464c002a8916a5925c6ef32ae6"><div class="ttname"><a href="_nv_flex_8h.html#a69a33d464c002a8916a5925c6ef32ae6">NvFlexSetSolverDescDefaults</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetSolverDescDefaults(NvFlexSolverDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a3f93fba688338576ff3258b034525dc5"><div class="ttname"><a href="_nv_flex_8h.html#a3f93fba688338576ff3258b034525dc5">NvFlexParams::solidPressure</a></div><div class="ttdeci">float solidPressure</div><div class="ttdoc">Add pressure from solid surfaces to particles. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:133</div></div>
<div class="ttc" id="_nv_flex_8h_html_a4d10188e917ae045e0e903f3db1c638d"><div class="ttname"><a href="_nv_flex_8h.html#a4d10188e917ae045e0e903f3db1c638d">NvFlexTimers::solveVelocities</a></div><div class="ttdeci">float solveVelocities</div><div class="ttdoc">Time spent solving velocity constraints. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:213</div></div>
<div class="ttc" id="_nv_flex_8h_html_a4f80c8bcfa6de99a52983adb13d80db9a1f2e7acff9b3b74922f90240d29fd1b3"><div class="ttname"><a href="_nv_flex_8h.html#a4f80c8bcfa6de99a52983adb13d80db9a1f2e7acff9b3b74922f90240d29fd1b3">eNvFlexStageCount</a></div><div class="ttdoc">Number of stages. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:250</div></div>
<div class="ttc" id="_nv_flex_8h_html_afc306cb48c313ee518461d60c1014485"><div class="ttname"><a href="_nv_flex_8h.html#afc306cb48c313ee518461d60c1014485">NvFlexParams::restitution</a></div><div class="ttdeci">float restitution</div><div class="ttdoc">Coefficient of restitution used when colliding against shapes, particle collisions are always inelast...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:108</div></div>
<div class="ttc" id="_nv_flex_8h_html_struct_nv_flex_triangle_mesh_geometry"><div class="ttname"><a href="_nv_flex_8h.html#struct_nv_flex_triangle_mesh_geometry">NvFlexTriangleMeshGeometry</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:922</div></div>
<div class="ttc" id="_nv_flex_8h_html_a572c9bf93128466e27d57f225f4d0188"><div class="ttname"><a href="_nv_flex_8h.html#a572c9bf93128466e27d57f225f4d0188">NvFlexParams::numIterations</a></div><div class="ttdeci">int numIterations</div><div class="ttdoc">Number of solver iterations to perform per-substep. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:97</div></div>
<div class="ttc" id="_nv_flex_8h_html_ae6671f352bd77e296609d0bc2a57fd11"><div class="ttname"><a href="_nv_flex_8h.html#ae6671f352bd77e296609d0bc2a57fd11">NvFlexRestoreContext</a></div><div class="ttdeci">NV_FLEX_API void NvFlexRestoreContext(NvFlexLibrary *lib)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a581b458848039220203547af53de128f"><div class="ttname"><a href="_nv_flex_8h.html#a581b458848039220203547af53de128f">NvFlexGetParams</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetParams(NvFlexSolver *solver, NvFlexParams *params)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a608af97e77a912e959b0e825082a9cd6"><div class="ttname"><a href="_nv_flex_8h.html#a608af97e77a912e959b0e825082a9cd6">NvFlexParams::anisotropyScale</a></div><div class="ttdeci">float anisotropyScale</div><div class="ttdoc">Control how much anisotropy is present in resulting ellipsoids for rendering, if zero then anisotropy...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:129</div></div>
<div class="ttc" id="_nv_flex_8h_html_ae763dd9bfcfa4092c0165a506e32e18b"><div class="ttname"><a href="_nv_flex_8h.html#ae763dd9bfcfa4092c0165a506e32e18b">NvFlexParams::vorticityConfinement</a></div><div class="ttdeci">float vorticityConfinement</div><div class="ttdoc">Increases vorticity by applying rotational forces to particles. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:128</div></div>
<div class="ttc" id="_nv_flex_8h_html_a469950744e0b7222969762a89b992255"><div class="ttname"><a href="_nv_flex_8h.html#a469950744e0b7222969762a89b992255">NvFlexParams::diffuseLifetime</a></div><div class="ttdeci">float diffuseLifetime</div><div class="ttdoc">Time in seconds that a diffuse particle will live for after being spawned, particles will be spawned ...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:142</div></div>
<div class="ttc" id="_nv_flex_8h_html_a4bf0ccff128c165560dba52afb748d7e"><div class="ttname"><a href="_nv_flex_8h.html#a4bf0ccff128c165560dba52afb748d7e">NvFlexParams::diffuseDrag</a></div><div class="ttdeci">float diffuseDrag</div><div class="ttdoc">Scales force diffuse particles receive in direction of neighbor fluid particles. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:140</div></div>
<div class="ttc" id="_nv_flex_8h_html_afd6aff58269d6c359df2453c96397840"><div class="ttname"><a href="_nv_flex_8h.html#afd6aff58269d6c359df2453c96397840">NvFlexGetSolverDesc</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetSolverDesc(NvFlexSolver *solver, NvFlexSolverDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_aeecd11525503649b579ae262b671fbc8"><div class="ttname"><a href="_nv_flex_8h.html#aeecd11525503649b579ae262b671fbc8">NvFlexParams::particleCollisionMargin</a></div><div class="ttdeci">float particleCollisionMargin</div><div class="ttdoc">Increases the radius used during neighbor finding, this is useful if particles are expected to move s...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:146</div></div>
<div class="ttc" id="_nv_flex_8h_html_acdde802d58e1558c03e449e04ae33f15"><div class="ttname"><a href="_nv_flex_8h.html#acdde802d58e1558c03e449e04ae33f15">NvFlexParams::diffuseThreshold</a></div><div class="ttdeci">float diffuseThreshold</div><div class="ttdoc">Particles with kinetic energy + divergence above this threshold will spawn new diffuse particles...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:138</div></div>
<div class="ttc" id="_nv_flex_8h_html_af842f041f92c608b3ebfa2092caea889"><div class="ttname"><a href="_nv_flex_8h.html#af842f041f92c608b3ebfa2092caea889">NvFlexCopyDesc::elementCount</a></div><div class="ttdeci">int elementCount</div><div class="ttdef"><b>Definition:</b> NvFlex.h:516</div></div>
<div class="ttc" id="_nv_flex_8h_html_a169e4c126acf46bdebf76c36a44deca3a103255fa795b55a7f430a41493002576"><div class="ttname"><a href="_nv_flex_8h.html#a169e4c126acf46bdebf76c36a44deca3a103255fa795b55a7f430a41493002576">eNvFlexBufferDevice</a></div><div class="ttdoc">A device memory buffer, mapping this on CUDA will return a device memory pointer, and will return a b...</div><div class="ttdef"><b>Definition:</b> NvFlex.h:79</div></div>
<div class="ttc" id="_nv_flex_8h_html_aab5f90f4024d71d08c3f9327c6d8c184"><div class="ttname"><a href="_nv_flex_8h.html#aab5f90f4024d71d08c3f9327c6d8c184">NvFlexGetSprings</a></div><div class="ttdeci">NV_FLEX_API void NvFlexGetSprings(NvFlexSolver *solver, NvFlexBuffer *indices, NvFlexBuffer *restLengths, NvFlexBuffer *stiffness, int numSprings)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a125cfd9817437bb4f4bcb9418efa3dda"><div class="ttname"><a href="_nv_flex_8h.html#a125cfd9817437bb4f4bcb9418efa3dda">NvFlexSetRestParticles</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetRestParticles(NvFlexSolver *solver, NvFlexBuffer *p, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_ae2b271f123db0054512936f2acc6467f"><div class="ttname"><a href="_nv_flex_8h.html#ae2b271f123db0054512936f2acc6467f">NvFlexSetVelocities</a></div><div class="ttdeci">NV_FLEX_API void NvFlexSetVelocities(NvFlexSolver *solver, NvFlexBuffer *v, const NvFlexCopyDesc *desc)</div></div>
<div class="ttc" id="_nv_flex_8h_html_a0506ae712f846087b8647ea389ac26baaed52f0e803c6745ffc1a5f018a8756ce"><div class="ttname"><a href="_nv_flex_8h.html#a0506ae712f846087b8647ea389ac26baaed52f0e803c6745ffc1a5f018a8756ce">eNvFlexShapeConvexMesh</a></div><div class="ttdoc">A convex mesh shape, see FlexConvexMeshGeometry. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:957</div></div>
<div class="ttc" id="_nv_flex_8h_html_a8cb34cbcf9def6817d6d5d3c07177052"><div class="ttname"><a href="_nv_flex_8h.html#a8cb34cbcf9def6817d6d5d3c07177052">NvFlexTimers::updateTriangles</a></div><div class="ttdeci">float updateTriangles</div><div class="ttdoc">Time spent updating dynamic triangles. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:221</div></div>
<div class="ttc" id="_nv_flex_8h_html_struct_nv_flex_copy_desc"><div class="ttname"><a href="_nv_flex_8h.html#struct_nv_flex_copy_desc">NvFlexCopyDesc</a></div><div class="ttdef"><b>Definition:</b> NvFlex.h:512</div></div>
<div class="ttc" id="_nv_flex_8h_html_a169e4c126acf46bdebf76c36a44deca3"><div class="ttname"><a href="_nv_flex_8h.html#a169e4c126acf46bdebf76c36a44deca3">NvFlexBufferType</a></div><div class="ttdeci">NvFlexBufferType</div><div class="ttdef"><b>Definition:</b> NvFlex.h:76</div></div>
<div class="ttc" id="_nv_flex_8h_html_a23b8779c1516647ef5ed7f8010d619ff"><div class="ttname"><a href="_nv_flex_8h.html#a23b8779c1516647ef5ed7f8010d619ff">NvFlexInitDesc::enableExtensions</a></div><div class="ttdeci">bool enableExtensions</div><div class="ttdoc">Enable or disable NVIDIA/AMD extensions in DirectX, can lead to improved performance. </div><div class="ttdef"><b>Definition:</b> NvFlex.h:317</div></div>
<div class="ttc" id="_nv_flex_8h_html_a7ab5aa68da7ca1f69211a900f1a1c586"><div class="ttname"><a href="_nv_flex_8h.html#a7ab5aa68da7ca1f69211a900f1a1c586">NvFlexConvexMeshId</a></div><div class="ttdeci">unsigned int NvFlexConvexMeshId</div><div class="ttdef"><b>Definition:</b> NvFlex.h:742</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Mon Mar 19 2018 14:53:17 for FLEX by  <a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.9.1
</small></address>
</body>
</html>
|