YetAnotherCoupler 3.4.0
Loading...
Searching...
No Matches
interpolation_exchange.c File Reference
#include <string.h>
#include "utils_core.h"
#include "interpolation_exchange.h"
Include dependency graph for interpolation_exchange.c:

Go to the source code of this file.

Data Structures

struct  yac_interpolation_exchange
 

Enumerations

enum  exchange_state { EXCHANGE_IDLE , EXCHANGE_WAIT_PUT , EXCHANGE_WAIT_GET , EXCHANGE_ACTIVE }
 
enum  empty_exchange_state { EXCHANGE_INVALID , EXCHANGE_UNSET , EXCHANGE_AT_PUT , EXCHANGE_AT_GET }
 

Functions

static Xt_redist combine_redists (Xt_redist *redists, size_t num_redists, size_t collection_size)
 
static void do_empty_exchange (struct yac_interpolation_exchange *exchange, int is_put, char const *routine_name)
 
static struct yac_interpolation_exchangeyac_interpolation_exchange_new_ (Xt_redist redist, size_t count, char const *name)
 
struct yac_interpolation_exchangeyac_interpolation_exchange_new (Xt_redist *redists, size_t num_fields, size_t collection_size, int with_frac_mask, char const *name)
 
struct yac_interpolation_exchangeyac_interpolation_exchange_copy (struct yac_interpolation_exchange *exchange)
 
int yac_interpolation_exchange_is_source (struct yac_interpolation_exchange *exchange)
 
int yac_interpolation_exchange_is_target (struct yac_interpolation_exchange *exchange)
 
void yac_interpolation_exchange_wait (struct yac_interpolation_exchange *exchange, char const *routine_name)
 
int yac_interpolation_exchange_put_test (struct yac_interpolation_exchange *exchange, char const *routine_name)
 
int yac_interpolation_exchange_get_test (struct yac_interpolation_exchange *exchange, char const *routine_name)
 
enum YAC_INTERP_EXCH_STATUS yac_interpolation_exchange_status (struct yac_interpolation_exchange *exchange, char const *routine_name)
 
void yac_interpolation_exchange_execute_put (struct yac_interpolation_exchange *exchange, double const **send_data, char const *routine_name)
 
static void yac_interpolation_exchange_execute_get_ (struct yac_interpolation_exchange *exchange, double **recv_data, int is_async, char const *routine_name)
 
void yac_interpolation_exchange_execute_get (struct yac_interpolation_exchange *exchange, double **recv_data, char const *routine_name)
 
void yac_interpolation_exchange_execute_get_async (struct yac_interpolation_exchange *exchange, double **recv_data, char const *routine_name)
 
void yac_interpolation_exchange_execute (struct yac_interpolation_exchange *exchange, double const **send_data_, double **recv_data_, char const *routine_name)
 
void yac_interpolation_exchange_delete (struct yac_interpolation_exchange *exchange, char const *routine_name)
 

Enumeration Type Documentation

◆ empty_exchange_state

Enumerator
EXCHANGE_INVALID 
EXCHANGE_UNSET 

exchange is source and/or target

EXCHANGE_AT_PUT 

exchange is neither source nor target and not put/get has been called

EXCHANGE_AT_GET 

exchange is neither source nor target and exchange is executed at put

Definition at line 17 of file interpolation_exchange.c.

◆ exchange_state

Enumerator
EXCHANGE_IDLE 
EXCHANGE_WAIT_PUT 

exchange is currently not in use

EXCHANGE_WAIT_GET 

contains valid put data, but is not yet communicated

EXCHANGE_ACTIVE 

contains valid get data, but is not yet communicated

Definition at line 10 of file interpolation_exchange.c.

Function Documentation

◆ combine_redists()

static Xt_redist combine_redists ( Xt_redist * redists,
size_t num_redists,
size_t collection_size )
static

Definition at line 43 of file interpolation_exchange.c.

Here is the caller graph for this function:

◆ do_empty_exchange()

static void do_empty_exchange ( struct yac_interpolation_exchange * exchange,
int is_put,
char const * routine_name )
static

Definition at line 81 of file interpolation_exchange.c.

Here is the caller graph for this function:

◆ yac_interpolation_exchange_copy()

struct yac_interpolation_exchange * yac_interpolation_exchange_copy ( struct yac_interpolation_exchange * exchange)
Examples
test_interpolation_exchange.c.

Definition at line 146 of file interpolation_exchange.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_interpolation_exchange_delete()

void yac_interpolation_exchange_delete ( struct yac_interpolation_exchange * exchange,
char const * routine_name )
Examples
test_interpolation_exchange.c.

Definition at line 548 of file interpolation_exchange.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_interpolation_exchange_execute()

void yac_interpolation_exchange_execute ( struct yac_interpolation_exchange * exchange,
double const ** send_data_,
double ** recv_data_,
char const * routine_name )
Examples
test_interpolation_exchange.c.

Definition at line 508 of file interpolation_exchange.c.

Here is the caller graph for this function:

◆ yac_interpolation_exchange_execute_get()

void yac_interpolation_exchange_execute_get ( struct yac_interpolation_exchange * exchange,
double ** recv_data,
char const * routine_name )
Examples
test_interpolation_exchange.c.

Definition at line 494 of file interpolation_exchange.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_interpolation_exchange_execute_get_()

static void yac_interpolation_exchange_execute_get_ ( struct yac_interpolation_exchange * exchange,
double ** recv_data,
int is_async,
char const * routine_name )
static

Definition at line 362 of file interpolation_exchange.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_interpolation_exchange_execute_get_async()

void yac_interpolation_exchange_execute_get_async ( struct yac_interpolation_exchange * exchange,
double ** recv_data,
char const * routine_name )
Examples
test_interpolation_exchange.c.

Definition at line 501 of file interpolation_exchange.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_interpolation_exchange_execute_put()

void yac_interpolation_exchange_execute_put ( struct yac_interpolation_exchange * exchange,
double const ** send_data,
char const * routine_name )
Examples
test_interpolation_exchange.c.

Definition at line 261 of file interpolation_exchange.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_interpolation_exchange_get_test()

int yac_interpolation_exchange_get_test ( struct yac_interpolation_exchange * exchange,
char const * routine_name )
Examples
test_interpolation_exchange.c.

Definition at line 212 of file interpolation_exchange.c.

Here is the caller graph for this function:

◆ yac_interpolation_exchange_is_source()

int yac_interpolation_exchange_is_source ( struct yac_interpolation_exchange * exchange)
Examples
test_interpolation_exchange.c.

Definition at line 154 of file interpolation_exchange.c.

Here is the caller graph for this function:

◆ yac_interpolation_exchange_is_target()

int yac_interpolation_exchange_is_target ( struct yac_interpolation_exchange * exchange)
Examples
test_interpolation_exchange.c.

Definition at line 160 of file interpolation_exchange.c.

Here is the caller graph for this function:

◆ yac_interpolation_exchange_new()

struct yac_interpolation_exchange * yac_interpolation_exchange_new ( Xt_redist * redists,
size_t num_fields,
size_t collection_size,
int with_frac_mask,
char const * name )
Examples
test_interpolation_exchange.c.

Definition at line 132 of file interpolation_exchange.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_interpolation_exchange_new_()

static struct yac_interpolation_exchange * yac_interpolation_exchange_new_ ( Xt_redist redist,
size_t count,
char const * name )
static

Definition at line 102 of file interpolation_exchange.c.

Here is the caller graph for this function:

◆ yac_interpolation_exchange_put_test()

int yac_interpolation_exchange_put_test ( struct yac_interpolation_exchange * exchange,
char const * routine_name )
Examples
test_interpolation_exchange.c.

Definition at line 186 of file interpolation_exchange.c.

Here is the caller graph for this function:

◆ yac_interpolation_exchange_status()

enum YAC_INTERP_EXCH_STATUS yac_interpolation_exchange_status ( struct yac_interpolation_exchange * exchange,
char const * routine_name )
Examples
test_interpolation_exchange.c.

Definition at line 238 of file interpolation_exchange.c.

Here is the caller graph for this function:

◆ yac_interpolation_exchange_wait()

void yac_interpolation_exchange_wait ( struct yac_interpolation_exchange * exchange,
char const * routine_name )
Examples
test_interpolation_exchange.c.

Definition at line 166 of file interpolation_exchange.c.

Here is the caller graph for this function: