jmri.jmrix.powerline.serialdriver
Class SerialDriverAdapter

java.lang.Object
  extended by jmri.jmrix.AbstractPortController
      extended by jmri.jmrix.AbstractSerialPortController
          extended by jmri.jmrix.powerline.SerialPortController
              extended by jmri.jmrix.powerline.serialdriver.SerialDriverAdapter
All Implemented Interfaces:
PortAdapter, SerialPortAdapter

public class SerialDriverAdapter
extends SerialPortController
implements SerialPortAdapter

Provide access to Powerline devices via a serial comm port. Derived from the oaktree code.

Author:
Bob Jacobsen Copyright (C) 2006, 2007, 2008, Ken Cameron, (C) 2009, sensors from poll replies Converted to multiple connection, kcameron Copyright (C) 2011

Field Summary
protected  String selectedSpeed
           
protected  String[] validSpeeds
           
protected  int[] validSpeedValues
           
 
Fields inherited from class jmri.jmrix.powerline.SerialPortController
adaptermemo
 
Fields inherited from class jmri.jmrix.AbstractSerialPortController
mBaudRate, mPort
 
Fields inherited from class jmri.jmrix.AbstractPortController
mDisabled, mManufacturer, mOpt1, mOpt2
 
Constructor Summary
SerialDriverAdapter()
           
 
Method Summary
 void configure()
          set up all of the other objects to operate connected to this port
 void configureBaudRate(String rate)
          Set the baud rate.
 void dispose()
           
 DataInputStream getInputStream()
           
 String getManufacturer()
          Get and set of the Manufacturer for network (TCP/IP) based connections is handled by the ConnectionConfig code in each connector.
 DataOutputStream getOutputStream()
           
 SerialSystemConnectionMemo getSystemConnectionMemo()
           
 boolean okToSend()
          Can the port accept additional characters?
 String openPort(String portName, String appName)
          Open a specified port.
 String option1Name()
          Option 1 not used, so return a null string.
 String option2Name()
          Get a String that says what Option 2 represents May be an empty string, but will not be null
 void setManufacturer(String manu)
          Set the System Manufacturers Name
protected  void setSerialPort()
          Local method to do specific port configuration
 boolean status()
          Query the status of this connection.
 String[] validBaudRates()
          Get an array of valid baud rates.
 String[] validOption1()
          Option 1 is not used for anything
 String[] validOption2()
          Get an array of valid values for "option 2"; used to display valid options.
 
Methods inherited from class jmri.jmrix.powerline.SerialPortController
setDisabled
 
Methods inherited from class jmri.jmrix.AbstractSerialPortController
currentBaudNumber, getCurrentBaudRate, getCurrentPortName, getPortNames, handlePortBusy, handlePortNotFound, setPort, validBaudNumber
 
Methods inherited from class jmri.jmrix.AbstractPortController
configureOption1, configureOption2, getCurrentOption1Setting, getCurrentOption2Setting, getDisabled
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface jmri.jmrix.SerialPortAdapter
configureOption1, configureOption2, getCurrentBaudRate, getCurrentOption1Setting, getCurrentOption2Setting, getCurrentPortName, getPortNames, handlePortBusy, setPort
 
Methods inherited from interface jmri.jmrix.PortAdapter
getDisabled, setDisabled
 

Field Detail

validSpeeds

protected String[] validSpeeds

validSpeedValues

protected int[] validSpeedValues

selectedSpeed

protected String selectedSpeed
Constructor Detail

SerialDriverAdapter

public SerialDriverAdapter()
Method Detail

getSystemConnectionMemo

public SerialSystemConnectionMemo getSystemConnectionMemo()
Specified by:
getSystemConnectionMemo in interface PortAdapter
Overrides:
getSystemConnectionMemo in class SerialPortController

openPort

public String openPort(String portName,
                       String appName)
Description copied from interface: SerialPortAdapter
Open a specified port. The appname argument is to be provided to the underlying OS during startup so that it can show on status displays, etc

Specified by:
openPort in interface SerialPortAdapter

okToSend

public boolean okToSend()
Can the port accept additional characters? Yes, always


configure

public void configure()
set up all of the other objects to operate connected to this port

Specified by:
configure in interface PortAdapter
Specified by:
configure in interface SerialPortAdapter

getInputStream

public DataInputStream getInputStream()
Specified by:
getInputStream in interface PortAdapter
Specified by:
getInputStream in class AbstractPortController

getOutputStream

public DataOutputStream getOutputStream()
Specified by:
getOutputStream in interface PortAdapter
Specified by:
getOutputStream in class AbstractPortController

status

public boolean status()
Description copied from interface: PortAdapter
Query the status of this connection. If all OK, at least as far as is known, return true

Specified by:
status in interface PortAdapter
Specified by:
status in interface SerialPortAdapter
Overrides:
status in class AbstractPortController

setSerialPort

protected void setSerialPort()
                      throws UnsupportedCommOperationException
Local method to do specific port configuration

Throws:
UnsupportedCommOperationException

validBaudRates

public String[] validBaudRates()
Get an array of valid baud rates.

Specified by:
validBaudRates in interface SerialPortAdapter

configureBaudRate

public void configureBaudRate(String rate)
Set the baud rate.

Specified by:
configureBaudRate in interface SerialPortAdapter
Overrides:
configureBaudRate in class AbstractSerialPortController

validOption1

public String[] validOption1()
Option 1 is not used for anything

Specified by:
validOption1 in interface PortAdapter
Specified by:
validOption1 in interface SerialPortAdapter
Overrides:
validOption1 in class AbstractPortController

option1Name

public String option1Name()
Option 1 not used, so return a null string.

Specified by:
option1Name in interface PortAdapter
Specified by:
option1Name in interface SerialPortAdapter
Overrides:
option1Name in class AbstractPortController

validOption2

public String[] validOption2()
Get an array of valid values for "option 2"; used to display valid options. May not be null, but may have zero entries

Specified by:
validOption2 in interface PortAdapter
Specified by:
validOption2 in interface SerialPortAdapter
Overrides:
validOption2 in class AbstractPortController

option2Name

public String option2Name()
Get a String that says what Option 2 represents May be an empty string, but will not be null

Specified by:
option2Name in interface PortAdapter
Specified by:
option2Name in interface SerialPortAdapter
Overrides:
option2Name in class AbstractPortController

getManufacturer

public String getManufacturer()
Description copied from class: AbstractPortController
Get and set of the Manufacturer for network (TCP/IP) based connections is handled by the ConnectionConfig code in each connector. this is here as we implement the serialdriveradpter.

Specified by:
getManufacturer in interface PortAdapter
Specified by:
getManufacturer in interface SerialPortAdapter
Overrides:
getManufacturer in class AbstractPortController

setManufacturer

public void setManufacturer(String manu)
Description copied from interface: PortAdapter
Set the System Manufacturers Name

Specified by:
setManufacturer in interface PortAdapter
Specified by:
setManufacturer in interface SerialPortAdapter
Overrides:
setManufacturer in class AbstractPortController

dispose

public void dispose()
Specified by:
dispose in interface PortAdapter
Overrides:
dispose in class AbstractSerialPortController


Copyright © 1997 - 2011 JMRI Community.
JMRI, DecoderPro, PanelPro, SoundPro, DispatcherPro and associated logos are our trademarks.

Additional information on copyright, trademarks and licenses is linked here.
Site hosted by: Get JMRI Model Railroad Interface at SourceForge.net. Fast, secure and Free Open Source software downloads