MPIControlProcessMap

Declaration

typedef struct MPIControlProcessMap {
    /* Mapping */
    const MPIControlSubSampleMap  *motionMap; 
    const MPIControlSubSampleMap  *axisMap;
    const MPIControlSubSampleMap  *motorMap;
    const MPIControlSubSampleMap  *mechaWareMap;

/* Ordering */ const MPIControlObjectEvalOrder *motionOrder; const MPIControlObjectEvalOrder *axisOrder; const MPIControlObjectEvalOrder *motorOrder; const MPIControlObjectEvalOrder *mechaWareOrder; } MPIControlProcessMap;

 

Required Header: mpithread.h

Change History: Added in 04.00.

Description

MPIControlProcessMap specifies object sub-sampling and object evaluation ordering for a motion controller.

motionMap The sub-sampling map for motion supervisor objects.

If motionMap is NULL, motion supervisors are configured for no sub-sampling.

axisMap The sub-sampling map for axis objects. If axisMap is NULL, axis objects are configured for the same sub-sampling configuration as motion supervisor objects.
motorMap The sub-sampling map for motor and filter objects. If motorMap is NULL, motor and filter objects are configured for the same sub-sampling configuration as axis objects.
mechaWareMap The sub-sampling map for MechaWare objects. If mechaWareMap is NULL, MechaWare objects are configured for the same sub-sampling configuration as motion supervisor objects.
motionOrder The object evaluation order for motion supervisor objects. If motionOrder is NULL, the default evaluation order will apply (object[0] is evaluated first, object[1] is evauated second, and so on).
axisOrder The object evaluation order for axis objects. If axisOrder is NULL, axis objects are configured for the same object evaluation order configuration as motion supervisor objects.
motorOrder The object evaluation order for motor and filter objects. If motorOrder is NULL, motor and filter objects are configured for the same object evaluation order configuration as axis objects.
mechaWareOrder The object evaluation order for MechaWare objects. If mechaWareOrder is NULL, MechaWare objects are configured for the same object evaluation order configuration as motion supervisor objects.

Sample Code

/* Reset sub-sampling and object
   evaluation order to default values
*/
void resetSubSampling(MPIControl control)
{
    MPIControlProcessMap    processMap =
        {
            NULL,

            /* All maps are initialized to NULL.
                This means no sub-sampling will occur.
            */

            /* All orders are initialized to NULL.
                This means deafult ordering applies
                to all objects
            */
        };

    MPIControlConfig       config;
    MPI_RESULT             returnValue;


    returnValue =
        mpiControlConfigGet(control, &config);
    msgCHECK(returnValue);

    config.processMap = processMap;

    returnValue =
        mpiControlConfigSet(control, &config);
    msgCHECK(returnValue);
}

See Also

MPIControlConfig | MPIControlSubSampleMap | MPIControlObjectEvalOrder