text: #
  # PySNMP MIB module ANS-ALARM-MIB (http://snmplabs.com/pysmi)
  # ASN.1 source file:///Users/davwang4/Dev/mibs.snmplabs.com/asn1/ANS-ALARM-MIB
  # Produced by pysmi-0.3.4 at Wed May  1 11:22:40 2019
  # On host DAVWANG4-M-1475 platform Darwin version 18.5.0 by user davwang4
  # Using Python version 3.7.3 (default, Mar 27 2019, 09:23:15) 
  #
  RowStatus, mlpmpR115, DateAndTime = mibBuilder.importSymbols("ANS-COMMON-MIB", "RowStatus", "mlpmpR115", "DateAndTime")
  OctetString, Integer, ObjectIdentifier = mibBuilder.importSymbols("ASN1", "OctetString", "Integer", "ObjectIdentifier")
  NamedValues, = mibBuilder.importSymbols("ASN1-ENUMERATION", "NamedValues")
  ConstraintsIntersection, SingleValueConstraint, ValueRangeConstraint, ValueSizeConstraint, ConstraintsUnion = mibBuilder.importSymbols("ASN1-REFINEMENT", "ConstraintsIntersection", "SingleValueConstraint", "ValueRangeConstraint", "ValueSizeConstraint", "ConstraintsUnion")
  ModuleCompliance, NotificationGroup = mibBuilder.importSymbols("SNMPv2-CONF", "ModuleCompliance", "NotificationGroup")
  Bits, Unsigned32, MibIdentifier, Gauge32, NotificationType, ObjectIdentity, Counter64, Integer32, ModuleIdentity, Counter32, TimeTicks, IpAddress, MibScalar, MibTable, MibTableRow, MibTableColumn, iso = mibBuilder.importSymbols("SNMPv2-SMI", "Bits", "Unsigned32", "MibIdentifier", "Gauge32", "NotificationType", "ObjectIdentity", "Counter64", "Integer32", "ModuleIdentity", "Counter32", "TimeTicks", "IpAddress", "MibScalar", "MibTable", "MibTableRow", "MibTableColumn", "iso")
  DisplayString, TextualConvention = mibBuilder.importSymbols("SNMPv2-TC", "DisplayString", "TextualConvention")
  eventAndAlarm = MibIdentifier((1, 3, 6, 1, 4, 1, 193, 96, 115, 2))
  event = MibIdentifier((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 1))
  log = MibIdentifier((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 2))
  alarmSeverityAssignment = MibIdentifier((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 3))
  currentAlarm = MibIdentifier((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 4))
  class AlarmSeverity(Integer32):
      subtypeSpec = Integer32.subtypeSpec + ConstraintsUnion(SingleValueConstraint(0, 1, 2, 3, 4, 5))
      namedValues = NamedValues(("indeterminate", 0), ("critical", 1), ("major", 2), ("minor", 3), ("warning", 4), ("cleared", 5))
  
  class AlarmType(Integer32):
      subtypeSpec = Integer32.subtypeSpec + ConstraintsUnion(SingleValueConstraint(0, 1, 2, 3, 4, 5))
      namedValues = NamedValues(("undefined", 0), ("communications", 1), ("qos", 2), ("processing", 3), ("equipment", 4), ("environmental", 5))
  
  class InstancePointer(ObjectIdentifier):
      pass
  
  eventTable = MibTable((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 1, 1), )
  if mibBuilder.loadTexts: eventTable.setStatus('mandatory')
  if mibBuilder.loadTexts: eventTable.setDescription('A list of events that may be generated by the agent. Entries is a set of parameters that describe an event to be generated when certain conditions are met')
  eventEntry = MibTableRow((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 1, 1, 1), ).setIndexNames((0, "ANS-ALARM-MIB", "eventIndex"))
  if mibBuilder.loadTexts: eventEntry.setStatus('mandatory')
  if mibBuilder.loadTexts: eventEntry.setDescription('')
  eventIndex = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 1, 1, 1, 1), Integer32().subtype(subtypeSpec=ValueRangeConstraint(1, 65535))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: eventIndex.setStatus('mandatory')
  if mibBuilder.loadTexts: eventIndex.setDescription('An index that uniquely identifies an entry in the event table. Each such entry defines one event that is to be generated when the appropriate conditions occur.')
  eventName = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 1, 1, 1, 2), DisplayString().subtype(subtypeSpec=ValueSizeConstraint(0, 127))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: eventName.setStatus('mandatory')
  if mibBuilder.loadTexts: eventName.setDescription('The name of the associated event, normally the name of the associated trap.')
  eventTreatment = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 1, 1, 1, 3), Integer32().subtype(subtypeSpec=ConstraintsUnion(SingleValueConstraint(1, 2, 3, 4))).clone(namedValues=NamedValues(("none", 1), ("log", 2), ("snmp-trap", 3), ("log-and-trap", 4)))).setMaxAccess("readwrite")
  if mibBuilder.loadTexts: eventTreatment.setStatus('mandatory')
  if mibBuilder.loadTexts: eventTreatment.setDescription('Defines how the system shall treat this event. In the case of log, an entry is made in the log table for each event. In the case of snmp-trap, an SNMP trap is sent to one or more management stations.')
  eventCommunity = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 1, 1, 1, 4), DisplayString().subtype(subtypeSpec=ValueSizeConstraint(0, 127))).setMaxAccess("readwrite")
  if mibBuilder.loadTexts: eventCommunity.setStatus('mandatory')
  if mibBuilder.loadTexts: eventCommunity.setDescription('If an SNMP trap is to be sent, it will be sent to the SNMP community specified by this octet string.')
  eventLastTimeSent = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 1, 1, 1, 5), DateAndTime()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: eventLastTimeSent.setStatus('mandatory')
  if mibBuilder.loadTexts: eventLastTimeSent.setDescription('The value of sysUpTime at the time this event entry last generated an event. If this entry has not generated any events, this value will be zero.')
  eventOwner = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 1, 1, 1, 6), DisplayString().subtype(subtypeSpec=ValueSizeConstraint(0, 127))).setMaxAccess("readwrite")
  if mibBuilder.loadTexts: eventOwner.setStatus('mandatory')
  if mibBuilder.loadTexts: eventOwner.setDescription("The entity that configured this entry and is therefore responsible for its contents. This variable is suggested to contain one or more of the following: IP address, management station name, network manager's name, location, or phone number. In some cases the agent system itself will be the owner of an entry (e.g. prior to a manual configuration of an entry). In these cases, this string shall be set to a string starting with 'monitor'. Note that this variable will only act as a voluntary access control. It does not prevent uncooperative parties from changing an entry of another owner.")
  discriminateNtEvents = MibScalar((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 1, 2), Integer32().subtype(subtypeSpec=ConstraintsUnion(SingleValueConstraint(1, 2))).clone(namedValues=NamedValues(("include", 1), ("exclude", 2)))).setMaxAccess("readwrite")
  if mibBuilder.loadTexts: discriminateNtEvents.setStatus('mandatory')
  if mibBuilder.loadTexts: discriminateNtEvents.setDescription('Indicates whether events generated by an NT shall be discarded or not. include means that NT events shall be shown. exclude means that NT events are hidden when displaying the event log, the current alarm list, and when sending traps.')
  logAdminStatus = MibScalar((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 2, 1), Integer32().subtype(subtypeSpec=ConstraintsUnion(SingleValueConstraint(1, 2))).clone(namedValues=NamedValues(("up", 1), ("down", 2)))).setMaxAccess("readwrite")
  if mibBuilder.loadTexts: logAdminStatus.setStatus('mandatory')
  if mibBuilder.loadTexts: logAdminStatus.setDescription('The administrative status of the log as a whole. Up means that logging shall take place of all events that are to be logged. Down means that no logging of events shall take place.')
  logSize = MibScalar((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 2, 2), Integer32()).setMaxAccess("readwrite")
  if mibBuilder.loadTexts: logSize.setStatus('mandatory')
  if mibBuilder.loadTexts: logSize.setDescription('A configurable maximum size of the log.')
  logTable = MibTable((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 2, 3), )
  if mibBuilder.loadTexts: logTable.setStatus('mandatory')
  if mibBuilder.loadTexts: logTable.setDescription('A list of events that have been logged.')
  logEntry = MibTableRow((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 2, 3, 1), ).setIndexNames((0, "ANS-ALARM-MIB", "logIndex"))
  if mibBuilder.loadTexts: logEntry.setStatus('mandatory')
  if mibBuilder.loadTexts: logEntry.setDescription('')
  logIndex = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 2, 3, 1, 1), Integer32()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: logIndex.setStatus('mandatory')
  if mibBuilder.loadTexts: logIndex.setDescription('An index that uniquely identifies an entry in the log table. The association between a particular event and its logIndex shall remain constant for the life-time of the event in the log.')
  logEventIndex = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 2, 3, 1, 2), Integer32().subtype(subtypeSpec=ValueRangeConstraint(1, 65535))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: logEventIndex.setStatus('mandatory')
  if mibBuilder.loadTexts: logEventIndex.setDescription('The event entry that generated this log entry. The log identified by a particular value of this index is associated with the same eventEntry as identified by the same value of eventIndex.')
  logEventName = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 2, 3, 1, 3), DisplayString().subtype(subtypeSpec=ValueSizeConstraint(0, 127))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: logEventName.setStatus('mandatory')
  if mibBuilder.loadTexts: logEventName.setDescription('The name of the logged event.')
  logEventGeneratingObject = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 2, 3, 1, 4), InstancePointer()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: logEventGeneratingObject.setStatus('mandatory')
  if mibBuilder.loadTexts: logEventGeneratingObject.setDescription('The event generating object. Identifies either a variable in the group of variables belonging to the object, or a row in a table representing the object.')
  logTime = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 2, 3, 1, 5), DateAndTime()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: logTime.setStatus('mandatory')
  if mibBuilder.loadTexts: logTime.setDescription('The time this log entry was created.')
  logEventInformation = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 2, 3, 1, 6), DisplayString().subtype(subtypeSpec=ValueSizeConstraint(0, 255))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: logEventInformation.setStatus('mandatory')
  if mibBuilder.loadTexts: logEventInformation.setDescription('Additional information pin-pointing the cause or origin of the event. For alarms this will contain the same information as the alarmInformation variable of the corresponding alarm trap. For other events the contents of this object is implementation-specific.')
  logEventType = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 2, 3, 1, 7), Integer32().subtype(subtypeSpec=ConstraintsUnion(SingleValueConstraint(1, 2))).clone(namedValues=NamedValues(("alarm", 1), ("other", 2)))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: logEventType.setStatus('mandatory')
  if mibBuilder.loadTexts: logEventType.setDescription('Identifies the type of the event, which may be an alarm event or a regular event. In case of an alarm event additional information can be found in the logAlarmType and logAlarmSeverity.')
  logAlarmType = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 2, 3, 1, 8), AlarmType()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: logAlarmType.setStatus('mandatory')
  if mibBuilder.loadTexts: logAlarmType.setDescription('The type of alarm for the logged alarm event.')
  logAlarmSeverity = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 2, 3, 1, 9), AlarmSeverity()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: logAlarmSeverity.setStatus('mandatory')
  if mibBuilder.loadTexts: logAlarmSeverity.setDescription('The perceived severity of the logged alarm event.')
  alarmSeverityAssignmentTable = MibTable((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 3, 1), )
  if mibBuilder.loadTexts: alarmSeverityAssignmentTable.setStatus('mandatory')
  if mibBuilder.loadTexts: alarmSeverityAssignmentTable.setDescription('Contains entries for alarm severity assignment.')
  alarmSeverityAssignmentEntry = MibTableRow((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 3, 1, 1), ).setIndexNames((0, "ANS-ALARM-MIB", "alarmSeverityIndex"))
  if mibBuilder.loadTexts: alarmSeverityAssignmentEntry.setStatus('mandatory')
  if mibBuilder.loadTexts: alarmSeverityAssignmentEntry.setDescription('')
  alarmSeverityIndex = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 3, 1, 1, 1), Integer32().subtype(subtypeSpec=ValueRangeConstraint(1, 65535))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: alarmSeverityIndex.setStatus('mandatory')
  if mibBuilder.loadTexts: alarmSeverityIndex.setDescription('An index that uniquely identifies an entry in the alarmSeverityAssignmentTable.')
  alarmSeverityAlarmName = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 3, 1, 1, 2), DisplayString().subtype(subtypeSpec=ValueSizeConstraint(0, 127))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: alarmSeverityAlarmName.setStatus('mandatory')
  if mibBuilder.loadTexts: alarmSeverityAlarmName.setDescription('The name of the alarm this entry applies to (also indicates the probable cause of the alarm). The same as the name of the associated alarm trap.')
  alarmSeverityPerceivedSeverity = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 3, 1, 1, 3), AlarmSeverity()).setMaxAccess("readwrite")
  if mibBuilder.loadTexts: alarmSeverityPerceivedSeverity.setStatus('mandatory')
  if mibBuilder.loadTexts: alarmSeverityPerceivedSeverity.setDescription('The perceived severity that shall apply to the associated alarms.')
  numberOfCurrentAlarms = MibScalar((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 4, 1), Integer32()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: numberOfCurrentAlarms.setStatus('mandatory')
  if mibBuilder.loadTexts: numberOfCurrentAlarms.setDescription('Number of currently active alarms in the ANS.')
  currentAlarmTable = MibTable((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 4, 2), )
  if mibBuilder.loadTexts: currentAlarmTable.setStatus('mandatory')
  if mibBuilder.loadTexts: currentAlarmTable.setDescription('A list of currently active alarms in the ANS.')
  currentAlarmEntry = MibTableRow((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 4, 2, 1), ).setIndexNames((0, "ANS-ALARM-MIB", "currentAlarmIndex"))
  if mibBuilder.loadTexts: currentAlarmEntry.setStatus('mandatory')
  if mibBuilder.loadTexts: currentAlarmEntry.setDescription('')
  currentAlarmIndex = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 4, 2, 1, 1), Integer32()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: currentAlarmIndex.setStatus('mandatory')
  if mibBuilder.loadTexts: currentAlarmIndex.setDescription('An index that uniquely identifies an entry in the current alarm table.')
  currentAlarmName = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 4, 2, 1, 2), DisplayString().subtype(subtypeSpec=ValueSizeConstraint(0, 127))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: currentAlarmName.setStatus('mandatory')
  if mibBuilder.loadTexts: currentAlarmName.setDescription('The name of the alarm. Also indicates the probable cause of the alarm.')
  currentAlarmObject = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 4, 2, 1, 3), InstancePointer()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: currentAlarmObject.setStatus('mandatory')
  if mibBuilder.loadTexts: currentAlarmObject.setDescription('The alarming object. Identifies either a variable in the group of variables belonging to the alarming object, or a row in a table representing the alarming object.')
  currentAlarmType = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 4, 2, 1, 4), AlarmType()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: currentAlarmType.setStatus('mandatory')
  if mibBuilder.loadTexts: currentAlarmType.setDescription('The type of alarm.')
  currentAlarmSeverity = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 4, 2, 1, 5), AlarmSeverity()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: currentAlarmSeverity.setStatus('mandatory')
  if mibBuilder.loadTexts: currentAlarmSeverity.setDescription('The perceived severity of the fault.')
  currentAlarmTime = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 4, 2, 1, 6), DateAndTime()).setMaxAccess("readonly")
  if mibBuilder.loadTexts: currentAlarmTime.setStatus('mandatory')
  if mibBuilder.loadTexts: currentAlarmTime.setDescription('The time the fault was detected.')
  currentAlarmInformation = MibTableColumn((1, 3, 6, 1, 4, 1, 193, 96, 115, 2, 4, 2, 1, 7), DisplayString().subtype(subtypeSpec=ValueSizeConstraint(0, 255))).setMaxAccess("readonly")
  if mibBuilder.loadTexts: currentAlarmInformation.setStatus('mandatory')
  if mibBuilder.loadTexts: currentAlarmInformation.setDescription('Additional information pin-pointing the problem. May be a string of zero length.')
  mibBuilder.exportSymbols("ANS-ALARM-MIB", eventTreatment=eventTreatment, AlarmSeverity=AlarmSeverity, alarmSeverityAssignment=alarmSeverityAssignment, eventName=eventName, currentAlarmIndex=currentAlarmIndex, currentAlarmType=currentAlarmType, logEventIndex=logEventIndex, alarmSeverityAssignmentTable=alarmSeverityAssignmentTable, currentAlarmTable=currentAlarmTable, logSize=logSize, currentAlarmSeverity=currentAlarmSeverity, eventAndAlarm=eventAndAlarm, logIndex=logIndex, currentAlarmInformation=currentAlarmInformation, eventEntry=eventEntry, logTime=logTime, currentAlarm=currentAlarm, eventLastTimeSent=eventLastTimeSent, logAlarmSeverity=logAlarmSeverity, alarmSeverityAssignmentEntry=alarmSeverityAssignmentEntry, currentAlarmTime=currentAlarmTime, logAlarmType=logAlarmType, event=event, AlarmType=AlarmType, InstancePointer=InstancePointer, logEventGeneratingObject=logEventGeneratingObject, logEventType=logEventType, logAdminStatus=logAdminStatus, logEntry=logEntry, logEventName=logEventName, currentAlarmName=currentAlarmName, log=log, alarmSeverityIndex=alarmSeverityIndex, eventTable=eventTable, eventCommunity=eventCommunity, discriminateNtEvents=discriminateNtEvents, logEventInformation=logEventInformation, eventIndex=eventIndex, eventOwner=eventOwner, logTable=logTable, alarmSeverityPerceivedSeverity=alarmSeverityPerceivedSeverity, numberOfCurrentAlarms=numberOfCurrentAlarms, currentAlarmObject=currentAlarmObject, alarmSeverityAlarmName=alarmSeverityAlarmName, currentAlarmEntry=currentAlarmEntry)
  