File: ACE_Msg_WFMO_Reactor.3

package info (click to toggle)
ace 5.2.1-1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 26,856 kB
  • ctags: 18,677
  • sloc: cpp: 171,831; makefile: 48,840; sh: 10,192; perl: 8,582; exp: 787; yacc: 387; lex: 140; csh: 20
file content (120 lines) | stat: -rw-r--r-- 4,936 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
.TH ACE_Msg_WFMO_Reactor 3 "1 Dec 2001" "ACE" \" -*- nroff -*-
.ad l
.nh
.SH NAME
ACE_Msg_WFMO_Reactor \- An OO event demultiplexor and event handler dispatcher for Win32 <MsgWaitForMultipleObjects>. 
.SH SYNOPSIS
.br
.PP
\fC#include <Msg_WFMO_Reactor.h>\fR
.PP
Inherits \fBACE_WFMO_Reactor\fR.
.PP
.SS Public Methods

.in +1c
.ti -1c
.RI "\fBACE_Msg_WFMO_Reactor\fR (\fBACE_Sig_Handler\fR * = 0, \fBACE_Timer_Queue\fR * = 0)"
.br
.RI "\fIInitialize  with the default size.\fR"
.ti -1c
.RI "\fBACE_Msg_WFMO_Reactor\fR (size_t size, int unused = 0, \fBACE_Sig_Handler\fR * = 0, \fBACE_Timer_Queue\fR * = 0)"
.br
.ti -1c
.RI "virtual \fB~ACE_Msg_WFMO_Reactor\fR (void)"
.br
.RI "\fIClose down the ACE_Msg_WFMO_Reactor and release all of its resources.\fR"
.ti -1c
.RI "virtual int \fBhandle_events\fR (\fBACE_Time_Value\fR *max_wait_time = 0)"
.br
.ti -1c
.RI "virtual int \fBalertable_handle_events\fR (\fBACE_Time_Value\fR *max_wait_time = 0)"
.br
.ti -1c
.RI "virtual int \fBhandle_events\fR (\fBACE_Time_Value\fR &max_wait_time)"
.br
.ti -1c
.RI "virtual int \fBalertable_handle_events\fR (\fBACE_Time_Value\fR &max_wait_time)"
.br
.in -1c
.SS Protected Methods

.in +1c
.ti -1c
.RI "virtual int \fBwait_for_multiple_events\fR (int timeout, int alertable)"
.br
.RI "\fIWait for timer and I/O events to occur.\fR"
.ti -1c
.RI "virtual DWORD \fBpoll_remaining_handles\fR (size_t index)"
.br
.RI "\fICheck for activity on remaining handles.\fR"
.ti -1c
.RI "virtual int \fBdispatch_window_messages\fR (void)"
.br
.RI "\fIDispatches window messages.\fR"
.in -1c
.SH DETAILED DESCRIPTION
.PP 
An OO event demultiplexor and event handler dispatcher for Win32 <MsgWaitForMultipleObjects>.
.PP
.PP
 The ACE_Msg_WFMO_Reactor is an OO event demultiplexor and event handler Reactor. It differs from  by its ability to react on Windows messages. It is needed when the task should serve also as a COM/DCOM server. 
.PP
.SH CONSTRUCTOR & DESTRUCTOR DOCUMENTATION
.PP 
.SS ACE_Msg_WFMO_Reactor::ACE_Msg_WFMO_Reactor (\fBACE_Sig_Handler\fR * = 0, \fBACE_Timer_Queue\fR * = 0)
.PP
Initialize  with the default size.
.PP
.SS ACE_Msg_WFMO_Reactor::ACE_Msg_WFMO_Reactor (size_t size, int unused = 0, \fBACE_Sig_Handler\fR * = 0, \fBACE_Timer_Queue\fR * = 0)
.PP
Initialize  with size <size>. Two slots will be added to the <size> parameter which will store handles used for internal management purposes. 
.SS ACE_Msg_WFMO_Reactor::~ACE_Msg_WFMO_Reactor (void)\fC [virtual]\fR
.PP
Close down the ACE_Msg_WFMO_Reactor and release all of its resources.
.PP
.SH MEMBER FUNCTION DOCUMENTATION
.PP 
.SS virtual int ACE_Msg_WFMO_Reactor::alertable_handle_events (\fBACE_Time_Value\fR & max_wait_time)\fC [virtual]\fR
.PP
Reimplemented from \fBACE_WFMO_Reactor\fR.
.SS virtual int ACE_Msg_WFMO_Reactor::alertable_handle_events (\fBACE_Time_Value\fR * max_wait_time = 0)\fC [virtual]\fR
.PP
Reimplemented from \fBACE_WFMO_Reactor\fR.
.SS int ACE_Msg_WFMO_Reactor::dispatch_window_messages (void)\fC [protected, virtual]\fR
.PP
Dispatches window messages.
.PP
Reimplemented from \fBACE_WFMO_Reactor\fR.
.SS int ACE_Msg_WFMO_Reactor::handle_events (\fBACE_Time_Value\fR & max_wait_time)\fC [virtual]\fR
.PP
This method is just like the one above, except the <max_wait_time> value is a reference and can therefore never be NULL. 
.PP
Reimplemented from \fBACE_WFMO_Reactor\fR.
.SS int ACE_Msg_WFMO_Reactor::handle_events (\fBACE_Time_Value\fR * max_wait_time = 0)\fC [virtual]\fR
.PP
This event loop driver blocks for up to <max_wait_time> before returning. It will return earlier if timer events, I/O events, window events, or signal events occur. Note that <max_wait_time> can be 0, in which case this method blocks indefinitely until events occur.
.PP
<max_wait_time> is decremented to reflect how much time this call took. For instance, if a time value of 3 seconds is passed to handle_events and an event occurs after 2 seconds, <max_wait_time> will equal 1 second. This can be used if an application wishes to handle events for some fixed amount of time.
.PP
<MsgWaitForMultipleObjects> is used as the demultiplexing call
.PP
Returns the total number of s that were dispatched, 0 if the <max_wait_time> elapsed without dispatching any handlers, or -1 if an error occurs.
.PP
The only difference between  and <handle_events> is that in the alertable case, MWMO_ALERTABLE is passed to <MsgWaitForMultipleObjects> for the <bAlertable> option. 
.PP
Reimplemented from \fBACE_WFMO_Reactor\fR.
.SS DWORD ACE_Msg_WFMO_Reactor::poll_remaining_handles (size_t index)\fC [protected, virtual]\fR
.PP
Check for activity on remaining handles.
.PP
Reimplemented from \fBACE_WFMO_Reactor\fR.
.SS int ACE_Msg_WFMO_Reactor::wait_for_multiple_events (int timeout, int alertable)\fC [protected, virtual]\fR
.PP
Wait for timer and I/O events to occur.
.PP
Reimplemented from \fBACE_WFMO_Reactor\fR.

.SH AUTHOR
.PP 
Generated automatically by Doxygen for ACE from the source code.