1 /* Copyright (c) 2003-2005 MySQL AB
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; version 2 of the License.
7 This program is distributed in the hope that it will be useful,
8 but WITHOUT ANY WARRANTY; without even the implied warranty of
9 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 GNU General Public License for more details.
12 You should have received a copy of the GNU General Public License
13 along with this program; if not, write to the Free Software
14 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
19 #include "SignalData.hpp"
32 friend class MutexManager
;
34 friend bool printUTIL_LOCK_REQ(FILE *, const Uint32
*, Uint32
, Uint16
);
36 STATIC_CONST( SignalLength
= 4 );
54 friend class MutexManager
;
61 friend bool printUTIL_LOCK_CONF(FILE *, const Uint32
*, Uint32
, Uint16
);
63 STATIC_CONST( SignalLength
= 4 );
78 friend class MutexManager
;
85 friend bool printUTIL_LOCK_REF(FILE *, const Uint32
*, Uint32
, Uint16
);
87 STATIC_CONST( SignalLength
= 4 );
93 DistributedLockNotSupported
= 3,
104 class UtilUnlockReq
{
115 friend class MutexManager
;
117 friend bool printUTIL_UNLOCK_REQ(FILE *, const Uint32
*, Uint32
, Uint16
);
119 STATIC_CONST( SignalLength
= 4 );
128 class UtilUnlockConf
{
134 friend class MutexManager
;
141 friend bool printUTIL_UNLOCK_CONF(FILE *, const Uint32
*, Uint32
, Uint16
);
143 STATIC_CONST( SignalLength
= 3 );
151 class UtilUnlockRef
{
157 friend class MutexManager
;
164 friend bool printUTIL_UNLOCK_REF(FILE *, const Uint32
*, Uint32
, Uint16
);
166 STATIC_CONST( SignalLength
= 4 );
183 class UtilCreateLockReq
{
192 friend class MutexManager
;
194 friend bool printUTIL_CREATE_LOCK_REQ(FILE *, const Uint32
*, Uint32
, Uint16
);
197 Mutex
= 0 // Lock with only exclusive locks
200 STATIC_CONST( SignalLength
= 4 );
209 class UtilCreateLockRef
{
218 friend class MutexManager
;
220 friend bool printUTIL_CREATE_LOCK_REF(FILE *, const Uint32
*, Uint32
, Uint16
);
224 OutOfLockQueueRecords
= 1,
225 LockIdAlreadyUsed
= 2,
226 UnsupportedLockType
= 3
229 STATIC_CONST( SignalLength
= 4 );
238 class UtilCreateLockConf
{
247 friend class MutexManager
;
249 friend bool printUTIL_CREATE_LOCK_CONF(FILE*, const Uint32
*, Uint32
, Uint16
);
251 STATIC_CONST( SignalLength
= 3 );
262 class UtilDestroyLockReq
{
271 friend class MutexManager
;
273 friend bool printUTIL_DESTROY_LOCK_REQ(FILE *, const Uint32
*, Uint32
, Uint16
);
275 STATIC_CONST( SignalLength
= 4 );
284 class UtilDestroyLockRef
{
293 friend class MutexManager
;
295 friend bool printUTIL_DESTROY_LOCK_REF(FILE *, const Uint32
*, Uint32
, Uint16
);
303 STATIC_CONST( SignalLength
= 4 );
312 class UtilDestroyLockConf
{
321 friend class MutexManager
;
323 friend bool printUTIL_DESTROY_LOCK_CONF(FILE*, const Uint32
*, Uint32
, Uint16
);
325 STATIC_CONST( SignalLength
= 3 );