Changeset 2353 for GTP/trunk/Lib/Vis/Preprocessing/src/VssRay.h
- Timestamp:
- 05/08/07 13:04:43 (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
GTP/trunk/Lib/Vis/Preprocessing/src/VssRay.h
r2342 r2353 22 22 #define VSS_STORE_VIEWCELLS 1 23 23 24 #ifdef USE_SSE25 26 struct RayPacket27 {28 union { float mOriginX[4]; __m128 mOriginX4; };29 union { float mOriginY[4]; __m128 mOriginY4; };30 union { float mOriginZ[4]; __m128 mOriginZ4; };31 32 union { float mTerminationX[4]; __m128 mTerminationX4; };33 union { float mTerminationY[4]; __m128 mTerminationY4; };34 union { float mTerminationZ[4]; __m128 mTerminationZ4; };35 36 ViewCellContainer mViewCells[4];37 };38 39 40 #endif41 24 42 25 … … 345 328 void PrintStatistics(std::ostream &s); 346 329 int SelectRays(const int number, VssRayContainer &selected, const bool copy=false) const; 347 int 348 GetContributingRays(VssRayContainer &selected, 349 const int minPass 350 ) const; 351 352 }; 353 354 /* 355 struct VssRayDistribution { 356 VssRayDistribution() { mContribution = -1.0f; } 357 SimpleRayContainer mRays; 358 vector<VssRayContainer> mVssRays; 359 float mContribution; 360 float mTime; 361 }; 362 363 struct VssRayDistributionMixture { 364 VssRayDistributionMixture() {} 365 366 vector<VssRayDistribution> distributions; 367 }; 368 */ 369 370 }; 371 372 #endif 330 int GetContributingRays(VssRayContainer &selected, const int minPass) const; 331 332 }; 333 334 335 struct RayPacket 336 { 337 RayPacket(const VssRayContainer &rays) 338 { 339 for (int i = 0; i < 4; ++ i) 340 mOriginX[i] = rays[i]->mOrigin[0]; 341 342 for (int i = 0; i < 4; ++ i) 343 mOriginY[i] = rays[i]->mOrigin[1]; 344 345 for (int i = 0; i < 4; ++ i) 346 mOriginZ[i] = rays[i]->mOrigin[2]; 347 } 348 #ifdef USE_SSE 349 union { float mOriginX[4]; __m128 mOriginX4; }; 350 union { float mOriginY[4]; __m128 mOriginY4; }; 351 union { float mOriginZ[4]; __m128 mOriginZ4; }; 352 353 union { float mTerminationX[4]; __m128 mTerminationX4; }; 354 union { float mTerminationY[4]; __m128 mTerminationY4; }; 355 union { float mTerminationZ[4]; __m128 mTerminationZ4; }; 356 #else 357 float mOriginX[4]; 358 float mOriginY[4]; 359 float mOriginZ[4]; 360 361 float mTerminationX[4]; 362 float mTerminationY[4]; 363 float mTerminationZ[4]; 364 #endif 365 ViewCellContainer mViewCells[4]; 366 }; 367 368 369 }; 370 371 #endif
Note: See TracChangeset
for help on using the changeset viewer.