MPIEventData
Declaration
typedef struct MPIEventData { MPIEventType eventType; MPIModuleId objectType; int32_t objectIndex; int32_t sampleCounter; union { MPIEventAxisData axis; MPIEventMotionData motion; MPIEventMotorData motor; MPIEventSequenceData sequence; MPIEventUserLimitData userLimit; MPIEventSynqNetData synqNet; MPIEventCaptureData capture; } data; struct { MPIGeneric64 elem64Bit[MPIEventUSER_DATA_COUNT]; MPIGeneric32 elem32Bit[MPIEventUSER_DATA_COUNT*2]; } userData; } MPIEventData;
Required Header: stdmpi.h
Change History: Added in 04.00.
Description
MPIEventData holds information about a particular event that was generated by the controller.
eventType | The type of event generated by the controller. |
---|---|
module | The type of object the event is associated with. If module is MPIModuleIdMOTION, then a motion supervisor object generated the event. |
objectIndex | The object index that generated the event. |
data | A structure holding additional event-specific information. |
data.axis | A structure holding additional information specific to axis events. |
data.motion | A structure holding additional information specific to motion supervisor events. |
data.motor | A structure holding additional information specific to motor events. |
data.synqNet | A structure holding additional information specific to SynqNet events. |
data.sqNode | A structure holding additional information specific to SqNode events. |
data.recorder | A structure holding additional information specific to recorder events. |
data.probe | A structure holding additional information specific to probe events. |
data.userLimit | A structure holding additional information specific to user limit events. |
data.sampleCounter | The sample counter when an event occurred. |
data.generic | An array of generic 64-bit values associated with an event, recorded when the event occurred. |
userData | A structure holding additional user-specified event-specific information. |
Samlple Code
MPI_RESULT MPI_DECL2 myEventCallback(MPIControl control, const MPIEventData* status, void* userData) { /* print event type and sample counter timestamp to the screen. */ printf("%s event occurred at controller sample %d.\n", mpiEventTypeName(status->eventType), status->data.sampleCounter); }
See Also
MPIControlEventCallback | MPIEventType