Symbian3/SDK/Source/GUID-97E8BB93-DFEC-558F-BF7A-0F5FF0D16F06.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Tue, 20 Jul 2010 12:00:49 +0100
changeset 13 48780e181b38
parent 0 89d6a7a84779
permissions -rw-r--r--
Week 28 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 1897 and Bug 1522.

<?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-97E8BB93-DFEC-558F-BF7A-0F5FF0D16F06"><title>What is the Serial Protocol Module Interface</title><prolog><metadata><keywords/></metadata></prolog><conbody><p>The Serial Protocol Interface is the API that the Serial Communications Server uses to manage and communication with the Serial Protocol Modules. </p> <p>There are two interfaces which make up the Serial Protocol Module Interface. These interfaces are the Serial Protocol Factory and the Serial Service Provider. </p> <p>The Serial Protocol Module Interface cannot be used by applications. </p> <section><title>Serial Protocol Factory</title> <p>Serial protocol modules are DLLs with a single entry point which returns a factory object. The factory object is capable of creating one or more objects that actually implement serial services. The factory object is known as the Serial protocol factory. </p> <p>The Serial Communications Server calls the Serial protocol factory to create serial service providers. The Serial protocol factory is derived from the <xref href="GUID-D8C11F99-7452-35BB-B53E-440968D4C1A3.dita"><apiname>CSerial</apiname></xref> class. </p> <p><b>Serial Protocol Information</b> </p> <p>Serial protocol information specifies information about the ports of the serial protocol module, for example name and number. A serial protocol module provides protocol information to the server. </p> <p>The serial protocol information is provided to the client by <xref href="GUID-6B3CA99B-ABF2-32EA-935D-23AE5AE2C306.dita#GUID-6B3CA99B-ABF2-32EA-935D-23AE5AE2C306/GUID-EB42477B-11C1-3A88-86C9-6E9A1BAE5790"><apiname>RCommServ::GetPortInfo()</apiname></xref>. The Serial Protocol module uses the function derived from <xref href="GUID-D8C11F99-7452-35BB-B53E-440968D4C1A3.dita#GUID-D8C11F99-7452-35BB-B53E-440968D4C1A3/GUID-B53A32A7-8AB0-31D2-ACAA-69DA0EF2DD23"><apiname>CSerial::Info()</apiname></xref> to provide the Serial protocol information to the Serial Communications Server. The information is provided in an object of type <xref href="GUID-A6E4627A-A3AE-3B64-9E5C-710EE15C5595.dita"><apiname>TSerialInfo</apiname></xref>. </p> </section> <section><title> Serial Service Provider</title> <p>The Serial Service Provider defines an interface that represents a port, with functions corresponding to the port interface provided to clients by the Serial Communications Server Client Side (<xref href="GUID-3B4E8ED5-72F7-3E51-B188-3C1045526DDF.dita"><apiname>RComm</apiname></xref>) API. A Serial Protocol Module implements the interface to access the hardware ports for its protocol. </p> <p>The serial service provider interface is provided by <xref href="GUID-5CEF7907-E485-3626-8587-53CAC2A06544.dita"><apiname>CPort</apiname></xref>. </p> </section> </conbody></concept>