ChimeraTK-DeviceAccess 03.25.00
Loading...
Searching...
No Matches
VoidRegisterAccessor.cc
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Deutsches Elektronen-Synchrotron DESY, MSK, ChimeraTK Project <chimeratk-support@desy.de>
2// SPDX-License-Identifier: LGPL-3.0-or-later
3
5
6namespace ChimeraTK {
7
8 /********************************************************************************************************************/
9
12 if(!impl->getAccessModeFlags().has(AccessMode::wait_for_new_data) && !impl->isWriteable()) {
14 "A VoidRegisterAccessor without wait_for_new_data does not make sense for non-writeable register " +
15 impl->getName());
16 }
17 }
18
19 /********************************************************************************************************************/
20
22 // synchronous void accessors are never readable, hence they are never read-only
23 if(!_impl->getAccessModeFlags().has(AccessMode::wait_for_new_data)) {
24 return false;
25 }
26 return _impl->isReadOnly();
27 }
28
29 /********************************************************************************************************************/
30
32 // synchronous void accessors are never readable
33 if(!_impl->getAccessModeFlags().has(AccessMode::wait_for_new_data)) {
34 return false;
35 }
36 return _impl->isReadable();
37 }
38
39 /********************************************************************************************************************/
40
41} // namespace ChimeraTK
Base class for the register accessor abstractors (ScalarRegisterAccessor, OneDRegisterAccessor and Tw...
N-dimensional register accessor.
boost::shared_ptr< TransferElement > _impl
Untyped pointer to implementation.
VoidRegisterAccessor()=default
Placeholder constructer, to allow late initialisation of the accessor, e.g.
Exception thrown when a logic error has occured.
Definition Exception.h:51
@ wait_for_new_data
Make any read blocking until new data has arrived since the last read.