[PD-cvs] externals/clr clr.cpp,1.16,1.17

Thomas Grill xovo at users.sourceforge.net
Tue Apr 18 03:38:10 CEST 2006


Update of /cvsroot/pure-data/externals/clr
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29449/clr

Modified Files:
	clr.cpp 
Log Message:
implemented class-based method management
very fast native-to-managed transition
most of the logic transferred to the CLR side

Index: clr.cpp
===================================================================
RCS file: /cvsroot/pure-data/externals/clr/clr.cpp,v
retrieving revision 1.16
retrieving revision 1.17
diff -C2 -d -r1.16 -r1.17
*** clr.cpp	10 Mar 2006 01:01:19 -0000	1.16
--- clr.cpp	18 Apr 2006 01:38:07 -0000	1.17
***************
*** 8,11 ****
--- 8,14 ----
  #include <mono/metadata/class.h>
  #include <mono/metadata/metadata.h>
+ 
+ // we need this one - it's in mono-devel
+ gpointer mono_delegate_to_ftnptr (MonoDelegate *delegate);
  }
  
***************
*** 31,34 ****
[...1479 lines suppressed...]
! 
!         MonoObject *exc;
!         mono_runtime_invoke(setup,NULL,NULL,&exc);
!         if(exc)
!             post("CLR - setup function failed");
!         else {
!             // ready!
! 	        post("CLR extension - (c)2006 Davide Morelli, Thomas Grill");
!         }
! 
! 		// necessary data should have been set by Setup
! 		MonoClass *clr_internal = mono_class_from_name(image,"PureData","Internal");
!         assert(clr_internal);
! 		MonoVTable *clr_internal_vt = mono_class_vtable(monodomain,clr_internal);
! 		MonoClassField *fld = mono_class_get_field_from_name (clr_internal,"pass");
! 		assert(fld);
! 		mono_field_static_get_value(clr_internal_vt,fld,&clr_pass);
! 		assert(clr_pass);
      }
      else





More information about the Pd-cvs mailing list