#ifndef __MVS_ENC_ENUM_H__ #define __MVS_ENC_ENUM_H__ #ifndef MVS_ENC_HT_TRGCONTROL_ #define MVS_ENC_HT_TRGCONTROL_ typedef struct MVS_ENC_HT_TRGCONTROL { unsigned int EncoderType : 4; //0:DIFF, 1:TTL, 2:Virtual Encoder unsigned int EncoderCh : 4; //Encoder CH (0~3) unsigned int Multi : 4; //Encoder Multi(1:x1, 2:x2, 4:x4) unsigned int CondFactor : 4; //0:DI0 ~ 6:DI6, 7:High, 8:Low unsigned int TriggerOutputOperator : 4; //0:AND, 1:OR, 2:XOR, 3:NAND unsigned int EncoderResetFactor : 4; //0:DISABLE, 1:DI0 ~ 7:DI6, 8:CW, 9:CCW unsigned int PositionDirection : 4; //0:DISABLE, 1:Positive, 2:Negative, 3:Bi-Direction unsigned int Temp : 2; unsigned int Correction : 1; //0:DISABLE, 1:ENABLE unsigned int TriggerBase : 1; //0:COUNT, 1:POSITION } MVS_ENC_HT_TRGCONTROL; typedef enum MVS_ENC_HT_TRGCONTROL_TRIGGERBASE { TRIGGERBASE_COUNT = 0x00, TRIGGERBASE_POSITION = 0x01 }MVS_ENC_HT_TRGCONTROL_TRIGGERBASE; typedef enum MVS_ENC_HT_TRGCONTROL_CORRECTION { CORRECTION_DISABLE = 0x00, CORRECTION_ENABLE = 0x01 } MVS_ENC_HT_TRGCONTROL_CORRECTION; typedef enum MVS_ENC_HT_TRGCONTROL_POSITIONDIRECTION { POSITIONDIRECTION_DISABLE = 0x00, POSITIONDIRECTION_POSITIVE = 0x01, POSITIONDIRECTION_NEGATIVE = 0x02, POSITIONDIRECTION_BIDIRECTION = 0x03 } MVS_ENC_HT_TRGCONTROL_POSITIONDIRECTION; typedef enum MVS_ENC_HT_TRGCONTROL_ENCODERRESETFACTOR { ENCODERRESETFACTOR_DISABLE = 0x00, ENCODERRESETFACTOR_DI0 = 0x01, ENCODERRESETFACTOR_DI1 = 0x02, ENCODERRESETFACTOR_DI2 = 0x03, ENCODERRESETFACTOR_DI3 = 0x04 } MVS_ENC_HT_TRGCONTROL_ENCODER_ENCODERRESETFACTOR; typedef enum MVS_ENC_HT_TRGCONTROL_TRIGGEROUT { TRIGGEROUT_AND = 0x00, TRIGGEROUT_OR = 0x01, TRIGGEROUT_XOR = 0x02, TRIGGEROUT_NAND = 0x03, } MVS_ENC_HT_TRGCONTROL_ENCODER_TRIGGEROUT; typedef enum MVS_ENC_HT_TRGCONTROL_CONDITIONFACTOR { CONDITIONFACTOR_DI0 = 0x00, CONDITIONFACTOR_DI1 = 0x01, CONDITIONFACTOR_DI2 = 0x02, CONDITIONFACTOR_DI3 = 0x03, CONDITIONFACTOR_HIGH = 0x04, CONDITIONFACTOR_LOW = 0x05, } MVS_ENC_HT_TRGCONTROL_CONDITIONFACTOR; typedef enum MVS_ENC_HT_TRGCONTROL_MULTI { MULTI_MultiX1 = 0, MULTI_MultiX2 = 1, MULTI_MultiX4 = 2 } MVS_ENC_HT_TRGCONTROL_MULTI; typedef enum MVS_ENC_HT_TRGCONTROL_ENCODERCHANNEL { ENCODERCHANNEL_ENCODER0 = 0x00, ENCODERCHANNEL_ENCODER1 = 0x01, ENCODERCHANNEL_ENCODER2 = 0x02, ENCODERCHANNEL_ENCODER3 = 0x03, } MVS_ENC_HT_TRGCONTROL_ENCODERCHANNEL; typedef enum MVS_ENC_HT_TRGCONTROL_ENCODERTYPE { ENCODERTYPE_DIFF = 0x00, ENCODERTYPE_TTL = 0x01, ENCODERTYPE_Virtual = 0x02 } MVS_ENC_HT_TRGCONTROL_ENCODERTYPE; #endif #endif