1
1
openmpi/orte/mca/iof/svc/iof_svc_pub.h
Brian Barrett 566a050c23 Next step in the project split, mainly source code re-arranging
- move files out of toplevel include/ and etc/, moving it into the
    sub-projects
  - rather than including config headers with <project>/include, 
    have them as <project>
  - require all headers to be included with a project prefix, with
    the exception of the config headers ({opal,orte,ompi}_config.h
    mpi.h, and mpif.h)

This commit was SVN r8985.
2006-02-12 01:33:29 +00:00

72 строки
1.7 KiB
C

#ifndef ORTE_IOF_SVC_PUBLISH_H
#define ORTE_IOF_SVC_PUBLISH_H
#include "orte_config.h"
#include "orte/mca/iof/iof.h"
#include "orte/mca/iof/base/base.h"
#include "orte/mca/iof/base/iof_base_endpoint.h"
#include "iof_svc.h"
/**
* Endpoints that are sinks of data are published by the
* processes that is acting as a proxy for the destination
* application. The published endpoints are matched against
* subscriptions to determine the sources of data that are
* forwarded to the endpoint.
*/
struct orte_iof_svc_pub_t {
opal_list_item_t super;
orte_process_name_t pub_name;
orte_process_name_t pub_proxy;
orte_ns_cmp_bitmask_t pub_mask;
orte_iof_base_tag_t pub_tag;
orte_iof_base_endpoint_t* pub_endpoint;
};
typedef struct orte_iof_svc_pub_t orte_iof_svc_pub_t;
OBJ_CLASS_DECLARATION(orte_iof_svc_pub_t);
/**
* Create a new entry.
*/
int orte_iof_svc_pub_create(
const orte_process_name_t* pub_name,
const orte_process_name_t* pub_proxy,
orte_ns_cmp_bitmask_t pub_mask,
orte_iof_base_tag_t pub_tag);
/**
* Lookup an existing entry.
*/
orte_iof_svc_pub_t* orte_iof_svc_pub_lookup(
const orte_process_name_t *pub_name,
const orte_process_name_t *pub_proxy,
orte_ns_cmp_bitmask_t pub_mask,
orte_iof_base_tag_t pub_tag);
/**
* Cleanup an existing entry.
*/
int orte_iof_svc_pub_delete(
const orte_process_name_t* pub_name,
const orte_process_name_t* pub_proxy,
orte_ns_cmp_bitmask_t pub_mask,
orte_iof_base_tag_t pub_tag);
/**
* Remove all entries matching a specified process name.
*/
void orte_iof_svc_pub_delete_all(
const orte_process_name_t* name);
#endif