1
1
Gilles Gouaillardet c2a358ff45 regx: move most functions from the fwd component to base
Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2018-01-12 11:45:48 +09:00

75 строки
1.5 KiB
C

/*
* Copyright (c) 2015-2018 Intel, Inc. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
/** @file:
* regx framework base functionality.
*/
#ifndef ORTE_MCA_REGX_BASE_H
#define ORTE_MCA_REGX_BASE_H
/*
* includes
*/
#include "orte_config.h"
#include "orte/types.h"
#include "opal/class/opal_list.h"
#include "orte/mca/mca.h"
#include "orte/runtime/orte_globals.h"
#include "orte/mca/regx/regx.h"
BEGIN_C_DECLS
/*
* MCA Framework
*/
ORTE_DECLSPEC extern mca_base_framework_t orte_regx_base_framework;
/* select all components */
ORTE_DECLSPEC int orte_regx_base_select(void);
/*
* common stuff
*/
typedef struct {
opal_list_item_t super;
int vpid;
int cnt;
int slots;
orte_topology_t *t;
} orte_regex_range_t;
OBJ_CLASS_DECLARATION(orte_regex_range_t);
typedef struct {
/* list object */
opal_list_item_t super;
char *prefix;
char *suffix;
int num_digits;
opal_list_t ranges;
} orte_regex_node_t;
END_C_DECLS
OBJ_CLASS_DECLARATION(orte_regex_node_t);
ORTE_DECLSPEC extern int orte_regx_base_nidmap_parse(char *regex);
ORTE_DECLSPEC extern int orte_regx_base_encode_nodemap(opal_buffer_t *buffer);
ORTE_DECLSPEC int orte_regx_base_decode_daemon_nodemap(opal_buffer_t *buffer);
ORTE_DECLSPEC int orte_regx_base_generate_ppn(orte_job_t *jdata, char **ppn);
ORTE_DECLSPEC int orte_regx_base_parse_ppn(orte_job_t *jdata, char *regex);
ORTE_DECLSPEC int orte_regx_base_extract_node_names(char *regexp, char ***names);
#endif