RCOMTypeLibraryInterfaceDefinition-class | R Documentation |
This class is used to represent all the information
gathered in processing the contents of a DCOM-related
type library
to define an R interface to all the classes, enumeration
elements, event handlers, etc. in that type library.
This is created by a call to generateInterface
and the result is an object that contains information
about the necessary class definitions, property and method
accessor functions, event handler constructors,
and enumeration definitions.
These can then be written to a connection for use
in future R sessions via writeCode
.
Some incomplete code allows it to be used
directly in the current session, or "just in time",
via the define
function.
Objects are typically created using the function
generateInterface
.
types
:Object of class "list"
a collection of objects describing an R-level interface
to the corresponding DCOM type in the type library.
These elements are of class RCOMDispatchInterfaceDefinition-class
.
enums
:Object of class "list"
a collection of objects describing an enumeration definition in the type library.
Each object is merely the named integer vector giving the symbolic names and the
corresponding value.
events
:Object of class "list"
a collection of objects describing the interface to an event source
for responding to its event announcements or triggers.
Each element is an object of class RCOMEventInterfaceDefinition-class
.
externalClasses
:Object of class "list"
.
This is used to store a collection of RCOMTypeLibraryInterfaceDefinition
objects. There is one for each of the libraries and their types that are referenced
within the original top-level library. This happens when we process
a type library to create an R interface to it
(via generateInterface
) and encounter types for parameters
and return values of methods and properties that are not actually
defined in the original type library, but rather in secondary libraries.
We can generate interfaces to these types in those libraries in the same
way we do for the original top-level/initial library and we store these
interfaces in this slot.
coclass
:a list. The co-class interfaces of interest in this library.
referencedClasses
:a list. This identifies types in the library that are return types, parameter types, or property types that were encountered indirectly when processing the specified elements of the library.
typeEventMap
:a list. Information about the events in the classes of this interface
uuids
:signature(def = "RCOMTypeLibraryInterfaceDefinition", file = "character")
: write the R code contained in this interface definition
to a directory or file. This is responsible for creating the necessary
connections to the files and then writing the code.
signature(def = "RCOMTypeLibraryInterfaceDefinition", file = "ANY")
: write this code to the specified connection.
Duncan Temple Lang <duncan@wald.ucdavis.edu>
http://msdn.microsoft.com/library http://www.omegahat.org/RWinTypeLibs
generateInterface
writeCode
It may be useful to look at non-exported functions
in generate.S
and referencedClasses.S
to see how the entire thing works and how it can be
changed. This interface is not cast in stone.
We want others to be able to explore alternatives,
ideally by extending or parameterizing the mechanism
rather than presenting an entirely parallel but similar
mechanism.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.