Text archives Help
- From: bigler@sci.utah.edu
- To: manta@sci.utah.edu
- Subject: [MANTA] r1329 - in trunk: Interface Model/Groups
- Date: Wed, 11 Apr 2007 17:24:33 -0600 (MDT)
Author: bigler
Date: Wed Apr 11 17:24:33 2007
New Revision: 1329
Modified:
trunk/Interface/Callback.h
trunk/Interface/CallbackHelpers.h
trunk/Model/Groups/DynBVH.cc
Log:
Interface/Callback.h
Interface/CallbackHelpers.h
Added Static_1Data_1Arg and Static_1Data_2Arg.
Model/Groups/DynBVH.cc
Disable the DynBVH ports optimization that caused blocky (holes)
shadows.
Modified: trunk/Interface/Callback.h
==============================================================================
--- trunk/Interface/Callback.h (original)
+++ trunk/Interface/Callback.h Wed Apr 11 17:24:33 2007
@@ -53,6 +53,22 @@
return new Callback_Static_1Data_0Arg<Data1>(pmf);
}
+ template<typename Data1,
+ typename Arg1> static
+ CallbackBase_1Data<Data1>*
+ create(void (*pmf)(Data1, Arg1),
+ Arg1 arg1) {
+ return new Callback_Static_1Data_1Arg<Data1, Arg1>(pmf, arg1);
+ }
+
+ template<typename Data1,
+ typename Arg1, typename Arg2> static
+ CallbackBase_1Data<Data1>*
+ create(void (*pmf)(Data1, Arg1, Arg2),
+ Arg1 arg1, Arg2 arg2) {
+ return new Callback_Static_1Data_2Arg<Data1, Arg1, Arg2>(pmf, arg1,
arg2);
+ }
+
// 2 Data
template<typename Data1, typename Data2,
typename Arg1, typename Arg2> static
Modified: trunk/Interface/CallbackHelpers.h
==============================================================================
--- trunk/Interface/CallbackHelpers.h (original)
+++ trunk/Interface/CallbackHelpers.h Wed Apr 11 17:24:33 2007
@@ -208,6 +208,49 @@
void (*pmf)(Data1);
};
+ template<typename Data1,
+ typename Arg1>
+ class Callback_Static_1Data_1Arg : public CallbackBase_1Data<Data1> {
+ public:
+ Callback_Static_1Data_1Arg(void (*pmf)(Data1, Arg1),
+ Arg1 arg1)
+ : pmf(pmf), arg1(arg1)
+ {
+ }
+ virtual ~Callback_Static_1Data_1Arg()
+ {
+ }
+ virtual void call(Data1 data1)
+ {
+ pmf(data1, arg1);
+ }
+ private:
+ void (*pmf)(Data1, Arg1);
+ Arg1 arg1;
+ };
+
+ template<typename Data1,
+ typename Arg1, typename Arg2>
+ class Callback_Static_1Data_2Arg : public CallbackBase_1Data<Data1> {
+ public:
+ Callback_Static_1Data_2Arg(void (*pmf)(Data1, Arg1, Arg2),
+ Arg1 arg1, Arg2 arg2)
+ : pmf(pmf), arg1(arg1), arg2(arg2)
+ {
+ }
+ virtual ~Callback_Static_1Data_2Arg()
+ {
+ }
+ virtual void call(Data1 data1)
+ {
+ pmf(data1, arg1, arg2);
+ }
+ private:
+ void (*pmf)(Data1, Arg1, Arg2);
+ Arg1 arg1;
+ Arg2 arg2;
+ };
+
// 2 Data
template<typename Data1, typename Data2>
class Callback_Static_2Data_0Arg : public CallbackBase_2Data<Data1, Data2>
{
Modified: trunk/Model/Groups/DynBVH.cc
==============================================================================
--- trunk/Model/Groups/DynBVH.cc (original)
+++ trunk/Model/Groups/DynBVH.cc Wed Apr 11 17:24:33 2007
@@ -13,7 +13,7 @@
const float BVH_C_trav = 10.f;
#ifdef MANTA_SSE
-#define USE_DYNBVH_PORTS 1
+#define USE_DYNBVH_PORTS 0
#else
#define USE_DYNBVH_PORTS 0
#endif
- [MANTA] r1329 - in trunk: Interface Model/Groups, bigler, 04/11/2007
Archive powered by MHonArc 2.6.16.