pvAccessCPP
7.1.9
Toggle main menu visibility
Loading...
Searching...
No Matches
utils
pv
referenceCountingLock.h
1
6
7
#ifndef REFERENCECOUNTINGLOCK_H
8
#define REFERENCECOUNTINGLOCK_H
9
10
#ifdef epicsExportSharedSymbols
11
# define referenceCountingLockEpicsExportSharedSymbols
12
# undef epicsExportSharedSymbols
13
#endif
14
15
#include <pv/lock.h>
16
#include <pv/pvType.h>
17
#include <pv/sharedPtr.h>
18
19
#ifdef referenceCountingLockEpicsExportSharedSymbols
20
# define epicsExportSharedSymbols
21
# undef referenceCountingLockEpicsExportSharedSymbols
22
#endif
23
24
namespace
epics
{
25
namespace
pvAccess
{
26
35
class
ReferenceCountingLock
36
{
37
public
:
38
POINTER_DEFINITIONS(
ReferenceCountingLock
);
39
44
ReferenceCountingLock
();
48
virtual
~ReferenceCountingLock
();
62
bool
acquire
(
epics::pvData::int64
msecs);
66
void
release
();
72
int
increment
();
78
int
decrement
();
79
private
:
80
int
_references;
81
epics::pvData::Mutex _mutex;
82
epics::pvData::Mutex _countMutex;
83
};
84
85
}
86
}
87
88
#endif
/* REFERENCECOUNTINGLOCK_H */
epics::pvAccess::ReferenceCountingLock::ReferenceCountingLock
ReferenceCountingLock()
Constructor of ReferenceCountingLock.
epics::pvAccess::ReferenceCountingLock::acquire
bool acquire(epics::pvData::int64 msecs)
Attempt to acquire lock.
epics::pvAccess::ReferenceCountingLock::~ReferenceCountingLock
virtual ~ReferenceCountingLock()
Destructor of ReferenceCountingLock.
epics::pvAccess::ReferenceCountingLock::decrement
int decrement()
Decrement number of references.
epics::pvAccess::ReferenceCountingLock::increment
int increment()
Increment number of references.
epics::pvAccess::ReferenceCountingLock::release
void release()
Release previously acquired lock.
epics::pvAccess
Holds all PVA related.
Definition
monitor.h:37
epics::pvData::int64
int64_t int64
epics
Copyright - See the COPYRIGHT that is included with this distribution.
Generated on
for pvAccessCPP by
1.17.0