Package xal.ca

Class ChannelRecordImpl

java.lang.Object
xal.ca.ChannelRecordImpl
All Implemented Interfaces:
ChannelRecord
Direct Known Subclasses:
ChannelStatusRecordImpl, Epics7ChannelRecord

public class ChannelRecordImpl extends Object implements ChannelRecord
ChannelRecord is a wrapper for the value returned by a get operation on a Channel. It a provides convenience methods for getting data back as one of many primitive types.
Author:
tap
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected ArrayValue
    internal data storage
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructor
  • Method Summary

    Modifier and Type
    Method
    Description
    Convert the store from a raw value to a processed value.
    Get the internal storage.
    byte[]
    Get the data converted to a byte array.
    byte
    Get the data converted to a scalar byte.
    byte
    byteValueAt(int index)
    Get the value of the array element identified by the index and convert it to a byte.
    double[]
    Get the data converted to a double array.
    double
    Get the data converted to a scalar double.
    double
    doubleValueAt(int index)
    Get the value of the array element identified by the index and convert it to a double.
    float[]
    Get the data converted to a float array.
    float
    Get the data converted to a scalar float.
    float
    floatValueAt(int index)
    Get the value of the array element identified by the index and convert it to a float.
    int
    Get the number of elements in the array value.
    Get the native type of the data as a Java class.
    int[]
    Get the data converted to a int array.
    int
    Get the data converted to a scalar int.
    int
    intValueAt(int index)
    Get the value of the array element identified by the index and convert it to a int.
    long[]
    Get the data converted to a long array.
    long
    Get the data converted to a scalar long.
    long
    longValueAt(int index)
    Get the value of the array element identified by the index and convert it to a long.
    short[]
    Get the data converted to a short array.
    short
    Get the data converted to a scalar short.
    short
    shortValueAt(int index)
    Get the value of the array element identified by the index and convert it to a short.
    Get the data converted to a string array.
    Get the data converted to a scalar string.
    stringValueAt(int index)
    Get the value of the array element identified by the index and convert it to a string.
    Override toString to return a representation of the data as an array.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • store

      protected ArrayValue store
      internal data storage
  • Constructor Details

    • ChannelRecordImpl

      public ChannelRecordImpl(ValueAdaptor adaptor)
      Constructor
      Parameters:
      adaptor - from which to generate a record
  • Method Details

    • getCount

      public int getCount()
      Get the number of elements in the array value.
      Specified by:
      getCount in interface ChannelRecord
      Returns:
      The length of the array.
    • getType

      public Class<?> getType()
      Get the native type of the data as a Java class.
      Specified by:
      getType in interface ChannelRecord
      Returns:
      The native type of the data.
    • byteValue

      public byte byteValue()
      Get the data converted to a scalar byte. If the data is an array the the value of the first element is converted to a byte and returned.
      Specified by:
      byteValue in interface ChannelRecord
      Returns:
      The data as a scalar byte.
    • byteValueAt

      public byte byteValueAt(int index)
      Get the value of the array element identified by the index and convert it to a byte.
      Specified by:
      byteValueAt in interface ChannelRecord
      Parameters:
      index - The index of the array element to get.
      Returns:
      The data element at the index as a scalar byte.
    • byteArray

      public byte[] byteArray()
      Get the data converted to a byte array.
      Specified by:
      byteArray in interface ChannelRecord
      Returns:
      The data as a byte array.
    • shortValue

      public short shortValue()
      Get the data converted to a scalar short. If the data is an array the the value of the first element is converted to a short and returned.
      Specified by:
      shortValue in interface ChannelRecord
      Returns:
      The data as a scalar short.
    • shortValueAt

      public short shortValueAt(int index)
      Get the value of the array element identified by the index and convert it to a short.
      Specified by:
      shortValueAt in interface ChannelRecord
      Parameters:
      index - The index of the array element to get.
      Returns:
      The data element at the index as a scalar short.
    • shortArray

      public short[] shortArray()
      Get the data converted to a short array.
      Specified by:
      shortArray in interface ChannelRecord
      Returns:
      The data as a short array.
    • intValue

      public int intValue()
      Get the data converted to a scalar int. If the data is an array the the value of the first element is converted to a int and returned.
      Specified by:
      intValue in interface ChannelRecord
      Returns:
      The data as a scalar int.
    • intValueAt

      public int intValueAt(int index)
      Get the value of the array element identified by the index and convert it to a int.
      Specified by:
      intValueAt in interface ChannelRecord
      Parameters:
      index - The index of the array element to get.
      Returns:
      The data element at the index as a scalar int.
    • intArray

      public int[] intArray()
      Get the data converted to a int array.
      Specified by:
      intArray in interface ChannelRecord
      Returns:
      The data as a int array.
    • longValue

      public long longValue()
      Get the data converted to a scalar long. If the data is an array the the value of the first element is converted to a long and returned.
      Specified by:
      longValue in interface ChannelRecord
      Returns:
      The data as a scalar long.
    • longValueAt

      public long longValueAt(int index)
      Get the value of the array element identified by the index and convert it to a long.
      Specified by:
      longValueAt in interface ChannelRecord
      Parameters:
      index - The index of the array element to get.
      Returns:
      The data element at the index as a scalar long.
    • longArray

      public long[] longArray()
      Get the data converted to a long array.
      Specified by:
      longArray in interface ChannelRecord
      Returns:
      The data as a long array.
    • floatValue

      public float floatValue()
      Get the data converted to a scalar float. If the data is an array the the value of the first element is converted to a float and returned.
      Specified by:
      floatValue in interface ChannelRecord
      Returns:
      The data as a scalar float.
    • floatValueAt

      public float floatValueAt(int index)
      Get the value of the array element identified by the index and convert it to a float.
      Specified by:
      floatValueAt in interface ChannelRecord
      Parameters:
      index - The index of the array element to get.
      Returns:
      The data element at the index as a scalar float.
    • floatArray

      public float[] floatArray()
      Get the data converted to a float array.
      Specified by:
      floatArray in interface ChannelRecord
      Returns:
      The data as a float array.
    • doubleValue

      public double doubleValue()
      Get the data converted to a scalar double. If the data is an array the the value of the first element is converted to a double and returned.
      Specified by:
      doubleValue in interface ChannelRecord
      Returns:
      The data as a scalar double.
    • doubleValueAt

      public double doubleValueAt(int index)
      Get the value of the array element identified by the index and convert it to a double.
      Specified by:
      doubleValueAt in interface ChannelRecord
      Parameters:
      index - The index of the array element to get.
      Returns:
      The data element at the index as a scalar double.
    • doubleArray

      public double[] doubleArray()
      Get the data converted to a double array.
      Specified by:
      doubleArray in interface ChannelRecord
      Returns:
      The data as a double array.
    • stringValue

      public String stringValue()
      Get the data converted to a scalar string. If the data is an array the the value of the first element is converted to a string and returned.
      Specified by:
      stringValue in interface ChannelRecord
      Returns:
      The data as a scalar string.
    • stringValueAt

      public String stringValueAt(int index)
      Get the value of the array element identified by the index and convert it to a string.
      Specified by:
      stringValueAt in interface ChannelRecord
      Parameters:
      index - The index of the array element to get.
      Returns:
      The data element at the index as a scalar string.
    • stringArray

      public String[] stringArray()
      Get the data converted to a string array.
      Specified by:
      stringArray in interface ChannelRecord
      Returns:
      The data as a string array.
    • toString

      public String toString()
      Override toString to return a representation of the data as an array.
      Specified by:
      toString in interface ChannelRecord
      Overrides:
      toString in class Object
      Returns:
      A string representation of this object.
    • applyTransform

      public ChannelRecord applyTransform(ValueTransform transform)
      Convert the store from a raw value to a processed value.
      Specified by:
      applyTransform in interface ChannelRecord
      Parameters:
      transform - The transform used to convert the store.
      Returns:
      this instance as a convenience.
    • arrayValue

      public ArrayValue arrayValue()
      Get the internal storage.
      Specified by:
      arrayValue in interface ChannelRecord
      Returns:
      The internal data storage.