{
    "type": "record",
    "name": "AlarmActivationUnion",
    "namespace": "org.jlab.jaws.entity",
    "doc": "An alarm activation",
    "fields": [
        {
            "name": "msg",
            "type": [
                {
                    "type": "record",
                    "name": "SimpleAlarming",
                    "doc": "Alarming state for a simple alarm, if record is present then alarming, if missing/tombstone then not.  There are no fields.",
                    "fields": []
                },
                {
                    "type": "record",
                    "name": "NoteAlarming",
                    "doc": "Alarming state for an alarm with an extra information string.",
                    "fields": [
                        {
                            "name": "note",
                            "type": {
                                "type": "string",
                                "avro.java.string": "String"
                            },
                            "doc": "The extra information about this active alarm"
                        }
                    ]
                },
                {
                    "type": "record",
                    "name": "EPICSAlarming",
                    "doc": "EPICS alarming state",
                    "fields": [
                        {
                            "name": "sevr",
                            "type": {
                                "type": "enum",
                                "name": "SevrEnum",
                                "doc": "Enumeration of possible EPICS .SEVR values",
                                "symbols": [
                                    "NO_ALARM",
                                    "MINOR",
                                    "MAJOR",
                                    "INVALID"
                                ]
                            },
                            "doc": "Alarming state (EPICS .SEVR field)"
                        },
                        {
                            "name": "stat",
                            "type": {
                                "type": "enum",
                                "name": "StatEnum",
                                "doc": "Enumeration of possible EPICS .STAT values",
                                "symbols": [
                                    "NO_ALARM",
                                    "READ",
                                    "WRITE",
                                    "HIHI",
                                    "HIGH",
                                    "LOLO",
                                    "LOW",
                                    "STATE",
                                    "COS",
                                    "COMM",
                                    "TIMEOUT",
                                    "HW_LIMIT",
                                    "CALC",
                                    "SCAN",
                                    "LINK",
                                    "SOFT",
                                    "BAD_SUB",
                                    "UDF",
                                    "DISABLE",
                                    "SIMM",
                                    "READ_ACCESS",
                                    "WRITE_ACCESS"
                                ]
                            },
                            "doc": "Alarming status (EPICS .STAT field)"
                        }
                    ]
                }
            ],
            "doc": "Union of active alarm implementations"
        }
    ]
}
