Manta Interactive Ray Tracer Development Mailing List

Text archives Help


[Manta] Re: r2312 - in trunk: Core/Util Interface Model/Cameras Model/Materials Model/Primitives UserInterface


Chronological Thread 
  • From: "James Bigler" < >
  • To:
  • Subject: [Manta] Re: r2312 - in trunk: Core/Util Interface Model/Cameras Model/Materials Model/Primitives UserInterface
  • Date: Wed, 30 Jul 2008 13:44:35 -0600
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references; b=xVtF5PjxhRGQJnVL9c/tfELWeEVvrFV4b+0HEA9V015Qb8dX1wlrfyL6pblsg2zfKC 7KgUnKOc8WWVbmXS/c9J0MAoT8LXyQuIE/NsUSEJI+JJb9s2uTd8Nvag7oX50YTZ4Upd Jh0F6yPifDQua+zTMoyBqsS3JENkXhwoo9lbk=

Thiago, please add callback functions in the Core/Util/genCallbacks.py
file and run the script.  No one wants to hand edit the Callback files
(as I presume you discovered).

James

On Tue, Jul 29, 2008 at 5:02 PM, Thiago Ize 
< >
 wrote:
> Author: thiago
> Date: Tue Jul 29 17:02:37 2008
> New Revision: 2312
>
> Modified:
>   trunk/Core/Util/Callback.h
>   trunk/Core/Util/CallbackHelpers.h
>   trunk/Interface/Camera.h
>   trunk/Model/Cameras/PinholeCamera.cc
>   trunk/Model/Cameras/PinholeCamera.h
>   trunk/Model/Materials/Dielectric.cc
>   trunk/Model/Primitives/MeshTriangle.h
>   trunk/UserInterface/CameraPathAutomator.cc
>   trunk/UserInterface/CameraPathAutomator.h
> Log:
> Core/Util/Callback.h
> Core/Util/CallbackHelpers.h:
>  -Added a "0 call time args --- 5 creating time args" callback.
>
> UserInterface/CameraPathAutomator.h:
>  -Now also interpolates the fov
>
> Model/Materials/Dielectric.cc:
>  -quite a compiler warning
>
> Model/Primitives/MeshTriangle.h:
>  -Added method for returning triangle area.
>
> Model/Cameras/PinholeCamera
> Interface/Camera.h:
>  -Added a reset() that includes fov.
>
>
> Modified: trunk/Core/Util/Callback.h
> ==============================================================================
> --- trunk/Core/Util/Callback.h  (original)
> +++ trunk/Core/Util/Callback.h  Tue Jul 29 17:02:37 2008
> @@ -171,6 +171,13 @@
>       return new Callback_0Data_4Arg<T, Arg1, Arg2, Arg3, Arg4>(ptr, pmf, 
> arg1, arg2, arg3, arg4);
>     }
>
> +    // 0 call time args --- 5 creating time args
> +    template<class T, typename Arg1, typename Arg2, typename Arg3, 
> typename Arg4, typename Arg5> static
> +    CallbackBase_0Data*
> +    create(T* ptr, void (T::*pmf)(Arg1, Arg2, Arg3, Arg4, Arg5), Arg1 
> arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5) {
> +      return new Callback_0Data_5Arg<T, Arg1, Arg2, Arg3, Arg4, Arg5>(ptr, 
> pmf, arg1, arg2, arg3, arg4, arg5);
> +    }
> +
>     // 1 call time args --- 0 creating time args
>     template<class T, typename Data1> static
>     CallbackBase_1Data<Data1>*
>
> Modified: trunk/Core/Util/CallbackHelpers.h
> ==============================================================================
> --- trunk/Core/Util/CallbackHelpers.h   (original)
> +++ trunk/Core/Util/CallbackHelpers.h   Tue Jul 29 17:02:37 2008
> @@ -546,6 +546,31 @@
>     Arg4 arg4;
>   };
>
> +  // 0 call time args --- 5 creating time args
> +  template<class T, typename Arg1, typename Arg2, typename Arg3, typename 
> Arg4, typename Arg5>
> +  class Callback_0Data_5Arg : public CallbackBase_0Data {
> +  public:
> +    Callback_0Data_5Arg(T* ptr, void (T::*pmf)(Arg1, Arg2, Arg3, Arg4, 
> Arg5), Arg1 arg1, Arg2 arg2, Arg3 arg3, Arg4 arg4, Arg5 arg5)
> +      : ptr(ptr), pmf(pmf), arg1(arg1), arg2(arg2), arg3(arg3), 
> arg4(arg4), arg5(arg5)
> +    {
> +    }
> +    virtual ~Callback_0Data_5Arg()
> +    {
> +    }
> +    virtual void call()
> +    {
> +      (ptr->*pmf)(arg1, arg2, arg3, arg4, arg5);
> +    }
> +  private:
> +    T* ptr;
> +    void (T::*pmf)(Arg1, Arg2, Arg3, Arg4, Arg5);
> +    Arg1 arg1;
> +    Arg2 arg2;
> +    Arg3 arg3;
> +    Arg4 arg4;
> +    Arg5 arg5;
> +  };
> +
>   // 1 call time args --- 0 creating time args
>   template<class T, typename Data1>
>   class Callback_1Data_0Arg : public CallbackBase_1Data<Data1> {
>



Archive powered by MHonArc 2.6.16.

Top of page