You can refresh blocks that are mapped to either a temporary object
or to a permanent object. You must identify the object and specify
the range of blocks you want to refresh. When you refresh blocks mapped
to a temporary object, window services replaces, with binary zeros,
all changed blocks that are mapped to the window. When you refresh
blocks mapped to a permanent object, window services replaces specified
changed blocks in a window or in the scroll area with corresponding
blocks from the object on DASD.
To refresh an object, call CSRREFR. To identify the object, you must supply
an object identifier for object_id. The value supplied
for object_id must be the same value CSRIDAC returned
in object_id when you requested access to the object.
To identify the blocks of the object that you want to refresh,
use
offset and
span. The values assigned to
offset and
span,
together, define a contiguous string of blocks in the object:
- The value assigned to offset specifies the relative block
at which to start. An offset of 0 means the first block; an offset
of 1 means the second block; an offset of 2 means the third block,
and so forth.
- The value assigned to span specifies the number of blocks
to save. A span of 1 means one block; a span of 2 means two blocks,
and so forth. A span of 0 has special meaning: it requests
that window services refresh all changed blocks to which a window
is mapped, or refresh all changed blocks that have been saved in a
scroll area.
Window services refreshes each block within the range specified
by
offset and
span providing the block has changed
and a window or a scroll area is mapped to the block. At the completion
of the refresh operation, blocks from a permanent object that have
been refreshed appear the same as the corresponding blocks on DASD.
Refreshed blocks from a temporary object contain binary zeroes.