Package org.scictrl.csshell.epics.server
Interface Application
- All Known Implementing Classes:
AbstractApplication
,AbstractCyclingApplication
,ArchiveCounterApplication
,ArrayAssemblyApplication
,ArrayBufferApplication
,CyclingApplication
,CyclingApplicationMaster
,DelayStateMachine
,DeviceGroupApplication
,DeviceTableApplication
,DummyStateMachine
,EmbeddedApplicationServer
,FeedbackLoopApplication
,FeedbackLoopMicrotron
,ITestCyclingApplication
,OperationModeStateMachine
,OrbitCheckApplication
,OrbitServerApplication
,PowerSupply
,ProcessManagerApplication
,ProcessManagerGroupApplication
,PSRampingTaskApplication
,PSSwitchApplication
,RunningCounterApplication
,ScanApplication
,SequenceStateMachine
,StateMachine
,StepOptimizationApplication
,SteppingFeedbackLoopApplication
,ValueLevelAlarmApplication
,ValueStateMachine
,WaveformSumApplication
,WigglerRampApplication
public interface Application
Application interface.
- Author:
- igor@scictrl.com
-
Method Summary
Modifier and TypeMethodDescriptionvoid
activate()
Application has now reference to Database.void
Configures the internals of this application, provides reference to configuration with root inside applications tag.fullRecordName
(String name) fullRecordName.getName()
getName.Return configured Record instance with prepared ValueProcessor.String[]
Returns array of record names.Record[]
Return array of configured Record instances with prepared ValueProcessor.void
initialize
(Database database) initialize.boolean
Activate has been called, application has reference to Database.boolean
Returns true if this application is capable of creating new records when asked to.
-
Method Details
-
fullRecordName
fullRecordName.
-
configure
Configures the internals of this application, provides reference to configuration with root inside applications tag. Server structure is not yet initialized, so does not have reference to Database, the Database reference will be available during activate call.- Parameters:
name
- aString
objectconfig
- configuration with room inside application tag.
-
getRecord
Return configured Record instance with prepared ValueProcessor. Ofnull
if record with this name does not exist. By default a full PV name of returned record should consist of name of application with appended name of the record.- Parameters:
name
- the record name, appended to application name makes full record name (PV name)- Returns:
- a record with this name or
null
-
getRecords
Record[] getRecords()Return array of configured Record instances with prepared ValueProcessor.- Returns:
- an array of records
-
getRecordNames
String[] getRecordNames()Returns array of record names. Important: these are not full PV names, just prefixes valid within context of the application.- Returns:
- array of application relative record names.
-
isDynamicRecordCreator
boolean isDynamicRecordCreator()Returns true if this application is capable of creating new records when asked to. Applications which return true, will be asked if they have record, when a EPICS request with PV name arrives and beginning of PV name matches with application name.- Returns:
- a boolean
-
getName
String getName()getName.
- Returns:
- a
String
object
-
initialize
initialize.
- Parameters:
database
- aDatabase
object
-
activate
void activate()Application has now reference to Database. Application 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 application that records has been loaded and linking to other values can be commenced. -
isActivated
boolean isActivated()Activate has been called, application has reference to Database.- Returns:
- if
true
application has been activated
-