MX Foundation 4
|
Functions | |
uint32 | mxfTxPeriodicScheduleNew (HMXF_CHANNEL channel, HMXF_SCHED *sched) |
uint32 | mxfTxPeriodicScheduleGet (HMXF_CHANNEL channel, HMXF_SCHED *sched) |
uint32 | mxfTxPeriodicScheduleFree (HMXF_SCHED sched) |
uint32 | mxfTxPeriodicScheduleMsgAdd (HMXF_SCHED sched, uint64 period, uint64 phase, HMXF_SCHED_MSG *msg) |
uint32 | mxfTxPeriodicScheduleMsgCountGet (HMXF_SCHED sched, uint64 *count) |
uint32 | mxfTxPeriodicScheduleMsgListGet (HMXF_SCHED sched, uint64 maxCount, uint64 *count, HMXF_SCHED_MSG *msg) |
uint32 | mxfTxPeriodicScheduleMsgResume (HMXF_SCHED_MSG msg) |
uint32 | mxfTxPeriodicScheduleMsgSuspend (HMXF_SCHED_MSG msg) |
uint32 | mxfTxPeriodicScheduleMsgStatus (HMXF_SCHED_MSG msg, uint64 *status) |
uint32 | mxfTxPeriodicScheduleBufferListAdd (HMXF_SCHED_MSG msg, uint64 count, uint64 delay, HMXF_BUFFER *buffer) |
uint32 | mxfTxPeriodicScheduleSingleMsgAdd (HMXF_SCHED sched, uint64 period, uint64 phase, HMXF_BUFFER buffer, HMXF_SCHED_MSG *msg) |
uint32 | mxfTxPeriodicScheduleResume (HMXF_SCHED sched) |
uint32 | mxfTxPeriodicScheduleRun (HMXF_SCHED sched) |
uint32 | mxfTxPeriodicScheduleRunMulti (uint64 count, HMXF_SCHED *sched) |
uint32 | mxfTxPeriodicScheduleSuspend (HMXF_SCHED sched) |
uint32 | mxfTxPeriodicScheduleStatus (HMXF_SCHED sched, uint64 *status) |
uint32 mxfTxPeriodicScheduleNew | ( | HMXF_CHANNEL | channel, |
HMXF_SCHED * | sched | ||
) |
Creates a scheduler instance for the specified channel.
A scheduler may contain many messages and each message is built with a list of buffers. Each message has a specific period and phase.
The scheduler service supports a maximum of:
[in] | channel | channel handle. Only ARINC 429, ARINC 708 and CSDB channel classes are supported. |
[out] | sched | scheduler handle. |
uint32 mxfTxPeriodicScheduleGet | ( | HMXF_CHANNEL | channel, |
HMXF_SCHED * | sched | ||
) |
Gets an already created scheduler instance for the specified channel.
A scheduler may contain many messages and each message is built with a list of buffers. Each message has a specific period and phase.
The scheduler service supports a maximum of:
[in] | channel | channel handle. Only ARINC 429, ARINC 708 and CSDB channel classes are supported. |
[out] | sched | scheduler handle. |
uint32 mxfTxPeriodicScheduleFree | ( | HMXF_SCHED | sched | ) |
Stops and frees all the resources of the specified scheduler.
[in] | sched | scheduler handle. |
uint32 mxfTxPeriodicScheduleMsgAdd | ( | HMXF_SCHED | sched, |
uint64 | period, | ||
uint64 | phase, | ||
HMXF_SCHED_MSG * | msg | ||
) |
Adds a message into the specified scheduler. Each message may contain many buffer lists that must be added using the mxfTxPeriodicScheduleBufferListAdd().
[in] | sched | scheduler handle. |
[in] | period | message period formatted accordingly to the process time base resolution (maximum of 15 seconds). Effective period is rounded down to microsecond resolution. |
[in] | phase | message phase based on the beginning time of the schedule, formatted accordingly to the process time base resolution (maximum of 15 seconds). Effective phase is rounded down to microsecond resolution. |
[out] | msg | pointer to an HMXF_SCHED_MSG handle. |
uint32 mxfTxPeriodicScheduleMsgCountGet | ( | HMXF_SCHED | sched, |
uint64 * | count | ||
) |
Returns the count of messages added to the scheduler.
[in] | sched | scheduler handle. |
[out] | count | number of messages. |
uint32 mxfTxPeriodicScheduleMsgListGet | ( | HMXF_SCHED | sched, |
uint64 | maxCount, | ||
uint64 * | count, | ||
HMXF_SCHED_MSG * | msg | ||
) |
Returns the list of messages for the specified scheduler.
[in] | sched | scheduler handle. |
[in] | maxCount | maximum number of messages to return in msg |
[out] | count | actual number of messages returned in msg |
[out] | msg | pointer to an array of maxCount HMXF_SCHED_MSG. |
uint32 mxfTxPeriodicScheduleMsgResume | ( | HMXF_SCHED_MSG | msg | ) |
Resumes the periodic transmission of a message attached to the scheduler.
[in] | msg | scheduler message handle. |
uint32 mxfTxPeriodicScheduleMsgSuspend | ( | HMXF_SCHED_MSG | msg | ) |
Suspends the specified scheduler message.
[in] | msg | scheduler message handle. |
uint32 mxfTxPeriodicScheduleMsgStatus | ( | HMXF_SCHED_MSG | msg, |
uint64 * | status | ||
) |
Gets the state of the specified scheduler message.
[in] | msg | scheduler message handle. | ||||||||
[out] | status | message state.
|
uint32 mxfTxPeriodicScheduleBufferListAdd | ( | HMXF_SCHED_MSG | msg, |
uint64 | count, | ||
uint64 | delay, | ||
HMXF_BUFFER * | buffer | ||
) |
Adds a buffer list into the specified scheduler message.
Each buffer of the list is sent back to back and the next buffer list is delayed by the delay value.
mxfTxPeriodicUpdateMsgWrite() must be used to set the data to be transmitted.
[in] | msg | scheduler message handle. |
[in] | count | buffer(s) count (maximum 256). |
[in] | delay | delay between this buffer list and the next formatted accordingly to the process time base resolution (maximum of 15 seconds). Effective delay is rounded down to microsecond resolution. |
[out] | buffer | pointer to a list of HMXF_BUFFER handle. |
uint32 mxfTxPeriodicScheduleSingleMsgAdd | ( | HMXF_SCHED | sched, |
uint64 | period, | ||
uint64 | phase, | ||
HMXF_BUFFER | buffer, | ||
HMXF_SCHED_MSG * | msg | ||
) |
Adds a single message to the specified scheduler.
[in] | sched | scheduler handle. |
[in] | period | period formatted accordingly to the process time base resolution (maximum of 15 seconds). Effective period is rounded down to microsecond resolution. |
[in] | phase | message phase based on the beginning time of the schedule, formatted accordingly to the process time base resolution (maximum of 15 seconds). Effective phase is rounded down to microsecond resolution. |
[in] | buffer | handle of buffer to schedule. |
[out] | msg | pointer to an HMXF_SCHED_MSG handle |
uint32 mxfTxPeriodicScheduleResume | ( | HMXF_SCHED | sched | ) |
Resumes the periodic transmission of a scheduler that was suspended.
[in] | sched | scheduler handle. |
uint32 mxfTxPeriodicScheduleRun | ( | HMXF_SCHED | sched | ) |
Starts the transmission(s) for the specified scheduler.
[in] | sched | scheduler handle. |
uint32 mxfTxPeriodicScheduleRunMulti | ( | uint64 | count, |
HMXF_SCHED * | sched | ||
) |
Starts synchronously the transmission(s) for a list of specified schedulers.
[in] | count | number of scheduler to start in the scheduler array. |
[in] | sched | array of scheduler handles. |
uint32 mxfTxPeriodicScheduleSuspend | ( | HMXF_SCHED | sched | ) |
Suspends the periodic transmission of a scheduler.
[in] | sched | scheduler handle. |
uint32 mxfTxPeriodicScheduleStatus | ( | HMXF_SCHED | sched, |
uint64 * | status | ||
) |
Gets the state of the specified scheduler.
[in] | sched | scheduler handle. | ||||||||
[out] | status | scheduler state.
|