comp.lang.ada
 help / color / mirror / Atom feed
From: xavier grave <xavier.grave@ipno.in2p3.fr>
To: Steven Shack <stevenshack@stevenshack.com>
Subject: Re: Loadable module in Ada.
Date: Thu, 03 Dec 2009 11:00:44 +0100
Date: 2009-12-03T11:00:44+01:00	[thread overview]
Message-ID: <4B178C4C.1030608@ipno.in2p3.fr> (raw)
In-Reply-To: <2009120301362116807-stevenshack@stevenshackcom>

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Steven Shack a �crit :
> I'd like to create a loadable module in an Ada program. I've searched
> around, but can't
> seem to find any examples of this. Say I've got some calculation or a
> driver and I'd like to have
> multiple different versions of it with the same interface. I'd like to
> be able to load and replace
> these modules at runtime.
> 
> In C I'd do this with pic code, dlsym and function pointers. I can't
> seem to find the equivalent
> in Ada. Can anyone help me out?
> 
> Thanks
> 
> 
Hi,

I have done something that seems to fit with your need.
Here is a link where you will find a tgz file compiling/running under
Linux using dlsym. It is based on an abstract class that your plugin
should inherit of.

http://dl.free.fr/pWQwqMpVK

Be very careful about the elaboration code when you do some "with" of
other package. One on the "best" policy is to be the more restrictive
that you can with the packages you "with" (pragma Pure and so on...)

Hope it will help...
xavier


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAksXjEwACgkQVIZi0A5BZF4LwQCfVGP1MA2sfQRRzvLoiCN8s1Oc
dQkAoKwEqm+RGqPc6UmhAMu2d2tqwnEG
=cLPw
-----END PGP SIGNATURE-----



  reply	other threads:[~2009-12-03 10:00 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-03  9:36 Loadable module in Ada Steven Shack
2009-12-03 10:00 ` xavier grave [this message]
2009-12-03 10:49   ` Steven Shack
2009-12-03 13:40 ` Mark Lorenzen
2009-12-03 20:06 ` Pascal Obry
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox