Manta Interactive Ray Tracer Development Mailing List

Text archives Help


[Manta] r2117 - trunk/Core/Util


Chronological Thread 
  • From: "James Bigler" <bigler@cs.utah.edu>
  • To: manta@sci.utah.edu
  • Subject: [Manta] r2117 - trunk/Core/Util
  • Date: Mon, 25 Feb 2008 12:10:26 -0700 (MST)

Author: bigler
Date: Mon Feb 25 12:10:26 2008
New Revision: 2117

Modified:
   trunk/Core/Util/Callback.h
   trunk/Core/Util/CallbackHelpers.h
   trunk/Core/Util/genCallbacks.py
Log:
Core/Util/Callback.h
Core/Util/CallbackHelpers.h
Core/Util/genCallbacks.py

  Added static Data0_Arg3 call back.


Modified: trunk/Core/Util/Callback.h
==============================================================================
--- trunk/Core/Util/Callback.h  (original)
+++ trunk/Core/Util/Callback.h  Mon Feb 25 12:10:26 2008
@@ -49,6 +49,13 @@
       return new Callback_Static_0Data_2Arg<Arg1, Arg2>(pmf, arg1, arg2);
     }
 
+    // 0 call time args --- 3 creation time args
+    template<typename Arg1, typename Arg2, typename Arg3> static
+    CallbackBase_0Data*
+    create(void (*pmf)(Arg1, Arg2, Arg3), Arg1 arg1, Arg2 arg2, Arg3 arg3) {
+      return new Callback_Static_0Data_3Arg<Arg1, Arg2, Arg3>(pmf, arg1, 
arg2, arg3);
+    }
+
     // 0 call time args --- 5 creation time args
     template<typename Arg1, typename Arg2, typename Arg3, typename Arg4, 
typename Arg5> static
     CallbackBase_0Data*

Modified: trunk/Core/Util/CallbackHelpers.h
==============================================================================
--- trunk/Core/Util/CallbackHelpers.h   (original)
+++ trunk/Core/Util/CallbackHelpers.h   Mon Feb 25 12:10:26 2008
@@ -186,6 +186,28 @@
     Arg2 arg2;
   };
 
+  // 0 call time args --- 3 creating time args
+  template<typename Arg1, typename Arg2, typename Arg3>
+  class Callback_Static_0Data_3Arg : public CallbackBase_0Data {
+  public:
+    Callback_Static_0Data_3Arg(void (*pmf)(Arg1, Arg2, Arg3), Arg1 arg1, 
Arg2 arg2, Arg3 arg3)
+      : pmf(pmf), arg1(arg1), arg2(arg2), arg3(arg3)
+    {
+    }
+    virtual ~Callback_Static_0Data_3Arg()
+    {
+    }
+    virtual void call()
+    {
+      pmf(arg1, arg2, arg3);
+    }
+  private:
+    void (*pmf)(Arg1, Arg2, Arg3);
+    Arg1 arg1;
+    Arg2 arg2;
+    Arg3 arg3;
+  };
+
   // 0 call time args --- 5 creating time args
   template<typename Arg1, typename Arg2, typename Arg3, typename Arg4, 
typename Arg5>
   class Callback_Static_0Data_5Arg : public CallbackBase_0Data {

Modified: trunk/Core/Util/genCallbacks.py
==============================================================================
--- trunk/Core/Util/genCallbacks.py     (original)
+++ trunk/Core/Util/genCallbacks.py     Mon Feb 25 12:10:26 2008
@@ -385,7 +385,7 @@
     const_member_functions = []
     member_functions = []
 
-    addFunctions(static_functions, 0, (0,1,2,5))
+    addFunctions(static_functions, 0, (0,1,2,3,5))
     addFunctions(static_functions, 1, (0,1,2))
     addFunctions(static_functions, 2, (0,2))
     addFunctions(static_functions, 3, (1,2))




  • [Manta] r2117 - trunk/Core/Util, James Bigler, 02/25/2008

Archive powered by MHonArc 2.6.16.

Top of page