MPICommandParams
Definition
typedef union {
struct { /* *'dst' = 'value' */
MPICommandAddress dst;
MPICommandConstant value;
MPIControl control; /* Ignored by Sequence */
} assign;
struct { /* branch to 'label' on 'expr' */
char *label; /* NULL => stop sequence */
MPICommandExpr expr; /* expr.oper => MPICommandOperatorLogical */
MPIControl control; /* Ignored by Sequence */
} branch;
struct { /* branch to 'label' on MPIEventMask('handle') 'oper' 'mask' */
char *label; /* NULL => stop sequence */
MPIHandle handle; /* [MPIMotor|MPIMotion|...] */
MPICommandOperator oper; /* EQUAL/NOT_EQUAL/BIT_CLEAR/BIT_SET */
MPIEventMask mask; /* MPIEventMask('handle') 'oper' 'mask' */
} branchEvent;
struct { /* branch to 'label' on Io.input 'oper' 'mask' */
char *label; /* NULL => stop sequence */
MPIIoType type; /* MOTOR, USER */
MPIIoSource source; /* MPIMotor index */
MPICommandOperator oper; /* EQUAL/NOT_EQUAL/BIT_CLEAR/BIT_SET */
long mask; /* [motor|user]Io.input 'oper' 'mask' */
} branchIO;
struct { /* *'dst' = 'expr' */
MPICommandAddress dst;
MPICommandExpr expr; /* expr.oper => MPICommandOperatorArithmetic */
MPIControl control; /* Ignored by Sequence */
} compute;
struct { /* Io.output = Io.output 'oper' 'mask' */
MPIIoType type; /* MOTOR, USER */
MPIIoSource source; /* MPIMotor index */
MPICommandOperator oper; /* AND/OR/XOR */
long mask;
} computeIO;
struct { /* memcpy(dst, src, count) */
void *dst;
void *src;
long count;
MPIControl control; /* Ignored by Sequence */
} copy;
double delay; /* seconds */
struct {
long value; /* MPIEventStatus.type = MPIEventTypeEXTERNAL */
/*.source = MPISequence/MPIProgram */
/*.info[0] = value */
} event;
struct { /* mpiMotion[Abort|EStop|Reset|Resume|Start|Stop](motion[, type, params]) */
MPICommandMotion motionCommand;
MPIMotion motion;
MPIMotionType type; /* MPICommandMotionSTART */
union {
MPICommandMotionPointToPointParams pointToPoint;
MPICommandMotionVelocityParams velocity;
} params;
} move;
struct { /* wait until 'expr' */
MPICommandExpr expr; /* expr.oper => MPICommandOperatorLogical */
MPIControl control; /* Ignored by Sequence */
} wait;
struct { /* wait until MPIEventMask('handle') 'oper' 'mask' */
MPIHandle handle; /* [MPIMotor|MPIMotion|...] */
MPICommandOperator oper; /* EQUAL/NOT_EQUAL/BIT_CLEAR/BIT_SET */
MPIEventMask mask; /* MPIEventMask('handle') 'oper' 'mask' */
} waitEvent;
struct { /* wait until Io.input 'oper' 'mask' */
MPIIoType type; /* MOTOR, USER */
MPIIoSource source; /* MPIMotor index */
MPICommandOperator oper; /* EQUAL/NOT_EQUAL/BIT_CLEAR/BIT_SET */
long mask; /* [motor|user]Io.input 'oper' 'mask' */
} waitIO;
} MPICommandParams;
Description
MPICommandParams holds the parameters used by an MPICommand. Each element in the MPICommandParams union corresponds to different types of commands (specified by the MPICommandType enumeration).
|
|---|
See Also
MPICommand | MPICommandType | mpiCommandCreate | mpiCommandParams
