Re: [Evolution-hackers] evolution plugins/extensions



Hello,

> You can call any C functions from c# this way right?  Does it need some
> linking stage, or is that automagic?

There are two ways of calling C functions:

	* Exported symbols, through Platform/Invoke.

	* Internal methods, through internal calls.

The former means that the function should be exposed in a shared
library, so g_module_symbol can look it up (that means public methods,
and means that you need a .so or a program name as well).

The later does not require a .so or executable name, nor the method to
be public, but you have to manually invoke a routine to register those
methods.

The former is the preferred method as the runtime will do a lot of
interesting conversions for you on the flight, while the later is used
for low-level hacking and is not recommended unless you are familiar
with the Mono runtime. 

> How about doing a camel provider, it has a c entry point, which just
> hooks into the system using add methods.  That should be pretty easy to
> hook in right?  The only problem with camel is it using its own object
> system, i guess.

I do not know enough about camel in terms of what a provider needs to
use from Camel to comment on a specific implementation strategy.  If
you could point me into a reference sample of camel, I can probably say
a bit more.

Miguel



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]