<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>scim: SocketCommunication</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.0 --> <div class="tabs"> <ul> <li><a href="main.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li><a href="classes.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul></div> <h1>SocketCommunication</h1><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Classes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00107.html">scim::SocketError</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">An exception class to hold <a class="el" href="a00104.html">Socket</a> related errors. <a href="a00107.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00105.html">scim::SocketAddress</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The class to hold a socket address. <a href="a00105.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00104.html">scim::Socket</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="a00104.html">Socket</a> communication class. <a href="a00104.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00108.html">scim::SocketServer</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="a00104.html">Socket</a> Server class. <a href="a00108.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00106.html">scim::SocketClient</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="a00104.html">Socket</a> client class. <a href="a00106.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00110.html">scim::TransactionError</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">An exception class to hold <a class="el" href="a00109.html">Transaction</a> related errors. <a href="a00110.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00109.html">scim::Transaction</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">This class is used to pack up many data and commands into one package and send them via socket. <a href="a00109.html#_details">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="a00111.html">scim::TransactionReader</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">This class is used to read data from a transaction without changing it. <a href="a00111.html#_details">More...</a><br></td></tr> <tr><td colspan="2"><br><h2>Typedefs</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef Slot2< void, SocketServer *,<br> const Socket & > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#g3302e7ce1124282917597a6be5ee537c">scim::SocketServerSlotSocket</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef Signal2< void, SocketServer *,<br> const Socket & > </td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#g3e8fb05c8d4183b0660556a40a251850">scim::SocketServerSignalSocket</a></td></tr> <tr><td colspan="2"><br><h2>Enumerations</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#gcc123ee748d644961e203b0794004254">scim::SocketFamily</a> { <a class="el" href="a00165.html#ggcc123ee748d644961e203b0794004254225d7b04097f4d180efcb8f7fe9e9d0f">scim::SCIM_SOCKET_UNKNOWN</a>, <a class="el" href="a00165.html#ggcc123ee748d644961e203b0794004254fbb3dda14b48e951f3bff528b59857cc">scim::SCIM_SOCKET_LOCAL</a>, <a class="el" href="a00165.html#ggcc123ee748d644961e203b0794004254c4279331823f105429a58109235e017b">scim::SCIM_SOCKET_INET</a> }</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The vaild socket address/protocol family,. <a href="a00165.html#gcc123ee748d644961e203b0794004254">More...</a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#gd097314245c4f0bce212ebd514953cc5">scim::TransactionDataType</a> { <br> <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc52b35c61d1d2499454a9f91cc4d2f35ca">scim::SCIM_TRANS_DATA_UNKNOWN</a>, <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc5a000092009d952d612e03cbc2d61c6a3">scim::SCIM_TRANS_DATA_COMMAND</a>, <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc50d2ef313d806e4d4684b7ec16eedd503">scim::SCIM_TRANS_DATA_RAW</a>, <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc5a3dd94ae7a0ef4c106ec7d38f2622e80">scim::SCIM_TRANS_DATA_UINT32</a>, <br> <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc51eb3529abacd4b677a423dd0f83feca2">scim::SCIM_TRANS_DATA_STRING</a>, <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc5748685dc9f62d79098965d9f373dd5c3">scim::SCIM_TRANS_DATA_WSTRING</a>, <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc517603ca243819831942f72b68f4ca4a6">scim::SCIM_TRANS_DATA_KEYEVENT</a>, <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc53916be5cb1abd2586943aac9cacb4e3e">scim::SCIM_TRANS_DATA_ATTRIBUTE_LIST</a>, <br> <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc5f5013efc154b57b5ece56cd8f4981820">scim::SCIM_TRANS_DATA_LOOKUP_TABLE</a>, <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc539053a1af1341c82d36fd56f99fd141e">scim::SCIM_TRANS_DATA_PROPERTY</a>, <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc5ccb41ca2ee6466ecf3a5b1a2cc8405f6">scim::SCIM_TRANS_DATA_PROPERTY_LIST</a>, <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc5217d34a30212fcdd76033159e1f3b38c">scim::SCIM_TRANS_DATA_VECTOR_UINT32</a>, <br> <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc5db6d28374734482b99fe6fb3932622dd">scim::SCIM_TRANS_DATA_VECTOR_STRING</a>, <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc5a46d3e55e93473b543695b007ba0f318">scim::SCIM_TRANS_DATA_VECTOR_WSTRING</a>, <a class="el" href="a00165.html#ggd097314245c4f0bce212ebd514953cc5f90bead3836c4711e10c8f2507d1dacb">scim::SCIM_TRANS_DATA_TRANSACTION</a> <br> }</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Signature of all valid data types which can be store into transaction. <a href="a00165.html#gd097314245c4f0bce212ebd514953cc5">More...</a><br></td></tr> <tr><td colspan="2"><br><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">String </td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#gc357603ad78841fae0b4437025b43a7b">scim::scim_get_default_socket_frontend_address</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the default socket address of SocketFrontEnd. <a href="#gc357603ad78841fae0b4437025b43a7b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">String </td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#g7aae95b6e7b86c2993dc244759cac4a9">scim::scim_get_default_socket_imengine_address</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the default socket address of SocketIMEngine. <a href="#g7aae95b6e7b86c2993dc244759cac4a9"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">String </td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#g8d187ba6052af4f7b33f96ca20314790">scim::scim_get_default_socket_config_address</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the default socket address of SocketConfig. <a href="#g8d187ba6052af4f7b33f96ca20314790"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">String </td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#gceaef715ab0be1fa5aed4a8a761d25db">scim::scim_get_default_panel_socket_address</a> (const String &display)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the default socket address of the Panel running on localhost. <a href="#gceaef715ab0be1fa5aed4a8a761d25db"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">String </td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#gf6636c8beac7b58a54d6fcd34772cd01">scim::scim_get_default_helper_manager_socket_address</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the default socket address of Helper Manager Server running on localhost. <a href="#gf6636c8beac7b58a54d6fcd34772cd01"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#g8fc4ea36502c6697719e36b8d25bb207">scim::scim_get_default_socket_timeout</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the default socket timeout value. <a href="#g8fc4ea36502c6697719e36b8d25bb207"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#g90586f6824f64e0a30dfcac63ceb0f4a">scim::scim_socket_open_connection</a> (uint32 &key, const String &client_type, const String &server_type, const Socket &socket, int timeout=-1)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Helper function to open a connection to a socket server with a standard hand shake protocol. <a href="#g90586f6824f64e0a30dfcac63ceb0f4a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">String </td><td class="memItemRight" valign="bottom"><a class="el" href="a00165.html#gf213ad157c287344062f93dcb68a32ed">scim::scim_socket_accept_connection</a> (uint32 &key, const String &server_types, const String &client_types, const Socket &socket, int timeout=-1)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Helper function to accept a connection request from a socket client with a standard hand shake protocol. <a href="#gf213ad157c287344062f93dcb68a32ed"></a><br></td></tr> </table> <hr><h2>Typedef Documentation</h2> <a class="anchor" name="g3302e7ce1124282917597a6be5ee537c"></a><!-- doxytag: member="scim::SocketServerSlotSocket" ref="g3302e7ce1124282917597a6be5ee537c" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef Slot2<void, SocketServer *, const Socket &> <a class="el" href="a00098.html">scim::SocketServerSlotSocket</a> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="g3e8fb05c8d4183b0660556a40a251850"></a><!-- doxytag: member="scim::SocketServerSignalSocket" ref="g3e8fb05c8d4183b0660556a40a251850" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef Signal2<void, SocketServer *, const Socket &> <a class="el" href="a00078.html">scim::SocketServerSignalSocket</a> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <hr><h2>Enumeration Type Documentation</h2> <a class="anchor" name="gcc123ee748d644961e203b0794004254"></a><!-- doxytag: member="scim::SocketFamily" ref="gcc123ee748d644961e203b0794004254" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="a00165.html#gcc123ee748d644961e203b0794004254">scim::SocketFamily</a> </td> </tr> </table> </div> <div class="memdoc"> <p> The vaild socket address/protocol family,. <p> Corresponding to libc PF_LOCAL/AF_LOCAL and PF_INET/AF_INET <dl compact><dt><b>Enumerator: </b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"><em><a class="anchor" name="ggcc123ee748d644961e203b0794004254225d7b04097f4d180efcb8f7fe9e9d0f"></a><!-- doxytag: member="SCIM_SOCKET_UNKNOWN" ref="ggcc123ee748d644961e203b0794004254225d7b04097f4d180efcb8f7fe9e9d0f" args="" -->SCIM_SOCKET_UNKNOWN</em> </td><td> Unknown or invalid socket address/protocol </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggcc123ee748d644961e203b0794004254fbb3dda14b48e951f3bff528b59857cc"></a><!-- doxytag: member="SCIM_SOCKET_LOCAL" ref="ggcc123ee748d644961e203b0794004254fbb3dda14b48e951f3bff528b59857cc" args="" -->SCIM_SOCKET_LOCAL</em> </td><td> Unix local socket address/protocol </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggcc123ee748d644961e203b0794004254c4279331823f105429a58109235e017b"></a><!-- doxytag: member="SCIM_SOCKET_INET" ref="ggcc123ee748d644961e203b0794004254c4279331823f105429a58109235e017b" args="" -->SCIM_SOCKET_INET</em> </td><td> Internet (ipv4) socket address/protocol </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="gd097314245c4f0bce212ebd514953cc5"></a><!-- doxytag: member="scim::TransactionDataType" ref="gd097314245c4f0bce212ebd514953cc5" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="a00165.html#gd097314245c4f0bce212ebd514953cc5">scim::TransactionDataType</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Signature of all valid data types which can be store into transaction. <p> <dl compact><dt><b>Enumerator: </b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc52b35c61d1d2499454a9f91cc4d2f35ca"></a><!-- doxytag: member="SCIM_TRANS_DATA_UNKNOWN" ref="ggd097314245c4f0bce212ebd514953cc52b35c61d1d2499454a9f91cc4d2f35ca" args="" -->SCIM_TRANS_DATA_UNKNOWN</em> </td><td> Unknown transaction data type. </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc5a000092009d952d612e03cbc2d61c6a3"></a><!-- doxytag: member="SCIM_TRANS_DATA_COMMAND" ref="ggd097314245c4f0bce212ebd514953cc5a000092009d952d612e03cbc2d61c6a3" args="" -->SCIM_TRANS_DATA_COMMAND</em> </td><td> Send/Receive command. </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc50d2ef313d806e4d4684b7ec16eedd503"></a><!-- doxytag: member="SCIM_TRANS_DATA_RAW" ref="ggd097314245c4f0bce212ebd514953cc50d2ef313d806e4d4684b7ec16eedd503" args="" -->SCIM_TRANS_DATA_RAW</em> </td><td> Send/Receive raw buffer. </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc5a3dd94ae7a0ef4c106ec7d38f2622e80"></a><!-- doxytag: member="SCIM_TRANS_DATA_UINT32" ref="ggd097314245c4f0bce212ebd514953cc5a3dd94ae7a0ef4c106ec7d38f2622e80" args="" -->SCIM_TRANS_DATA_UINT32</em> </td><td> Send/Receive uint32. </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc51eb3529abacd4b677a423dd0f83feca2"></a><!-- doxytag: member="SCIM_TRANS_DATA_STRING" ref="ggd097314245c4f0bce212ebd514953cc51eb3529abacd4b677a423dd0f83feca2" args="" -->SCIM_TRANS_DATA_STRING</em> </td><td> Send/Receive String. </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc5748685dc9f62d79098965d9f373dd5c3"></a><!-- doxytag: member="SCIM_TRANS_DATA_WSTRING" ref="ggd097314245c4f0bce212ebd514953cc5748685dc9f62d79098965d9f373dd5c3" args="" -->SCIM_TRANS_DATA_WSTRING</em> </td><td> Send/Receive WideString. </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc517603ca243819831942f72b68f4ca4a6"></a><!-- doxytag: member="SCIM_TRANS_DATA_KEYEVENT" ref="ggd097314245c4f0bce212ebd514953cc517603ca243819831942f72b68f4ca4a6" args="" -->SCIM_TRANS_DATA_KEYEVENT</em> </td><td> Send/Receive <a class="el" href="a00054.html">KeyEvent</a>. </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc53916be5cb1abd2586943aac9cacb4e3e"></a><!-- doxytag: member="SCIM_TRANS_DATA_ATTRIBUTE_LIST" ref="ggd097314245c4f0bce212ebd514953cc53916be5cb1abd2586943aac9cacb4e3e" args="" -->SCIM_TRANS_DATA_ATTRIBUTE_LIST</em> </td><td> Send/Receive AttributeList. </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc5f5013efc154b57b5ece56cd8f4981820"></a><!-- doxytag: member="SCIM_TRANS_DATA_LOOKUP_TABLE" ref="ggd097314245c4f0bce212ebd514953cc5f5013efc154b57b5ece56cd8f4981820" args="" -->SCIM_TRANS_DATA_LOOKUP_TABLE</em> </td><td> Send/Receive <a class="el" href="a00055.html">LookupTable</a>. </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc539053a1af1341c82d36fd56f99fd141e"></a><!-- doxytag: member="SCIM_TRANS_DATA_PROPERTY" ref="ggd097314245c4f0bce212ebd514953cc539053a1af1341c82d36fd56f99fd141e" args="" -->SCIM_TRANS_DATA_PROPERTY</em> </td><td> Send/Receive <a class="el" href="a00071.html">Property</a>. </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc5ccb41ca2ee6466ecf3a5b1a2cc8405f6"></a><!-- doxytag: member="SCIM_TRANS_DATA_PROPERTY_LIST" ref="ggd097314245c4f0bce212ebd514953cc5ccb41ca2ee6466ecf3a5b1a2cc8405f6" args="" -->SCIM_TRANS_DATA_PROPERTY_LIST</em> </td><td> Send/Receive PropertyList. </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc5217d34a30212fcdd76033159e1f3b38c"></a><!-- doxytag: member="SCIM_TRANS_DATA_VECTOR_UINT32" ref="ggd097314245c4f0bce212ebd514953cc5217d34a30212fcdd76033159e1f3b38c" args="" -->SCIM_TRANS_DATA_VECTOR_UINT32</em> </td><td> Send/Receive vector<uint32>. </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc5db6d28374734482b99fe6fb3932622dd"></a><!-- doxytag: member="SCIM_TRANS_DATA_VECTOR_STRING" ref="ggd097314245c4f0bce212ebd514953cc5db6d28374734482b99fe6fb3932622dd" args="" -->SCIM_TRANS_DATA_VECTOR_STRING</em> </td><td> Send/Receive vector<String>. </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc5a46d3e55e93473b543695b007ba0f318"></a><!-- doxytag: member="SCIM_TRANS_DATA_VECTOR_WSTRING" ref="ggd097314245c4f0bce212ebd514953cc5a46d3e55e93473b543695b007ba0f318" args="" -->SCIM_TRANS_DATA_VECTOR_WSTRING</em> </td><td> Send/Receive vector<WideString>. </td></tr> <tr><td valign="top"><em><a class="anchor" name="ggd097314245c4f0bce212ebd514953cc5f90bead3836c4711e10c8f2507d1dacb"></a><!-- doxytag: member="SCIM_TRANS_DATA_TRANSACTION" ref="ggd097314245c4f0bce212ebd514953cc5f90bead3836c4711e10c8f2507d1dacb" args="" -->SCIM_TRANS_DATA_TRANSACTION</em> </td><td> Send/Receive another <a class="el" href="a00109.html">Transaction</a>. </td></tr> </table> </dl> </div> </div><p> <hr><h2>Function Documentation</h2> <a class="anchor" name="gc357603ad78841fae0b4437025b43a7b"></a><!-- doxytag: member="scim::scim_get_default_socket_frontend_address" ref="gc357603ad78841fae0b4437025b43a7b" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">String scim::scim_get_default_socket_frontend_address </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get the default socket address of SocketFrontEnd. <p> SocketFrontEnd should listen on this address by default. </div> </div><p> <a class="anchor" name="g7aae95b6e7b86c2993dc244759cac4a9"></a><!-- doxytag: member="scim::scim_get_default_socket_imengine_address" ref="g7aae95b6e7b86c2993dc244759cac4a9" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">String scim::scim_get_default_socket_imengine_address </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get the default socket address of SocketIMEngine. <p> SocketIMEngine should connect to this address by default. </div> </div><p> <a class="anchor" name="g8d187ba6052af4f7b33f96ca20314790"></a><!-- doxytag: member="scim::scim_get_default_socket_config_address" ref="g8d187ba6052af4f7b33f96ca20314790" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">String scim::scim_get_default_socket_config_address </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get the default socket address of SocketConfig. <p> SocketConfig should connect to this address by default. </div> </div><p> <a class="anchor" name="gceaef715ab0be1fa5aed4a8a761d25db"></a><!-- doxytag: member="scim::scim_get_default_panel_socket_address" ref="gceaef715ab0be1fa5aed4a8a761d25db" args="(const String &display)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">String scim::scim_get_default_panel_socket_address </td> <td>(</td> <td class="paramtype">const String & </td> <td class="paramname"> <em>display</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get the default socket address of the Panel running on localhost. <p> The panel running on local host should listen on this address by default. All FrontEnds which need panel should connect to this address by default. </div> </div><p> <a class="anchor" name="gf6636c8beac7b58a54d6fcd34772cd01"></a><!-- doxytag: member="scim::scim_get_default_helper_manager_socket_address" ref="gf6636c8beac7b58a54d6fcd34772cd01" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">String scim::scim_get_default_helper_manager_socket_address </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get the default socket address of Helper Manager Server running on localhost. <p> </div> </div><p> <a class="anchor" name="g8fc4ea36502c6697719e36b8d25bb207"></a><!-- doxytag: member="scim::scim_get_default_socket_timeout" ref="g8fc4ea36502c6697719e36b8d25bb207" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int scim::scim_get_default_socket_timeout </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Get the default socket timeout value. <p> All socket connection should use this timeout value. </div> </div><p> <a class="anchor" name="g90586f6824f64e0a30dfcac63ceb0f4a"></a><!-- doxytag: member="scim::scim_socket_open_connection" ref="g90586f6824f64e0a30dfcac63ceb0f4a" args="(uint32 &key, const String &client_type, const String &server_type, const Socket &socket, int timeout=-1)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool scim::scim_socket_open_connection </td> <td>(</td> <td class="paramtype">uint32 & </td> <td class="paramname"> <em>key</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const String & </td> <td class="paramname"> <em>client_type</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const String & </td> <td class="paramname"> <em>server_type</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const Socket & </td> <td class="paramname"> <em>socket</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>timeout</em> = <code>-1</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Helper function to open a connection to a socket server with a standard hand shake protocol. <p> This function is used by a socket client to establish a connection between a socket server with a standard hand shake protocol.<p> The communication between Panel and FrontEnd, SocketFrontEnd and SocketIMEngine, SocketFrontEnd and SocketConfig all uses this hand shake protocol.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>key</em> </td><td>A random magic key sent from the socket server to identify this client in later communications. </td></tr> <tr><td valign="top"></td><td valign="top"><em>client_type</em> </td><td>The type of this socket client, for example: "FrontEnd", "GUI", "SocketIMEngine", "SocketConfig" etc. If the type is "ConnectionTester" then this call just test if the connection can be established. The client should close this socket just after the call. </td></tr> <tr><td valign="top"></td><td valign="top"><em>server_type</em> </td><td>The request socket server type, for example: "Panel", "SocketFrontEnd" etc. </td></tr> <tr><td valign="top"></td><td valign="top"><em>socket</em> </td><td>The reference to the client socket which has been connected to the socket server. </td></tr> <tr><td valign="top"></td><td valign="top"><em>timeout</em> </td><td>The socket read timeout in millisecond, -1 means unlimited.</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>true if the connection was established successfully, otherwise return false, and the client should close the socket. </dd></dl> </div> </div><p> <a class="anchor" name="gf213ad157c287344062f93dcb68a32ed"></a><!-- doxytag: member="scim::scim_socket_accept_connection" ref="gf213ad157c287344062f93dcb68a32ed" args="(uint32 &key, const String &server_types, const String &client_types, const Socket &socket, int timeout=-1)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">String scim::scim_socket_accept_connection </td> <td>(</td> <td class="paramtype">uint32 & </td> <td class="paramname"> <em>key</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const String & </td> <td class="paramname"> <em>server_types</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const String & </td> <td class="paramname"> <em>client_types</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const Socket & </td> <td class="paramname"> <em>socket</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>timeout</em> = <code>-1</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Helper function to accept a connection request from a socket client with a standard hand shake protocol. <p> This function is used by a socket server to accept a connection request from a socket client which is calling scim_socket_open_connection ().<p> If a client with type "ConnectionTester" connected to this socket server, then this function will return an empty string, but tell the client the connection was established successfully.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>key</em> </td><td>A random magic key to identify the socket client in later communications. </td></tr> <tr><td valign="top"></td><td valign="top"><em>server_types</em> </td><td>The type of this server, for example: "SocketFrontEnd", "Panel" etc. One server can have multiple types, separated by comma. </td></tr> <tr><td valign="top"></td><td valign="top"><em>client_types</em> </td><td>A list of acceptable client types, separated by comma. The client type maybe: "FrontEnd", "GUI", "SocketIMEngine" etc. </td></tr> <tr><td valign="top"></td><td valign="top"><em>socket</em> </td><td>The socket connected to the client. </td></tr> <tr><td valign="top"></td><td valign="top"><em>timeout</em> </td><td>the socket read timeout in millisecond, -1 means unlimited.</td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>The type of the accepted socket client, or an empty string if the connection could not be established. </dd></dl> </div> </div><p> <hr size="1"><address style="align: right;"><small>Generated on Thu Jun 28 14:12:30 2007 for scim by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.0 </small></address> </body> </html>