OCSEPICS
Class EPICSMechanism

java.lang.Object
  extended by OCSEPICS.EPICSMechanism

 class EPICSMechanism
extends java.lang.Object

This class will be used to store the state of an EPICS mechanism and will generally be shared amongst all actions which are associated with the mechanism so that they are aware if any of the other actions are using the mechanism or an external 3rd party is using the mechanism.

Version:
$Id: EPICSMechanism.java,v 1.2 2006/03/17 14:30:02 cb Exp $
Author:
Craige Bevil

Field Summary
private  java.util.Hashtable<java.lang.String,OCSEPICSConsts.SubactionStateType> MechanismActions
          This is a hashtable of all of the actions which are associated with this mechanism
private  java.lang.String MechanismName
          This is the name of the mechanism
protected  MessageHandler SyslogMessageHandler
          This will be used for reporting information to the syslog
 
Constructor Summary
EPICSMechanism(java.lang.String MechanismName, MessageHandler SyslogMessageHandler)
          Constructor for the class
 
Method Summary
 java.lang.String getMechanismName()
          Returns the name of the mechanism
 void reportUnsolicitedMovement()
          This method will be used to check all of the actions which are associated with a mechanism and if none of them are active, it reports that the mechanism has moved unintentionally (or perhaps been driven by a 3rd party from an EPICS mimic)
 void setActionState(java.lang.String ActionName, OCSEPICSConsts.SubactionStateType ActionState)
          Allows the setting of the action state which is associated with a mechanism
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MechanismActions

private java.util.Hashtable<java.lang.String,OCSEPICSConsts.SubactionStateType> MechanismActions
This is a hashtable of all of the actions which are associated with this mechanism


MechanismName

private java.lang.String MechanismName
This is the name of the mechanism


SyslogMessageHandler

protected MessageHandler SyslogMessageHandler
This will be used for reporting information to the syslog

Constructor Detail

EPICSMechanism

EPICSMechanism(java.lang.String MechanismName,
               MessageHandler SyslogMessageHandler)
Constructor for the class

Parameters:
MechanismName - This is the name of the mechanism
SyslogMessageHandler - A syslog message handler
Method Detail

setActionState

public void setActionState(java.lang.String ActionName,
                           OCSEPICSConsts.SubactionStateType ActionState)
Allows the setting of the action state which is associated with a mechanism

Parameters:
ActionName - The name of the action to set the state of.
ActionState - This is the state of the action

reportUnsolicitedMovement

public void reportUnsolicitedMovement()
This method will be used to check all of the actions which are associated with a mechanism and if none of them are active, it reports that the mechanism has moved unintentionally (or perhaps been driven by a 3rd party from an EPICS mimic)


getMechanismName

public java.lang.String getMechanismName()
Returns the name of the mechanism

Returns:
String The name of the mechanism