ChimeraTK-DeviceAccess
03.18.00
|
Special accessor used to test the behaviour of the TransferElement base class and the TransferGroup. More...
#include <TransferElementTestAccessor.h>
Public Member Functions | |
TransferElementTestAccessor (AccessModeFlags flags) | |
~TransferElementTestAccessor () override | |
void | doPreRead (TransferType type) override |
void | doPreWrite (TransferType type, VersionNumber versionNumber) override |
void | doReadTransferSynchronously () override |
bool | doWriteTransfer (ChimeraTK::VersionNumber versionNumber) override |
bool | doWriteTransferDestructively (ChimeraTK::VersionNumber versionNumber) override |
void | doPostRead (TransferType type, bool updateDataBuffer) override |
void | doPostWrite (TransferType type, VersionNumber versionNumber) override |
bool | mayReplaceOther (const boost::shared_ptr< TransferElement const > &other) const override |
std::vector< boost::shared_ptr< TransferElement > > | getHardwareAccessingElements () override |
std::list< boost::shared_ptr< TransferElement > > | getInternalElements () override |
void | replaceTransferElement (boost::shared_ptr< TransferElement > newElement) override |
bool | isReadOnly () const override |
bool | isReadable () const override |
bool | isWriteable () const override |
void | interrupt () override |
void | resetCounters () |
void | putRuntimeErrorOnQueue () |
void | putDiscardValueOnQueue () |
bool | push () |
Public Member Functions inherited from ChimeraTK::NDRegisterAccessor< UserType > | |
NDRegisterAccessor (std::string const &name, AccessModeFlags accessModeFlags, std::string const &unit=std::string(TransferElement::unitNotSet), std::string const &description=std::string()) | |
Creates an NDRegisterAccessor with the specified name (passed on to the transfer element). More... | |
UserType & | accessData (size_t sample) |
Get or set register accessor's buffer content (1D version). More... | |
const UserType & | accessData (size_t sample) const |
UserType & | accessData (unsigned int channel, unsigned int sample) |
Get or set register accessor's buffer content (2D version). More... | |
const UserType & | accessData (unsigned int channel, unsigned int sample) const |
std::vector< UserType > & | accessChannel (unsigned int channel) |
Get or set register accessor's channel vector. More... | |
const std::vector< UserType > & | accessChannel (unsigned int channel) const |
std::vector< std::vector< UserType > > & | accessChannels () |
Get or set register accessor's 2D channel vector. More... | |
const std::vector< std::vector< UserType > > & | accessChannels () const |
unsigned int | getNumberOfSamples () const |
Return number of elements per channel. More... | |
unsigned int | getNumberOfChannels () const |
Return number of channels. More... | |
const std::type_info & | getValueType () const override |
template<typename COOKED_TYPE > | |
COOKED_TYPE | getAsCooked (unsigned int channel, unsigned int sample) const |
DEFINE_VIRTUAL_FUNCTION_TEMPLATE_VTABLE (getAsCooked_impl, T const(unsigned int, unsigned int)) | |
template<typename COOKED_TYPE > | |
COOKED_TYPE | getAsCooked_impl (unsigned int channel, unsigned int sample) const |
template<typename COOKED_TYPE > | |
void | setAsCooked (unsigned int channel, unsigned int sample, COOKED_TYPE value) |
DEFINE_VIRTUAL_FUNCTION_TEMPLATE_VTABLE (setAsCooked_impl, void(unsigned int, unsigned int, T)) | |
template<typename COOKED_TYPE > | |
void | setAsCooked_impl (unsigned int channel, unsigned int sample, COOKED_TYPE value) |
boost::shared_ptr< TransferElement > | makeCopyRegisterDecorator () override |
Static Public Attributes | |
static std::atomic< size_t > | _currentIndex |
Additional Inherited Members | |
Protected Member Functions inherited from ChimeraTK::NDRegisterAccessor< UserType > | |
DEFINE_VIRTUAL_FUNCTION_TEMPLATE_VTABLE_FILLER (NDRegisterAccessor< UserType >, getAsCooked_impl, 2) | |
DEFINE_VIRTUAL_FUNCTION_TEMPLATE_VTABLE_FILLER (NDRegisterAccessor< UserType >, setAsCooked_impl, 3) | |
Protected Attributes inherited from ChimeraTK::NDRegisterAccessor< UserType > | |
std::vector< std::vector< UserType > > | buffer_2D |
Buffer of converted data elements. More... | |
Special accessor used to test the behaviour of the TransferElement base class and the TransferGroup.
Definition at line 11 of file TransferElementTestAccessor.h.
|
inline |
Definition at line 13 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 20 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 97 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 123 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 22 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 37 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 54 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 67 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 82 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 135 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 142 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 166 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 156 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 151 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 161 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 132 of file TransferElementTestAccessor.h.
|
inline |
Definition at line 262 of file TransferElementTestAccessor.h.
|
inline |
Definition at line 252 of file TransferElementTestAccessor.h.
|
inline |
Definition at line 243 of file TransferElementTestAccessor.h.
|
inlineoverride |
Definition at line 147 of file TransferElementTestAccessor.h.
|
inline |
Definition at line 212 of file TransferElementTestAccessor.h.
AccessModeFlags ChimeraTK::TransferElement::_accessModeFlags |
The access mode flags for this transfer element.
Definition at line 826 of file TransferElement.h.
std::exception_ptr ChimeraTK::TransferElement::_activeException |
Exception to be rethrown in postXXX() in case hasSeenException == true Can be set via setActiveException().
Definition at line 859 of file TransferElement.h.
|
static |
Definition at line 182 of file TransferElementTestAccessor.h.
std::vector<boost::shared_ptr<TransferElement> > ChimeraTK::TransferElementTestAccessor< UserType >::_hardwareAccessingElements |
Definition at line 207 of file TransferElementTestAccessor.h.
std::vector<boost::shared_ptr<TransferElementTestAccessor<UserType> > > ChimeraTK::TransferElementTestAccessor< UserType >::_internalElements |
Definition at line 205 of file TransferElementTestAccessor.h.
std::set<TransferElementID> ChimeraTK::TransferElementTestAccessor< UserType >::_listMayReplaceElements |
Definition at line 209 of file TransferElementTestAccessor.h.
std::list<TransferElementID> ChimeraTK::TransferElementTestAccessor< UserType >::_listReplacementElements |
Definition at line 204 of file TransferElementTestAccessor.h.
size_t ChimeraTK::TransferElementTestAccessor< UserType >::_postIndex {999999} |
Definition at line 181 of file TransferElementTestAccessor.h.
size_t ChimeraTK::TransferElementTestAccessor< UserType >::_postRead_counter {0} |
Definition at line 177 of file TransferElementTestAccessor.h.
size_t ChimeraTK::TransferElementTestAccessor< UserType >::_postWrite_counter {0} |
Definition at line 178 of file TransferElementTestAccessor.h.
VersionNumber ChimeraTK::TransferElementTestAccessor< UserType >::_postWrite_version {nullptr} |
Definition at line 189 of file TransferElementTestAccessor.h.
size_t ChimeraTK::TransferElementTestAccessor< UserType >::_preIndex {999999} |
Definition at line 179 of file TransferElementTestAccessor.h.
size_t ChimeraTK::TransferElementTestAccessor< UserType >::_preRead_counter {0} |
Definition at line 172 of file TransferElementTestAccessor.h.
bool ChimeraTK::TransferElementTestAccessor< UserType >::_previousDataLost {false} |
Definition at line 194 of file TransferElementTestAccessor.h.
size_t ChimeraTK::TransferElementTestAccessor< UserType >::_preWrite_counter {0} |
Definition at line 173 of file TransferElementTestAccessor.h.
VersionNumber ChimeraTK::TransferElementTestAccessor< UserType >::_preWrite_version {nullptr} |
Definition at line 187 of file TransferElementTestAccessor.h.
bool ChimeraTK::TransferElementTestAccessor< UserType >::_readable {true} |
Definition at line 169 of file TransferElementTestAccessor.h.
cppext::future_queue<void> ChimeraTK::TransferElement::_readQueue |
The queue for asynchronous read transfers.
This is the void queue which is a continuation of the actual data transport queue, which is implementation dependent. With _readQueue the exception propagation and waiting for new data is implemented in TransferElement.
Definition at line 847 of file TransferElement.h.
size_t ChimeraTK::TransferElementTestAccessor< UserType >::_readTransfer_counter {0} |
Definition at line 174 of file TransferElementTestAccessor.h.
std::exception_ptr ChimeraTK::TransferElementTestAccessor< UserType >::_seenActiveException {nullptr} |
Definition at line 190 of file TransferElementTestAccessor.h.
UserType ChimeraTK::TransferElementTestAccessor< UserType >::_setPostReadData {UserType()} |
Definition at line 201 of file TransferElementTestAccessor.h.
VersionNumber ChimeraTK::TransferElementTestAccessor< UserType >::_setPostReadVersion {nullptr} |
Definition at line 200 of file TransferElementTestAccessor.h.
bool ChimeraTK::TransferElementTestAccessor< UserType >::_throwLogicErr {false} |
Definition at line 195 of file TransferElementTestAccessor.h.
std::exception_ptr ChimeraTK::TransferElementTestAccessor< UserType >::_thrownException {nullptr} |
Definition at line 191 of file TransferElementTestAccessor.h.
bool ChimeraTK::TransferElementTestAccessor< UserType >::_throwNumericCast {false} |
Definition at line 199 of file TransferElementTestAccessor.h.
bool ChimeraTK::TransferElementTestAccessor< UserType >::_throwRuntimeErrInPre {false} |
Definition at line 197 of file TransferElementTestAccessor.h.
bool ChimeraTK::TransferElementTestAccessor< UserType >::_throwRuntimeErrInPreconditions {false} |
Definition at line 198 of file TransferElementTestAccessor.h.
bool ChimeraTK::TransferElementTestAccessor< UserType >::_throwRuntimeErrInTransfer {false} |
Definition at line 196 of file TransferElementTestAccessor.h.
size_t ChimeraTK::TransferElementTestAccessor< UserType >::_transferIndex {999999} |
Definition at line 180 of file TransferElementTestAccessor.h.
TransferType ChimeraTK::TransferElementTestAccessor< UserType >::_transferType_post |
Definition at line 185 of file TransferElementTestAccessor.h.
TransferType ChimeraTK::TransferElementTestAccessor< UserType >::_transferType_pre |
Definition at line 185 of file TransferElementTestAccessor.h.
bool ChimeraTK::TransferElementTestAccessor< UserType >::_updateDataBuffer |
Definition at line 186 of file TransferElementTestAccessor.h.
bool ChimeraTK::TransferElementTestAccessor< UserType >::_writeable {true} |
Definition at line 168 of file TransferElementTestAccessor.h.
size_t ChimeraTK::TransferElementTestAccessor< UserType >::_writeTransfer_counter {0} |
Definition at line 175 of file TransferElementTestAccessor.h.
VersionNumber ChimeraTK::TransferElementTestAccessor< UserType >::_writeTransfer_version {nullptr} |
Definition at line 188 of file TransferElementTestAccessor.h.
size_t ChimeraTK::TransferElementTestAccessor< UserType >::_writeTransferDestructively_counter {0} |
Definition at line 176 of file TransferElementTestAccessor.h.