'''
 THIS IS A GENERATED FILE, DO NOT EDIT
 BONDZAI
          /"*._         _
      .-*'`    `*-.._.-'/
    < * ))     ,       ( 
      `*-._`._(__.--*"`.\
'''


from enum import Enum


class EventOperationID(Enum):
    EVT_EXT_EXCEPTION = 0x00
    EVT_EXT_DATA_IN = 0x01
    EVT_EXT_CMD_STATUS = 0x100
    EVT_EXT_LOG = 0x101
    EVT_EXT_VM_RESULT = 0x200
    EVT_EXT_ASL_RESULT = 0x201
    EVT_EXT_DATA_TRANSFORM_RESULT = 0x202
    EVT_EXT_DATA_ACQ_RESULT = 0x203
    EVT_EXT_ENROLL_RESULT = 0x204
    EVT_EXT_DATASET_PREPARATION_RESULT = 0x205
    EVT_EXT_TRAINING_RESULT = 0x206
    EVT_EXT_PROCESS_ACK = 0x210
    EVT_EXT_SET_MODE = 0x300
    EVT_EXT_CORRECTION = 0x301
    EVT_EXT_TRIGGER = 0x302
    EVT_EXT_SET_RECORD_MODE = 0x303
    EVT_EXT_LAUNCH_TRAIN = 0x304
    EVT_EXT_KILL = 0x305
    EVT_EXT_CUSTOM_1 = 0xF00
    EVT_EXT_CUSTOM_2 = 0xF01
    EVT_EXT_CUSTOM_3 = 0xF02
    EVT_EXT_CUSTOM_4 = 0xF03
    EVT_EXT_CUSTOM_5 = 0xF04
    EVT_EXT_CUSTOM_6 = 0xF05
    EVT_EXT_CUSTOM_7 = 0xF06
    EVT_EXT_CUSTOM_8 = 0xF07
    EVT_EXT_CUSTOM_9 = 0xF08
    EVT_EXT_CUSTOM_10 = 0xF09
    EVT_INT_EXCEPTION = 0x1000
    EVT_INT_DATA_STORED = 0x1001
    EVT_INT_DISCOVERY = 0x1002
    EVT_INT_TRANSPORT = 0x1003
    EVT_INT_OVERFLOW = 0x1004
    EVT_INT_DATA_UPDATED = 0x1100
    EVT_INT_READY_TO_PREPROC_BATCH = 0x1101
    EVT_INT_PREPROC_BATCH_DONE = 0x1102
    EVT_INT_TRIGGER_NEXT = 0x1103
    EVT_INT_FINAL = 0x1104
    EVT_INT_READY_TO_PREPROC_SINGLE = 0x1105
    EVT_INT_PREPROC_SINGLE_DONE = 0x1106
    EVT_INT_READY_TO_TRAIN = 0x1107
    EVT_INT_READY_TO_INFER = 0x1108
    EVT_INT_CORRECTION_DONE = 0x1109
    EVT_INT_INFER_DONE = 0x1200
    EVT_INT_TRAIN_DONE = 0x1201
    EVT_INT_POSTPROC_DONE = 0x1202
    EVT_INT_ITERATE_DB = 0x1300
    EVT_INT_ITERATE_DONE = 0x1301
    EVT_INT_CUSTOM_1 = 0x1F00
    EVT_INT_CUSTOM_2 = 0x1F01
    EVT_INT_CUSTOM_3 = 0x1F02
    EVT_INT_CUSTOM_4 = 0x1F03
    EVT_INT_YIELD_1 = 0x2000
    EVT_INT_YIELD_2 = 0x2001
    EVT_INT_YIELD_3 = 0x2002
    EVT_INT_YIELD_4 = 0x2003
    EVT_INT_FORCE_TRAIN = 0x3001
    EVT_INT_FORCE_DATA_IN = 0x3002
    EVT_INT_TIMER = 0x4000
    EVT_TRANSIENT_MMS_LOAD = 0xF001
    EVT_TRANSIENT_RAM_LOAD = 0xF002
    EVT_TRANSIENT_FLASH_LOAD = 0xF003
    EVT_MAX = 0xFFFF


class AgentAIMode(Enum):
    APP_AI_MODE_NOT_INIT = -1
    APP_AI_MODE_STANDBY = 0
    APP_AI_MODE_ENROLLEMENT = 1
    APP_AI_MODE_INFERENCE = 2


class AgentAIType(Enum):
    APP_AI_TYPE_NOT_INIT = -1
    APP_AI_TYPE_CLASSIFICATION = 0
    APP_AI_TYPE_REGRESSION = 1


class PPOperationUID(Enum):
    OPS_ID_EXT = 0x80000000
    OPS_ID = 0x00000000
    OP_CUST_MIN = OPS_ID_EXT
    OP_CUST_FIRST = 0x80000100
    OPS_MISC = 0x00000000
    OPS_MATH = 0x01000000
    OPS_DSP = 0x02000000
    OPS_IMG = 0x03000000
    OPS_STR = 0x04000000
    OPS_DBM = 0x05000000
    OPS_PST = 0x0E000000
    OPS_DIST = 0x0F000000
    OPS_UID_CP1D = 0x02
    OPS_UID_CP2D = 0x03
    OPS_UID_CP2X1D = 0x04
    OPS_UID_RMNFIRST1D_F32 = 0x05
    OPS_UID_LOGANF32 = 0x1000001
    OPS_UID_LOGA10F32 = 0x1000002
    OPS_UID_MEANF32 = 0x1000011
    OPS_UID_VARF32 = 0x1000012
    OPS_UID_RESHAPEF32 = 0x1000013
    OPS_UID_HISTOGRAMF32 = 0x1000014
    OPS_UID_VECTORMATRIX_PRODUCTF32 = 0x1000015
    OPS_UID_FLATTENMATRIXF32 = 0x1000016
    OPS_UID_TRANSPOSEMATRIXF32 = 0x1000017
    OPS_UID_SLICEF32 = 0x1000018
    OPS_UID_SLICEMATRIXROWSF32 = 0x1000019
    OPS_UID_SLICEMATRIXCOLSF32 = 0x100001A
    OPS_UID_IPSLICEF32 = 0x100001B
    OPS_UID_IPSLICEMATRIXROWSF32 = 0x100001C
    OPS_UID_IPSLICEMATRIXCOLSF32 = 0x100001D
    OPS_UID_ADD_VECTOR_BUFFERF32 = 0x1000030
    OPS_UID_FFT2048F32 = 0x2000011
    OPS_UID_FFT1024F32 = 0x2000012
    OPS_UID_FFT16F32 = 0x2000018
    OPS_UID_MFCC2048F32 = 0x2000019
    OPS_UID_MFCC1024F32 = 0x200001A
    OPS_UID_MEL2048F32 = 0x2000021
    OPS_UID_MEL1024F32 = 0x2000022
    OPS_UID_MEL16F32 = 0x2000028
    OPS_UID_DCT2048F32 = 0x2000031
    OPS_UID_DCT1024F32 = 0x2000032
    OPS_UID_DCT512F32 = 0x2000033
    OPS_UID_DCT256F32 = 0x2000034
    OPS_UID_DCT128F32 = 0x2000035
    OPS_UID_NOISEMIXF32 = 0x2000061
    OPS_UID_PWSPANF32 = 0x2000062
    OPS_UID_DCT2D = 0x3000001
    OPS_UID_RGB_TO_GRAYF32 = 0x3000002
    OPS_UID_PUSHSIG2DBM = 0x5000001
    OPS_UID_PST_BYPASS = 0xE000001
    OPS_UID_PST_EXT = 0x8E000001


class CommandOperationID(Enum):
    CMD_OPEN_SESSION = 0x00
    CMD_CLOSE_SESSION = 0x01
    CMD_SET = 0x100
    CMD_GET = 0x101
    CMD_DELETE = 0x102
    CMD_OPEN = 0x200
    CMD_CLOSE = 0x201
    CMD_WRITE = 0x202
    CMD_READ = 0x203
    CMD_START = 0x300
    CMD_STOP = 0x301
    CMD_SUBSCRIBE = 0x401
    CMD_UNSUBSCRIBE = 0x402


class LogCommandParameter(Enum):
    LOG_NB_KPIS = 6


class DBMCommandParameter(Enum):
    DBM_PARAM_INFO = 0x0000
    DBM_TABLE_ADDRESS_VM = 0x1000
    DBM_TABLE_ADDRESS_LBL = 0x1001
    DBM_TABLE_ADDRESS_DAT = 0x1002
    DBM_TABLE_ADDRESS_KEY = 0x1003
    DBM_TABLE_ADDRESS_CTX = 0x1004


class DBMAttributesVM(Enum):
    DBM_ATT_VM_DESC = 0x00
    DBM_ATT_VM_PREPROC_GRAPH_TRAIN = 0x01
    DBM_ATT_VM_PREPROC_GRAPH_INFER = 0x02
    DBM_ATT_VM_PREPROC_GRAPH_OTHER = 0x03
    DBM_ATT_VM_DEEPLOMATH = 0x04
    DBM_ATT_VM_POSTPROC = 0x05
    DBM_ATT_VM_PREPROC_GRAPH_FEATURE_EXTRACTION = 0x06
    DBM_ATT_VM_PREPROC_GRAPH_BACKGROUND_AUGMENTATION = 0x07
    DBM_ATT_VM_PREPROC_GRAPH_DATA_AUGMENTATION = 0x08
    DBM_ATT_VM_PREPROC_GRAPH_DATA_TRANSFORM = 0x09


class LogCommand(Enum):
    LOG_GET_KPI = 0x1100


class DBMCommand(Enum):
    DBM_EXPORT = 0x100
    DBM_EXPORT_ROW = 0x200
    DBM_IMPORT_ROW = 0x201
    DBM_DELETE_ROW = 0x202
    DBM_CHECK_POINT = 0x300
    DBM_RESTORE = 0x301
    DBM_DEL_CHECK_POINT = 0x302
    DBM_GET_CHECK_POINT = 0x303
    DBM_CREATE_TABLE = 0x400
    DBM_DELETE_TABLE = 0x401


class DBMTable(Enum):
    DBM_VM = 0x00
    DBM_LBL = 0x01
    DBM_DAT = 0x02
    DBM_KEY = 0x03
    DBM_CTX = 0x04
    DBM_SIG = 0x05
    DBM_GEN = 0x06
    DBM_TABLE_END = 0x07


class AgentTriggerType(Enum):
    TRIGGER_ON = 16
    TRIGGER_OFF = 17


class AgentRecordMode(Enum):
    DAVINSY_RECORD_OFF = 0
    DAVINSY_RECORD_BACKGROUND = 1
    DAVINSY_RECORD_SUBJECT = 2


class AgentFlowSteps(Enum):
    DATA_ACQUISITION = 1
    DATA_TRANSFORM = 2
    ENROLLEMENT = 3
    INFERENCE = 4
    DATASET_PREPARATION = 5
    TRAINING = 6


class MessageModule(Enum):
    BLD = 0x00
    COM = 0x01
    DBM = 0x02
    DLM = 0x03
    LOG = 0x04
    MAL = 0x05
    MMS = 0x06
    OTA = 0x07
    PRE = 0x08
    PST = 0x09
    RUN = 0x0A
    UTI = 0x0B
    UNK = 0x0C


class PPParam(Enum):
    OP_PARAM = 0x90000000
    OP_INOUT = 0xA0000000
    OP_INOUT_EMPTY = 0xA0000000
    OP_INOUT_MEMNEED = 0xA0000001
    OP_INOUT_VECT1DLEN = 0xA0000002
    OP_INOUT_VECT2DLEN = 0xA0000003
    OP_INOUT_VECT2X1DLEN = 0xA0000004
    OP_INOUT_VECT1D = 0xA0000011
    OP_INOUT_VECT2D = 0xA0000012
    OP_INOUT_VECT2X1D = 0xA0000013
    OP_PARAM_TYPE_PREPROC = 0x90001000
    OP_PARAM_TYPE_POSTPROC = 0x90002000
    OP_PARAM_TYPE_DIST = 0x90003000
    OP_PARAM_TYPE_RUN = 0x90004000
    OP_PARAM_TYPE_MISC = 0x90008000
    OP_PARAM_HPF = 0x90001001
    OP_PARAM_LPF = 0x90001002
    OP_PARAM_BPF = 0x90001003
    OP_PARAM_BSF = 0x90001004
    OP_PARAM_FFT = 0x90001101
    OP_PARAM_MFCC = 0x90001102
    OP_PARAM_MEL = 0x90001103
    OP_PARAM_DCT = 0x90001104
    OP_PARAM_DCT_2D = 0x90001105
    OP_PARAM_HIST = 0x90001106
    OP_PARAM_NOISEMIX = 0x90001301
    OP_PARAM_PWSPAN = 0x90001302
    OP_PARAM_COMPRESS = 0x90001402
    OP_PARAM_MATRIX = 0x90001403
    OP_PARAM_PRIVATE_TO_MATRIX = 0x90001410
    OP_PARAM_PRIVATE_TO_VECTOR = 0x90001411
    OP_PARAM_PRIVATE_TO_MATRIX_WITHBUFFERS = 0x90001412
    OP_PARAM_PRIVATE_TO_VECTOR_WITHBUFFERS = 0x90001413
    OP_PARAM_EMPTY = 0x90008000
    OP_PARAM_MODE = 0x90008001
    OP_PARAM_REMOVENFIRST = 0x90008003
    OP_PARAM_SHAPE = 0x90008005
    OP_PARAM_SLICE = 0x90008006
    OP_PARAM_WITHBUFFERS = 0x90008007


class KPITypes(Enum):
    KPI_FREE = 0
    KPI_TRAINING_TIME_START = 1
    KPI_TRAINING_TIME_STOP = 2
    KPI_TRAINING_DATASET_SIZE = 3
    KPI_TRAINING_NET_SIZE = 4
    KPI_TRAINING_WM_SIZE = 5
    KPI_INFER_TIME_START = 6
    KPI_INFER_TIME_STOP = 7
    KPI_INFER_WM_SIZE = 8
    KPI_PREPROC_TIME_START = 9
    KPI_PREPROC_TIME_STOP = 10
    KPI_PREPROC_I_TIME_START = 11
    KPI_PREPROC_I_TIME_STOP = 12
    KPI_POSTPROC_TIME_START = 13
    KPI_POSTPROC_TIME_STOP = 14
    KPI_OTHER_TIME_START = 15
    KPI_OTHER_TIME_STOP = 16
    KPI_SIZE_BYTE = 17
    KPI_SIZE_KBYTE = 18
    KPI_QI = 19
    KPI_OTHER_FLOAT = 20
    KPI_TRAINING_NET_LAYERS = 21


class RUNCommandParameter(Enum):
    RUN_PARAM_BREAK = 0x0100
    RUN_PARAM_APPS = 0x0200
    RUN_PARAM_OPS = 0x0300
    RUN_PARAM_EVQ_TIMEOUT = 0x0400


class MALCommandParameter(Enum):
    MAL_PARAM_NB_THREADS = 0x0100
    MAL_PARAM_DATA_SOURCES = 0x0200
    MAL_PARAM_LIFE_CYCLE = 0x0300
    MAL_PARAM_NVM_FILE = 0x8100
    MAL_PARAM_CLEAR_NVM = 0x8200
    MAL_PARAM_MONITORING = 0x2000


class BLDCommandParameter(Enum):
    BLD_PARAM_LINUX_LIB_NAMES = 0x8000
    BLD_PARAM_LINUX_PYTHON_SCRIPT_NAME = 0x8001
    BLD_PARAM_CORTEXM_INIT_DONE = 0x8002
    BLD_PARAM_AG_ID = 0x8003
    BLD_PARAM_LICENCE_STATUS = 0x8004


class ErrorCode(Enum):
    COM_ERR_NUMBER_BAD_SOURCE = 0x01000001
    MEM_WARN_BUFFER_OVERFLOW = 0x02000001
    PROCESS_WARN_TRAIN_EXCEPTION = 0x03000001
    PROCESS_WARN_TRAIN_EMPTY_DATASET = 0x03000002


