Class EPICS_V4_PV

java.lang.Object
org.epics.archiverappliance.engine.pv.EPICS_V4_PV
All Implemented Interfaces:
PV, org.epics.pva.client.ClientChannelListener, org.epics.pva.client.MonitorListener

public class EPICS_V4_PV extends Object implements PV, org.epics.pva.client.ClientChannelListener, org.epics.pva.client.MonitorListener
  • Method Details

    • getName

      public String getName()
      Specified by:
      getName in interface PV
      Returns:
      Returns the name.
    • addListener

      public void addListener(PVListener listener)
      Description copied from interface: PV
      Add a new listener.
      Specified by:
      addListener in interface PV
      Parameters:
      listener - PVListener
      See Also:
    • removeListener

      public void removeListener(PVListener listener)
      Description copied from interface: PV
      Remove a listener.
      Specified by:
      removeListener in interface PV
      Parameters:
      listener - PVListener
    • start

      public void start() throws Exception
      Description copied from interface: PV
      Start the PV: connect, get meta data, subscribe to updates, invoke PVListener for incoming values, ...
      Specified by:
      start in interface PV
      Throws:
      Exception -  
      See Also:
    • stop

      public void stop()
      Description copied from interface: PV
      Stop the PV: disconnect, ... When the PV is no longer needed, one should 'stop' it to release resources.
      Specified by:
      stop in interface PV
    • isRunning

      public boolean isRunning()
      Specified by:
      isRunning in interface PV
      Returns:
      Returns true between start() and stop().
    • isConnected

      public boolean isConnected()
      Specified by:
      isConnected in interface PV
      Returns:
      Returns true when connected. While isRunning, we are subscribed for value updates, but we might still be disconnected, at least temporarily.
    • connectionState

      public PVConnectionState connectionState()
      Specified by:
      connectionState in interface PV
      Returns:
    • getArchDBRTypes

      public ArchDBRTypes getArchDBRTypes()
      Description copied from interface: PV
      get the archive DBR types for this pv
      Specified by:
      getArchDBRTypes in interface PV
      Returns:
      ArchDBRTypes  
    • getLatestMetadata

      public HashMap<String,String> getLatestMetadata()
      Description copied from interface: PV
      Combine the metadata from various sources and return the latest copy.
      Specified by:
      getLatestMetadata in interface PV
      Returns:
      HashMap  
    • updateTotalMetaInfo

      public void updateTotalMetaInfo() throws IllegalStateException
      Description copied from interface: PV
      Do a caget and update the metadata that is cached in the PV.
      Specified by:
      updateTotalMetaInfo in interface PV
      Throws:
      IllegalStateException -  
    • getHostName

      public String getHostName()
      Specified by:
      getHostName in interface PV
    • getLowLevelChannelInfo

      public void getLowLevelChannelInfo(List<Map<String,String>> statuses)
      Description copied from interface: PV
      Get any low level info as a displayable list; this is typically meant for debugging purposes.. Add these to as key value pairs to the statuses
      Specified by:
      getLowLevelChannelInfo in interface PV
    • channelStateChanged

      public void channelStateChanged(org.epics.pva.client.PVAChannel channel, org.epics.pva.client.ClientChannelState clientChannelState)
      Specified by:
      channelStateChanged in interface org.epics.pva.client.ClientChannelListener
    • handleMonitor

      public void handleMonitor(org.epics.pva.client.PVAChannel channel, BitSet changes, BitSet overruns, org.epics.pva.data.PVAStructure data)
      Specified by:
      handleMonitor in interface org.epics.pva.client.MonitorListener
    • getTotalMetaInfo

      public MetaInfo getTotalMetaInfo()
      get the meta info for this pv
      Specified by:
      getTotalMetaInfo in interface PV
      Returns:
      MetaInfo
    • sampleWrittenIntoStores

      public void sampleWrittenIntoStores()
      Description copied from interface: PV
      This method is called each time the ArchiveChannel has written changed a DBRTimeEvent into the buffers.
      Specified by:
      sampleWrittenIntoStores in interface PV
    • aboutToWriteBuffer

      public void aboutToWriteBuffer(DBRTimeEvent lastEvent)
      Updates field values when about to write to the buffer.
      Specified by:
      aboutToWriteBuffer in interface PV
      Parameters:
      lastEvent - Last event got.
    • addMetaField

      public void addMetaField(String fieldName)
      Add a meta field to archive along with the value.
      Parameters:
      fieldName - Name of the meta field.