Example #1
0
def CreateModelVariableEnum(enum_name, enum_desc, member_data):

    def getDesc(self):
        return self._enum_desc

    def getMemberDesc(self, name):
        return self._member_desc[name]

    values = OrderedDict()
    descriptions = OrderedDict()

    for name, value, desc in member_data:
        values[name] = value
        descriptions[name] = desc

    obj = IntEnum(enum_name, values)
    obj._enum_desc = enum_desc
    obj._member_desc = descriptions
    obj.getDesc = types.MethodType(getDesc, obj)
    obj.getMemberDesc = types.MethodType(getMemberDesc, obj)

    return obj