Package org.scictrl.csshell.epics.server
Interface ValueProcessor
- All Known Subinterfaces:
PersistentValueProcessor
- All Known Implementing Classes:
AbstractValueProcessor,ANDValueProcessor,CommandValueProcessor,DefaultAlarmProcessor,EnumToBitsProcessor,EnumValueProcessor,ForwardValueProcessor,HeartbeatValueProcessor,HostPingAlarmProcessor,InterlockValueProcessor,LinkedValueProcessor,ListManagementProcessor,ManagementProcessor,MemorySwitchValueProcessor,MemoryValueProcessor,OnDemandValueProcessor,ORValueProcessor,PingManagementProcessor,PolyTransValueProcessor,RunningAverageValueProcessor,SemaphoreProcessor,ShutdownManagementProcessor,SimAlarmProcessor,StateWatchdogProcessor,StatusCheckAlarmProcessor,SummaryAlarmProcessor,SystemProcessWatchdogProcessor,TimeCounterProcessor,TimeValueProcessor,UpdateRateProcessor,ValueCheckProcessor,ValueDiffAlarmProcessor,ValueLevelAlarmProcessor
public interface ValueProcessor
ValueProcessor interface.
- Author:
- igor@scictrl.com
-
Method Summary
Modifier and TypeMethodDescriptionvoidactivate()Record has now reference to Database.voidConfigures the internals of value processor, provides reference to parent record and to configuration with root inside processor tag.getName()getName.getRecord.gov.aps.jca.dbr.TimeStampTimestamp indicates last time value has been updated or confirmed.longReturn trigger interval in milliseconds, which indicates on which interval this processor wants to be processed by Database.gov.aps.jca.dbr.DBRTypegetType()Returns preferred type of the processor.getValue()getValue.voidprocess()Called by Database in interval set by the trigger parameter in milliseconds.voidSets new value to the processor.
-
Method Details
-
configure
Configures the internals of value processor, provides reference to parent record and to configuration with root inside processor tag. Parent record is not yet initialized, so does not have reference to Database, the Database reference will be available during activate call.- Parameters:
record- the parent record.config- configuration with room inside processor tag.
-
setValue
Sets new value to the processor. If value is different from current processor value, then event is fired. Timestamp is updated regardless if value is changed, since timestamp indicates last value update or confirmation.- Parameters:
value- aObjectobject
-
getValue
Object getValue()getValue.
- Returns:
- a
Objectobject
-
getTimestamp
gov.aps.jca.dbr.TimeStamp getTimestamp()Timestamp indicates last time value has been updated or confirmed. This does not necessary means value change.- Returns:
- a
TimeStampobject
-
getTrigger
long getTrigger()Return trigger interval in milliseconds, which indicates on which interval this processor wants to be processed by Database. If trigger is 0 or less, then it means that no processing is required.- Returns:
- update interval in milliseconds or disabled if 0.
-
process
void process()Called by Database in interval set by the trigger parameter in milliseconds. Not called if trigger in 0. -
activate
void activate()Record has now reference to Database. processor might want to connect to other records on this server or PVs on other servers. This can not be done until all records from configuration has been loaded. Call to this method signals to the processor that records has been loaded and linking to other values can be commenced. -
getName
String getName()getName.
- Returns:
- a
Stringobject
-
getRecord
Record getRecord()getRecord.
- Returns:
- a
Recordobject
-
getType
gov.aps.jca.dbr.DBRType getType()Returns preferred type of the processor. Alternatively the processor can inspect actual type of parent record and adopt. This type will overwrite type from record, when record will be initialized with this processor.- Returns:
- the type which processor works with, possibly same as associated record.
-