From Richard.Beare@cmis.csiro.au  Mon Aug  2 08:50:52 1999
From: Richard.Beare@cmis.csiro.au (Richard Beare)
Date: Mon, 02 Aug 1999 17:50:52 +1000
Subject: Advice interfacing to an imaging library
Message-ID: <37A54DDC.2B830881@cmis.csiro.au>

Hi All,
I've done some work recently making some of our image analysis library
callable from R and Splus. Most of the C image functions use an abstract
data type, and R only sees a pointer to this. All memory allocation is
done by the library. This leads to some interesting problems. I'm
interested in your views about possible solutions.

1) assignment. something like a<-b, where a and b are image pointers
will only copy the pointer, not the image. We'd like to overload the <-
operator to call the library copy routine.

2) garbage collection. It is now easy to lose track of memory, and this
is likely to be significant because images are usually quite big. There
is a delete function in the library, so it is possible to dispose of
images manually, but an automated method would be nice. One option is to
keep a global list of all pointers returned from C function calls,
generate a list of all image class objects visible in R and compare the
two. Any pointers not on the image class list can be disposed. Does
anyone have any other ideas?

All advice welcome.


-- 
Richard Beare
Richard.Beare@cmis.csiro.au
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-devel-request@stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._


Advice interfacing to an imaging library
Richard Beare