V4 Standard Properties and Events

From EPICSWIKI
Revision as of 17:53, 9 May 2005 by AndrewJohnson (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This page is being used to develop the standard subscription events and related property hierarchies that we expect EPICS V4 servers and clients to use.

Properties

I'll start by going through the 'leaf' property names and their meanings. The hierarchies will be documented later under events.

These initial properties don't necessarily match what Marty and/or Jeff have in mind...

value

This is a scalar or n-dimensional array of any of the basic types.

Q: Should array values use a different property name?


timeStamp

An epicsTimeStamp.

Note: This may have a subproperty at some sites that further describes the event that caused the value: beam type etc.


alarmSeverity

Alarm severity, an enum {None, Minor, Major, Invalid}.

Q: Did we add Offline to this?


alarmStatus

Alarm status, a string.

Q: Do we hide status string compression stuff from the user, or instead make it a special kind of enum that keeps getting longer?


limits: upper, lower

A pair of scalars of the same basic type as the associated value they are subproperties of.

Limits value pairs are used for various properties:

controlLimits

Range of values over which the user can easily change the value, for graphical controls.

convertLimits

Raw to Engineering units conversion process (this might not really be a standard property).

displayLimits

Expected range the value will lie within, for graphical displays of value.


alarmLimits

Marty has these replicating the current "high, low, severity" pattern repeated for an inner and outer range, but I wonder if we couldn't simplify this whole area into just minorAlarmLimits and majorAlarmLimits and drop the severity thing completely. This could reduce the complexity of the code in lots of places.


units

A string containing the units description text of the associated value and limits properties.


choices

An array of strings containing the choice text for each of the enumerated choices of the associated value.


Catalogs

This section documents the standard property hierarchies, giving each one a property catalog name.

alarmCatalog

  • alarmSeverity
  • alarmStatus


valueCatalog

  • value
  • timeStamp
  • alarmSeverity
  • alarmStatus


guiCatalog

This deliberately does not contain the value. It does seem a bit big though, can we split it up a bit?

  • choices
  • units
  • displayLimits
  • majorAlarmLimits
  • minorAlarmLimits
  • controlLimits


Events

value

Posts a valueCatalog


archive

Assuming we still want this, it posts a valueCatalog


alarm

gui change