ETSIModem Class Reference

An analog signal processor as defined by ETSI. More...

#include <yatemodem.h>

Inheritance diagram for ETSIModem:
UART DebugEnabler

List of all members.

Public Types

enum  State {
  StateError, WaitFSKStart, WaitMark, WaitMsg,
  WaitMsgLen, WaitParam, WaitParamLen, WaitData,
  WaitChksum
}
enum  MsgType { MsgCallSetup = 0x80, MsgMWI = 0x82, MsgCharge = 0x86, MsgSMS = 0x89 }
enum  MsgParam {
  DateTime = 0x01, CallerId = 0x02, CalledId = 0x03, CallerIdReason = 0x04,
  CallerName = 0x07, CallerNameReason = 0x08, VisualIndicator = 0x0B, MessageId = 0x0D,
  LastMsgCLI = 0x0E, CompDateTime = 0x0F, CompCallerId = 0x10, CallType = 0x11,
  FirstCalledId = 0x12, MWICount = 0x13, FwdCallType = 0x15, CallerType = 0x16,
  RedirNumber = 0x1A, Charge = 0x20, AdditionalCharge = 0x21, Duration = 0x23,
  NetworkID = 0x30, CarrierId = 0x31, SelectFunction = 0x40, Display = 0x50,
  ServiceInfo = 0x55, Extension = 0xE0, Unknown
}

Public Member Functions

 ETSIModem (const NamedList &params, const char *name=0)
virtual ~ETSIModem ()
virtual void reset ()
virtual bool recvByte (unsigned char data)

Static Public Attributes

static TokenDict s_msg []
static TokenDict s_msgParams []

Protected Member Functions

virtual int idleRecvByte (unsigned char data)
virtual bool recvParams (MsgType msg, const NamedList &params)
virtual bool decode (MsgType msg, const DataBlock &buffer)
virtual bool createMsg (NamedList &params, DataBlock &data)

Detailed Description

An analog signal processor as defined by ETSI.

This class implements a modem/UART pair used to demodulate/decode analog signal as defined in ETSI EN 300 659-1, ETSI EN 300 659-2, ETSI EN 300 659-3


Member Enumeration Documentation

enum MsgParam

Message parameters defined in ETSI EN 659-3 5.3

enum MsgType

Message type defined in ETSI EN 659-3 5.2

enum State

The state of this ETSI decoder

Reimplemented from UART.


Constructor & Destructor Documentation

ETSIModem ( const NamedList params,
const char *  name = 0 
)

Constructor

Parameters:
params Decoder parameters
name The name of this debug enabler
virtual ~ETSIModem (  )  [virtual]

Destructor


Member Function Documentation

virtual bool createMsg ( NamedList params,
DataBlock data 
) [protected, virtual]

Create a buffer containing the byte representation of a message to be sent

Parameters:
params The list containing message parameters. The name of the list must be a valid (known) message
data Destination message data buffer
Returns:
False on failure (an 'error' parameter will be set in params)

Reimplemented from UART.

virtual bool decode ( MsgType  msg,
const DataBlock buffer 
) [protected, virtual]

Process (decode) a valid received buffer. Call recvParams() after decoding the message

Parameters:
msg The message type as enumeration
buffer The accumulated data bytes
Returns:
False to stop processing data
virtual int idleRecvByte ( unsigned char  data  )  [protected, virtual]

Process an accumulated byte in Idle state

Parameters:
data The byte to process
Returns:
Negative to stop, positive to change state to BitStart, 0 to continue

Reimplemented from UART.

virtual bool recvByte ( unsigned char  data  )  [virtual]

Push a data byte into this decoder. Reset this UART and call decode after validated a received message

Parameters:
data The byte to be processed
Returns:
False to stop feeding data

Reimplemented from UART.

virtual bool recvParams ( MsgType  msg,
const NamedList params 
) [inline, protected, virtual]

Process a list of received message parameters

Parameters:
msg The message type as enumeration
params Message parameters
Returns:
False to stop processing data
virtual void reset (  )  [virtual]

Reset this decoder (modem and UART)


Member Data Documentation

TokenDict s_msg[] [static]

Keeps the text associated with message type enumeration

TokenDict s_msgParams[] [static]

Keeps the text associated with parameter type enumeration


The documentation for this class was generated from the following file:
Generated on Thu Apr 8 18:19:44 2010 for Yate by  doxygen 1.6.3