• All Implemented Interfaces:
    PV, org.epics.pvaccess.client.ChannelGetRequester, org.epics.pvaccess.client.ChannelRequester, org.epics.pvdata.monitor.MonitorRequester, org.epics.pvdata.pv.Requester

    public class EPICS_V4_PV
    extends Object
    implements PV, org.epics.pvaccess.client.ChannelGetRequester, org.epics.pvaccess.client.ChannelRequester, org.epics.pvdata.monitor.MonitorRequester
    • Method Detail

      • getName

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

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

        public void removeListener​(PVListener listener)
        Description copied from interface: PV
        Remove a listener.
        Specified by:
        removeListener in interface PV
        listener - PVListener
      • 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 true between start() and stop().
      • isConnected

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

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

        public void markPVHasMetafields​(boolean hasMetaField)
        Description copied from interface: PV
        Making this PV as having metafields or not If the PV has metafields, then internal state is created to maintain the latest values of these metafields.
        Specified by:
        markPVHasMetafields in interface PV
        hasMetaField -  
      • setMetaFieldParentPV

        public void setMetaFieldParentPV​(PV parentPV,
                                         boolean isRuntimeOnly)
        Description copied from interface: PV
        Set the "parent" PV for this meta field pv. The data from this PV is stored as a metafield in the parentPV.
        Specified by:
        setMetaFieldParentPV in interface PV
        parentPV - - Store data from this PV as a metafield in the parentPV.
        isRuntimeOnly - - Only store values in the runtime hashMaps.
      • updataMetaFieldValue

        public void updataMetaFieldValue​(String pvName,
                                         String fieldValue)
        Description copied from interface: PV
        Update the value in the parent pv hashmaps for this field
        Specified by:
        updataMetaFieldValue in interface PV
        pvName - this meta field pv 's name - this is the full PV names - for example, a:b:c.HIHI
        fieldValue - - this meta field pv's value as a string.
      • 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
      • 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
      • getRequesterName

        public String getRequesterName()
        Specified by:
        getRequesterName in interface org.epics.pvdata.pv.Requester
      • message

        public void message​(String message,
                            org.epics.pvdata.pv.MessageType mtype)
        Specified by:
        message in interface org.epics.pvdata.pv.Requester
      • monitorConnect

        public void monitorConnect​(org.epics.pvdata.pv.Status status,
                                   org.epics.pvdata.monitor.Monitor channelMonitor,
                                   org.epics.pvdata.pv.Structure structure)
        Specified by:
        monitorConnect in interface org.epics.pvdata.monitor.MonitorRequester
      • monitorEvent

        public void monitorEvent​(org.epics.pvdata.monitor.Monitor monitor)
        Specified by:
        monitorEvent in interface org.epics.pvdata.monitor.MonitorRequester
      • unlisten

        public void unlisten​(org.epics.pvdata.monitor.Monitor monitor)
        Specified by:
        unlisten in interface org.epics.pvdata.monitor.MonitorRequester
      • channelCreated

        public void channelCreated​(org.epics.pvdata.pv.Status status,
                                   org.epics.pvaccess.client.Channel createdChannel)
        Specified by:
        channelCreated in interface org.epics.pvaccess.client.ChannelRequester
      • channelStateChange

        public void channelStateChange​(org.epics.pvaccess.client.Channel channelChangingState,
                                       org.epics.pvaccess.client.Channel.ConnectionState connectionStatus)
        Specified by:
        channelStateChange in interface org.epics.pvaccess.client.ChannelRequester
      • channelGetConnect

        public void channelGetConnect​(org.epics.pvdata.pv.Status status,
                                      org.epics.pvaccess.client.ChannelGet channelGet,
                                      org.epics.pvdata.pv.Structure arg2)
        Specified by:
        channelGetConnect in interface org.epics.pvaccess.client.ChannelGetRequester
      • getDone

        public void getDone​(org.epics.pvdata.pv.Status status,
                            org.epics.pvaccess.client.ChannelGet arg1,
                            org.epics.pvdata.pv.PVStructure pvStructure,
                            org.epics.pvdata.misc.BitSet arg3)
        Specified by:
        getDone in interface org.epics.pvaccess.client.ChannelGetRequester
      • getTotalMetaInfo

        public MetaInfo getTotalMetaInfo()
        get the meta info for this pv
        Specified by:
        getTotalMetaInfo in interface PV
      • 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