diff options
| author | Marijn Tamis <[email protected]> | 2018-05-03 18:22:48 +0200 |
|---|---|---|
| committer | Marijn Tamis <[email protected]> | 2018-05-03 18:22:48 +0200 |
| commit | ca32c59a58d37c1822e185a2d5f3d0d3e8943593 (patch) | |
| tree | b06b9eec03f34344ef8fc31aa147b2714d3962ee /NvCloth/src/TripletScheduler.h | |
| parent | Forced rename of platform folders in cmake dir. Git didn't pick this up before. (diff) | |
| download | nvcloth-ca32c59a58d37c1822e185a2d5f3d0d3e8943593.tar.xz nvcloth-ca32c59a58d37c1822e185a2d5f3d0d3e8943593.zip | |
NvCloth 1.1.4 Release. (24070740)
Diffstat (limited to 'NvCloth/src/TripletScheduler.h')
| -rw-r--r-- | NvCloth/src/TripletScheduler.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/NvCloth/src/TripletScheduler.h b/NvCloth/src/TripletScheduler.h index 26119cf..81dc889 100644 --- a/NvCloth/src/TripletScheduler.h +++ b/NvCloth/src/TripletScheduler.h @@ -43,6 +43,7 @@ struct TripletScheduler { typedef Vector<Vec4u>::Type::ConstIterator ConstTripletIter; typedef Vector<Vec4u>::Type::Iterator TripletIter; + typedef Vector<uint32_t>::Type::Iterator SetIter; TripletScheduler(Range<const uint32_t[4]>); void simd(uint32_t numParticles, uint32_t simdWidth); @@ -50,6 +51,32 @@ struct TripletScheduler Vector<Vec4u>::Type mTriplets; Vector<uint32_t>::Type mSetSizes; + Vector<Vec4us>::Type mPaddedTriplets; }; } } + +//Make TripletScheduler available for the unit tests. +namespace nv +{ +namespace cloth +{ +struct NV_CLOTH_IMPORT TripletSchedulerTestInterface +{ +private: + TripletScheduler* mScheduler; + +public: + TripletSchedulerTestInterface(Range<const uint32_t[4]> triplets); + ~TripletSchedulerTestInterface(); + void simd(uint32_t numParticles, uint32_t simdWidth); + void warp(uint32_t numParticles, uint32_t warpWidth); + + Range<const uint32_t> GetTriplets(); + Range<const uint32_t> GetSetSizes(); +}; +} +} + +NV_CLOTH_API(nv::cloth::TripletSchedulerTestInterface*) NvClothCreateTripletScheduler(nv::cloth::Range<const uint32_t[4]>); +NV_CLOTH_API(void) NvClothDestroyTripletScheduler(nv::cloth::TripletSchedulerTestInterface*); |