TCP communication implementation.
More...
#include "mdi.h"
#include "mdi_global.h"
Go to the source code of this file.
|
void | sigint_handler (int dummy) |
| SIGINT handler to ensure the socket is closed on termination. More...
|
|
int | enable_tcp_support (int code_id) |
| Enable support for the TCP method.
|
|
int | tcp_on_selection () |
| Callback when the end-user selects TCP as the method.
|
|
int | tcp_on_accept_communicator () |
| Callback when the TCP method must accept a communicator.
|
|
int | tcp_on_send_command (const char *command, MDI_Comm comm, int *skip_flag) |
| Callback when the TCP method must send a command.
|
|
int | tcp_after_send_command (const char *command, MDI_Comm comm) |
| Callback after the TCP method has received a command.
|
|
int | tcp_on_recv_command (MDI_Comm comm) |
| Callback when the TCP method must receive a command.
|
|
int | tcp_listen (int port_in) |
| Begin listening for incoming TCP connections. More...
|
|
int | tcp_request_connection (int port_in, char *hostname_ptr) |
| Request a connection over TCP. More...
|
|
int | tcp_accept_connection () |
| Accept a TCP connection request.
|
|
int | tcp_send (const void *buf, int count, MDI_Datatype datatype, MDI_Comm comm, int msg_flag) |
| Send data through an MDI connection, using TCP. More...
|
|
int | tcp_recv (void *buf, int count, MDI_Datatype datatype, MDI_Comm comm, int msg_flag) |
| Receive data through an MDI connection, using TCP. More...
|
|
TCP communication implementation.
◆ sigint_handler()
void sigint_handler |
( |
int |
dummy | ) |
|
SIGINT handler to ensure the socket is closed on termination.
- Parameters
-
◆ tcp_listen()
int tcp_listen |
( |
int |
port_in | ) |
|
Begin listening for incoming TCP connections.
- Parameters
-
[in] | port | Port to listen over |
◆ tcp_recv()
int tcp_recv |
( |
void * |
buf, |
|
|
int |
count, |
|
|
MDI_Datatype |
datatype, |
|
|
MDI_Comm |
comm, |
|
|
int |
msg_flag |
|
) |
| |
Receive data through an MDI connection, using TCP.
- Parameters
-
[in] | buf | Pointer to the buffer where the received data will be stored. |
[in] | count | Number of values (integers, double precision floats, characters, etc.) to be received. |
[in] | datatype | MDI handle (MDI_INT, MDI_DOUBLE, MDI_CHAR, etc.) corresponding to the type of data to be received. |
[in] | comm | MDI communicator associated with the connection to the sending code. |
[in] | msg_flag | Type of role this data has within a message. 0: Not part of a message. 1: The header of a message. 2: The body (data) of a message. |
◆ tcp_request_connection()
int tcp_request_connection |
( |
int |
port_in, |
|
|
char * |
hostname_ptr |
|
) |
| |
Request a connection over TCP.
- Parameters
-
[in] | port | Port over which the driver is listening |
[in] | hostname_ptr | Hostname of the driver |
◆ tcp_send()
int tcp_send |
( |
const void * |
buf, |
|
|
int |
count, |
|
|
MDI_Datatype |
datatype, |
|
|
MDI_Comm |
comm, |
|
|
int |
msg_flag |
|
) |
| |
Send data through an MDI connection, using TCP.
- Parameters
-
[in] | buf | Pointer to the data to be sent. |
[in] | count | Number of values (integers, double precision floats, characters, etc.) to be sent. |
[in] | datatype | MDI handle (MDI_INT, MDI_DOUBLE, MDI_CHAR, etc.) corresponding to the type of data to be sent. |
[in] | comm | MDI communicator associated with the intended recipient code. |
[in] | msg_flag | Type of role this data has within a message. 0: Not part of a message. 1: The header of a message. 2: The body (data) of a message. |