|
ChimeraTK-DeviceAccess
03.18.00
|
Go to the documentation of this file.
12 #include <ChimeraTK/cppext/finally.hpp>
20 template<
typename UserType>
24 size_t numberOfWords,
size_t wordOffsetInRegister,
AccessModeFlags flags);
36 [[nodiscard]]
bool mayReplaceOther(
const boost::shared_ptr<TransferElement const>&)
const override;
38 [[nodiscard]]
bool isReadOnly()
const override;
40 [[nodiscard]]
bool isReadable()
const override;
55 boost::shared_ptr<LogicalNameMappingBackend>
_dev;
75 std::list<boost::shared_ptr<LNMBackend::MathPluginFormulaHelper>>
_formulaHelpers;
78 return {boost::enable_shared_from_this<TransferElement>::shared_from_this()};
void interrupt() override
bool isWriteable() const override
bool doWriteTransfer(ChimeraTK::VersionNumber) override
std::list< boost::shared_ptr< LNMBackend::MathPluginFormulaHelper > > _formulaHelpers
in case a MathPlugin formulas are using this variable, references to the FormulaHelpers
void doPostRead(TransferType, bool hasNewData) override
LNMBackendRegisterInfo _info
register information.
~LNMBackendVariableAccessor() override
void replaceTransferElement(boost::shared_ptr< TransferElement >) override
std::list< boost::shared_ptr< TransferElement > > getInternalElements() override
AccessModeFlags _flags
access mode flags
bool mayReplaceOther(const boost::shared_ptr< TransferElement const > &) const override
void doPostWrite(TransferType type, VersionNumber versionNumber) override
void doPreWrite(TransferType type, VersionNumber) override
void doPreRead(TransferType) override
void doReadTransferSynchronously() override
RegisterInfo structure for the LogicalNameMappingBackend.
LNMBackendVariableAccessor(const boost::shared_ptr< DeviceBackend > &dev, const RegisterPath ®isterPathName, size_t numberOfWords, size_t wordOffsetInRegister, AccessModeFlags flags)
TransferType
Used to indicate the applicable operation on a Transferelement.
std::vector< boost::shared_ptr< TransferElement > > getHardwareAccessingElements() override
bool isReadOnly() const override
LNMVariable::ValueTable< UserType >::QueuedValue _queueValue
Intermediate buffer used when receiving value from queue, as writing to application buffer must only ...
Class to store a register path name.
VersionNumber currentVersion
Version number of the last transfer.
boost::shared_ptr< LogicalNameMappingBackend > _dev
backend device
Class for generating and holding version numbers without exposing a numeric representation.
Set of AccessMode flags with additional functionality for an easier handling.
DECLARE_TEMPLATE_FOR_CHIMERATK_USER_TYPES(DummyInterruptTriggerAccessor)
RegisterPath _registerPathName
register and module name
bool isReadable() const override
size_t _wordOffsetInRegister
Word offset when reading.
N-dimensional register accessor.