|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjmri.jmrix.cmri.serial.SerialAddress
public class SerialAddress
Utility Class supporting parsing and testing of addresses for C/MRI
Two address formats are supported: Ctnnnxxx where: t is the type code, 'T' for turnouts, 'S' for sensors, and 'L' for lights nn is the node address (0-127) xxx is a bit number of the input or output bit (001-999) nnxxx = (node address x 1000) + bit number examples: CT2 (node address 0, bit 2), CS1003 (node address 1, bit 3), CL11234 (node address 11, bit234) CtnnnBxxxx where: t is the type code, 'T' for turnouts, 'S' for sensors, and 'L' for lights nnn is the node address of the input or output bit (0-127) xxxx is a bit number of the input or output bit (1-2048) examples: CT0B2 (node address 0, bit 2), CS1B3 (node address 1, bit 3), CL11B234 (node address 11, bit234)
| Field Summary | |
|---|---|
(package private) static org.slf4j.Logger |
log
|
| Constructor Summary | |
|---|---|
SerialAddress()
|
|
| Method Summary | |
|---|---|
static String |
convertSystemNameToAlternate(String systemName)
Public static method to convert one format C/MRI system name for the alternate format. |
static int |
getBitFromSystemName(String systemName)
Public static method to parse a C/MRI system name and return the bit number Notes: Bits are numbered from 1. |
static int |
getNodeAddressFromSystemName(String systemName)
Public static method to parse a C/MRI system name and return the Serial Node Address Note: Returns '-1' if illegal systemName format or if the node is not found. |
static AbstractNode |
getNodeFromSystemName(String systemName)
Public static method to parse a C/MRI system name and return the Serial Node Note: Returns 'null' if illegal systemName format or if the node is not found |
static String |
getUserNameFromSystemName(String systemName)
Public static method to the user name for a valid system name Returns "" (null string) if the system name is not valid or does not exist |
static String |
isInputBitFree(int nAddress,
int bitNum)
Public static method to test if a C/MRI input bit is free for assignment Returns "" (null string) if the specified input bit is free for assignment, else returns the system name of the conflicting assignment. |
static String |
isOutputBitFree(int nAddress,
int bitNum)
Public static method to test if a C/MRI output bit is free for assignment Returns "" (null string) if the specified output bit is free for assignment, else returns the system name of the conflicting assignment. |
static String |
makeSystemName(String type,
int nAddress,
int bitNum)
Public static method to construct a C/MRI system name from type character, node address, and bit number This routine returns a system name in the CLnnnxxx, CTnnnxxx, or CSnnnxxx format if the bit number is 1 - 999. |
static String |
normalizeSystemName(String systemName)
Public static method to normalize a C/MRI system name This routine is used to ensure that each system name is uniquely linked to one C/MRI bit, by removing extra zeros inserted by the user. |
static boolean |
validSystemNameConfig(String systemName,
char type)
Public static method to validate C/MRI system name for configuration returns 'true' if system name has a valid meaning in current configuration, else returns 'false' |
static boolean |
validSystemNameFormat(String systemName,
char type)
Public static method to validate system name format returns 'true' if system name has a valid format, else returns 'false' |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
static org.slf4j.Logger log
| Constructor Detail |
|---|
public SerialAddress()
| Method Detail |
|---|
public static int getNodeAddressFromSystemName(String systemName)
public static AbstractNode getNodeFromSystemName(String systemName)
public static int getBitFromSystemName(String systemName)
public static boolean validSystemNameFormat(String systemName,
char type)
public static boolean validSystemNameConfig(String systemName,
char type)
public static String convertSystemNameToAlternate(String systemName)
public static String normalizeSystemName(String systemName)
This routine is used to ensure that each system name is uniquely linked to one C/MRI bit, by removing extra zeros inserted by the user.
If the supplied system name does not have a valid format, an empty string is returned. Otherwise a normalized name is returned in the same format as the input name.
public static String makeSystemName(String type,
int nAddress,
int bitNum)
This routine returns a system name in the CLnnnxxx, CTnnnxxx, or CSnnnxxx format if the bit number is 1 - 999. If the bit number is 1000 - 2048, the system name is returned in the CLnnnBxxxx, CTnnnBxxxx, or CSnnnBxxxx format. The returned name is normalized.
If the supplied character is not valid, or the node address is out of the 0 - 127 range, or the bit number is out of the 1 - 2048 range, an error message is logged and the null string "" is returned.
public static String isOutputBitFree(int nAddress,
int bitNum)
public static String isInputBitFree(int nAddress,
int bitNum)
public static String getUserNameFromSystemName(String systemName)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||