|
uint32 | mxfCSDBTxAperiodicWrite (HMXF_BUFFER buffer, uint64 options, uint64 startTime, uint64 count, MXF_CSDB_DATAREC *rec) |
|
uint32 | mxfCSDBTxPeriodicUpdateMsgWrite (HMXF_BUFFER buffer, uint64 count, MXF_CSDB_DATAREC *rec) |
|
uint32 | mxfCSDBRxAcqMsgSelectGet (HMXF_BUFFER buffer, uint64 maxCount, uint64 *count, uint64 *labels) |
|
uint32 | mxfCSDBRxAcqMsgSelectSet (HMXF_BUFFER buffer, uint64 select, uint64 count, uint64 *labels) |
|
uint32 | mxfCSDBRxAcqRead (HMXF_BUFFER buffer, uint64 maxRecCount, uint64 maxBytesCount, uint64 *status, uint64 *recCount, uint64 *bytesCount, MXF_CSDB_DATAREC *rec) |
|
uint32 | mxfCSDBRxSamplingExtEnableSet (HMXF_BUFFER buffer, uint64 state, uint64 count, uint64 *labels) |
|
uint32 | mxfCSDBRxSamplingExtEnableAllGet (HMXF_BUFFER buffer, uint64 maxCount, uint64 *count, uint64 *labels) |
|
uint32 | mxfCSDBRxSamplingMsgSelectSet (HMXF_BUFFER buffer, uint64 select, uint64 count, uint64 *labels) |
|
uint32 | mxfCSDBRxSamplingMsgSelectGet (HMXF_BUFFER buffer, uint64 maxCount, uint64 *count, uint64 *labels) |
|
uint32 | mxfCSDBRxSamplingRead (HMXF_BUFFER buffer, uint64 flags, uint64 maxMsgCount, uint64 maxBytesCount, uint64 *msgCount, uint64 *byteCount, MXF_CSDB_SAMPREC *rec) |
|
uint32 | mxfCSDBRxSamplingSingleRead (HMXF_BUFFER buffer, uint64 flags, uint64 label, uint64 si, MXF_CSDB_SAMPREC *rec) |
|
uint32 | mxfCSDBNextDataRecordPtrGet (MXF_CSDB_DATAREC *currentRec, MXF_CSDB_DATAREC **nextRec) |
|
uint32 | mxfCSDBNextSamplingRecordPtrGet (MXF_CSDB_SAMPREC *currentRec, MXF_CSDB_SAMPREC **nextRec) |
|
uint32 | mxfCSDBAsyncEventRxMsgSelectSet (HMXF_ASYNCEVENT asyncEvent, HMXF_CHANNEL channel, uint64 select, uint64 count, MXF_MSGID_CSDB *msg) |
|
uint32 | mxfCSDBAsyncEventRxMsgSelectGet (HMXF_ASYNCEVENT asyncEvent, HMXF_CHANNEL channel, uint64 maxCount, uint64 *count, MXF_MSGID_CSDB *msg) |
|
uint32 | mxfCSDBEmbeddedNVStorageFileMsgSelectSet (HMXF_CHANNEL channel, uint64 select, uint64 count, MXF_MSGID_CSDB *msgid) |
|
uint32 | mxfCSDBEmbeddedNVStorageFileMsgSelectGet (HMXF_CHANNEL channel, uint64 maxCount, uint64 *count, MXF_MSGID_CSDB *msgid) |
|
uint32 | mxfCSDBEmbeddedNVStorageFileMsgRead (HMXF_NVSTORAGE nvStorage, uint64 fileIndex, uint64 maxMsgCount, uint64 maxBytesCount, uint64 *msgCount, uint64 *byteCount, MXF_CSDB_DATAREC *msg) |
|
uint32 | mxfCSDBEmbeddedNVStorageFileMsgWrite (HMXF_NVSTORAGE nvStorage, uint64 fileIndex, uint64 maxMsgCount, MXF_CSDB_DATAREC *msg, uint64 *count) |
|
uint32 mxfCSDBTxAperiodicWrite |
( |
HMXF_BUFFER |
buffer, |
|
|
uint64 |
options, |
|
|
uint64 |
startTime, |
|
|
uint64 |
count, |
|
|
MXF_CSDB_DATAREC * |
rec |
|
) |
| |
- C#
- public static extern UInt32 mxfCSDBTxAperiodicWrite(UInt64 buffer, UInt64 options, UInt64 startTime, UInt64 count, IntPtr rec);
Sends aperiodic data record for transmission. The data items to be transmitted are specified within the records, along with a time tag and a control word. The first data item is transmitted at the specified start time.
The records to transmit on time tag must be placed in chronological order in the array. The same time tag must not appear more than once in the array. When the start time is specified, the time tag of the first record or the start time should be at least 50 msec in advance to be relatively precise otherwise it will be sent as soon as possible. Also, the cumulative time of all record’s time tag and the start time must be smaller than 30 seconds.
- Note
- This function is the specific version for CSDB of the multi-protocol mxfTxAperiodicWrite() function.
- Parameters
-
[in] | buffer | buffer handle. |
[in] | options | options for controlling the transmitter before for sending the data records. The details of the options are explained below.
- MXF_TXAPERIODIC_FLAG_DEFAULT
- MXF_TXAPERIODIC_FLAG_USE_RECORD_ABSOLUTE_TIME
- MXF_TXAPERIODIC_FLAG_ABSOLUTE_START_TIME
- MXF_TXAPERIODIC_FLAG_USE_RECORD_RELATIVE_TIME
|
[in] | startTime | start time based on the timebase. This is the time at which the data held in the first record is transmitted by the device. The time is either expressed accordingly to the process time base or relative to the current real-time clock value (i.e. offset in the future). If the bit MXF_TXAPERIODIC_FLAG_ABSOLUTE_START_TIME of the transmit flag is set, then the start time is specified in absolute time (rather than relative). MXF_TXAPERIODIC_FLAG_USE_RECORD_ABSOLUTE_TIME or MXF_TXAPERIODIC_FLAG_USE_RECORD_RELATIVE_TIME options cannot be used with a start time. |
[in] | count | number of records to write |
[in] | rec | records to write. The records in the buffer need to be indexed using the mxfCSDBNextDataRecordPtrGet() function. |
The options parameter modifies the transmission scheme as described below;
- MXF_TXAPERIODIC_FLAG_DEFAULT
This is the default transmission flag, the scheduling priority defined when the buffer area was defined (see mxfTxAperiodicBufferAlloc()) is used to schedule transmissions.
The time tag field is not used and must be set to 0. The records are transmitted with minimum delay between them.
- MXF_TXAPERIODIC_FLAG_USE_RECORD_ABSOLUTE_TIME
When set, the absolute transmit time of each data must be set in the record time tag. The time tag must be formatted according to the process time base.
This flag cannot be used with MXF_TXAPERIODIC_FLAG_USE_RECORD_RELATIVE_TIME, MXF_TXAPERIODIC_FLAG_ABSOLUTE_START_TIME or a start time.
- MXF_TXAPERIODIC_FLAG_USE_RECORD_RELATIVE_TIME
When set, the relative transmit time of each data must be set in the record time tag. The process time base resolution is used, but the time base itself is ignored.
This option causes transmission of the first record at the specified offset and transmission of the remaining records after a delay that is computed by subtracting the record time tag from the time tag of preceding records (i.e. delta time).
Let’s assume N data records to be transmitted with the MXF_TXAPERIODIC_FLAG_USE_RECORD_RELATIVE_TIME.
The actual record data transmit time will be computed as follows:
Time rec1 = Transmission offset (min 50 msec)
Time rec2 = Time rec1 + (rec2 time tag – rec1 time tag )
Time rec3 = Time rec2 + (rec3 time tag – rec2 time tag )
…
Time recN = Time recN-1 + (recN time tag - recN-1 time tag )
This flag cannot be used with MXF_TXAPERIODIC_FLAG_USE_RECORD_ABSOLUTE_TIME, MXF_TXAPERIODIC_FLAG_ABSOLUTE_START_TIME or a start time.
- MXF_TXAPERIODIC_FLAG_ABSOLUTE_START_TIME
When set, the startTime parameter must be formatted according to the process time base.
If not set, the startTime parameter is expressed as a relative time from the current real time clock value. The process time base resolution is used, but the time base itself is ignored.
This flag cannot be used with MXF_TXAPERIODIC_FLAG_USE_RECORD_ABSOLUTE_TIME or MXF_TXAPERIODIC_FLAG_USE_RECORD_RELATIVE_TIME options.
- Returns
- MAXT_SUCCESS is returned when the function has succeeded.
Refer to mxf_error.h for a list of defined errors.
Call mxfSystemErrorStringGet() to transform the return code into a text string.
- Availability:
- Available in MX Foundation 4.0 and later.
- See also
- mxfTxAperiodicWrite()
-
mxfTxAperiodicBufferAlloc()
-
mxfTxAperiodicBufferStatusGet()
-
mxfTxAperiodicClear()
-
mxfSystemTimeBaseSet()
-
mxfCSDBNextDataRecordPtrGet()
- Examples:
- csdb_aperiodic.c, csdb_aperiodic.cs, csdb_flexsmp.c, and csdb_flexsmp.cs.
uint32 mxfCSDBRxAcqMsgSelectSet |
( |
HMXF_BUFFER |
buffer, |
|
|
uint64 |
select, |
|
|
uint64 |
count, |
|
|
uint64 * |
labels |
|
) |
| |
- C#
- public static extern UInt32 mxfCSDBRxAcqMsgSelectSet(UInt64 buffer, UInt64 select, UInt64 count, UInt64[] labels);
public static extern UInt32 mxfCSDBRxAcqMsgSelectSet(UInt64 buffer, UInt64 select, UInt64 count, IntPtr labels);
Selects or deselects the label(s) to be acquired on the specified acquisition buffer.
Upon data arrival, the embedded process will check if the received label is found in the current selection list. The receive data record will be added to the acquisition buffer only if the label is found in the selection list, otherwise it is discarded.
By default, after a device reset, no filtering is performed and all labels are received.
- Note
- count set to 0 with labels set to NULL means ALL labels.
-
This function is the specific version for CSDB of the multi-protocol mxfRxAcqMsgSelectSet() function.
- Parameters
-
[in] | buffer | buffer handle. |
[in] | select | action to perform with the message ID array.
Option | Description |
MXF_MSG_DESELECT | Deselects the label(s). |
MXF_MSG_SELECT_ADD | Adds the specified label(s). |
MXF_MSG_SELECT_ONLY | Replaces the current selection with the provided list. |
|
[in] | count | number of entries in labels. |
[in] | labels | address of array of labels |
- Returns
- MAXT_SUCCESS is returned when the function has succeeded.
Refer to mxf_error.h for a list of defined errors.
Call mxfSystemErrorStringGet() to transform the return code into a text string.
- Availability:
- Available in MX Foundation 4.0 and later.
- See also
- mxfRxAcqMsgSelectSet()
-
mxfRxAcqBufferAlloc()
-
mxfRxAcqBufferGet()
-
mxfCSDBRxAcqMsgSelectGet()
uint32 mxfCSDBRxSamplingMsgSelectSet |
( |
HMXF_BUFFER |
buffer, |
|
|
uint64 |
select, |
|
|
uint64 |
count, |
|
|
uint64 * |
labels |
|
) |
| |
- C#
- public static extern UInt32 mxfCSDBRxSamplingMsgSelectSet(UInt64 buffer, UInt64 select, UInt64 maxCount, UInt64[] labels);
public static extern UInt32 mxfCSDBRxSamplingMsgSelectSet(UInt64 buffer, UInt64 select, UInt64 maxCount, IntPtr labels);
Selects or deselects the label(s) to be received on the specified sampling buffer.
Upon data arrival, the embedded process check if the received label is defined in the current selection list. The receive data record will be added to the sampling buffer only if the label was added previously in the selection list, otherwise it is discarded.
By default, after a device reset, no filtering is performed and all labels are received.
- Note
- count set to 0 with labels set to NULL means ALL labels.
-
This function is the specific version for CSDB of the multi-protocol mxfRxSamplingMsgSelectSet() function.
- Parameters
-
[in] | buffer | buffer handle. |
[in] | select | action to perform with the message ID array.
Option | Description |
MXF_MSG_DESELECT | Deselects the label(s). |
MXF_MSG_SELECT_ADD | Adds the specified label(s). |
MXF_MSG_SELECT_ONLY | Replaces the current selection with the provided list. |
|
[in] | count | count of labels in the array. |
[in] | labels | address of array of label(s). |
- Returns
- MAXT_SUCCESS is returned when the function has succeeded.
Refer to mxf_error.h for a list of defined errors.
Call mxfSystemErrorStringGet() to transform the return code into a text string.
- Availability:
- Available in MX Foundation 4.0 and later.
- See also
- mxfRxSamplingMsgSelectSet()
-
mxfRxSamplingBufferAlloc()
-
mxfRxSamplingStart()
-
mxfCSDBRxSamplingRead()
-
mxfCSDBRxSamplingMsgSelectGet()
- Examples:
- csdb_rx_sampling.c, and csdb_rx_sampling.cs.
uint32 mxfCSDBAsyncEventRxMsgSelectSet |
( |
HMXF_ASYNCEVENT |
asyncEvent, |
|
|
HMXF_CHANNEL |
channel, |
|
|
uint64 |
select, |
|
|
uint64 |
count, |
|
|
MXF_MSGID_CSDB * |
msg |
|
) |
| |
- C#
- public static extern UInt32 mxfCSDBAsyncEventRxMsgSelectSet(UInt64 asyncEvent, UInt64 channel, UInt64 select, UInt64 count, MXF_MSGID_CSDB[] msgid);
public static extern UInt32 mxfCSDBAsyncEventRxMsgSelectSet(UInt64 asyncEvent, UInt64 channel, UInt64 select, UInt64 count, IntPtr msgid);
Selects or deselects the label-si pair (message id) for MXF_ASYNCEVENT_COND_RX_MSG condition on a specified RX channel.
The function must be called in addition to the mxfAsyncEventConditionsSet() function with MXF_ASYNCEVENT_COND_RX_MSG condition to cause an asynchronous event to occur when a specific label-si is received.
The message selection must be made by only one asynchronous event routine for a specific channel. Otherwise, an error code will be returned while conditions of other asynchronous event routines are present.
In this case, you must disable the MXF_ASYNCEVENT_COND_RX_MSG condition using mxfAsyncEventConditionsSet() function using another asynchronous event handle.
- Note
- count set to 0 with msg set to NULL means ALL label-si.
-
This function is the specific version for CSDB of the multi-protocol mxfAsyncEventRxMsgSelectSet() function.
- Parameters
-
[in] | asyncEvent | asynchronous event handle. |
[in] | channel | channel handle. |
[in] | select | action to perform for the message ID.
Action | Description |
MXF_MSG_DESELECT | Deselects the messages id. |
MXF_MSG_SELECT_ADD | Adds the specified messages id. |
MXF_MSG_SELECT_ONLY | Replaces the current selection with the provided list. |
|
[in] | count | count of messages id. |
[in] | msg | address of array of message id. |
- Returns
- MAXT_SUCCESS is returned when the function has succeeded.
Refer to mxf_error.h for a list of defined errors.
Call mxfSystemErrorStringGet() to transform the return code into a text string.
- Availability:
- Available in MX Foundation 4.0 and later.
- See also
- mxfAsyncEventRxMsgSelectSet()
-
mxfAsyncEventHandlerInit()
-
mxfCSDBAsyncEventRxMsgSelectGet()
-
mxfAsyncEventConditionsSet()
- Examples:
- csdb_rx_event_handler.c, and csdb_rx_event_handler.cs.