void ObjResizeMaster(
optr obj, /* object to have its master part resized */
word masterOffset, /* master offset of proper master part */
word newSize); /* new size for the master part */
This routine resizes a master part of an object's instance chunk. It is typically used to allocate space for a master part or to resize the master part to zero (as when the Vis part of a visible object is removed in
MSG_VIS_CLOSE
). This routine must be passed the following three parameters:
obj
masterOffset
Class_masterOffset
field).
newSize
Class_instanceSize
field.Warnings: This routine may resize and/or move chunks or object blocks, thereby invalidating stored segment addresses and pointers.
Include: object.h
See Also: ClassStruct,
ObjInitializeMaster(),
ObjInitializePart().
void ObjResizeMasterHandles(
MemHandle mh, /* handle portion of optr */
ChunkHandle ch, /* chunk portion of optr */
word masterOffset, /* offset to master part */
word newSize); /* new size of master part */
This routine is the same as
ObjResizeMaster()
except that the object is specified with its handles rather than its optr.
Include: object.h
void ObjSaveBlock(
MemHandle mh); /*handle of block to be marked for saving */
This routine sets up an object or LMem block to be saved to its owner's state file. The block's handle must be passed in
mh
. The block must be an object block.
Include: object.h
See Also: ObjMapSavedToState(),
ObjMapStateToSaved().
void ObjSetFlags(
optr o, /* object whose flags will be set */
ObjChunkFlags bitsToSet, /* flags to set */
ObjChunkFlags bitsToClear); /* flags to clear */
This routine sets the chunk flags for the specified object. Flags that should be set are passed in
bitsToSet
, and flags that should be cleared are passed in
bitsToClear
. Typically, applications will not use this routine but will rather let the kernel maintain the object's flags.
Include: object.h
See Also: ObjGetFlags(),
ObjChunkFlags.
void ObjSetFlagsHandles(
MemHandle mh, /* handle portion of optr */
ChunkHandle ch, /* chunk portion of optr */
ObjChunkFlags bitsToSet, /* flags to set */
ObjChunkFlags bitsToClear); /* flags to clear */
This routine is the same as
ObjSetFlags()
except that the object is specified via its handles rather than its optr.
Include: object.h
Boolean ObjTestIfObjBlockRunByCurThread(
MemHandle mh); /* handle of object block */
This routine checks if the calling thread is running the specified object block. This routine can be used to determine if calls to objects in the block are across threads or internal to the calling thread. Pass this routine the handle of the object block to be checked--if the object block is a VM block, the thread for the VM file is checked rather than that for the block.
If the block is run by the calling thread, the return value is
true
. If a different thread runs the block, the return is
false
(zero).
Include: object.h
void ObjUnrelocateEntryPoint(
EntryPointRelocation * relocData,
void * entryPoint);
GEOS SDK TechDocs
|
|
ObjIsClassADescendant() ...
|
ObjVarAddData() ...