2004-01-10 01:09:51 +03:00
|
|
|
/*
|
|
|
|
* $HEADER$
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef LAM_PROC
|
|
|
|
#define LAM_PROC
|
|
|
|
|
2004-01-29 01:52:51 +03:00
|
|
|
#include "lam/types.h"
|
2004-01-10 01:09:51 +03:00
|
|
|
#include "lam/lfc/list.h"
|
|
|
|
|
|
|
|
|
|
|
|
extern lam_class_info_t lam_proc_cls;
|
2004-01-10 01:48:57 +03:00
|
|
|
extern lam_list_t lam_procs;
|
2004-01-10 01:09:51 +03:00
|
|
|
|
|
|
|
|
|
|
|
struct lam_proc_t {
|
2004-01-10 01:48:57 +03:00
|
|
|
lam_list_item_t super; /* allow proc to be placed on a list */
|
2004-01-29 01:52:51 +03:00
|
|
|
lam_job_handle_t proc_job; /* identifies a unique job */
|
|
|
|
uint32_t proc_vpid; /* process identifier w/in the job */
|
2004-01-10 01:09:51 +03:00
|
|
|
struct mca_pml_proc_t* proc_pml; /* PML specific proc data */
|
|
|
|
|
|
|
|
/* JMS: need to have the following information:
|
|
|
|
|
|
|
|
- endian info
|
|
|
|
- type size info
|
|
|
|
- peer parallel job id
|
|
|
|
- how am i [mpi] connected (bitmap): spawn (parent/child),
|
|
|
|
connect, accept, joint
|
|
|
|
*/
|
|
|
|
};
|
|
|
|
typedef struct lam_proc_t lam_proc_t;
|
|
|
|
|
|
|
|
|
2004-01-16 03:31:12 +03:00
|
|
|
void lam_proc_init(lam_proc_t*);
|
|
|
|
void lam_proc_destroy(lam_proc_t*);
|
2004-01-29 01:52:51 +03:00
|
|
|
lam_proc_t* lam_proc_local(void);
|
2004-01-10 01:09:51 +03:00
|
|
|
|
|
|
|
#endif /* LAM_PROC */
|
|
|
|
|