ChimeraTK-DeviceAccess  03.18.00
ChimeraTK::DummyInterruptTriggerAccessor< UserType > Class Template Reference

The DummyInterruptTriggerAccessor class. More...

#include <DummyInterruptTriggerAccessor.h>

+ Inheritance diagram for ChimeraTK::DummyInterruptTriggerAccessor< UserType >:
+ Collaboration diagram for ChimeraTK::DummyInterruptTriggerAccessor< UserType >:

Public Member Functions

 DummyInterruptTriggerAccessor (boost::shared_ptr< DeviceBackend > backend, std::function< VersionNumber(void)> interruptTrigger, const RegisterPath &registerPathName, size_t numberOfElements=1, size_t elementsOffset=0, const AccessModeFlags &flags={})
 
bool doWriteTransfer (ChimeraTK::VersionNumber) override
 
void doReadTransferSynchronously () override
 
void doPreRead (TransferType) override
 
void doPreWrite (TransferType, VersionNumber) override
 
bool isReadOnly () const override
 
bool isReadable () const override
 
bool isWriteable () const override
 
- 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< TransferElementmakeCopyRegisterDecorator () override
 

Protected Member Functions

std::vector< boost::shared_ptr< TransferElement > > getHardwareAccessingElements () override
 
std::list< boost::shared_ptr< TransferElement > > getInternalElements () override
 
- 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)
 

Additional Inherited Members

- Protected Attributes inherited from ChimeraTK::NDRegisterAccessor< UserType >
std::vector< std::vector< UserType > > buffer_2D
 Buffer of converted data elements. More...
 

Detailed Description

template<typename UserType>
class ChimeraTK::DummyInterruptTriggerAccessor< UserType >

The DummyInterruptTriggerAccessor class.

Pseudo-accessor for the hidden DUMMY_INTERRUPT_X_Y register that can be used to trigger the interrupt Y on interrupt controller X. This will do nothing but call DummyBackendBase::triggerInterrupt() when written to. For backwards compatibility it can also be read from, but there is only a constant value available.

Definition at line 21 of file DummyInterruptTriggerAccessor.h.

Constructor & Destructor Documentation

◆ DummyInterruptTriggerAccessor()

template<typename UserType >
ChimeraTK::DummyInterruptTriggerAccessor< UserType >::DummyInterruptTriggerAccessor ( boost::shared_ptr< DeviceBackend backend,
std::function< VersionNumber(void)>  interruptTrigger,
const RegisterPath registerPathName,
size_t  numberOfElements = 1,
size_t  elementsOffset = 0,
const AccessModeFlags flags = {} 
)

Definition at line 13 of file DummyInterruptTriggerAccessor.cc.

Member Function Documentation

◆ doPreRead()

template<typename UserType >
void ChimeraTK::DummyInterruptTriggerAccessor< UserType >::doPreRead ( TransferType  )
override

Definition at line 47 of file DummyInterruptTriggerAccessor.cc.

◆ doPreWrite()

template<typename UserType >
void ChimeraTK::DummyInterruptTriggerAccessor< UserType >::doPreWrite ( TransferType  ,
VersionNumber   
)
override

Definition at line 54 of file DummyInterruptTriggerAccessor.cc.

◆ doReadTransferSynchronously()

template<typename UserType >
void ChimeraTK::DummyInterruptTriggerAccessor< UserType >::doReadTransferSynchronously ( )
inlineoverride

Definition at line 29 of file DummyInterruptTriggerAccessor.h.

◆ doWriteTransfer()

template<typename UserType >
bool ChimeraTK::DummyInterruptTriggerAccessor< UserType >::doWriteTransfer ( ChimeraTK::VersionNumber  )
override

Definition at line 38 of file DummyInterruptTriggerAccessor.cc.

◆ getHardwareAccessingElements()

template<typename UserType >
std::vector<boost::shared_ptr<TransferElement> > ChimeraTK::DummyInterruptTriggerAccessor< UserType >::getHardwareAccessingElements ( )
inlineoverrideprotected

Definition at line 40 of file DummyInterruptTriggerAccessor.h.

◆ getInternalElements()

template<typename UserType >
std::list<boost::shared_ptr<TransferElement> > ChimeraTK::DummyInterruptTriggerAccessor< UserType >::getInternalElements ( )
inlineoverrideprotected

Definition at line 44 of file DummyInterruptTriggerAccessor.h.

◆ isReadable()

template<typename UserType >
bool ChimeraTK::DummyInterruptTriggerAccessor< UserType >::isReadable ( ) const
inlineoverride

Definition at line 36 of file DummyInterruptTriggerAccessor.h.

◆ isReadOnly()

template<typename UserType >
bool ChimeraTK::DummyInterruptTriggerAccessor< UserType >::isReadOnly ( ) const
inlineoverride

Definition at line 35 of file DummyInterruptTriggerAccessor.h.

◆ isWriteable()

template<typename UserType >
bool ChimeraTK::DummyInterruptTriggerAccessor< UserType >::isWriteable ( ) const
inlineoverride

Definition at line 37 of file DummyInterruptTriggerAccessor.h.


The documentation for this class was generated from the following files: