Blame src/mpi/romio/mpl/include/mpl_iov.h

Packit Service c5cf8c
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil ; -*- */
Packit Service c5cf8c
/*
Packit Service c5cf8c
 *  (C) 2001 by Argonne National Laboratory.
Packit Service c5cf8c
 *      See COPYRIGHT in top-level directory.
Packit Service c5cf8c
 */
Packit Service c5cf8c
Packit Service c5cf8c
#ifndef MPL_IOV_H_INCLUDED
Packit Service c5cf8c
#define MPL_IOV_H_INCLUDED
Packit Service c5cf8c
Packit Service c5cf8c
#include <stdio.h>
Packit Service c5cf8c
Packit Service c5cf8c
/* IOVs */
Packit Service c5cf8c
/* The basic channel interface uses IOVs */
Packit Service c5cf8c
#ifdef MPL_HAVE_WINDOWS_H
Packit Service c5cf8c
#define MPL_IOV_BUF_CAST char *
Packit Service c5cf8c
#else
Packit Service c5cf8c
#define MPL_IOV_BUF_CAST void *
Packit Service c5cf8c
#endif
Packit Service c5cf8c
#ifdef MPL_HAVE_WINDOWS_H
Packit Service c5cf8c
#include <winsock2.h>
Packit Service c5cf8c
#define MPL_IOV         WSABUF
Packit Service c5cf8c
#define MPL_IOV_LEN     len
Packit Service c5cf8c
#define MPL_IOV_BUF     buf
Packit Service c5cf8c
#else
Packit Service c5cf8c
#ifdef MPL_HAVE_SYS_TYPES_H
Packit Service c5cf8c
#include <sys/types.h>  /* macs need sys/types.h before uio.h can be included */
Packit Service c5cf8c
#endif
Packit Service c5cf8c
#ifdef MPL_HAVE_SYS_UIO_H
Packit Service c5cf8c
#include <sys/uio.h>
Packit Service c5cf8c
#endif
Packit Service c5cf8c
#define MPL_IOV         struct iovec
Packit Service c5cf8c
#define MPL_IOV_LEN     iov_len
Packit Service c5cf8c
#define MPL_IOV_BUF     iov_base
Packit Service c5cf8c
#endif
Packit Service c5cf8c
/* FIXME: How is IOV_LIMIT chosen? */
Packit Service c5cf8c
#define MPL_IOV_LIMIT   16
Packit Service c5cf8c
Packit Service c5cf8c
#endif /* MPL_IOV_H_INCLUDED */