ttmedia_Deposit(3)
NAME
ttmedia_Deposit − send a Deposit request to checkpoint a document
SYNOPSIS
#include <Tt/tttk.h>
Tt_status ttmedia_Deposit(Tt_message load_contract,
const char ∗buffer_id,
const char ∗media_type,
const unsigned char ∗new_contents,
int new_len,
const char ∗pathname,
XtAppContext app2run,
int ms_timeout);
DESCRIPTION
The ttmedia_Deposit() function is used to perform a checkpoint save on a document that was the subject of a Media Exchange load_contract request such as Edit, Compose, or Open. To carry out a checkpoint save, the editor must send the new document contents back to the sender of load_contract.
The ttmedia_Deposit() function creates and sends a Deposit request and returns the success or failure of that request. The load_contract argument is the request that caused this editor to load the document. The buffer_id argument is the identifier of the buffer this editor created if the document was loaded via an Open request. If buffer_id is NULL, the the ToolTalk service gives the Deposit request a Tt_address of TT_HANDLER and sends it directly to the tt_message_sender() of load_contract; otherwise, the the ToolTalk service will address it as a TT_PROCEDURE and insert buffer_id into the request to match the pattern registered by the sender of the load_contract.
The ttmedia_Deposit() function uses the media_type argument as the vtype of the contents argument of the sent request, and new_contents and new_len as its value. The latter two must be zero if pathname is used to name a temporary file into which the editor will place the checkpointed document. The editor is free to remove the temporary file after the reply to the Deposit request is received; that is, after ttmedia_Deposit() has returned.
After the request is sent, ttmedia_Deposit() passes app2run and ms_timeout to tttk_block_while(3) to wait for the reply.
RETURN VALUE
Upon successful completion, the ttmedia_Deposit() function returns the status of the operation as one of the following Tt_status values:
TT_OK
The operation completed successfully.
TT_DESKTOP_ETIMEDOUT
No reply was received within ms_timeout milliseconds.
TT_ERR_NOMEM
There is insufficient memory available to perform the function.
TT_ERR_NOMP
The ttsession(1) process is not running and the ToolTalk service cannot restart it.
TT_ERR_OVERFLOW
The ToolTalk service has more active messages than it can handle. (The maximum number of active messages is implementation specific, but is at least 2000.)
TT_ERR_POINTER
The pathname argument was NULL or was a ToolTalk error pointer.
TT_ERR_PROCID
The specified process identifier is out of date or invalid.
SEE ALSO
Tttttk(5), ttmedia_load(3), ttmedia_load_reply(3), ttmedia_ptype_declare(3), ttdt_Save(3), tttk_block_while(3).
SunOS 5.5 — Last change: 11 May 1994