Up: GEOS SDK TechDocs | Up | Prev: FloatFloatToAscii_StdFormat() ... | Next: GCNListSend() ...

GCNListAdd()

Boolean	GCNListAdd(
        optr		OD,				/* optr to add to list */
        ManufacturerID		manufID,				/* manufacturer ID of list */
        word		listType);				/* list type */

This routine adds an object pointer (optr) to a GCN list interested in a particular change. The routine must be passed the optr to add, along with the manufID and the type of the list to add it to. If no list of the specified manufacturer and type currently exists, a new list will be created.

This routine will return true if the optr was successfully added to the GCN list and false if the optr could not be added. An optr cannot be added to a GCN list if it currently exists on that list.

Include: gcnlist.goh

GCNListAddHandles()

Boolean	GCNListAddHandles(
        MemHandle		mh,				/* handle of object to add */
        ChunkHandle		ch,				/* chunk of object to add */
        ManufacturerIDs		manufID,				/* manufacturer ID of list */
        word		listType);				/* list type */

This routine is exactly the same as GCNListAdd() , except it takes the memory and chunk handles of the object rather than a complete optr.

Include: gcnlist.goh

GCNListAddToBlock()

Boolean	GCNListAddToBlock(
        optr		OD,				/* optr of list to add */
        ManufacturerID		manufID,				/* manufacturer ID of list */
        word		listType,				/* list type */
        MemHandle		mh,				/* handle of block holding list */
        ChunkHandle		listOfLists);				/* chunk of list of lists
							 * in block */

This routine adds a new GCN list to a block containing the GCN lists. Pass it the optr of the chunk containing the new GCN list as well as the list's type and manufacturer ID. Pass also the memory handle and chunk handle of the chunk containing the GCN "list of lists" which will manage the new list.

This routine returns true of the new optr is added to the GCN mechanism, false if it could not be added (if it was already there).

Warnings: This routine may resize chunks in the block, so you should dereference any pointers after calling this routine.

Include: gcnlist.goh

GCNListCreateBlock()

ChunkHandle GCNListCreateBlock(
        MemHandle mh);			/* handle of the locked LMem block */

This routine creates a list of lists for the GCN mechanism. It is rarely, if ever, called by applications. Pass it the handle of the locked LMem block in which the list should be created.

Include: gcnlist.goh

GCNListDestroyBlock()

void	GCNListDestroyBlock(
        MemHandle		mh,					/* handle of locked block to
							 * be destroyed */
        ChunkHandle		listOfLists);					/* chunk of list of lists */

This routine destroys a GCN list of lists and all the GCN lists associated with it. Pass it the handle of the locked LMem block containing the lists as well as the chunk handle of the chunk containing the list of lists.

Include: gcnlist.goh

GCNListDestroyList()

void	GCNListDestroyList(
        optr	list);		/* optr of the GCN list to be destroyed */

This routine destroys the specified GCN list.

Include: gcnlist.goh

GCNListRelocateBlock()

void	GCNListRelocateBlock(
        MemHandle		mh,					/* handle of locked LMem block
							 * containing GCN lists */
        ChunkHandle		listOfLists,					/* chunk of list of lists */
        MemHandle		relocBlock);					/* handle of block containing
							 * relocation information */

This routine relocates the GCN list of lists in the specified block, updating all the optrs stored therein.

Warnings: This routine can resize and/or move the LMem block, so you should dereference pointers after calling it.

Include: gcnlist.goh

GCNListRemove()

Boolean	GCNListRemove(
        optr		OD,				/* the optr to be removed */
        ManufacturerID		manufID,				/* manufacturer ID of the list */
        word		listType);				/* list type */

This routine removes the passed optr from the specified GCN list. The routine must be passed the optr to remove along with the manufacturer ID and list type of the list to remove it from.

This routine will return true if the optr was successfully removed from the GCN list and false if the optr could not be found on the GCN list and therefore could not be removed.

Include: gcnlist.goh

GCNListRemoveFromBlock()

Boolean	GCNListRemoveFromBlock(
        optr		OD,				/* optr of GCN list to remove */
        ManufacturerID		manufID,				/* manufacturer of list to remove */
        word		listType,				/* type of list being removed */
        MemHandle		mh,				/* handle of locked LMem block
						 * containing the list of lists */
        ChunkHandle		listOfLists);				/* chunk of list of lists */

This routine removes a GCN list from a GCN list block and from the list of lists therein.

Include: gcnlist.goh

GCNListRemoveHandles()

Boolean	GCNListRemoveHandles(
        MemHandle		mh,
        ChunkHandle		ch,
        ManufacturerID		manufID,
        word		listType);

This routine is exactly the same as GCNListRemove() , except it specifies the object to be removed via handles rather than an optr.

Include: gcnlist.goh

See Also: GCNListRemove().


Up: GEOS SDK TechDocs | Up | Prev: FloatFloatToAscii_StdFormat() ... | Next: GCNListSend() ...