![]() |
ChimeraTK-DeviceAccess 03.20.00
|
Classes | |
class | Accessor |
Public Member Functions | |
AsyncTestDummy () | |
std::string | readDeviceInfo () override |
Return a device information string containing hardware details like the firmware version number or the slot number used by the board. | |
RegisterCatalogue | getRegisterCatalogue () const override |
Return the register catalogue with detailed information on all registers. | |
template<typename UserType > | |
boost::shared_ptr< NDRegisterAccessor< UserType > > | getRegisterAccessor_impl (const RegisterPath ®isterPathName, size_t numberOfWords, size_t wordOffsetInRegister, AccessModeFlags flags) |
DEFINE_VIRTUAL_FUNCTION_TEMPLATE_VTABLE_FILLER (AsyncTestDummy, getRegisterAccessor_impl, 4) | |
void | open () override |
Open the device. | |
void | close () override |
Close the device. | |
void | setExceptionImpl () noexcept override |
Function to be (optionally) implemented by backends if additional actions are needed when switching to the exception state. | |
![]() | |
bool | isOpen () override |
Return whether a device has been opened or not. | |
bool | isConnected () final |
Deprecated since 2022-03-03. | |
MetadataCatalogue | getMetadataCatalogue () const override |
Return the device metadata catalogue. | |
void | checkActiveException () final |
Function to be called by backends when needing to check for an active exception. | |
void | setException (const std::string &message) noexcept final |
Set the backend into an exception state. | |
bool | isFunctional () const noexcept final |
Return whether a device is working as intended, usually this means it is opened and does not have any errors. | |
std::string | getActiveExceptionMessage () noexcept |
std::set< DeviceBackend::BackendID > | getInvolvedBackendIDs () override |
Get the backend IDs of all involved backends. | |
![]() | |
virtual | ~DeviceBackend ()=default |
Every virtual class needs a virtual desctructor. | |
template<typename UserType > | |
boost::shared_ptr< NDRegisterAccessor< UserType > > | getRegisterAccessor (const RegisterPath ®isterPathName, size_t numberOfWords, size_t wordOffsetInRegister, AccessModeFlags flags) |
Get a NDRegisterAccessor object from the register name. | |
DEFINE_VIRTUAL_FUNCTION_TEMPLATE_VTABLE (getRegisterAccessor_impl, boost::shared_ptr< NDRegisterAccessor< T > >(const RegisterPath &, size_t, size_t, AccessModeFlags)) | |
virtual void | activateAsyncRead () noexcept |
Activate asyncronous read for all transfer elements where AccessMode::wait_for_new_data is set. | |
BackendID | getBackendID () |
Get a unique ID for this backend instance. | |
Static Public Member Functions | |
static boost::shared_ptr< DeviceBackend > | createInstance (std::string, std::map< std::string, std::string >) |
Public Attributes | |
std::map< std::string, cppext::future_queue< void > > | notificationQueue |
std::map< std::string, size_t > | registers |
bool | _hasActiveException {false} |
Additional Inherited Members | |
![]() | |
using | BackendID = std::uintptr_t |
![]() | |
void | setOpenedAndClearException () noexcept |
Backends should call this function at the end of a (successful) open() call. | |
![]() | |
std::atomic< bool > | _opened {false} |
flag if backend is opened | |
async::DomainsContainer | _asyncDomainsContainer |
Container for async::Domains to support wait_for_new_data. | |
Definition at line 29 of file testAsyncRead.cpp.
|
inlineexplicit |
Definition at line 31 of file testAsyncRead.cpp.
|
inlineoverridevirtual |
Close the device.
Implements ChimeraTK::DeviceBackend.
Definition at line 108 of file testAsyncRead.cpp.
|
inlinestatic |
Definition at line 37 of file testAsyncRead.cpp.
AsyncTestDummy::DEFINE_VIRTUAL_FUNCTION_TEMPLATE_VTABLE_FILLER | ( | AsyncTestDummy | , |
getRegisterAccessor_impl | , | ||
4 | |||
) |
|
inline |
Definition at line 89 of file testAsyncRead.cpp.
|
inlineoverridevirtual |
Return the register catalogue with detailed information on all registers.
Implements ChimeraTK::DeviceBackend.
Definition at line 35 of file testAsyncRead.cpp.
|
inlineoverridevirtual |
Open the device.
Implements ChimeraTK::DeviceBackend.
Definition at line 103 of file testAsyncRead.cpp.
|
inlineoverridevirtual |
Return a device information string containing hardware details like the firmware version number or the slot number used by the board.
The format and contained information of this string is completely backend implementation dependent, so the string may only be printed to the user as an informational output. Do not try to parse this string or extract information from it programmatically.
Implements ChimeraTK::DeviceBackend.
Definition at line 33 of file testAsyncRead.cpp.
|
inlineoverridevirtualnoexcept |
Function to be (optionally) implemented by backends if additional actions are needed when switching to the exception state.
Reimplemented from ChimeraTK::DeviceBackendImpl.
Definition at line 113 of file testAsyncRead.cpp.
bool AsyncTestDummy::_hasActiveException {false} |
Definition at line 117 of file testAsyncRead.cpp.
std::map<std::string, cppext::future_queue<void> > AsyncTestDummy::notificationQueue |
Definition at line 110 of file testAsyncRead.cpp.
std::map<std::string, size_t> AsyncTestDummy::registers |
Definition at line 111 of file testAsyncRead.cpp.