Class ScannedArchiveChannel
java.lang.Object
org.epics.archiverappliance.engine.model.ArchiveChannel
org.epics.archiverappliance.engine.model.ScannedArchiveChannel
- All Implemented Interfaces:
Runnable
An ArchiveChannel that stores value in a periodic scan.
- Version:
- Initial version:CSS, 4-Jun-2012, Luofeng Li:added codes to support for the new archiver
- Author:
- Kay Kasemir
-
Field Summary
Fields inherited from class org.epics.archiverappliance.engine.model.ArchiveChannel
lastDBRTimeEvent, latestDBRTimeEvent, pvMetrics, SAVE_META_DATA_PERIOD_SECS -
Constructor Summary
ConstructorsConstructorDescriptionScannedArchiveChannel(String name, Writer writer, int buffer_capacity, Instant last_timeestamp, double scan_period, ConfigService configservice, ArchDBRTypes archdbrtype, String controlPVname, int commandThreadID, boolean usePVAccess) -
Method Summary
Modifier and TypeMethodDescriptionfinal doubleprotected booleanhandleNewValue(DBRTimeEvent timeevent) Called for each value received from PV.voidrun()Methods inherited from class org.epics.archiverappliance.engine.model.ArchiveChannel
aboutToWriteBuffer, addValueToBuffer, getConnectedMetaChannelCount, getControlPVname, getCurrentCopyOfMetaFields, getHostName, getJCACommandThreadID, getLastArchivedValue, getLatestMetadata, getLowLevelChannelStateInfo, getMetaChannelCount, getMetaPVNames, getName, getPVData, getPVMetrics, getSampleBuffer, getSecondsElapsedSinceSearchRequest, getWriter, handleDisconnected, initializeMetaFieldPVS, isConnected, isMetaPVConnected, isPaused, metaChannelsNeedStartingUp, reset, setlastRotateLogsEpochSeconds, setPaused, shutdownMetaChannels, start, startUpMetaChannels, stop, toString, updateMetadataOnceADay
-
Constructor Details
-
ScannedArchiveChannel
public ScannedArchiveChannel(String name, Writer writer, int buffer_capacity, Instant last_timeestamp, double scan_period, ConfigService configservice, ArchDBRTypes archdbrtype, String controlPVname, int commandThreadID, boolean usePVAccess) throws Exception - Parameters:
name- pv's namewriter- the writer for this pvbuffer_capacity- the sample buffer's capacity for this pvlast_timeestamp- the last time stamp when this pv was archivedscan_period-configservice- the configservice of new archiverarchdbrtype- the archiving dbr typecontrolPVname- the pv's name who control this pv to start archiving or stop archivingcommandThreadID- - this is the index into the array of JCA command threads that processes this context.usePVAccess- - Should we use PVAccess to connect to this PV.- Throws:
Exception- error when creating archive channel for this pv- See Also:
-
-
Method Details
-
getPeriod
public final double getPeriod()- Returns:
- Scan period in seconds
-
getMechanism
- Specified by:
getMechanismin classArchiveChannel- Returns:
- Short description of sample mechanism
-
handleNewValue
Description copied from class:ArchiveChannelCalled for each value received from PV.Base class remembers the
most_recent_value, and asserts that one 'first' sample is archived. Derived class must callsuper().- Overrides:
handleNewValuein classArchiveChannel- Parameters:
timeevent- DBRTimeEvent- Returns:
- true if the value was already written because it's the first value after startup or error, so there's no need to write that sample again.
- Throws:
Exception-
-
run
public void run()
-