com.cosylab.epics.caj.cas.util
Class MemoryProcessVariable

java.lang.Object
  extended by gov.aps.jca.cas.ProcessVariable
      extended by com.cosylab.epics.caj.cas.util.MemoryProcessVariable

public class MemoryProcessVariable
extends gov.aps.jca.cas.ProcessVariable

Memory (what you write is what you get) process variable implementation. Implementation does not handle status, severity and alarms.


Field Summary
protected  int count
          PV count.
protected  String[] enumLabels
          Array of labels for enum type PV.
protected  Number lowerAlarmLimit
          Lower alarm limit.
protected  Number lowerCtrlLimit
          Lower control limit.
protected  Number lowerDispLimit
          Lower display value.
protected  Number lowerWarningLimit
          Lower warning limit.
protected  short precision
          Precision.
protected  gov.aps.jca.dbr.TimeStamp timestamp
          Timestamp of set value.
protected  gov.aps.jca.dbr.DBRType type
          PV type.
protected  String units
          Units (for value).
protected  Number upperAlarmLimit
          Upper alarm limit.
protected  Number upperCtrlLimit
          Upper control limit.
protected  Number upperDispLimit
          Upper display limit.
protected  Number upperWarningLimit
          Upper warning limit.
protected  Object value
          PV value.
 
Fields inherited from class gov.aps.jca.cas.ProcessVariable
ackS, ackT, channelCount, eventCallback, interest, name
 
Constructor Summary
MemoryProcessVariable(String name, gov.aps.jca.cas.ProcessVariableEventCallback eventCallback, gov.aps.jca.dbr.DBRType type, Object initialValue)
          Constructor of memory process variable.
 
Method Summary
 void fillInDBR(gov.aps.jca.dbr.DBR value)
          Set data (units, limits, ...) to DBR.
 int getDimensionSize(int dimension)
           
 String[] getEnumLabels()
           
 Number getLowerAlarmLimit()
          Get lower alarm limit.
 Number getLowerCtrlLimit()
          Get lower control limit.
 Number getLowerDispLimit()
          Get lower display limit.
 Number getLowerWarningLimit()
          Get lower warning limit.
 short getPrecision()
          Get precision (number of digits after decimal point).
 gov.aps.jca.dbr.DBRType getType()
           
 String getUnits()
          Get units (of value).
 Number getUpperAlarmLimit()
          Get upper alarm limit.
 Number getUpperCtrlLimit()
          Get upper control limit.
 Number getUpperDispLimit()
          Get upper display limit.
 Number getUpperWarningLimit()
          Get upper warning limit.
 gov.aps.jca.CAStatus read(gov.aps.jca.dbr.DBR value, gov.aps.jca.cas.ProcessVariableReadCallback asyncReadCallback)
          Read value.
 void setEnumLabels(String[] labels)
          Set labens.
 void setLowerAlarmLimit(Number lowerAlarmLimit)
          Set lower alarm limit.
 void setLowerCtrlLimit(Number lowerCtrlLimit)
          Set lower control limit.
 void setLowerDispLimit(Number lowerDispLimit)
          Set lower display limit.
 void setLowerWarningLimit(Number lowerWarningLimit)
          Set lower warning limit.
 void setPrecision(short precision)
          Set precision.
 void setUnits(String units)
          Set units (of value).
 void setUpperAlarmLimit(Number upperAlarmLimit)
          Set upper alarm limit.
 void setUpperCtrlLimit(Number upperCtrlLimit)
          Set upper control limit.
 void setUpperDispLimit(Number upperDispLimit)
          Set upper display limit.
 void setUpperWarningLimit(Number upperWarningLimit)
          Set upper warning limit.
 gov.aps.jca.CAStatus write(gov.aps.jca.dbr.DBR value, gov.aps.jca.cas.ProcessVariableWriteCallback asyncWriteCallback)
          Write value.
 
Methods inherited from class gov.aps.jca.cas.ProcessVariable
createChannel, destroy, getAckS, getEventCallback, getMaxDimension, getName, interestDelete, interestRegister, isAckT, printInfo, printInfo, registerChannel, setAckS, setAckT, setEventCallback, unregisterChannel
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

type

protected gov.aps.jca.dbr.DBRType type
PV type.


value

protected Object value
PV value.


count

protected int count
PV count.


timestamp

protected gov.aps.jca.dbr.TimeStamp timestamp
Timestamp of set value.


units

protected String units
Units (for value).


upperDispLimit

protected Number upperDispLimit
Upper display limit.


lowerDispLimit

protected Number lowerDispLimit
Lower display value.


upperAlarmLimit

protected Number upperAlarmLimit
Upper alarm limit.


upperWarningLimit

protected Number upperWarningLimit
Upper warning limit.


lowerWarningLimit

protected Number lowerWarningLimit
Lower warning limit.


lowerAlarmLimit

protected Number lowerAlarmLimit
Lower alarm limit.


upperCtrlLimit

protected Number upperCtrlLimit
Upper control limit.


lowerCtrlLimit

protected Number lowerCtrlLimit
Lower control limit.


precision

protected short precision
Precision. Used for floating decimal value to string conversion.


enumLabels

protected String[] enumLabels
Array of labels for enum type PV.

Constructor Detail

MemoryProcessVariable

public MemoryProcessVariable(String name,
                             gov.aps.jca.cas.ProcessVariableEventCallback eventCallback,
                             gov.aps.jca.dbr.DBRType type,
                             Object initialValue)
Constructor of memory process variable.

Parameters:
name - name of the PV.
eventCallback - event callback, where to report value changes if interest is true.
type - type of the PV (of initial value).
initialValue - initial value, array is expected.
Method Detail

getType

public gov.aps.jca.dbr.DBRType getType()
Specified by:
getType in class gov.aps.jca.cas.ProcessVariable
See Also:
ProcessVariable.getType()

getDimensionSize

public int getDimensionSize(int dimension)
Overrides:
getDimensionSize in class gov.aps.jca.cas.ProcessVariable
See Also:
ProcessVariable.getDimensionSize(int)

getLowerAlarmLimit

public Number getLowerAlarmLimit()
Get lower alarm limit.

Returns:
lower alarm limit, non-null.

setLowerAlarmLimit

public void setLowerAlarmLimit(Number lowerAlarmLimit)
Set lower alarm limit.

Parameters:
lowerAlarmLimit - lower alarm limit, non-null.

getLowerCtrlLimit

public Number getLowerCtrlLimit()
Get lower control limit.

Returns:
lower control limit, non-null.

setLowerCtrlLimit

public void setLowerCtrlLimit(Number lowerCtrlLimit)
Set lower control limit.

Parameters:
lowerCtrlLimit - lower control limit, non-null.

getLowerDispLimit

public Number getLowerDispLimit()
Get lower display limit.

Returns:
lower display limit, non-null.

setLowerDispLimit

public void setLowerDispLimit(Number lowerDispLimit)
Set lower display limit.

Parameters:
lowerDispLimit - lower display limit, non-null.

getLowerWarningLimit

public Number getLowerWarningLimit()
Get lower warning limit.

Returns:
lower warning limit, non-null.

setLowerWarningLimit

public void setLowerWarningLimit(Number lowerWarningLimit)
Set lower warning limit.

Parameters:
lowerWarningLimit - lower warning limit, non-null.

getUnits

public String getUnits()
Get units (of value).

Returns:
get units, non-null.

setUnits

public void setUnits(String units)
Set units (of value).

Parameters:
units - get units, non-null.

getUpperAlarmLimit

public Number getUpperAlarmLimit()
Get upper alarm limit.

Returns:
upper alarm limit, non-null.

setUpperAlarmLimit

public void setUpperAlarmLimit(Number upperAlarmLimit)
Set upper alarm limit.

Parameters:
upperAlarmLimit - upper alarm limit, non-null.

getUpperCtrlLimit

public Number getUpperCtrlLimit()
Get upper control limit.

Returns:
upper control limit, non-null.

setUpperCtrlLimit

public void setUpperCtrlLimit(Number upperCtrlLimit)
Set upper control limit.

Parameters:
upperCtrlLimit - upper control limit, non-null.

getUpperDispLimit

public Number getUpperDispLimit()
Get upper display limit.

Returns:
upper display limit, non-null.

setUpperDispLimit

public void setUpperDispLimit(Number upperDispLimit)
Set upper display limit.

Parameters:
upperDispLimit - upper display limit, non-null.

getUpperWarningLimit

public Number getUpperWarningLimit()
Get upper warning limit.

Returns:
upper warning limit, non-null.

setUpperWarningLimit

public void setUpperWarningLimit(Number upperWarningLimit)
Set upper warning limit.

Parameters:
upperWarningLimit - upper warning limit, non-null.

getPrecision

public short getPrecision()
Get precision (number of digits after decimal point). Use -1 value as undefined precision.

Returns:
precision.

setPrecision

public void setPrecision(short precision)
Set precision.

Parameters:
precision - precision to set (number of digits after decimal point).
See Also:
getPrecision()

getEnumLabels

public String[] getEnumLabels()
Overrides:
getEnumLabels in class gov.aps.jca.cas.ProcessVariable
See Also:
ProcessVariable.getEnumLabels()

setEnumLabels

public void setEnumLabels(String[] labels)
Set labens.

Parameters:
labels - the labels to set
See Also:
ProcessVariable.getEnumLabels()

read

public gov.aps.jca.CAStatus read(gov.aps.jca.dbr.DBR value,
                                 gov.aps.jca.cas.ProcessVariableReadCallback asyncReadCallback)
                          throws gov.aps.jca.CAException
Read value. Fills-in DBR, sets timestamp (time when value was written) and copies value from local memory (array). No status and severity (alarms) are set - to be done in fillInDBR method (extending it).

Specified by:
read in class gov.aps.jca.cas.ProcessVariable
Throws:
gov.aps.jca.CAException
See Also:
ProcessVariable.read(gov.aps.jca.dbr.DBR, gov.aps.jca.cas.ProcessVariableReadCallback)

fillInDBR

public void fillInDBR(gov.aps.jca.dbr.DBR value)
Set data (units, limits, ...) to DBR. Data is obtained from this class accessors.

Parameters:
value - DBR to fill-in.

write

public gov.aps.jca.CAStatus write(gov.aps.jca.dbr.DBR value,
                                  gov.aps.jca.cas.ProcessVariableWriteCallback asyncWriteCallback)
                           throws gov.aps.jca.CAException
Write value. Copies given value to local memory (array). If event interest flag interest is set, an event is fired to eventCallback.

Specified by:
write in class gov.aps.jca.cas.ProcessVariable
Throws:
gov.aps.jca.CAException
See Also:
ProcessVariable.write(gov.aps.jca.dbr.DBR, gov.aps.jca.cas.ProcessVariableWriteCallback)


Copyright © 2004-2013 Cosylab. All Rights Reserved.