.C
, .Call
, .Fortran
and .External
.
getDLLRegisteredRoutines(dll, addNames = TRUE)
DLLInfo
object.
The character string specifies the file name of the DLL
of interest, and is given without the file name extension (e.g., the
.dll or .so) and with no directory/path information.
So a file MyPackage/libs/MyPackage.so would be specified as
MyPackage. The DLLInfo
objects can be obtained directly
in calls to dyn.load
and library.dynam
,
or can be found after the DLL has been loaded using
getLoadedDLLs
, which returns a list of
DLLInfo
objects (index-able by DLL file name).
The DLLInfo
approach avoids any ambiguities related to two
DLLs having the same name but corresponding to files in different
directories.
TRUE
, the elements
of the returned lists are named using the names of the routines (as
seen by R via registration or raw name). If FALSE
,
these names are not computed and assigned to the lists. As a
result, the call should be quicker. The name information is also
available in the NativeSymbolInfo
objects in the lists.
"DLLRegisteredRoutines"
with four elements
corresponding to the routines registered for the .C
,
.Call
, .Fortran
and .External
interfaces. Each is
a list with as many elements as there were routines registered for
that interface.Each element identifies a routine and is an object
of class "NativeSymbolInfo"
.
An object of this class has the following fields:
NULL
if the symbol has not yet been
resolved.DLLInfo
describing the DLL.
This is same for all elements returned. There is print
methods for the class, which prints only the
types which have registered routines.
R News, Volume 1/3, September 2001. "In search of C/C++ & Fortran Symbols"
getLoadedDLLs
,
getNativeSymbolInfo
for information on the entry points listed.
dlls <- getLoadedDLLs()
getDLLRegisteredRoutines(dlls[["base"]])
getDLLRegisteredRoutines("stats")
Run the code above in your browser using DataLab