Symbian3/SDK/Source/GUID-C7E37B5D-C7AA-5624-B34F-B3CA44516E1D.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Thu, 21 Jan 2010 18:18:20 +0000
changeset 0 89d6a7a84779
permissions -rw-r--r--
Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept xml:lang="en" id="GUID-C7E37B5D-C7AA-5624-B34F-B3CA44516E1D"><title>What are Serial Protocol Modules (CSYs)</title><shortdesc>This topic describes the Comms SYstem (CSY) plug-ins, which the Serial Communications Server uses to control serial ports. Serial protocol module are also known as CSYs after the extension of the filename for their DLLs. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody><p>Serial protocol modules are DLLs with a single entry point which return a factory object which is capable of creating one or more objects that implement serial services. </p> <p>Serial protocol modules have a <filepath>.csy</filepath> extension and a <keyword>UID</keyword> 2 of 0x10000049. </p> <p>Serial protocol modules are loaded by the Serial Communications Server, and are not directly accessed by client applications. The server passes client requests to the appropriate Serial protocol module. An example of a client request is to read from a port. </p> <p>A client of the Serial Communications Server must have at least one Serial protocol module loaded in the client session to be able to send and receive serial data. Serial protocol modules are loaded into a client session by using the <xref href="GUID-6B3CA99B-ABF2-32EA-935D-23AE5AE2C306.dita#GUID-6B3CA99B-ABF2-32EA-935D-23AE5AE2C306/GUID-F851835B-4585-3C3A-B257-ADAE04CD95AA"><apiname>RCommServ::LoadCommModule()</apiname></xref> API and are unloaded using the <xref href="GUID-6B3CA99B-ABF2-32EA-935D-23AE5AE2C306.dita#GUID-6B3CA99B-ABF2-32EA-935D-23AE5AE2C306/GUID-98B29787-1CC4-35AF-9C56-B2D2E29C897C"><apiname>RCommServ::UnloadCommModule()</apiname></xref> API. The Serial Communications Server manages the situation where multiple clients load and unload the same Serial protocol module. A Serial protocol module remains loaded by the server for as long as at least one client has the Serial protocol module loaded. </p> <p>An example Serial protocol module is IrCOMM, the infrared serial protocol module. IrCOMM is a presentation layer ISO model network protocol that programmers access through a serial API. IrCOMM includes specifications for sending information about RS-232 signal lines, handshaking and emulating full duplex data transfer over the single <i>wire</i> of the infrared link. </p> <p>A theoretical Serial protocol module would be the Telnet protocol, which runs over TCP/IP or GSM Data services which run over the GSM digital network. The Telnet protocol could simulate a serial port. </p> </conbody><related-links><link href="GUID-7651FA57-4C0E-5EB6-8DB1-AAF23D39CD7C.dita"><linktext>List of
                Serial Communications Server protocol modules</linktext> </link> </related-links></concept>