VMMGET(3) VERSION 1.0 VMMGET(3)
NAME
VMMGET - obtain the pointer to a memory resident slice.
USAGE
ier = vmmget(inkey,ptr,array)
integer ier, vmmget
pointer(ptr,array)
integer inkey
DESCRIPTION
VMMGET is an integer function of the VMM package (Virtual Memory
Manager) used to obtain the FORTRAN pointer to a slice that is resident in
memory. (i.e., the slice must have been previously loaded by VMMLOD). In
addition to returning the pointer, VMMGET will also put a lock on the slice.
A locked slice cannot be moved or expelled from memory by the VMM package.
The user is thus assured that he has full control over the portion of memory
for which a pointer was requested. No error will result from requesting a
pointer for a slice that is already locked. It is therefore possible to do
multiple calls to VMMGET for the same slice.
Upon successful completion, a value of zero is returned by VMMGET.
ARGUMENTS
inkey -(input) key pointing to the slice for which a pointer
is requested.
ptr -(output) FORTRAN pointer to the portion of memory
where the slice is located.
array -(input/output)array to which the FORTRAN pointer ptr
points. For the current version of VMM, this argument
is not used. Only the argument ptr is initialized by
the function VMMGET.
EXAMPLE
integer key,ier
real array(30)
pointer(ptr,array)
Create variable 'VAR 1' with two slices of 30 elements
key = vmmcre('VAR 1',30,2,'INIT=0,W=2,CL=3,SAVE=Y')
Load the second slice of VAR 1
ier = vmmlod(key+2,1)
Get the pointer to the second slice and lock it
ier = vmmget(key+2,ptr,array)
AUTHORS
J.Caveen, M.Lepine, M.Roch - RPN
NOTES
Errors that will cause a premature end of execution
-No previous call to VMMALLC
-Invalid key
-Slice is not in memory
Latest revision, November 1993
See also vmmallc(3), vmmatt(3), vmmcks(3), vmmcpk(3), vmmcre(3),
vmmdbg(3), vmmdmp(3), vmmdiag(3), vmmdmp(3), vmm_example(1), vmmfgt(3),
vmmhpa(3), vmmhpd(3), vmmint(3), vmmintro(1), vmmlck(3), vmmlod(3), vmmlse(3),
vmmpak(3), vmmpwd(3), vmmrls(3), vmmsav(3), vmmuld(3), vmmulk(3), vmmuln(3).