YARP
Yet Another Robot Platform
RecursiveMutex.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2006-2020 Istituto Italiano di Tecnologia (IIT)
3
* All rights reserved.
4
*
5
* This software may be modified and distributed under the terms of the
6
* BSD-3-Clause license. See the accompanying LICENSE file for details.
7
*/
8
9
#ifndef YARP_OS_RECURSIVELOCK_H
10
#define YARP_OS_RECURSIVELOCK_H
11
12
#include <
yarp/conf/system.h
>
13
14
#if !defined(YARP_INCLUDING_DEPRECATED_HEADER_ON_PURPOSE)
15
YARP_COMPILER_WARNING
(
"<yarp/os/RecursiveMutex.h> file is deprecated"
)
16
#endif
17
18
#ifndef YARP_NO_DEPRECATED // Since YARP 3.3
19
20
#include <
yarp/os/api.h
>
21
#include <mutex>
22
23
namespace
yarp
{
24
namespace
os {
25
43
class
YARP_os_DEPRECATED_API_MSG
("Use std::recursive_mutex instead")
RecursiveMutex
44
{
45
public
:
49
RecursiveMutex
();
50
54
~
RecursiveMutex
();
55
64
void
lock();
65
73
bool
try_lock();
74
81
void
unlock();
82
92
YARP_DEPRECATED_MSG
(
"Use try_lock() instead"
)
93
bool
tryLock();
94
95
#ifndef DOXYGEN_SHOULD_SKIP_THIS
96
private
:
97
class
Private
;
98
Private
* mPriv;
99
#endif // DOXYGEN_SHOULD_SKIP_THIS
100
};
101
102
}
// namespace os
103
}
// namespace yarp
104
105
#endif // YARP_NO_DEPRECATED
106
107
#endif // YARP_OS_RECURSIVELOCK_H
yarp::os::RecursiveMutex
RecursiveMutex offers exclusive, recursive ownership semantics:
Definition:
RecursiveMutex.h:44
api.h
system.h
YARP_DEPRECATED_MSG
#define YARP_DEPRECATED_MSG(MSG)
Expands to either the standard [[deprecated]] attribute or a compiler-specific decorator such as __at...
Definition:
compiler.h:2883
yarp
The main, catch-all namespace for YARP.
Definition:
environment.h:18
YARP_os_DEPRECATED_API_MSG
#define YARP_os_DEPRECATED_API_MSG(X)
Definition:
api.h:23
yarp::os::RecursiveMutex::Private
Definition:
RecursiveMutex.cpp:18
YARP_COMPILER_WARNING
#define YARP_COMPILER_WARNING(x)
Generate a warning at build time on supported compilers.
Definition:
system.h:112
YARP
3.4.100+20201223.2+gitb8ea4d712
src
libYARP_os
src
yarp
os
RecursiveMutex.h
Generated on Sun Jan 3 2021 02:46:25 for YARP by
1.8.20