1
1

- Define a OPAL_CLASS_EMPTY to be used for initialization.

Similar within the dt_module for the predefined datatypes.

This commit was SVN r13228.
Этот коммит содержится в:
Rainer Keller 2007-01-21 15:52:06 +00:00
родитель 96030de97b
Коммит c2e9075d29
4 изменённых файлов: 22 добавлений и 5 удалений

Просмотреть файл

@ -40,7 +40,12 @@ int ompi_ddt_dfd = -1;
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0 }
#define EMPTY_DATA(NAME) NULL, 0, "MPI_" # NAME, {0, 0, NULL}, {0, 0, NULL}, NULL, NULL, ZERO_DDT_ARRAY
#define BASEOBJ_DATA { OBJ_CLASS(ompi_datatype_t), 1 }
#ifdef OMPI_ENABLE_DEBUG
# define BASEOBJ_DATA { OBJ_CLASS(ompi_datatype_t), 1, __FILE__, __LINE__ }
#else
# define BASEOBJ_DATA { OBJ_CLASS(ompi_datatype_t), 1 }
#endif
/* Using this macro implies that at this point not all informations needed
* to fill up the datatype are known. We fill them with zeros and then later

Просмотреть файл

@ -226,6 +226,18 @@ struct opal_object_t {
extern opal_class_t NAME ## _class
/**
* Referring to the OBJ_CLASS, when initializing
*
* @param NAME Name of class
*/
#ifdef OMPI_ENABLE_DEBUG
# define OBJ_CLASS_EMPTY(NAME) {OBJ_CLASS(NAME), 0, __FILE__, __LINE__}
#else
# define OBJ_CLASS_EMPTY(NAME) {OBJ_CLASS(NAME), 0}
#endif
/**
* Create an object: dynamically allocate storage and run the class
* constructor.

Просмотреть файл

@ -51,7 +51,7 @@ typedef struct {
} orte_data_value_t;
ORTE_DECLSPEC OBJ_CLASS_DECLARATION(orte_data_value_t);
#define ORTE_DATA_VALUE_EMPTY {{OBJ_CLASS(orte_data_value_t),0}, ORTE_UNDEF, NULL}
#define ORTE_DATA_VALUE_EMPTY {OBJ_CLASS_EMPTY(orte_data_value_t), ORTE_UNDEF, NULL}
/* structured-unstructured data flags */
#define ORTE_DSS_STRUCTURED true

Просмотреть файл

@ -151,7 +151,7 @@ typedef struct {
} orte_gpr_value_t;
ORTE_DECLSPEC OBJ_CLASS_DECLARATION(orte_gpr_value_t);
#define ORTE_GPR_VALUE_EMPTY {{OBJ_CLASS(orte_gpr_value_t),0}, 0, NULL, 0, NULL, 0, NULL}
#define ORTE_GPR_VALUE_EMPTY {OBJ_CLASS_EMPTY(orte_gpr_value_t), 0, NULL, 0, NULL, 0, NULL}
/** Return structure for notification messages
* A notification message contains data from each registered subscription structure.
@ -227,7 +227,7 @@ typedef struct {
} orte_gpr_subscription_t;
ORTE_DECLSPEC OBJ_CLASS_DECLARATION(orte_gpr_subscription_t);
#define ORTE_GPR_SUBSCRIPTION_EMPTY {{OBJ_CLASS(orte_gpr_subscription_t),0}, NULL, ORTE_GPR_SUBSCRIPTION_ID_MAX, 0, 0, NULL, 0, NULL}
#define ORTE_GPR_SUBSCRIPTION_EMPTY {OBJ_CLASS_EMPTY(orte_gpr_subscription_t), NULL, ORTE_GPR_SUBSCRIPTION_ID_MAX, 0, 0, NULL, 0, NULL}
/** Structure for registering triggers
* A trigger causes the associated subscriptions to be executed at a specified event,
@ -248,7 +248,7 @@ typedef struct {
} orte_gpr_trigger_t;
ORTE_DECLSPEC OBJ_CLASS_DECLARATION(orte_gpr_trigger_t);
#define ORTE_GPR_TRIGGER_EMPTY {{OBJ_CLASS(orte_gpr_trigger_t),0}, NULL, ORTE_GPR_TRIGGER_ID_MAX, 0, 0, NULL, 0, NULL}
#define ORTE_GPR_TRIGGER_EMPTY {OBJ_CLASS_EMPTY(orte_gpr_trigger_t), NULL, ORTE_GPR_TRIGGER_ID_MAX, 0, 0, NULL, 0, NULL}
#if defined(c_plusplus) || defined(__cplusplus)
}