| allocators {externalVector} | R Documentation |
These are generics used with objects of class "externalResource" and "externalAllocator".
allocator(resource) getPointer(resource) initializeResource(resource, ptr, size, type, ...) allocatedSize(resource) allocatedType(resource) allocate(resource, alloc, size, type, ...) deallocate(resource, alloc) external.size(resource, alloc) external.size(resource, copy, alloc) <- value reinitializePointer(resource, alloc)
resource |
An object which is an "externalResource". |
alloc |
An object which is an "externalAllocator". |
ptr |
An external pointer. |
size |
The size - if given for a non-vector type, the numebr of bytes. Otherwise, the length of the vector. |
type |
Object represnting the type stored in the resource. |
copy |
Logical, if
TRUE (the default), then the new memory is initialized to
the content of the old memory for the minimum of old and new sizes.
Content of any uninitialized memory is undefined. Under any circumstance,
the inherent type of the allocated memory remains the same as
its initial value.
|
value |
Integer, new size. |
... |
Further arguments passed to or from other functions. |
allocator returns the allocator to be used by default with
resource.
getPointer returns the "externalptr"
associated with resource.
initializeResource
intializes resource with ptr of type
"externalptr" and returns resource.
allocatedSize returns the size of memory to be allocated for
resource. If allocatedType(resource) is
an R basic vector type, then the size is the length of the
vector. Otherwise the size is the total number of bytes.
allocatedType returns an object representing the type to be
stored in the resource
allocate allocates the
external pointer in resource using the allocator alloc for
resource. If type is a basic vector object, then
it allocates an object of same mode with length
size and otherwise allocates size bytes of raw memory.
The resource object is initialized by a call to
initializeResource.
deallocate asks the allocator alloc to
deallocate the memory in resource. The result is
allocator dependant.
external.size returns the argument size used in the
last call to allocate for resource.
The replacement form can be used to change the size of the allocated
memory. If value is same as external.size(resource), then no
action is taken. Otherwise, this reallocates the memory in
resource using the allocator alloc (or
allocator(resource) if alloc is missing) with new size
value and the same type as earlier.
reinitializePointer tries to reinitialize the memory pointer
in resource after resource was saved and restored as an R image
(by serialization code, by saving the R workspace, or by an explicit call to
save).
externalAllocator-class,
externalResource-class