
public class SimuCanOpenProxy extends CanOpenProxy
| Modifier and Type | Class and Description |
|---|---|
protected static class |
FcsTcpProxy.ClientContext
A class to handle the tcpip connexion.
|
| Modifier and Type | Field and Description |
|---|---|
protected FcsTcpProxy.ClientContext |
clientContext |
static Logger |
COMMAND_LOG
A Logger for CommandDispenser.
|
protected int |
fieldBusTimeout |
protected Condition |
hardwareBooted |
protected Lock |
lock |
protected String |
name |
protected int |
portNumber |
protected boolean |
stopped |
protected boolean |
stopping |
protected boolean |
tcpServerStarted |
bootedDeviceNB, bootingCompleted, hardwareBootProcessEnded, hardwareMapByName, hardwareMapByNodeIDalertSeparater| Constructor and Description |
|---|
SimuCanOpenProxy(int portNumber,
int fieldBusTimeout,
String clientName,
long hardwareBootTimeout) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
allDevicesBooted()
This method returns true if : all the hardware items are booted and
identified and the hardware have the node ID expected within the
configuration and the hardware is initialized.
|
void |
bootProcess()
Check if all pieces of hardware in the configuration are booted with the corect serial number.
|
Object |
call(String clientName,
String command)
In simulation, call method only logs the command to be called.
|
void |
init() |
boolean |
isCWrapperConnected()
This method returns true if the C-Wrapper is connected to the tcp proxy.
|
boolean |
isReady(String clientName) |
boolean |
isRealHardware() |
protected void |
processCommand(String command)
Processes a command received from the tcp client.
|
protected void |
processUnknownCommand(String message)
Process a message received from the CAN bus when this message is an unknown message.
|
PDOStorage |
readPDOs()
This method sends a sync command to the can open stack and returns the
reply.
|
int |
readSDO(int nodeID,
int index,
int subindex)
Read a SDO with the given index and subindex RETURNS the value read in
hexa (String) if no error occured or throws an Exception if an error
occured.
|
void |
start() |
void |
startServer()
Starts the server tcp on the port portNumber.
|
void |
startThreadReader()
Starts a thread which read on the tcp socket, waiting for messages coming
from tcp proxy.
|
void |
stopServer()
Stops the tcp server.
|
String |
writeSDO(int nodeID,
int index,
int subindex,
int size,
int newValue)
Command to be used by the end user at the console.
|
canClearAlert, checkNodeID, checkStarted, connectHardware, disconnectHardware, getMyClientName, getNodeName, getPdoStorage, initialize, listBootedNodes, listHardwareNames, postStart, printHardwareList, printHardwareState, printPDOStorage, processEmcyMessage, processResponseToReadSDO, processSDORequestError, publishData, readSDOCommand, readSDOLong, retrieveHardwareInfo, sendCanOpen, sendCanOpenCommand, shutdownNow, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitcheckHardware, checkStoppedraiseAlarm, raiseAlarm, raiseAlarm, raiseAlarm, raiseAlarm, raiseAlarm, raiseWarning, raiseWarning, raiseWarning, raiseWarning, raiseWarningpublic static final Logger COMMAND_LOG
@LookupName protected String name
@ConfigurationParameter(isFinal=true,
range="1024..99000",
description="tcpip port number on which this tcpip server starts on.")
protected int portNumber
@ConfigurationParameter(description="Timeout in Millisecond. If a command sent to the CANbus doesn\'t respond during this amount of time, we considere that they could be an issue on the hardware.") protected int fieldBusTimeout
protected volatile boolean stopped
protected volatile boolean stopping
protected volatile boolean tcpServerStarted
protected FcsTcpProxy.ClientContext clientContext
protected final Lock lock
protected final Condition hardwareBooted
public SimuCanOpenProxy(int portNumber,
int fieldBusTimeout,
String clientName,
long hardwareBootTimeout)
public void init()
init in interface org.lsst.ccs.framework.HasLifecycleinit in class CanOpenProxypublic void startServer()
startServer in interface BridgeToHardwarepublic void startThreadReader()
startThreadReader in interface BridgeToHardwarepublic void stopServer()
public void bootProcess()
CanOpenProxybootProcess in interface BridgeToHardwarebootProcess in class CanOpenProxypublic Object call(String clientName, String command)
clientName - command - public PDOStorage readPDOs()
CanOpenProxyreadPDOs in interface BridgeToHardwarereadPDOs in class CanOpenProxypublic int readSDO(int nodeID,
int index,
int subindex)
CanOpenProxyreadSDO in class CanOpenProxynodeID - index - subindex - public String writeSDO(int nodeID, int index, int subindex, int size, int newValue)
CanOpenProxywriteSDO in class CanOpenProxynodeID - FORMAT=hexaindex - FORMAT=HEXAsubindex - FORMAT=HEXAsize - FORMAT=decimal between 0 and 4.newValue - FORMAT=decimalpublic boolean allDevicesBooted()
CanOpenProxyallDevicesBooted in interface BridgeToHardwareallDevicesBooted in class CanOpenProxypublic boolean isCWrapperConnected()
BridgeToHardwareisCWrapperConnected in interface BridgeToHardwareisCWrapperConnected in class CanOpenProxypublic boolean isRealHardware()
isRealHardware in interface BridgeToHardwareisRealHardware in class CanOpenProxypublic void start()
start in interface org.lsst.ccs.framework.HasLifecycleprotected void processCommand(String command)
public boolean isReady(String clientName)
protected void processUnknownCommand(String message)
nodeID - Copyright © 2017 LSST. All rights reserved.