10 template<
typename TargetUserType>
15 static_assert(isRawType<std::make_unsigned_t<TargetUserType>>);
22 template<
typename TargetUserType>
23 template<
typename COOKED_TYPE>
27 RawConverter::withConverter<COOKED_TYPE, std::make_unsigned_t<TargetUserType>>(
28 _registerInfo, 0, [&](
auto converter) {
29 rv = converter.toCooked(
37 template<
typename TargetUserType>
38 template<
typename COOKED_TYPE>
41 unsigned int channel,
unsigned int sample, COOKED_TYPE value) {
42 RawConverter::withConverter<COOKED_TYPE, std::make_unsigned_t<TargetUserType>>(
43 _registerInfo, 0, [&](
auto converter) {
50 template<
typename TargetUserType>
52 const boost::shared_ptr<ChimeraTK::TransferElement const>& other)
const {
53 auto casted = boost::dynamic_pointer_cast<ConvertingRawDecorator<TargetUserType>
const>(other);
57 if(_registerInfo != casted->_registerInfo) {
61 return _target->mayReplaceOther(casted->_target);
#define INSTANTIATE_TEMPLATE_FOR_CHIMERATK_RAW_TYPES(TemplateClass)
#define FILL_VIRTUAL_FUNCTION_TEMPLATE_VTABLE(functionName)
Fill the vtable of a virtual function template defined with DEFINE_VIRTUAL_FUNCTION_TEMPLATE.
COOKED_TYPE getAsCooked_impl(unsigned int channel, unsigned int sample)
void setAsCooked_impl(unsigned int channel, unsigned int sample, COOKED_TYPE value)
bool mayReplaceOther(const boost::shared_ptr< ChimeraTK::TransferElement const > &other) const override
ConvertingRawDecorator(const boost::shared_ptr< ChimeraTK::NDRegisterAccessor< TargetUserType > > &target, NumericAddressedRegisterInfo const ®isterInfo)
Base class for decorators of the NDRegisterAccessor.
N-dimensional register accessor.