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 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248
|
.TH ACE_Module 3 "1 Dec 2001" "ACE" \" -*- nroff -*-
.ad l
.nh
.SH NAME
ACE_Module \- An abstraction for managing a bi-directional flow of messages.
.SH SYNOPSIS
.br
.PP
\fC#include <Module.h>\fR
.PP
Inherits \fBACE_Module_Base\fR.
.PP
.SS Public Methods
.in +1c
.ti -1c
.RI "\fBACE_Module\fR (void)"
.br
.RI "\fICreate an empty Module.\fR"
.ti -1c
.RI "\fB~ACE_Module\fR (void)"
.br
.RI "\fIShutdown the Module.\fR"
.ti -1c
.RI "\fBACE_Module\fR (const \fBACE_TCHAR\fR *module_name, \fBACE_Task\fR<ACE_SYNCH_USE> *writer = 0, \fBACE_Task\fR<ACE_SYNCH_USE> *reader = 0, void *args = 0, int flags = M_DELETE)"
.br
.RI "\fICreate an initialized module with <module_name> as its identity and <reader> and <writer> as its tasks.\fR"
.ti -1c
.RI "int \fBopen\fR (const \fBACE_TCHAR\fR *module_name, \fBACE_Task\fR<ACE_SYNCH_USE> *writer = 0, \fBACE_Task\fR<ACE_SYNCH_USE> *reader = 0, void *a = 0, int flags = M_DELETE)"
.br
.ti -1c
.RI "int \fBclose\fR (int flags = M_DELETE_NONE)"
.br
.ti -1c
.RI "\fBACE_Task\fR<ACE_SYNCH_USE>* \fBwriter\fR (void)"
.br
.RI "\fIGet the writer task.\fR"
.ti -1c
.RI "void \fBwriter\fR (\fBACE_Task\fR<ACE_SYNCH_USE> *q, int flags = M_DELETE_WRITER)"
.br
.ti -1c
.RI "\fBACE_Task\fR<ACE_SYNCH_USE>* \fBreader\fR (void)"
.br
.RI "\fIGet the reader task.\fR"
.ti -1c
.RI "void \fBreader\fR (\fBACE_Task\fR<ACE_SYNCH_USE> *q, int flags = M_DELETE_READER)"
.br
.ti -1c
.RI "\fBACE_Task\fR<ACE_SYNCH_USE>* \fBsibling\fR (\fBACE_Task\fR<ACE_SYNCH_USE> *orig)"
.br
.RI "\fISet and get pointer to sibling in an .\fR"
.ti -1c
.RI "const \fBACE_TCHAR\fR* \fBname\fR (void) const"
.br
.RI "\fIGet the module name. Set the module name.\fR"
.ti -1c
.RI "void \fBname\fR (const \fBACE_TCHAR\fR *)"
.br
.ti -1c
.RI "void* \fBarg\fR (void) const"
.br
.RI "\fIGet the argument passed to the tasks.\fR"
.ti -1c
.RI "void \fBarg\fR (void *)"
.br
.RI "\fISet the argument passed to the tasks.\fR"
.ti -1c
.RI "void \fBlink\fR (ACE_Module<ACE_SYNCH_USE> *m)"
.br
.RI "\fILink to other modules in the ustream stack.\fR"
.ti -1c
.RI "ACE_Module<ACE_SYNCH_USE>* \fBnext\fR (void)"
.br
.RI "\fIGet the next pointer to the module above in the stream.\fR"
.ti -1c
.RI "void \fBnext\fR (ACE_Module<ACE_SYNCH_USE> *m)"
.br
.RI "\fISet the next pointer to the module above in the stream.\fR"
.ti -1c
.RI "void \fBdump\fR (void) const"
.br
.RI "\fIDump the state of an object.\fR"
.in -1c
.SS Public Attributes
.in +1c
.ti -1c
.RI "\fBACE_ALLOC_HOOK_DECLARE\fR"
.br
.RI "\fIDeclare the dynamic allocation hooks.\fR"
.in -1c
.SS Private Methods
.in +1c
.ti -1c
.RI "int \fBclose_i\fR (int which, int flags)"
.br
.RI "\fIImplements the close operation for either the reader or the writer task (depending on <which>).\fR"
.in -1c
.SS Private Attributes
.in +1c
.ti -1c
.RI "\fBACE_Task\fR<ACE_SYNCH_USE>* \fBq_pair_\fR [2]"
.br
.RI "\fIPair of Tasks that form the "read-side" and "write-side" of the ACE_Module partitioning.\fR"
.ti -1c
.RI "\fBACE_TCHAR\fR \fBname_\fR [MAXNAMLEN + 1]"
.br
.RI "\fIName of the ACE_Module.\fR"
.ti -1c
.RI "ACE_Module<ACE_SYNCH_USE>* \fBnext_\fR"
.br
.RI "\fINext ACE_Module in the stack.\fR"
.ti -1c
.RI "void* \fBarg_\fR"
.br
.RI "\fIArgument passed through to the reader and writer task when they are opened.\fR"
.ti -1c
.RI "int \fBflags_\fR"
.br
.RI "\fIHolds flags which are used to determine if the reader and writer task have to be deleted on exit.\fR"
.in -1c
.SS Friends
.in +1c
.ti -1c
.RI "class \fBACE_Shutup_GPlusPlus\fR"
.br
.in -1c
.SH DETAILED DESCRIPTION
.PP
.SS template<ACE_SYNCH_DECL> template class ACE_Module
An abstraction for managing a bi-directional flow of messages.
.PP
.PP
This is based on the Module concept in System V Streams, which contains a pair of Tasks, one for handling upstream processing, one for handling downstream processing. In general, you shouldn't subclass from this class, but instead subclass from the .
.PP
.SH CONSTRUCTOR & DESTRUCTOR DOCUMENTATION
.PP
.SS template<ACE_SYNCH_DECL> ACE_Module<>::ACE_Module<> (void)
.PP
Create an empty Module.
.PP
.SS template<ACE_SYNCH_DECL> ACE_Module<>::~ACE_Module<> (void)
.PP
Shutdown the Module.
.PP
.SS template<ACE_SYNCH_DECL> ACE_Module<>::ACE_Module<> (const \fBACE_TCHAR\fR * module_name, \fBACE_Task\fR< ACE_SYNCH_USE >* writer = 0, \fBACE_Task\fR< ACE_SYNCH_USE >* reader = 0, void * args = 0, int flags = M_DELETE)
.PP
Create an initialized module with <module_name> as its identity and <reader> and <writer> as its tasks.
.PP
.SH MEMBER FUNCTION DOCUMENTATION
.PP
.SS template<ACE_SYNCH_DECL> void ACE_Module<>::arg (void *)
.PP
Set the argument passed to the tasks.
.PP
.SS template<ACE_SYNCH_DECL> void * ACE_Module<>::arg (void) const
.PP
Get the argument passed to the tasks.
.PP
.SS template<ACE_SYNCH_DECL> int ACE_Module<>::close (int flags = M_DELETE_NONE)
.PP
Close down the Module and its Tasks. The flags argument can be used to override the default behaviour, which depends on previous <flags> values in calls to c'tor, <open>, <reader>, and <writer>. A previous value M_DELETE[_XXX] can not be overridden. Should not be called from within .
.SS template<ACE_SYNCH_DECL> int ACE_Module<>::close_i (int which, int flags)\fC [private]\fR
.PP
Implements the close operation for either the reader or the writer task (depending on <which>).
.PP
.SS template<ACE_SYNCH_DECL> void ACE_Module<>::dump (void) const
.PP
Dump the state of an object.
.PP
.SS template<ACE_SYNCH_DECL> void ACE_Module<>::link (ACE_Module< ACE_SYNCH_USE >* m)
.PP
Link to other modules in the ustream stack.
.PP
.SS template<ACE_SYNCH_DECL> void ACE_Module<>::name (const \fBACE_TCHAR\fR *)
.PP
.SS template<ACE_SYNCH_DECL> const \fBACE_TCHAR\fR * ACE_Module<>::name (void) const
.PP
Get the module name. Set the module name.
.PP
.SS template<ACE_SYNCH_DECL> void ACE_Module<>::next (ACE_Module< ACE_SYNCH_USE >* m)
.PP
Set the next pointer to the module above in the stream.
.PP
.SS template<ACE_SYNCH_DECL> ACE_Module< ACE_SYNCH_USE >* ACE_Module<>::next (void)
.PP
Get the next pointer to the module above in the stream.
.PP
.SS template<ACE_SYNCH_DECL> int ACE_Module<>::open (const \fBACE_TCHAR\fR * module_name, \fBACE_Task\fR< ACE_SYNCH_USE >* writer = 0, \fBACE_Task\fR< ACE_SYNCH_USE >* reader = 0, void * a = 0, int flags = M_DELETE)
.PP
Create an initialized module with <module_name> as its identity and <reader> and <writer> as its tasks. Previously register reader or writers or closed down and deleted according to the value of flags_. Should not be called from within .
.SS template<ACE_SYNCH_DECL> void ACE_Module<>::reader (\fBACE_Task\fR< ACE_SYNCH_USE >* q, int flags = M_DELETE_READER)
.PP
Set the reader task. <flags> can be used to indicate that the module should delete the reader during a call to close or to the destructor. If a previous reader exists, it is closed. It may also be deleted, depending on the old flags_ value. Should not be called from within .
.SS template<ACE_SYNCH_DECL> \fBACE_Task\fR< ACE_SYNCH_USE >* ACE_Module<>::reader (void)
.PP
Get the reader task.
.PP
.SS template<ACE_SYNCH_DECL> \fBACE_Task\fR< ACE_SYNCH_USE >* ACE_Module<>::sibling (\fBACE_Task\fR< ACE_SYNCH_USE >* orig)
.PP
Set and get pointer to sibling in an .
.PP
.SS template<ACE_SYNCH_DECL> void ACE_Module<>::writer (\fBACE_Task\fR< ACE_SYNCH_USE >* q, int flags = M_DELETE_WRITER)
.PP
Set the writer task. <flags> can be used to indicate that the module should delete the writer during a call to close or to the destructor. If a previous writer exists, it is closed. It may also be deleted, depending on the old flags_ value. Should not be called from within .
.SS template<ACE_SYNCH_DECL> \fBACE_Task\fR< ACE_SYNCH_USE >* ACE_Module<>::writer (void)
.PP
Get the writer task.
.PP
.SH FRIENDS AND RELATED FUNCTION DOCUMENTATION
.PP
.SS template<ACE_SYNCH_DECL> class ACE_Shutup_GPlusPlus\fC [friend]\fR
.PP
.SH MEMBER DATA DOCUMENTATION
.PP
.SS template<ACE_SYNCH_DECL> ACE_Module<>::ACE_ALLOC_HOOK_DECLARE
.PP
Declare the dynamic allocation hooks.
.PP
.SS template<ACE_SYNCH_DECL> void * ACE_Module<>::arg_\fC [private]\fR
.PP
Argument passed through to the reader and writer task when they are opened.
.PP
.SS template<ACE_SYNCH_DECL> int ACE_Module<>::flags_\fC [private]\fR
.PP
Holds flags which are used to determine if the reader and writer task have to be deleted on exit.
.PP
.SS template<ACE_SYNCH_DECL> \fBACE_TCHAR\fR ACE_Module<>::name_[MAXNAMLEN+1]\fC [private]\fR
.PP
Name of the ACE_Module.
.PP
.SS template<ACE_SYNCH_DECL> ACE_Module< ACE_SYNCH_USE >* ACE_Module<>::next_\fC [private]\fR
.PP
Next ACE_Module in the stack.
.PP
.SS template<ACE_SYNCH_DECL> \fBACE_Task\fR< ACE_SYNCH_USE >* ACE_Module<>::q_pair_[2]\fC [private]\fR
.PP
Pair of Tasks that form the "read-side" and "write-side" of the ACE_Module partitioning.
.PP
.SH AUTHOR
.PP
Generated automatically by Doxygen for ACE from the source code.
|