|
ChimeraTK-DeviceAccess
03.18.00
|
Go to the documentation of this file.
8 #include <boost/make_shared.hpp>
28 template<
typename UserType,
typename TargetType>
34 "AccessMode::wait_for_new_data is disallowed through ForcePollingReadPlugin for register '" +
35 target->getName() +
"'.");
38 if constexpr(std::is_same<UserType, TargetType>::value) {
Base class for plugins that modify the behaviour of accessors in the logical name mapping backend.
void remove(AccessMode flag)
Remove the given flag from the set.
Helper struct to hold extra parameters needed by some plugins, used in decorateAccessor()
bool has(AccessMode flag) const
Check if a certain flag is in the set.
@ wait_for_new_data
Make any read blocking until new data has arrived since the last read.
RegisterInfo structure for the LogicalNameMappingBackend.
LNMBackendRegisterInfo _info
RegisterInfo describing the the target register for which this plugin instance should work.
boost::shared_ptr< NDRegisterAccessor< UserType > > decorateAccessor(boost::shared_ptr< LogicalNameMappingBackend > &backend, boost::shared_ptr< NDRegisterAccessor< TargetType >> &target, const UndecoratedParams &accessorParams)
void doRegisterInfoUpdate() override
Implementation of the plugin specific register information update.
ForcePollingReadPlugin(const LNMBackendRegisterInfo &info, size_t pluginIndex, const std::map< std::string, std::string > ¶meters)
AccessModeFlags supportedFlags
Supported AccessMode flags.
N-dimensional register accessor.
Exception thrown when a logic error has occured.