Up: GEOS SDK TechDocs| Up | Prev: HugeArrayPrev() ... | Next: ImpexExportToMetafile() ...

IACPProcessMessage()

void IACPProcessMessage(
        optr           oself, 
        EventHandle            msgToSend, 
        TravelOption           topt, 
        EventHandle            completionMsg);

This is a utility routine to dispatch an encapsulated message handed to an object by an IACP connection.

Include: iacp.goh

IACPRegisterDocument()

void IACPRegisterDocument(
        optr   server,
        word   disk,
        dword  fileID);

This routine registers an open document and the server object for it.

This routine is to be used only by servers, not by clients, and should only be used by the creator of the document. There is no provision for using IACP to connect to a server that is not the creator of the document in question.

Include: iacp.goh

IACPRegisterServer()

void    IACPRegisterServer(
        GeodeToken             *list, 
        optr           server,
        IACPServerMode                 mode,
        IACPServerFlags                flags);

This routine registers an object as a server for the IACP server list specified by the passed token.

Include: iacp.goh

IACPSendMessage()

word IACPSendMessage(
	IACPConnection 	connection,
	EventHandle 		msgToSend,
	TravelOption 		topt,	
	EventHandle 		completionMsg,
	IACPSide 		side);

This routine sends the message event via IACP to all the objects on the other side of an IACP connection.

Include: iacp.goh

IACPSendMessageAndWait()

word IACPSendMessageAndWait(
        IACPConnection                 connection, 
        EventHandle            msgToSend, 
        TravelOption           topt, 
        IACPSide     side); 

This routine sends a recorded message to all the objects on the other side of an IACP connection, and waits until the other application responds that it has received the message via IACP. This does not mean the message has been handled by the other application, only that the other application was given the EventHandle and will try to deal with it. This is useful when passing volatile data.

Include: iacp.goh

IACPSendMessageToServer()

word IACPSendMessageToServer(
        IACPConnection                 connection, 
        EventHandle            msgToSend, 
        TravelOption           topt, 
        EventHandle            completionMsg, 
        word           serverNum);

This routine sends a message to a specific server on the other side of an IACP connection.

Include: iacp.goh

IACPShutdown()

void IACPShutdown(
        IACPConnection                 connection, 
        optr           serverOD);

This routine removes a server or client from an IACP connection.

Include: iacp.goh

IACPShutdownAll()

void IACPShutdownAll(
        optr obj);

This calls IACPShutdown() for all connections to which the passed object is a party. It's primarily used by GenApplicationClass when the application is exiting.

Include: iacp.goh

IACPUnregisterDocument()

void IACPUnregisterDocument(
        optr   server,
        word   disk,
        dword  fileID);

This routine unregisters an open document and the server object for it.

Include: iacp.goh

IACPUnregisterServer()

void IACPUnregisterServer(
        GeodeToken             *token, 
        optr           object);

This removes the specified server object from the indicated IACP server list.

Include: iacp.goh

ImpexCreateTempFile()

TransError ImpexCreateTempFile(
        char *         buffer,
        word           fileType,
        FileHandle *           file,
        MemHandle *            errorString);

This routine creates and opens a unique temporary file to be used by translation libraries for file importing and exporting. The routine is called only by translation libraries.

The routine is passed the following arguments:

buffer
The file name will be written to the buffer pointed to by this argument. The buffer should be at least FILE_LONGNAME_BUFFER_SIZE bytes long.
fileType
This specifies what kind of temporary file should be created. If IMPEX_TEMP_VM_FILE is passed, a GEOS VM file will be created. If IMPEX_TEMP_NATIVE_FILE is passed, a temporary file in the native format will be created.
file
This is a pointer to a FileHandle variable. The temporary file's handle will be written to *file .
errString
If ImpexCreateTempFile fails with error condition TE_CUSTOM it will allocate a block containing an error string. It will write the block's handle to *errString . It is the caller's responsibility to free this block when it's done with it.

If ImpexCreateTempFile is successful, it returns TE_NO_ERROR (which equals zero). If it fails, it returns a member of the TransferErrors enumerated type (usually TE_METAFILE_CREATION_ERROR). When you're done with the temporary file, call FileClose() .

Include: impex.goh

Warnings: If you close this file, the system may delete it at any time. Ordinarily you should close it with ImpexDeleteTempFile() , which deletes the file immediately.

If the routine does not fail with condition TE_CUSTOM, *errString may contain a random value. Do not use *errString if the routine did not return TE_CUSTOM.

ImpexDeleteTempFile()

TransError ImpexDeleteTempFile(
        const char *           buffer,
        FileHandle             tempFile,
        word           fileType);

This routine closes, then deletes, a temporary file which was created by ImpexCreateTempFile() . It is passed the following arguments:

buffer
This is a pointer to a character buffer containing the name of the temporary file. You can just pass the address of the buffer which was filled by ImpexCreateTempFile() .
tempFile
This is the handle of the temporary file.
fileType
This specifies what type of file is being deleted. If the temporary file is a GEOS VM file, this will be IMPEX_TEMP_VM_FILE. If it is a native-format file, it will be IMPEX_TEMP_NATIVE_FILE.
errString
If ImpexDeleteTempFile fails with error condition TE_CUSTOM it will allocate a block containing an error string. It will write the block's handle to *errString . It is the caller's responsibility to free this block when it's done with it.

ImpexDeleteTempFile() closes the specified file, then deletes it. If it is successful, it returns TE_NO_ERROR (i.e. zero); otherwise, it returns an appropriate member of the TransError enumerated type.

Include: impex.goh

Warnings: If the routine does not fail with condition TE_CUSTOM, *errString may contain a random value. Do not use *errString if the routine did not return TE_CUSTOM.


Up: GEOS SDK TechDocs| Up | Prev: HugeArrayPrev() ... | Next: ImpexExportToMetafile() ...