ChimeraTK-DeviceAccess
03.18.00
|
Accessor for raw 32 bit integer access to the underlying memory space. More...
#include <DummyRegisterAccessor.h>
Public Member Functions | |
operator int32_t & () | |
Implicit type conversion to int32_t. More... | |
DummyRegisterRawAccessor (boost::shared_ptr< DeviceBackend > const &backend, std::string const &module, std::string const &name) | |
DummyRegisterRawAccessor (const DummyRegisterRawAccessor &)=default | |
void | operator= (const DummyRegisterRawAccessor &rightHandSide) const =delete |
remove assignment operator since it will be confusing More... | |
DummyRegisterRawAccessor & | operator= (int32_t rhs) |
int32_t & | operator[] (unsigned int index) |
Get or set register content by [] operator. More... | |
unsigned int | getNumberOfElements () const |
return number of elements More... | |
std::unique_lock< std::mutex > | getBufferLock () |
Get a lock to safely modify the buffer. More... | |
Protected Attributes | |
boost::shared_ptr< DummyBackend > | _backend |
pointer to dummy backend More... | |
NumericAddressedRegisterInfo | registerInfo |
register map information More... | |
int32_t * | buffer |
raw buffer of this accessor More... | |
Accessor for raw 32 bit integer access to the underlying memory space.
Usually you want the interpreted version, but for debugging the converters themselves and functionality of the NumericAddressedBackendRegisterAccessor we directly want to write to the registers, without having to mess with absolute addresses (we still depend on the map file parser, but the whole dummy does. The address translation is re-done in the dummy, we are not using the one from the regular accessors.)
WARNING: You must not touch any data content of the accessor without holding a lock to the memory mutex for the internal data buffer (see getBufferLock()).
Definition at line 324 of file DummyRegisterAccessor.h.
|
inline |
Definition at line 331 of file DummyRegisterAccessor.h.
|
default |
|
inline |
Get a lock to safely modify the buffer.
You have to release it as soon as possible because it will block all other functionality of the Dummy. This is a really low low level debugging interface!
Definition at line 363 of file DummyRegisterAccessor.h.
|
inline |
return number of elements
Definition at line 358 of file DummyRegisterAccessor.h.
|
inline |
Implicit type conversion to int32_t.
This basically covers all operators for single integers.
Definition at line 329 of file DummyRegisterAccessor.h.
|
delete |
remove assignment operator since it will be confusing
|
inline |
Definition at line 349 of file DummyRegisterAccessor.h.
|
inline |
Get or set register content by [] operator.
Definition at line 355 of file DummyRegisterAccessor.h.
|
protected |
pointer to dummy backend
Definition at line 367 of file DummyRegisterAccessor.h.
|
protected |
raw buffer of this accessor
Definition at line 373 of file DummyRegisterAccessor.h.
|
protected |
register map information
Definition at line 370 of file DummyRegisterAccessor.h.