TipcConnCreate


Name

TipcConnCreate — create a new connection

Synopsis

T_IPC_CONN TipcConnCreate() 

Arguments

None

Return Values

New connection

Diagnostics

None

Description

TipcConnCreate creates a new connection. The connection has a socket file descriptor of -1, a block mode of TRUE, a read buffer of 16384 bytes, a write buffer of 16384 bytes, and an auto flush size of 8192 bytes. TipcConnCreate calls TipcConnProcessCbCreate to create a process callback with message type KEEP_ALIVE_CALL, function TipcCbConnProcessKeepAliveCall, and argument NULL. TipcConnCreate calls TipcConnProcessCbCreate to create a process callback with message type GMD_FAILURE, function TipcCbConnProcessGmdFailure, and argument NULL.

TipcConnCreate is called by the functions TipcConnCreateServer and TipcConnCreateClient. TipcConnCreate is also useful for creating a dummy connection, then creating process callbacks, then processing messages.

Caution

None

See Also

TipcConnCreateClient, TipcConnCreateServer

Examples

This example creates a connection, creates some process and default callbacks, then reads and processes messages from the message file data.msg:

T_IPC_CONN conn; 
T_IPC_MT mt; 
T_IPC_MSG_FILE msg_file; 
T_IPC_MSG msg; 
 
conn = TipcConnCreate(); 
 
/* create a process callback for TIME messages */ 
mt = TipcMtLookupByNum(T_MT_TIME); 
if (mt == NULL) { 
  return;  /* error */ 
} 
 
if (TipcConnProcessCbCreate(conn, mt, process_time, NULL) == NULL) 
{ 
  return;  /* error */ 
} 
 
/* create a process callback for NUMERIC_DATA messages */ 
mt = TipcMtLookupByNum(T_MT_NUMERIC_DATA); 
if (mt == NULL) { 
  return;  /* error */ 
} 
 
if (TipcConnProcessCbCreate(conn, mt, process_nd, NULL) == NULL) { 
  return;  /* error */ 
} 
 
/* create a default callback for all other messages */ 
if (TipcConnDefaultCbCreate(conn, process_default, NULL) == NULL) { 
  return;  /* error */ 
} 
 
/* create a message file that is open for reading */ 
msg_file = TipcMsgFileCreate("data.msg", 
T_IPC_MSG_FILE_CREATE_READ); 
if (msg_file == NULL) { 
  return;  /* error */ 
} 
 
/* read and process messages */ 
while (TipcMsgFileRead(msg_file, &msg)) { 
  if (!TipcConnMsgProcess(conn, msg)) { 
    return;  /* error */ 
  } 
  if (!TipcMsgDestroy(msg)) { 
  return;  /* error */ 
  } 
} 

TIBCO SmartSockets™ Application Programming Interface
Software Release 6.8, July 2006
Copyright © TIBCO Software Inc. All rights reserved
www.tibco.com