OpenMPI 0.1.1

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

- File List
- Globals

event.h
1 /*
2 * Copyright (c) 2010 Cisco Systems, Inc. All rights reserved.
3 * Copyright (c) 2010 Oracle and/or its affiliates. All rights reserved.
4 *
5 * $COPYRIGHT$
6 *
7 * Additional copyrights may follow
8 */
9
10 #ifndef OPAL_MCA_EVENT_H
11 #define OPAL_MCA_EVENT_H
12
13 #include "opal_config.h"
14
15 #ifdef HAVE_SYS_TYPES_H
16 #include <sys/types.h>
17 #endif
18 #ifdef HAVE_SYS_TIME_H
19 #include <sys/time.h>
20 #endif
21 #ifdef HAVE_STDINT_H
22 #include <stdint.h>
23 #endif
24 #ifdef HAVE_STDARG_H
25 #include <stdarg.h>
26 #endif
27
28 #include "opal/mca/mca.h"
29 #include "opal/mca/base/base.h"
30
31 BEGIN_C_DECLS
32
33 #ifdef WIN32
34 #define WIN32_LEAN_AND_MEAN
35 #include <windows.h>
36 #undef WIN32_LEAN_AND_MEAN
37 typedef unsigned char u_char;
38 typedef unsigned short u_short;
39 #endif
40
41
42 #define OPAL_EVENT_SIGNAL(ev) opal_event_get_signal(ev)
43
44 #define OPAL_TIMEOUT_DEFAULT {1, 0}
45
46 /* This is to prevent event library from picking up the win32_ops
47 since this will be picked up over select(). By using select, we can
48 pretty much use the OOB and PTL as is. Otherwise, there would have
49 to be a lot of magic to be done to get this to work */
50 #if defined(__WINDOWS__)
51 /*extern const eventop opal_win32ops;*/
52 #endif /* defined(__WINDOWS__) */
53
54
55 /**
56 * Structure for event components.
57 */
58 struct opal_event_base_component_2_0_0_t {
59 /** MCA base component */
60 mca_base_component_t base_version;
61 /** MCA base data */
62 mca_base_component_data_t base_data;
63 };
64
65 /**
66 * Convenience typedef
67 */
68 typedef struct opal_event_base_component_2_0_0_t opal_event_base_component_2_0_0_t;
69 typedef struct opal_event_base_component_2_0_0_t opal_event_component_t;
70
71 /**
72 * Macro for use in components that are of type event
73 */
74 #define OPAL_EVENT_BASE_VERSION_2_0_0 \
75 MCA_BASE_VERSION_2_0_0, \
76 "event", 2, 0, 0
77
78 END_C_DECLS
79
80 /* include implementation to call */
81 #include MCA_event_IMPLEMENTATION_HEADER
82
83 #endif /* OPAL_EVENT_H_ */
opal_event_base_component_2_0_0_t
Structure for event components.
Definition: event.h:58
mca_base_component_2_0_0_t
Common type for all MCA components.
Definition: mca.h:250
opal_event_base_component_2_0_0_t::base_version
mca_base_component_t base_version
MCA base component.
Definition: event.h:60
mca.h
Top-level interface for all MCA components.
opal_event_base_component_2_0_0_t::base_data
mca_base_component_data_t base_data
MCA base data.
Definition: event.h:62
mca_base_component_data_2_0_0_t
Meta data for MCA v2.0.0 components.
Definition: mca.h:309