Yet Another eXchange Tool  0.9.0
Classes | Functions | Variables
xt_idxempty.c File Reference
#include <assert.h>
#include <limits.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "xt/xt_core.h"
#include "xt/xt_idxlist.h"
#include "xt/xt_idxempty.h"
#include "xt_idxempty_internal.h"
#include "xt_idxlist_unpack.h"
#include "xt_idxlist_internal.h"
#include "xt/xt_mpi.h"
#include "core/ppm_xfuncs.h"
#include "core/core.h"
Include dependency graph for xt_idxempty.c:

Go to the source code of this file.

Classes

struct  xt_idxempty
 

Functions

static void idxempty_delete (Xt_idxlist data)
 
static size_t idxempty_get_pack_size (Xt_idxlist data, MPI_Comm comm)
 
static void idxempty_pack (Xt_idxlist data, void *buffer, int buffer_size, int *position, MPI_Comm comm)
 
static Xt_idxlist idxempty_copy (Xt_idxlist idxlist)
 
static void idxempty_get_indices (Xt_idxlist idxlist, Xt_int *indices)
 
static Xt_int const * idxempty_get_indices_const (Xt_idxlist idxlist)
 
static void idxempty_get_index_stripes (Xt_idxlist idxlist, struct Xt_stripe **stripes, int *num_stripes)
 
static int idxempty_get_index_at_position (Xt_idxlist idxlist, int position, Xt_int *index)
 
static int idxempty_get_indices_at_positions (Xt_idxlist idxlist, const int *positions, int num, Xt_int *index, Xt_int undef_idx)
 
static int idxempty_get_position_of_index (Xt_idxlist idxlist, Xt_int index, int *position)
 
static int idxempty_get_position_of_index_off (Xt_idxlist idxlist, Xt_int index, int *position, int offset)
 
static int idxempty_get_positions_of_indices (Xt_idxlist idxlist, Xt_int const *indices, int num_indices, int *positions, int single_match_only)
 
static int idxempty_get_pos_exts_of_index_stripes (Xt_idxlist idxlist, int num_stripes, const struct Xt_stripe *stripes, int *num_ext, struct Xt_pos_ext **pos_ext, int single_match_only)
 
static int idxempty_get_positions_of_indices_off (Xt_idxlist idxlist, Xt_int const *indices, int num_indices, int *positions, int *offsets)
 
static Xt_int idxempty_get_min_index (Xt_idxlist idxlist)
 
static Xt_int idxempty_get_max_index (Xt_idxlist idxlist)
 
void xt_idxempty_init (void)
 
void xt_idxempty_finalize (void)
 
Xt_idxlist xt_idxempty_new (void)
 
static void idxempty_delete (Xt_idxlist XT_UNUSED(data))
 
static size_t idxempty_get_pack_size (Xt_idxlist XT_UNUSED(data), MPI_Comm comm)
 
Xt_idxlist xt_idxempty_unpack (void *XT_UNUSED(buffer), int XT_UNUSED(buffer_size), int *XT_UNUSED(position), MPI_Comm XT_UNUSED(comm))
 
static Xt_idxlist idxempty_copy (Xt_idxlist XT_UNUSED(idxlist))
 
static void idxempty_get_indices (Xt_idxlist XT_UNUSED(idxlist), Xt_int *XT_UNUSED(indices))
 
static Xt_int const * idxempty_get_indices_const (Xt_idxlist XT_UNUSED(idxlist))
 
static void idxempty_get_index_stripes (Xt_idxlist XT_UNUSED(idxlist), struct Xt_stripe **stripes, int *num_stripes)
 
static int idxempty_get_index_at_position (Xt_idxlist XT_UNUSED(idxlist), int XT_UNUSED(position), Xt_int *XT_UNUSED(index))
 
static int idxempty_get_indices_at_positions (Xt_idxlist XT_UNUSED(idxlist), const int *XT_UNUSED(positions), int num_pos, Xt_int *index, Xt_int undef_idx)
 
static int idxempty_get_position_of_index_off (Xt_idxlist XT_UNUSED(idxlist), Xt_int XT_UNUSED(index), int *XT_UNUSED(position), int XT_UNUSED(offset))
 
static int idxempty_get_position_of_index (Xt_idxlist XT_UNUSED(idxlist), Xt_int XT_UNUSED(index), int *XT_UNUSED(position))
 
int idxempty_get_positions_of_indices (Xt_idxlist XT_UNUSED(body_idxlist), const Xt_int *XT_UNUSED(selection_idx), int num_selection, int *XT_UNUSED(positions), int XT_UNUSED(single_match_only))
 
static int idxempty_get_pos_exts_of_index_stripes (Xt_idxlist XT_UNUSED(idxlist), int num_stripes, const struct Xt_stripe *stripes, int *num_ext, struct Xt_pos_ext **pos_ext, int XT_UNUSED(single_match_only))
 
static int idxempty_get_positions_of_indices_off (Xt_idxlist XT_UNUSED(idxlist), const Xt_int *XT_UNUSED(indices), int XT_UNUSED(num_indices), int *XT_UNUSED(positions), int *XT_UNUSED(offsets))
 
static Xt_int idxempty_get_min_index (Xt_idxlist XT_UNUSED(idxlist))
 
static Xt_int idxempty_get_max_index (Xt_idxlist XT_UNUSED(idxlist))
 

Variables

static const struct xt_idxlist_vtable idxempty_vtable
 
static struct xt_idxempty idxempty
 

Detailed Description

Author
Jörg Behrens behre.nosp@m.ns@d.nosp@m.krz.d.nosp@m.e Moritz Hanke hanke.nosp@m.@dkr.nosp@m.z.de Thomas Jahns jahns.nosp@m.@dkr.nosp@m.z.de

Definition in file xt_idxempty.c.

Function Documentation

◆ idxempty_copy() [1/2]

static Xt_idxlist idxempty_copy ( Xt_idxlist  idxlist)
static
Examples
test_idxempty.c.

◆ idxempty_copy() [2/2]

static Xt_idxlist idxempty_copy ( Xt_idxlist   XT_UNUSEDidxlist)
static

Definition at line 204 of file xt_idxempty.c.

Here is the call graph for this function:

◆ idxempty_delete() [1/2]

static void idxempty_delete ( Xt_idxlist  data)
static

◆ idxempty_delete() [2/2]

static void idxempty_delete ( Xt_idxlist   XT_UNUSEDdata)
static

Definition at line 171 of file xt_idxempty.c.

◆ idxempty_get_index_at_position() [1/2]

static int idxempty_get_index_at_position ( Xt_idxlist  idxlist,
int  position,
Xt_int index 
)
static

◆ idxempty_get_index_at_position() [2/2]

static int idxempty_get_index_at_position ( Xt_idxlist   XT_UNUSEDidxlist,
int   XT_UNUSEDposition,
Xt_int XT_UNUSEDindex 
)
static

Definition at line 230 of file xt_idxempty.c.

◆ idxempty_get_index_stripes() [1/2]

static void idxempty_get_index_stripes ( Xt_idxlist  idxlist,
struct Xt_stripe **  stripes,
int *  num_stripes 
)
static

◆ idxempty_get_index_stripes() [2/2]

static void idxempty_get_index_stripes ( Xt_idxlist   XT_UNUSEDidxlist,
struct Xt_stripe **  stripes,
int *  num_stripes 
)
static

Definition at line 222 of file xt_idxempty.c.

◆ idxempty_get_indices() [1/2]

static void idxempty_get_indices ( Xt_idxlist  idxlist,
Xt_int indices 
)
static

◆ idxempty_get_indices() [2/2]

static void idxempty_get_indices ( Xt_idxlist   XT_UNUSEDidxlist,
Xt_int XT_UNUSEDindices 
)
static

Definition at line 210 of file xt_idxempty.c.

◆ idxempty_get_indices_at_positions() [1/2]

static int idxempty_get_indices_at_positions ( Xt_idxlist  idxlist,
const int *  positions,
int  num,
Xt_int index,
Xt_int  undef_idx 
)
static

◆ idxempty_get_indices_at_positions() [2/2]

static int idxempty_get_indices_at_positions ( Xt_idxlist   XT_UNUSEDidxlist,
const int *  XT_UNUSEDpositions,
int  num_pos,
Xt_int index,
Xt_int  undef_idx 
)
static

Definition at line 238 of file xt_idxempty.c.

◆ idxempty_get_indices_const() [1/2]

static Xt_int const* idxempty_get_indices_const ( Xt_idxlist  idxlist)
static

◆ idxempty_get_indices_const() [2/2]

static Xt_int const* idxempty_get_indices_const ( Xt_idxlist   XT_UNUSEDidxlist)
static

Definition at line 215 of file xt_idxempty.c.

◆ idxempty_get_max_index() [1/2]

static Xt_int idxempty_get_max_index ( Xt_idxlist  idxlist)
static

◆ idxempty_get_max_index() [2/2]

static Xt_int idxempty_get_max_index ( Xt_idxlist   XT_UNUSEDidxlist)
static

Definition at line 313 of file xt_idxempty.c.

◆ idxempty_get_min_index() [1/2]

static Xt_int idxempty_get_min_index ( Xt_idxlist  idxlist)
static

◆ idxempty_get_min_index() [2/2]

static Xt_int idxempty_get_min_index ( Xt_idxlist   XT_UNUSEDidxlist)
static

Definition at line 304 of file xt_idxempty.c.

◆ idxempty_get_pack_size() [1/2]

static size_t idxempty_get_pack_size ( Xt_idxlist  data,
MPI_Comm  comm 
)
static

◆ idxempty_get_pack_size() [2/2]

static size_t idxempty_get_pack_size ( Xt_idxlist   XT_UNUSEDdata,
MPI_Comm  comm 
)
static

Definition at line 174 of file xt_idxempty.c.

◆ idxempty_get_pos_exts_of_index_stripes() [1/2]

static int idxempty_get_pos_exts_of_index_stripes ( Xt_idxlist  idxlist,
int  num_stripes,
const struct Xt_stripe stripes,
int *  num_ext,
struct Xt_pos_ext **  pos_ext,
int  single_match_only 
)
static

◆ idxempty_get_pos_exts_of_index_stripes() [2/2]

static int idxempty_get_pos_exts_of_index_stripes ( Xt_idxlist   XT_UNUSEDidxlist,
int  num_stripes,
const struct Xt_stripe stripes,
int *  num_ext,
struct Xt_pos_ext **  pos_ext,
int   XT_UNUSEDsingle_match_only 
)
static

Definition at line 277 of file xt_idxempty.c.

◆ idxempty_get_position_of_index() [1/2]

static int idxempty_get_position_of_index ( Xt_idxlist  idxlist,
Xt_int  index,
int *  position 
)
static

◆ idxempty_get_position_of_index() [2/2]

static int idxempty_get_position_of_index ( Xt_idxlist   XT_UNUSEDidxlist,
Xt_int   XT_UNUSEDindex,
int *  XT_UNUSEDposition 
)
static

Definition at line 260 of file xt_idxempty.c.

◆ idxempty_get_position_of_index_off() [1/2]

static int idxempty_get_position_of_index_off ( Xt_idxlist  idxlist,
Xt_int  index,
int *  position,
int  offset 
)
static

◆ idxempty_get_position_of_index_off() [2/2]

static int idxempty_get_position_of_index_off ( Xt_idxlist   XT_UNUSEDidxlist,
Xt_int   XT_UNUSEDindex,
int *  XT_UNUSEDposition,
int   XT_UNUSEDoffset 
)
static

Definition at line 252 of file xt_idxempty.c.

◆ idxempty_get_positions_of_indices() [1/2]

static int idxempty_get_positions_of_indices ( Xt_idxlist  idxlist,
Xt_int const *  indices,
int  num_indices,
int *  positions,
int  single_match_only 
)
static

◆ idxempty_get_positions_of_indices() [2/2]

int idxempty_get_positions_of_indices ( Xt_idxlist   XT_UNUSEDbody_idxlist,
const Xt_int XT_UNUSEDselection_idx,
int  num_selection,
int *  XT_UNUSEDpositions,
int   XT_UNUSEDsingle_match_only 
)

Definition at line 267 of file xt_idxempty.c.

◆ idxempty_get_positions_of_indices_off() [1/2]

static int idxempty_get_positions_of_indices_off ( Xt_idxlist  idxlist,
Xt_int const *  indices,
int  num_indices,
int *  positions,
int *  offsets 
)
static

◆ idxempty_get_positions_of_indices_off() [2/2]

static int idxempty_get_positions_of_indices_off ( Xt_idxlist   XT_UNUSEDidxlist,
const Xt_int XT_UNUSEDindices,
int   XT_UNUSEDnum_indices,
int *  XT_UNUSEDpositions,
int *  XT_UNUSEDoffsets 
)
static

Definition at line 294 of file xt_idxempty.c.

◆ idxempty_pack()

void idxempty_pack ( Xt_idxlist  data,
void *  buffer,
int  buffer_size,
int *  position,
MPI_Comm  comm 
)
static

Definition at line 183 of file xt_idxempty.c.

◆ xt_idxempty_finalize()

void xt_idxempty_finalize ( void  )

Definition at line 161 of file xt_idxempty.c.

Here is the caller graph for this function:

◆ xt_idxempty_init()

void xt_idxempty_init ( void  )

Definition at line 155 of file xt_idxempty.c.

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

◆ xt_idxempty_new()

Xt_idxlist xt_idxempty_new ( void  )

generates a new index list that does not contain any indices

Returns
returns a Xt_idxlist

Definition at line 165 of file xt_idxempty.c.

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

◆ xt_idxempty_unpack()

Xt_idxlist xt_idxempty_unpack ( void *  XT_UNUSEDbuffer,
int   XT_UNUSEDbuffer_size,
int *  XT_UNUSEDposition,
MPI_Comm   XT_UNUSEDcomm 
)

Definition at line 194 of file xt_idxempty.c.

Here is the call graph for this function:

Variable Documentation

◆ idxempty

struct xt_idxempty idxempty
static
Examples
test_idxempty.c.

◆ idxempty_vtable

const struct xt_idxlist_vtable idxempty_vtable
static
Initial value:
= {
.delete = idxempty_delete,
.get_pack_size = idxempty_get_pack_size,
.pack = idxempty_pack,
.copy = idxempty_copy,
.get_indices = idxempty_get_indices,
.get_indices_const = idxempty_get_indices_const,
.get_index_stripes = idxempty_get_index_stripes,
.get_index_at_position = idxempty_get_index_at_position,
.get_indices_at_positions = idxempty_get_indices_at_positions,
.get_position_of_index = idxempty_get_position_of_index,
.get_positions_of_indices = idxempty_get_positions_of_indices,
.get_pos_exts_of_index_stripes = idxempty_get_pos_exts_of_index_stripes,
.get_position_of_index_off = idxempty_get_position_of_index_off,
.get_positions_of_indices_off = idxempty_get_positions_of_indices_off,
.get_min_index = idxempty_get_min_index,
.get_max_index = idxempty_get_max_index,
.get_bounding_box = NULL,
.idxlist_pack_code = EMPTY,
}
static Xt_int idxempty_get_max_index(Xt_idxlist idxlist)
static void idxempty_delete(Xt_idxlist data)
static Xt_int const * idxempty_get_indices_const(Xt_idxlist idxlist)
static int idxempty_get_position_of_index(Xt_idxlist idxlist, Xt_int index, int *position)
static int idxempty_get_position_of_index_off(Xt_idxlist idxlist, Xt_int index, int *position, int offset)
static size_t idxempty_get_pack_size(Xt_idxlist data, MPI_Comm comm)
static int idxempty_get_indices_at_positions(Xt_idxlist idxlist, const int *positions, int num, Xt_int *index, Xt_int undef_idx)
static int idxempty_get_positions_of_indices(Xt_idxlist idxlist, Xt_int const *indices, int num_indices, int *positions, int single_match_only)
static Xt_int idxempty_get_min_index(Xt_idxlist idxlist)
static void idxempty_pack(Xt_idxlist data, void *buffer, int buffer_size, int *position, MPI_Comm comm)
Definition: xt_idxempty.c:183
static Xt_idxlist idxempty_copy(Xt_idxlist idxlist)
static void idxempty_get_index_stripes(Xt_idxlist idxlist, struct Xt_stripe **stripes, int *num_stripes)
static int idxempty_get_pos_exts_of_index_stripes(Xt_idxlist idxlist, int num_stripes, const struct Xt_stripe *stripes, int *num_ext, struct Xt_pos_ext **pos_ext, int single_match_only)
static int idxempty_get_positions_of_indices_off(Xt_idxlist idxlist, Xt_int const *indices, int num_indices, int *positions, int *offsets)
static int idxempty_get_index_at_position(Xt_idxlist idxlist, int position, Xt_int *index)
static void idxempty_get_indices(Xt_idxlist idxlist, Xt_int *indices)
@ EMPTY

Definition at line 126 of file xt_idxempty.c.