CDI SDK
SDK for transporting chunks of data reliably and with low latency using a polled mode network driver.
|
A structure for storing all info related to a specific connection, including test settings, connection configuration data from the SDK, and state information for the test connection. More...
#include <test_control.h>
Data Fields | ||
CdiLogMethodData | log_method_data | |
CDI log method. | ||
CdiAdapterHandle | adapter_handle | |
CDI adapter Handle. | ||
CdiConnectionHandle | connection_handle | |
The connection handle returned by CdiRawTxCreate(). | ||
TestSettings | test_settings | |
Test settings data structure provided by the user. | ||
CdiSignalType | payload_callback_signal | |
Signal to indicate when a payload has been delivered. | ||
volatile bool | payload_error | |
true if Tx callback got a payload error. | ||
CdiSignalType | connection_state_change_signal | |
Signal used for connection state changes. | ||
volatile CdiConnectionStatus | connection_status | |
Current status of the connection. | ||
void * | adapter_tx_buffer_ptr | |
Adapter's Tx buffer pointer. | ||
uint64_t | payload_start_time | |
Payload start time, used by Tx Callback functions. | ||
int | payload_cb_count | |
Number of times payload callback function has been invoked. NOTE: This variable is used by multiple threads and not declared volatile. It is used as an example of how to use the CdiOsAtomic...() API functions. | ||
CdiThreadID | ndi_thread_id | |
NDI thread ID. | ||
CdiReturnStatus | ndi_thread_rs | |
NDI thread return status. | ||
CdiSignalType | ndi_thread_signal | |
NDI thread signal. | ||
CdiPoolHandle | ndi_frame_data_pool_handle | |
Memory Pool Handle. | ||
CdiFifoHandle | payload_fifo_handle | |
Payload FIFO Handle. | ||
CdiFifoHandle | callback_fifo_handle | |
Callback FIFO Handle. | ||
NDIlib_recv_instance_t | pNDI_recv | |
NDI receiver pointer. | ||
NDIlib_send_instance_t | pNDI_send | |
NDI sender pointer. | ||
CdiPoolHandle | ndi_audio_pool_handle | |
NDI audio pool handle. | ||
CdiPoolHandle | ndi_video_pool_handle | |
NDI video pool handle. | ||
CdiAvmBaselineConfig | last_baseline_config [kCdiAvmAncillary] | |
Baseline AVM configuration[CdiBaselineAvmPayloadType]. Used to log changes to AVM. | ||
CdiPtpTimestamp | connection_start_time | |
Start time for the connection. For TX this is the time of the first payload sent. For RX it is the time from the PTP timestamp of the first payload received. | ||
uint64_t | total_audio_samples | |
Total number of audio samples processed. | ||
uint32_t | total_video_frames | |
Total number of video frames processed. | ||
uint64_t | total_video_duration_ns | |
Total video duration in nanoseconds. | ||
double | cdi_video_period_fraction_ns | |
Video CDI period fractional portion in nS. | ||
double | cdi_audio_period_fraction_ns | |
Audio CDI period fractional portion in uS. | ||
CdiCsID | connection_handle_lock | |
Lock used to protect access to connection connection_handle. | ||
CdiEndpointHandle | tx_stream_endpoint_handle_array [CDI_MAX_ENDPOINTS_PER_CONNECTION] | |
int | my_index | |
This connection's index;. | ||
union { | ||
CdiRxConfigData rx | ||
Rx Configuration data. | ||
CdiTxConfigData tx | ||
Tx Configuration data. | ||
} | config_data | |
The config data structure returned by the CdiRawTxCreate or CdiRawRxCreate functions. | ||
void * | local_data_ptr | |
Pointer to thread-local storage. | ||
TestSettings * | test_settings_ptr | |
CdiSignalType | payload_done_signal | |
int | payload_count | |
The current total payload count. | ||
int | total_payloads | |
The total number of requested payloads. | ||
int | current_stream_count | |
The current stream counter. We will use this to track which stream we are operating on at a give time. | ||
bool | pass_status | |
Flag to indicate if this connection has passed or failed its testing. | ||
uint64_t | num_payload_errors | |
CdiSignalType | done_signal | |
Signal to indicate when this connection is done testing (when payload_count matches total_payloads). | ||
CdiThreadID | thread_id | |
Thread ID for this connection. | ||
CdiSignalType | connection_shutdown_signal | |
Shutdown signal for this thread. | ||
CdiConnectionStatus | connection_status_stream_array [CDI_MAX_ENDPOINTS_PER_CONNECTION] | |
Current status of the streams in a connection. | ||
CdiFifoHandle | fifo_handle | |
CdiLogHandle | app_file_log_handle | |
Test application Log file handle for this connection. | ||
CdiLogHandle | sdk_file_callback_log_handle | |
SDK Log file handle for this connection. | ||
CdiPoolHandle | tx_user_data_pool_handle | |
Handle of memory pool used to hold TestTxUserData structures. | ||
uint64_t | tx_late_payload_count | |
Number of payloads that were transmitted late. | ||
uint32_t | transfer_time_max_overall | |
Overall maximum time in microseconds to transmit a payload. | ||
uint32_t | transfer_time_min_overall | |
Overall minimum time in microseconds to transmit a payload. | ||
int | number_stats | |
Number of payload counter stats in payload_counter_stats_array. | ||
CdiPayloadCounterStats | payload_counter_stats_array [CDI_MAX_ENDPOINTS_PER_CONNECTION] | |
A copy of the last stats. Updated at the end of TestStatisticsCallback(). | ||
int | total_poll_thread_load | |
Total CPU load for all endpoints associated with this connection. | ||
TestConnectionStreamInfo | stream_info [CDI_MAX_SIMULTANEOUS_TX_PAYLOADS_PER_CONNECTION] | |
Array of stream info data structures for storing stream-specific variables. | ||
uint64_t | pattern_count | |
Pattern counter used to generate unique value in each payload. | ||
TestDynamicHandle | test_dynamic_handle | |
Instance of test dynamic component related to this connection. | ||
int | payload_received_count | |
Number of payloads successfully received. NOTE: This variable is used by multiple threads and not declared volatile. It is used as an example of how to use the CdiOsAtomic...() API functions. | ||
int | rate_period_microseconds | |
Calculated Tx rate period. | ||
A structure for storing all info related to a specific connection, including test settings, connection configuration data from the SDK, and state information for the test connection.
CdiConnectionHandle TestConnectionInfo::connection_handle |
The connection handle returned by CdiRawTxCreate().
The connection handle returned by the Cdi...TxCreate or Cdi...RxCreate functions.
CdiFifoHandle TestConnectionInfo::fifo_handle |
The connection handle returned by the CdiFifoCreate function, used for communicating between callback function and helper threads.
uint64_t TestConnectionInfo::num_payload_errors |
Counter to count payload transmission errors. Used to determine whether to quit or continue based on –keep_alive setting.
CdiSignalType TestConnectionInfo::payload_callback_signal |
Signal to indicate when a payload has been delivered.
Signal to indicate when a payload has been received.
CdiSignalType TestConnectionInfo::payload_done_signal |
Signal to indicate when this connection is done with a payload. For a transmitter, this is set when confirmation of a payload being transmitted has been received via TestTxProcessCoreCallbackData(). For a receiver, it is set whenever a payload is received via TestRxProcessCoreCallbackData().
volatile bool TestConnectionInfo::payload_error |
true if Tx callback got a payload error.
true if Rx callback got a payload error.
TestSettings* TestConnectionInfo::test_settings_ptr |
Pointer to the test_settings data structure provided by the user to describe the test parameters for this connection.
CdiEndpointHandle TestConnectionInfo::tx_stream_endpoint_handle_array[CDI_MAX_ENDPOINTS_PER_CONNECTION] |
Array of Tx stream handles associated with this connection. Each handle is returned by the CdiAvmTxStreamEndpointCreate function.