OpenMPI 0.1.1

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

Data Structures | Macros | Typedefs | Functions | Variables
base.h File Reference

I/O Forwarding Service. More...

`#include "orte_config.h"`
`#include "opal/mca/mca.h"`
`#include "orte/mca/iof/iof.h"`
`#include "orte/runtime/orte_globals.h"`

Go to the source code of this file.

## Data Structures
struct | orte_iof_write_event_t
struct | orte_iof_sink_t
struct | orte_iof_read_event_t
struct | orte_iof_proc_t
struct | orte_iof_write_output_t
struct | orte_iof_base_t

## Macros
#define | ORTE_IOF_BASE_MSG_MAX 4096
#define | ORTE_IOF_BASE_TAG_MAX 50
#define | ORTE_IOF_BASE_TAGGED_OUT_MAX 8192
#define | ORTE_IOF_MAX_INPUT_BUFFERS 50
#define | ORTE_IOF_SINK_DEFINE(snk, nm, fid, tg, wrthndlr, eplist)
#define | ORTE_IOF_READ_EVENT(rv, nm, fid, tg, cbfunc, actv)

## Typedefs
typedef struct orte_iof_base_t | orte_iof_base_t

## Functions
BEGIN_C_DECLS ORTE_DECLSPEC int | orte_iof_base_open (void)
| Function for finding and opening either all MCA components, or the one that was specifically requested via a MCA parameter.
ORTE_DECLSPEC | OBJ_CLASS_DECLARATION (orte_iof_write_event_t)
ORTE_DECLSPEC | OBJ_CLASS_DECLARATION (orte_iof_sink_t)
ORTE_DECLSPEC | OBJ_CLASS_DECLARATION (orte_iof_read_event_t)
ORTE_DECLSPEC | OBJ_CLASS_DECLARATION (orte_iof_proc_t)
ORTE_DECLSPEC | OBJ_CLASS_DECLARATION (orte_iof_write_output_t)
ORTE_DECLSPEC int | orte_iof_base_close (void)
ORTE_DECLSPEC int | orte_iof_base_select (void)
| Call the query function on all available components to find out if they want to run. More...
ORTE_DECLSPEC int | orte_iof_base_flush (void)
ORTE_DECLSPEC int | orte_iof_base_write_output (orte_process_name_t *name, orte_iof_tag_t stream, unsigned char *data, int numbytes, orte_iof_write_event_t *channel)
ORTE_DECLSPEC void | orte_iof_base_write_handler (int fd, short event, void *cbdata)

## Variables
ORTE_DECLSPEC orte_iof_base_t | orte_iof_base

## Detailed Description

I/O Forwarding Service.

## Macro Definition Documentation

#define ORTE_IOF_READ_EVENT | ( |  | rv,
|  |  | nm,
|  |  | fid,
|  |  | tg,
|  |  | cbfunc,
|  |  | actv
| ) |  |

Value:
do { \
orte_iof_read_event_t *rev; \
rev = OBJ_NEW(orte_iof_read_event_t); \
rev->name.jobid = (nm)->jobid; \
rev->name.vpid = (nm)->vpid; \
ORTE_EPOCH_SET(rev->name.epoch,(nm)->epoch); \
rev->tag = (tg); \
rev->fd = (fid); \
*(rv) = rev; \
opal_event_set(opal_event_base, \
&rev->ev, (fid), \
OPAL_EV_READ, \
(cbfunc), rev); \
if ((actv)) { \
rev->active = true; \
opal_event_add(&rev->ev, 0); \
} \
} while(0);
orte_iof_read_event_t
Definition: base.h:86

#define ORTE_IOF_SINK_DEFINE | ( |  | snk,
|  |  | nm,
|  |  | fid,
|  |  | tg,
|  |  | wrthndlr,
|  |  | eplist
| ) |  |

Value:
do { \
orte_iof_sink_t *ep; \
ep = OBJ_NEW(orte_iof_sink_t); \
ep->name.jobid = (nm)->jobid; \
ep->name.vpid = (nm)->vpid; \
ORTE_EPOCH_SET(ep->name.epoch,(nm)->epoch); \
ep->tag = (tg); \
if (0 <= (fid)) { \
ep->wev->fd = (fid); \
opal_event_set(opal_event_base, \
&(ep->wev->ev), ep->wev->fd, \
OPAL_EV_WRITE, \
wrthndlr, ep); \
} \
if (NULL != (eplist)) { \
opal_list_append((eplist), &ep->super); \
} \
*(snk) = ep; \
} while(0);
orte_iof_sink_t
Definition: base.h:73
opal_list_append
#define opal_list_append(l, i)
Append an item to the end of the list.
Definition: opal_list.h:410

## Function Documentation

ORTE_DECLSPEC int orte_iof_base_select | ( | void |  | ) |

Call the query function on all available components to find out if they want to run.

Select the single component with the highest priority.

Referenced by orte_ess_base_orted_setup().