ChimeraTK-DeviceAccess
03.18.00
|
Namespaces | |
async | |
csa_helpers | |
A sub-namespace in order not to expose the classes to the ChimeraTK namespace. | |
LNMBackend | |
numeric_address | |
parserUtilities | |
proxies | |
We are using temporary proxy classes to realise element access with fixed point conversion. | |
Rebot | |
testable_rebot_sleep | |
Utilities | |
Classes | |
class | AccessModeFlags |
Set of AccessMode flags with additional functionality for an easier handling. More... | |
class | BackendFactory |
BackendFactory is a the factory class to create devices. More... | |
class | BackendRegisterCatalogue |
Interface for backends to the register catalogue. More... | |
class | BackendRegisterCatalogueBase |
Pure virtual implementation base class for the register catalogue. More... | |
class | BackendRegisterCatalogueImplIterator |
Non-const iterator for iterating through the registers in the catalogue, used by backend implementations only. More... | |
class | BackendRegisterInfoBase |
DeviceBackend-independent register description. More... | |
class | Base |
class | Boolean |
Wrapper Class to avoid vector<bool> problems. More... | |
class | BufferingRegisterAccessor |
class | const_BackendRegisterCatalogueImplIterator |
Implementation of the catalogue const iterator which is templated to the actual BackendRegisterInfo implementation provided by the backend. More... | |
class | const_RegisterCatalogueImplIterator |
Virtual base class for the catalogue const iterator. More... | |
class | copmaredRegisterInfosByName2_functor |
Provides predicate to compare devices by device file by name. More... | |
struct | CopyRegisterDecorator |
Decorator for NDRegisterAccessors which makes a copy of the data from the target accessor. More... | |
struct | CopyRegisterDecoratorTrait |
Runtime type trait to identify CopyRegisterDecorators independent of their type. More... | |
class | CtrlIntf |
class | DataConsistencyGroup |
Group several registers (= TransferElement) which ensures data consistency across multiple variables through an algorithm which matches the VersionNumber. More... | |
class | DataDescriptor |
Class describing the actual payload data format of a register in an abstract manner. More... | |
class | DataType |
A class to describe which of the supported data types is used. More... | |
class | DecoratorFactory |
struct | DecoratorMapKey |
Key type for the global decorator map. More... | |
class | DecoratorTypeHolder |
class | Derived1 |
class | Derived2 |
class | Device |
Class allows to read/write registers from device. More... | |
class | DeviceBackend |
The base class for backends providing IO functionality for the Device class. More... | |
class | DeviceBackendImpl |
DeviceBackendImpl implements some basic functionality which should be available for all backends. More... | |
struct | DeviceDescriptor |
This structure holds the information of an ChimeraTK device descriptor. More... | |
class | DeviceFile |
class | DeviceInfoMap |
class | DmaIntf |
class | DMapFileParser |
Provides method to parse DMAP file. More... | |
class | DummyBackend |
The dummy device opens a mapping file instead of a device, and implements all registers defined in the mapping file in memory. More... | |
class | DummyBackendBase |
Base class for DummyBackends, provides common functionality. More... | |
class | DummyBackendRegisterCatalogue |
class | DummyInterruptTriggerAccessor |
The DummyInterruptTriggerAccessor class. More... | |
class | DummyMultiplexedRegisterAccessor |
Register accessor for accessing multiplexed 2D array registers internally of a DummyBackend implementation. More... | |
struct | DummyProtocol0 |
Only put commands which don't exist in all versions, or behave differently. More... | |
struct | DummyProtocol1 |
Only put commands which don't exist in all versions, or behave differently. More... | |
class | DummyRegisterAccessor |
Register accessor for accessing single word or 1D array registers internally of a DummyBackend implementation. More... | |
class | DummyRegisterRawAccessor |
Accessor for raw 32 bit integer access to the underlying memory space. More... | |
class | EventFile |
class | EventThread |
class | ExceptionDummy |
struct | ExceptionDummyPollDecorator |
A decorator that returns invalid data for polled variables. More... | |
struct | ExceptionDummyPollDecoratorBase |
struct | ExceptionDummyPushDecorator |
struct | ExceptionDummyPushDecoratorBase |
class | ExperimentalFeatures |
Class for handling the experimental feature enable flag. More... | |
class | findDevByName_pred |
Provides predicate to search device by name. More... | |
class | FixedPointConverter |
The fixed point converter provides conversion functions between a user type and up to 32 bit fixed point (signed or unsigned). More... | |
class | FixedPointConvertingDecorator |
class | FixedPointConvertingRawDecorator |
class | FixedUserTypeMap |
Map of UserType to a value of a single type (same for evey user type) More... | |
class | FixedUserTypeMapNoVoid |
Just like TemplateUserTypeMap, only without the ChimeraTK::Void type. More... | |
struct | IEEE754_SingleConverter |
Needs to have the same interface as FixedPointConverter, except for the constructor. More... | |
struct | ImgHeader |
Image header. More... | |
class | ImgView |
provides convenient matrix-like access for MappedImage More... | |
class | InstantiateLogicalNameMappingBackendFunctions |
class | LNMBackendBitAccessor |
class | LNMBackendChannelAccessor |
class | LNMBackendRegisterInfo |
RegisterInfo structure for the LogicalNameMappingBackend. More... | |
class | LNMBackendVariableAccessor |
struct | LNMVariable |
class | logic_error |
Exception thrown when a logic error has occured. More... | |
class | LogicalNameMapParser |
Logical name map: store information from xlmap file and provide it to the LogicalNameMappingBackend and its register accessors. More... | |
class | LogicalNameMappingBackend |
Backend to map logical register names onto real hardware registers. More... | |
class | MapFileParser |
Provides method to parse MAP file. More... | |
class | MappedImage |
interface to an image that is mapped onto a 1D array of ValType More... | |
class | MappedStruct |
Provides interface to a struct that is mapped onto a 1D array of ValType StructHeader must be derived from OpaqueStructHeader. More... | |
class | MetadataCatalogue |
Container for backend metadata. More... | |
class | MultiplexedDataAccessor |
class | NDRegisterAccessor |
N-dimensional register accessor. More... | |
class | NDRegisterAccessorAbstractor |
Base class for the register accessor abstractors (ScalarRegisterAccessor, OneDRegisterAccessor and TwoDRegisterAccessor). More... | |
class | NDRegisterAccessorDecorator |
Base class for decorators of the NDRegisterAccessor. More... | |
class | NumericAddressedBackend |
Base class for address-based device backends (e.g. More... | |
class | NumericAddressedBackendASCIIAccessor |
Implementation of the NDRegisterAccessor for NumericAddressedBackends for ASCII data. More... | |
class | NumericAddressedBackendMuxedRegisterAccessor |
Implementation of the NDRegisterAccessor for NumericAddressedBackends for multiplexd 2D registers. More... | |
class | NumericAddressedBackendRegisterAccessor |
Implementation of the NDRegisterAccessor for NumericAddressedBackends for scalar and 1D registers. More... | |
class | NumericAddressedLowLevelTransferElement |
Implementation of the NDRegisterAccessor for NumericAddressedBackends, responsible for the underlying raw data access. More... | |
class | NumericAddressedRegisterCatalogue |
class | NumericAddressedRegisterInfo |
class | OneDRegisterAccessor |
Accessor class to read and write registers transparently by using the accessor object like a vector of the type UserType. More... | |
struct | OpaqueStructHeader |
generic header for opaque struct handling It has fields needed for communication in the same process, e.g. More... | |
class | PcieBackend |
A class to provide the Pcie device functionality. More... | |
class | ReadAnyGroup |
Group several registers (= TransferElement) to allow waiting for an update of any of the registers. More... | |
class | RebotBackend |
class | RebotDummyServer |
class | RebotDummySession |
struct | RebotProtocol0 |
struct | RebotProtocol1 |
struct | RebotProtocolImplementor |
This is the base class of the code which implements the ReboT protocol. More... | |
struct | RebotSleepSynchroniser |
class | RebotTestableClock |
class | RegisterCatalogue |
Catalogue of register information. More... | |
class | RegisterInfo |
class | RegisterPath |
Class to store a register path name. More... | |
struct | RoundingRangeCheckingDataConverter |
struct | RoundingRangeCheckingDataConverter< SourceType, Void > |
struct | RoundingRangeCheckingDataConverter< Void, DestType > |
class | runtime_error |
Exception thrown when a runtime error has occured. More... | |
class | ScalarRegisterAccessor |
Accessor class to read and write scalar registers transparently by using the accessor object like a variable of the type UserType. More... | |
class | ScalarRegisterAccessor< ChimeraTK::Boolean, std::nullptr_t > |
Template specialisation for ChimeraTK::Boolean. More... | |
class | ScalarRegisterAccessor< std::string > |
struct | Sdm |
This structure holds the information of an SDM. More... | |
class | SharedDummyBackend |
The shared dummy device opens a mapping file defining the registers and implements them in shared memory instead of connecting to the real device. More... | |
class | SubdeviceBackend |
Backend for subdevices which are passed through some register or area of another device (subsequently called target device). More... | |
class | SubdeviceRegisterAccessor |
class | TemplateUserTypeMap |
Map of UserType to a class template with the UserType as template argument. More... | |
class | TemplateUserTypeMapNoVoid |
Just like TemplateUserTypeMap, only without the ChimeraTK::Void type. More... | |
struct | TestCapabilities |
Descriptor for the test capabilities for each register. More... | |
struct | ThreadInformerMutex |
class | TransferElement |
Base class for register accessors which can be part of a TransferGroup. More... | |
class | TransferElementAbstractor |
Base class for register accessors abstractors independent of the UserType. More... | |
class | TransferElementID |
Simple class holding a unique ID for a TransferElement. More... | |
class | TransferElementTestAccessor |
Special accessor used to test the behaviour of the TransferElement base class and the TransferGroup. More... | |
class | TransferGroup |
Group multiple data accessors to efficiently trigger data transfers on the whole group. More... | |
class | TwoDRegisterAccessor |
Accessor class to read and write 2D registers. More... | |
class | TypeChangingDecorator |
Strictly this is not a real decorator. More... | |
class | TypeChangingDirectCastDecorator |
This decorator does not do mathematical rounding and range checking, but directly assigns the data types (C-style direct conversion). More... | |
class | TypeChangingDirectCastDecorator< ChimeraTK::Void, ChimeraTK::Void > |
template specialisation for Void as user type and string as impl type. More... | |
class | TypeChangingDirectCastDecorator< ChimeraTK::Void, IMPL_T > |
Partial template specialisation for Void as user type. More... | |
class | TypeChangingDirectCastDecorator< ChimeraTK::Void, std::string > |
template specialisation for Void as user type and string as impl type. More... | |
class | TypeChangingDirectCastDecorator< std::string, ChimeraTK::Void > |
template specialisation for Void as impl type and string as user type. More... | |
class | TypeChangingDirectCastDecorator< std::string, IMPL_T > |
Partial template specialisation for strings as user type. More... | |
class | TypeChangingDirectCastDecorator< T, ChimeraTK::Void > |
Partial template specialisation for Void as impl type. More... | |
class | TypeChangingDirectCastDecorator< T, std::string > |
Partial template specialisation for strings as impl type. More... | |
class | TypeChangingRangeCheckingDecorator |
This decorator uses the boost numeric converter which performs two tasks: More... | |
class | TypeChangingRangeCheckingDecorator< ChimeraTK::Void, ChimeraTK::Void > |
class | TypeChangingRangeCheckingDecorator< ChimeraTK::Void, IMPL_T > |
class | TypeChangingRangeCheckingDecorator< ChimeraTK::Void, std::string > |
class | TypeChangingRangeCheckingDecorator< std::string, ChimeraTK::Void > |
class | TypeChangingRangeCheckingDecorator< std::string, IMPL_T > |
class | TypeChangingRangeCheckingDecorator< T, ChimeraTK::Void > |
class | TypeChangingRangeCheckingDecorator< T, std::string > |
class | TypeChangingStringImplDecorator |
This class is intended as a base class. More... | |
class | TypeChangingStringImplDecorator< ChimeraTK::Void, ChimeraTK::Void > |
The actual partial implementation for Void as user type and Void as impl type. More... | |
class | TypeChangingStringImplDecorator< ChimeraTK::Void, IMPL_T > |
The actual partial implementation for Void as user type. More... | |
class | TypeChangingStringImplDecorator< ChimeraTK::Void, std::string > |
The actual partial implementation for Void as user type and std::string as impl type. More... | |
class | TypeChangingStringImplDecorator< std::string, ChimeraTK::Void > |
The actual partial implementation for std::string as user type and Void as impl type. More... | |
class | TypeChangingStringImplDecorator< std::string, IMPL_T > |
The actual partial implementation for strings as user type. More... | |
class | TypeChangingStringImplDecorator< T, ChimeraTK::Void > |
The actual partial implementation for Void as impl type. More... | |
class | TypeChangingStringImplDecorator< T, std::string > |
The actual partial implementation for strings as impl type. More... | |
class | TypeChangingVoidImplDecorator |
This class is intended as a base class. More... | |
class | UioAccess |
Implements a generic userspace interface for UIO devices. More... | |
class | UioBackend |
class | UnifiedBackendTest |
Class to test any backend for correct behaviour. More... | |
class | VersionNumber |
Class for generating and holding version numbers without exposing a numeric representation. More... | |
class | Void |
Wrapper Class for void. More... | |
class | VoidRegisterAccessor |
Accessor class to read and write void-typed registers. More... | |
class | XdmaBackend |
class | XdmaIntfAbstract |
Typedefs | |
using | DeviceInfoMapPointer = boost::shared_ptr< DeviceInfoMap > |
using | userTypeMap = boost::fusion::map< boost::fusion::pair< int8_t, int8_t >, boost::fusion::pair< uint8_t, uint8_t >, boost::fusion::pair< int16_t, int16_t >, boost::fusion::pair< uint16_t, uint16_t >, boost::fusion::pair< int32_t, int32_t >, boost::fusion::pair< uint32_t, uint32_t >, boost::fusion::pair< int64_t, int64_t >, boost::fusion::pair< uint64_t, uint64_t >, boost::fusion::pair< float, float >, boost::fusion::pair< double, double >, boost::fusion::pair< std::string, std::string >, boost::fusion::pair< Boolean, Boolean >, boost::fusion::pair< Void, Void > > |
Map of UserType to value of the UserType. More... | |
using | userTypeMapNoVoid = boost::fusion::map< boost::fusion::pair< int8_t, int8_t >, boost::fusion::pair< uint8_t, uint8_t >, boost::fusion::pair< int16_t, int16_t >, boost::fusion::pair< uint16_t, uint16_t >, boost::fusion::pair< int32_t, int32_t >, boost::fusion::pair< uint32_t, uint32_t >, boost::fusion::pair< int64_t, int64_t >, boost::fusion::pair< uint64_t, uint64_t >, boost::fusion::pair< float, float >, boost::fusion::pair< double, double >, boost::fusion::pair< std::string, std::string >, boost::fusion::pair< Boolean, Boolean > > |
Just like userTypeMap, only without the ChimeraTK::Void type. More... | |
template<typename T > | |
using | SingleTypeUserTypeMap = boost::fusion::map< boost::fusion::pair< int8_t, T >, boost::fusion::pair< uint8_t, T >, boost::fusion::pair< int16_t, T >, boost::fusion::pair< uint16_t, T >, boost::fusion::pair< int32_t, T >, boost::fusion::pair< uint32_t, T >, boost::fusion::pair< int64_t, T >, boost::fusion::pair< uint64_t, T >, boost::fusion::pair< float, T >, boost::fusion::pair< double, T >, boost::fusion::pair< std::string, T >, boost::fusion::pair< Boolean, T >, boost::fusion::pair< Void, T > > |
Map of UserType to a single type. More... | |
template<typename T > | |
using | SingleTypeUserTypeMapNoVoid = boost::fusion::map< boost::fusion::pair< int8_t, T >, boost::fusion::pair< uint8_t, T >, boost::fusion::pair< int16_t, T >, boost::fusion::pair< uint16_t, T >, boost::fusion::pair< int32_t, T >, boost::fusion::pair< uint32_t, T >, boost::fusion::pair< int64_t, T >, boost::fusion::pair< uint64_t, T >, boost::fusion::pair< float, T >, boost::fusion::pair< double, T >, boost::fusion::pair< std::string, T >, boost::fusion::pair< Boolean, T > > |
Just like SingleTypeUserTypeMap, only without the ChimeraTK::Void type. More... | |
using | UserTypeVariant = std::variant< ChimeraTK::Boolean, int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t, uint64_t, float, double, std::string, ChimeraTK::Void > |
Convenience type definition of a std::variant with all possible UserTypes. More... | |
using | UserTypeVariantNoVoid = std::variant< ChimeraTK::Boolean, int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t, uint64_t, float, double, std::string > |
Like UserTypeVariant but without ChimeraTK::Void. More... | |
template<template< typename > class TPL> | |
using | UserTypeTemplateVariant = std::variant< TPL< ChimeraTK::Boolean >, TPL< int8_t >, TPL< uint8_t >, TPL< int16_t >, TPL< uint16_t >, TPL< int32_t >, TPL< uint32_t >, TPL< int64_t >, TPL< uint64_t >, TPL< float >, TPL< double >, TPL< std::string >, TPL< ChimeraTK::Void > > |
Convenience type definition of a std::variant with the given class template instantiated for all all possible UserTypes. More... | |
template<template< typename > class TPL> | |
using | UserTypeTemplateVariantNoVoid = std::variant< TPL< ChimeraTK::Boolean >, TPL< int8_t >, TPL< uint8_t >, TPL< int16_t >, TPL< uint16_t >, TPL< int32_t >, TPL< uint32_t >, TPL< int64_t >, TPL< uint64_t >, TPL< float >, TPL< double >, TPL< std::string > > |
Like UserTypeTemplateVariant but without ChimeraTK::Void. More... | |
Functions | |
DECLARE_TEMPLATE_FOR_CHIMERATK_USER_TYPES (DummyInterruptTriggerAccessor) | |
DECLARE_TEMPLATE_FOR_CHIMERATK_USER_TYPES (LNMBackendBitAccessor) | |
DECLARE_TEMPLATE_FOR_CHIMERATK_USER_TYPES (LNMBackendChannelAccessor) | |
DECLARE_TEMPLATE_FOR_CHIMERATK_USER_TYPES (LNMBackendVariableAccessor) | |
template<> | |
std::string | LogicalNameMapParser::getValueFromXmlSubnode< std::string > (const xmlpp::Node *node, const std::string &subnodeName, BackendRegisterCatalogue< LNMBackendRegisterInfo > const &catalogue, bool hasDefault, std::string defaultValue) |
INSTANTIATE_TEMPLATE_FOR_CHIMERATK_USER_TYPES (LNMBackendBitAccessor) | |
INSTANTIATE_TEMPLATE_FOR_CHIMERATK_USER_TYPES (LNMBackendChannelAccessor) | |
INSTANTIATE_TEMPLATE_FOR_CHIMERATK_USER_TYPES (LNMBackendVariableAccessor) | |
INSTANTIATE_TEMPLATE_FOR_CHIMERATK_USER_TYPES (InstantiateLogicalNameMappingBackendFunctions) | |
std::unique_ptr< RebotProtocolImplementor > | getProtocolImplementor (boost::shared_ptr< Rebot::Connection > &c) |
uint32_t | getProtocolVersion (boost::shared_ptr< Rebot::Connection > &c) |
uint32_t | parseRxServerHello (const std::vector< uint32_t > &serverHello) |
std::ostream & | operator<< (std::ostream &stream, const DataDescriptor::FundamentalType &fundamentalType) |
template<> | |
uint32_t | FixedPointConverter::toRaw< std::string > (std::string cookedValue) const |
DECLARE_TEMPLATE_FOR_CHIMERATK_USER_TYPES (NDRegisterAccessor) | |
DECLARE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES (NumericAddressedBackendMuxedRegisterAccessor, FixedPointConverter) | |
DECLARE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES (NumericAddressedBackendMuxedRegisterAccessor, IEEE754_SingleConverter) | |
DECLARE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES (NumericAddressedBackendRegisterAccessor, FixedPointConverter, true) | |
DECLARE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES (NumericAddressedBackendRegisterAccessor, FixedPointConverter, false) | |
DECLARE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES (NumericAddressedBackendRegisterAccessor, IEEE754_SingleConverter, true) | |
DECLARE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES (NumericAddressedBackendRegisterAccessor, IEEE754_SingleConverter, false) | |
RegisterPath | operator/ (const RegisterPath &leftHandSide, const RegisterPath &rightHandSide) |
non-member / operator: add a new element to the path. More... | |
std::string | operator+ (const std::string &leftHandSide, const RegisterPath &rightHandSide) |
non-member + operator for RegisterPath: concatenate with normal strings. More... | |
RegisterPath | operator+ (const RegisterPath &leftHandSide, const std::string &rightHandSide) |
RegisterPath | operator/ (const RegisterPath &leftHandSide, int rightHandSide) |
operators used to build numeric addresses from integers More... | |
RegisterPath | operator* (const RegisterPath &leftHandSide, int rightHandSide) |
std::ostream & | operator<< (std::ostream &os, const RegisterPath &me) |
streaming operator More... | |
std::istream & | operator>> (std::istream &is, Boolean &value) |
std::string | to_string (Boolean &value) |
std::istream & | operator>> (std::istream &is, __attribute__((unused)) Void &value) |
std::ostream & | operator<< (std::ostream &os, __attribute__((unused)) Void &value) |
template<typename UserType , typename NUMERIC > | |
UserType | numericToUserType (NUMERIC value) |
Helper function to convert numeric data into any UserType (even if it is a string etc.). More... | |
template<typename NUMERIC , typename UserType > | |
NUMERIC | userTypeToNumeric (UserType value) |
Helper function to convert numeric data into any UserType (even if it is a string etc.). More... | |
template<typename UserTypeReturn , typename UserTypeParameter > | |
UserTypeReturn | userTypeToUserType (UserTypeParameter value) |
Helper function to convert any UserType data into any other UserType (even if it is a string etc.). More... | |
template<typename MAPTYPE , typename LAMBDATYPE > | |
void | for_each (MAPTYPE &map, const LAMBDATYPE &lambda) |
Variant of boost::fusion::for_each() to iterate a boost::fusion::map, which accepts a lambda instead of the callable class requred by the boost version. More... | |
template<typename LAMBDATYPE > | |
void | callForType (const std::type_info &type, LAMBDATYPE lambda) |
Helper function for running code which uses some compile-time type that is specified at runtime as a type_info. More... | |
template<typename LAMBDATYPE > | |
void | callForType (const DataType &type, LAMBDATYPE lambda) |
Alternate form of callForType() which takes a DataType as a runtime type description. More... | |
template<typename TYPE_DESCRIPTOR , typename LAMBDATYPE > | |
void | callForTypeNoVoid (const TYPE_DESCRIPTOR &typeDescriptor, LAMBDATYPE lambda) |
Like callForType() but omit the Void data type. More... | |
template<typename LAMBDATYPE > | |
void | callForRawType (const DataType &type, LAMBDATYPE lambda) |
callForRawType() is similar to callForType(), just with a subset of supported data types which can be raw types in the NumericAddressedBackend. More... | |
std::ostream & | operator<< (std::ostream &os, const DataValidity &validity) |
std::ostream & | operator<< (std::ostream &os, const TransferElementID &me) |
Streaming operator to stream the TransferElementID e.g. More... | |
template<class UserType > | |
boost::shared_ptr< ChimeraTK::NDRegisterAccessor< UserType > > | getTypeChangingDecorator (const boost::shared_ptr< ChimeraTK::TransferElement > &transferElement, DecoratorType decoratorType=DecoratorType::limiting) |
The factory function for type changing decorators. More... | |
template<class UserType > | |
boost::shared_ptr< ChimeraTK::NDRegisterAccessor< UserType > > | getTypeChangingDecorator (ChimeraTK::TransferElementAbstractor &transferElement, DecoratorType decoratorType=DecoratorType::limiting) |
std::map< DecoratorMapKey, boost::shared_ptr< ChimeraTK::TransferElement > > & | getGlobalDecoratorMap () |
Quasi singleton to have a unique, global map across UserType templated factories. More... | |
template<typename UserType > | |
bool | compareHelper (UserType a, UserType b) |
template<> | |
bool | compareHelper< double > (double a, double b) |
template<> | |
bool | compareHelper< float > (float a, float b) |
template<> | |
bool | compareHelper< std::string > (std::string a, std::string b) |
std::string | getDMapFilePath () |
Returns the dmap file name which the library currently uses for looking up device(alias) names. More... | |
void | setDMapFilePath (std::string dmapFilePath) |
Set the location of the dmap file. More... | |
std::ostream & | operator<< (std::ostream &stream, const VersionNumber &version) |
Stream operator passing the human readable representation to an ostream. More... | |
std::ostream & | operator<< (std::ostream &os, const DeviceInfoMap &deviceInfoMap) |
std::ostream & | operator<< (std::ostream &os, const DeviceInfoMap::DeviceInfo &deviceInfo) |
std::ostream & | operator<< (std::ostream &os, const DeviceInfoMap::ErrorList::ErrorElem::TYPE &me) |
std::ostream & | operator<< (std::ostream &os, const DeviceInfoMap::ErrorList::ErrorElem &me) |
std::ostream & | operator<< (std::ostream &os, const DeviceInfoMap::ErrorList &me) |
INSTANTIATE_TEMPLATE_FOR_CHIMERATK_USER_TYPES (DummyInterruptTriggerAccessor) | |
INSTANTIATE_TEMPLATE_FOR_CHIMERATK_USER_TYPES (NDRegisterAccessor) | |
INSTANTIATE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES (NumericAddressedBackendMuxedRegisterAccessor, FixedPointConverter) | |
INSTANTIATE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES (NumericAddressedBackendMuxedRegisterAccessor, IEEE754_SingleConverter) | |
INSTANTIATE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES (NumericAddressedBackendRegisterAccessor, FixedPointConverter, true) | |
INSTANTIATE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES (NumericAddressedBackendRegisterAccessor, FixedPointConverter, false) | |
INSTANTIATE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES (NumericAddressedBackendRegisterAccessor, IEEE754_SingleConverter, true) | |
INSTANTIATE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES (NumericAddressedBackendRegisterAccessor, IEEE754_SingleConverter, false) | |
std::atomic< bool > | stop_rebot_server (false) |
Variables | |
constexpr auto | DUMMY_WRITEABLE_SUFFIX = "DUMMY_WRITEABLE" |
constexpr auto | DUMMY_READABLE_SUFFIX = "DUMMY_READABLE" |
const int | SHARED_MEMORY_N_MAX_MEMBER = 10 |
constexpr auto | MULTIPLEXED_SEQUENCE_PREFIX = "AREA_MULTIPLEXED_SEQUENCE_" |
constexpr auto | SEQUENCE_PREFIX = "SEQUENCE_" |
constexpr auto | MEM_MULTIPLEXED_PREFIX = "MEM_MULTIPLEXED_" |
std::map< DecoratorMapKey, boost::shared_ptr< ChimeraTK::TransferElement > > | globalDecoratorMap |
std::atomic< bool > | stop_rebot_server |
Change the test to use BOOST_AUTO_TEST_CASE!
Change the test to use BOOST_AUTO_TEST_CASE!
Introduce specialisation of shared_pointer template for pointers to RegisterInfoMap object as a DeviceInfoMapPointer
Definition at line 221 of file DeviceInfoMap.h.
using ChimeraTK::SingleTypeUserTypeMap = typedef boost::fusion::map<boost::fusion::pair<int8_t, T>, boost::fusion::pair<uint8_t, T>, boost::fusion::pair<int16_t, T>, boost::fusion::pair<uint16_t, T>, boost::fusion::pair<int32_t, T>, boost::fusion::pair<uint32_t, T>, boost::fusion::pair<int64_t, T>, boost::fusion::pair<uint64_t, T>, boost::fusion::pair<float, T>, boost::fusion::pair<double, T>, boost::fusion::pair<std::string, T>, boost::fusion::pair<Boolean, T>, boost::fusion::pair<Void, T> > |
Map of UserType to a single type.
Definition at line 455 of file SupportedUserTypes.h.
using ChimeraTK::SingleTypeUserTypeMapNoVoid = typedef boost::fusion::map<boost::fusion::pair<int8_t, T>, boost::fusion::pair<uint8_t, T>, boost::fusion::pair<int16_t, T>, boost::fusion::pair<uint16_t, T>, boost::fusion::pair<int32_t, T>, boost::fusion::pair<uint32_t, T>, boost::fusion::pair<int64_t, T>, boost::fusion::pair<uint64_t, T>, boost::fusion::pair<float, T>, boost::fusion::pair<double, T>, boost::fusion::pair<std::string, T>, boost::fusion::pair<Boolean, T> > |
Just like SingleTypeUserTypeMap, only without the ChimeraTK::Void type.
Definition at line 463 of file SupportedUserTypes.h.
using ChimeraTK::userTypeMap = typedef boost::fusion::map<boost::fusion::pair<int8_t, int8_t>, boost::fusion::pair<uint8_t, uint8_t>, boost::fusion::pair<int16_t, int16_t>, boost::fusion::pair<uint16_t, uint16_t>, boost::fusion::pair<int32_t, int32_t>, boost::fusion::pair<uint32_t, uint32_t>, boost::fusion::pair<int64_t, int64_t>, boost::fusion::pair<uint64_t, uint64_t>, boost::fusion::pair<float, float>, boost::fusion::pair<double, double>, boost::fusion::pair<std::string, std::string>, boost::fusion::pair<Boolean, Boolean>, boost::fusion::pair<Void, Void> > |
Map of UserType to value of the UserType.
Used e.g. by the FixedPointConverter to store coefficients etc. in dependence of the UserType.
Definition at line 381 of file SupportedUserTypes.h.
using ChimeraTK::userTypeMapNoVoid = typedef boost::fusion::map<boost::fusion::pair<int8_t, int8_t>, boost::fusion::pair<uint8_t, uint8_t>, boost::fusion::pair<int16_t, int16_t>, boost::fusion::pair<uint16_t, uint16_t>, boost::fusion::pair<int32_t, int32_t>, boost::fusion::pair<uint32_t, uint32_t>, boost::fusion::pair<int64_t, int64_t>, boost::fusion::pair<uint64_t, uint64_t>, boost::fusion::pair<float, float>, boost::fusion::pair<double, double>, boost::fusion::pair<std::string, std::string>, boost::fusion::pair<Boolean, Boolean> > |
Just like userTypeMap, only without the ChimeraTK::Void type.
Definition at line 389 of file SupportedUserTypes.h.
using ChimeraTK::UserTypeTemplateVariant = typedef std::variant<TPL<ChimeraTK::Boolean>, TPL<int8_t>, TPL<uint8_t>, TPL<int16_t>, TPL<uint16_t>, TPL<int32_t>, TPL<uint32_t>, TPL<int64_t>, TPL<uint64_t>, TPL<float>, TPL<double>, TPL<std::string>, TPL<ChimeraTK::Void> > |
Convenience type definition of a std::variant with the given class template instantiated for all all possible UserTypes.
In contrast to ChimeraTK::TemplateUserTypeMap, only one value is stored in the UserTypeTemplateVariant, and there is some runtime overhead to access the value (which UserType is stored in the variant is a runtime decision).
Definition at line 38 of file VariantUserTypes.h.
using ChimeraTK::UserTypeTemplateVariantNoVoid = typedef std::variant<TPL<ChimeraTK::Boolean>, TPL<int8_t>, TPL<uint8_t>, TPL<int16_t>, TPL<uint16_t>, TPL<int32_t>, TPL<uint32_t>, TPL<int64_t>, TPL<uint64_t>, TPL<float>, TPL<double>, TPL<std::string> > |
Like UserTypeTemplateVariant but without ChimeraTK::Void.
Definition at line 46 of file VariantUserTypes.h.
using ChimeraTK::UserTypeVariant = typedef std::variant<ChimeraTK::Boolean, int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t, uint64_t, float, double, std::string, ChimeraTK::Void> |
Convenience type definition of a std::variant with all possible UserTypes.
In contrast to ChimeraTK::userTypeMap, only one value is stored in the UserTypeVariant, and there is some runtime overhead to access the value (which UserType is stored in the variant is a runtime decision).
Definition at line 20 of file VariantUserTypes.h.
using ChimeraTK::UserTypeVariantNoVoid = typedef std::variant<ChimeraTK::Boolean, int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t, uint64_t, float, double, std::string> |
Like UserTypeVariant but without ChimeraTK::Void.
Definition at line 26 of file VariantUserTypes.h.
|
strong |
Enum type with access mode flags for register accessors.
Developers note: when adding new flags, also add the flag in the map of the AccessModeFlags with a string representation.
Definition at line 20 of file AccessMode.h.
|
strong |
The current state of the data.
This is a flag to describe the validity of the data. It should be used to signalize whether or not to trust the data currently. It MUST NOT be used to signalize any communication errors with a device, rather to signalize the consumer after such an error that the data is currently not trustable, because we are performing calculations with the last known valid data, for example.
Enumerator | |
---|---|
ok | |
faulty | The data is considered valid. The data is not considered valid |
Definition at line 41 of file TransferElement.h.
|
strong |
There are two types of TypeChanging decorators which do different data conversions from the user data type to the implementation data type.
Enumerator | |
---|---|
limiting | |
C_style_conversion |
Definition at line 31 of file TypeChangingDecorator.h.
|
strong |
Enumerator | |
---|---|
Unset | |
Gray8 | |
Gray16 | |
RGB24 | |
RGBA32 | |
FLOAT1 | |
FLOAT2 | |
FLOAT3 | |
FLOAT4 | |
DOUBLE1 | |
DOUBLE2 | |
DOUBLE3 | |
DOUBLE4 |
Definition at line 66 of file MappedImage.h.
|
strong |
Enumerator | |
---|---|
RowMajor | |
ColMajor |
Definition at line 83 of file MappedImage.h.
|
strong |
Used by the Capabilities descriptor.
Definition at line 26 of file UnifiedBackendTest.h.
|
strong |
Used to indicate the applicable operation on a Transferelement.
Enumerator | |
---|---|
read | |
readNonBlocking | |
readLatest | |
write | |
writeDestructively |
Definition at line 51 of file TransferElement.h.
void ChimeraTK::callForRawType | ( | const DataType & | type, |
LAMBDATYPE | lambda | ||
) |
callForRawType() is similar to callForType(), just with a subset of supported data types which can be raw types in the NumericAddressedBackend.
Definition at line 1024 of file SupportedUserTypes.h.
void ChimeraTK::callForType | ( | const DataType & | type, |
LAMBDATYPE | lambda | ||
) |
Alternate form of callForType() which takes a DataType as a runtime type description.
If DataType::none is passed, std::bad_cast is thrown. For more details have a look at the other form.
Definition at line 950 of file SupportedUserTypes.h.
void ChimeraTK::callForType | ( | const std::type_info & | type, |
LAMBDATYPE | lambda | ||
) |
Helper function for running code which uses some compile-time type that is specified at runtime as a type_info.
The code has to be written in a lambda with a single auto-typed argument (this requires C++ 14). This argument will have the type specified by the argument "type". The type must be one of the user types supported by ChimeraTK DeviceAccess. Otherwise, std::bad_cast is thrown.
The lamda should be declared like this:
auto myLambda [](auto arg) { std::cout << typeid(decltype(arg)).name() << std::endl; });
The value of the argument "arg" is undefined, only its type should be used (via decltype(arg)). This lambda can then be called like this:
callForType(typeid(int), myLambda);
This will effectively execute the following code:
std::cout << typeid(int).name() << std::endl;
Please note that this call is not as efficient as a direct call to a template. For each call all allowed user types have to be tested against the given type_info.
Definition at line 919 of file SupportedUserTypes.h.
void ChimeraTK::callForTypeNoVoid | ( | const TYPE_DESCRIPTOR & | typeDescriptor, |
LAMBDATYPE | lambda | ||
) |
Like callForType() but omit the Void data type.
typeDescriptor can be either a std::type_info or a ChimeraTK::DataType.
Definition at line 1011 of file SupportedUserTypes.h.
bool ChimeraTK::compareHelper | ( | UserType | a, |
UserType | b | ||
) |
Definition at line 650 of file UnifiedBackendTest.h.
|
inline |
Definition at line 655 of file UnifiedBackendTest.h.
|
inline |
Definition at line 660 of file UnifiedBackendTest.h.
|
inline |
Definition at line 666 of file UnifiedBackendTest.h.
ChimeraTK::DECLARE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | NumericAddressedBackendMuxedRegisterAccessor | , |
FixedPointConverter | |||
) |
ChimeraTK::DECLARE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | NumericAddressedBackendMuxedRegisterAccessor | , |
IEEE754_SingleConverter | |||
) |
ChimeraTK::DECLARE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | NumericAddressedBackendRegisterAccessor | , |
FixedPointConverter | , | ||
false | |||
) |
ChimeraTK::DECLARE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | NumericAddressedBackendRegisterAccessor | , |
FixedPointConverter | , | ||
true | |||
) |
ChimeraTK::DECLARE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | NumericAddressedBackendRegisterAccessor | , |
IEEE754_SingleConverter | , | ||
false | |||
) |
ChimeraTK::DECLARE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | NumericAddressedBackendRegisterAccessor | , |
IEEE754_SingleConverter | , | ||
true | |||
) |
ChimeraTK::DECLARE_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | DummyInterruptTriggerAccessor | ) |
ChimeraTK::DECLARE_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | LNMBackendBitAccessor | ) |
ChimeraTK::DECLARE_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | LNMBackendChannelAccessor | ) |
ChimeraTK::DECLARE_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | LNMBackendVariableAccessor | ) |
ChimeraTK::DECLARE_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | NDRegisterAccessor | ) |
uint32_t ChimeraTK::FixedPointConverter::toRaw< std::string > | ( | std::string | cookedValue | ) | const |
Definition at line 90 of file FixedPointConverter.cc.
void ChimeraTK::for_each | ( | MAPTYPE & | map, |
const LAMBDATYPE & | lambda | ||
) |
Variant of boost::fusion::for_each() to iterate a boost::fusion::map, which accepts a lambda instead of the callable class requred by the boost version.
The lambda must have one single argument of the type auto, which will be a boost::fusion::pair<>.
Definition at line 888 of file SupportedUserTypes.h.
std::string ChimeraTK::getDMapFilePath | ( | ) |
Returns the dmap file name which the library currently uses for looking up device(alias) names.
Definition at line 321 of file Utilities.cpp.
std::map< DecoratorMapKey, boost::shared_ptr< ChimeraTK::TransferElement > > & ChimeraTK::getGlobalDecoratorMap | ( | ) |
Quasi singleton to have a unique, global map across UserType templated factories.
We need it to loop up if a decorator has already been created for the transfer element, and return this if so. Multiple decorators for the same transfer element don't work.
Definition at line 11 of file TypeChangingDecorator.cc.
std::unique_ptr< RebotProtocolImplementor > ChimeraTK::getProtocolImplementor | ( | boost::shared_ptr< Rebot::Connection > & | c | ) |
Definition at line 22 of file RebotBackend.cc.
uint32_t ChimeraTK::getProtocolVersion | ( | boost::shared_ptr< Rebot::Connection > & | c | ) |
Definition at line 36 of file RebotBackend.cc.
boost::shared_ptr<ChimeraTK::NDRegisterAccessor<UserType> > ChimeraTK::getTypeChangingDecorator | ( | ChimeraTK::TransferElementAbstractor & | transferElement, |
DecoratorType | decoratorType = DecoratorType::limiting |
||
) |
boost::shared_ptr< ChimeraTK::NDRegisterAccessor< UserType > > ChimeraTK::getTypeChangingDecorator | ( | const boost::shared_ptr< ChimeraTK::TransferElement > & | transferElement, |
DecoratorType | decoratorType = DecoratorType::limiting |
||
) |
The factory function for type changing decorators.
TypeChanging decorators take a transfer element (usually NDRegisterAccessor<ImplType>) and wraps it in an NDRegisterAccessor<UserType>. It automatically performs the right type conversion (configurable as argument of the factory function). The decorator has it's own buffer of type UserType and synchronises it in the preWrite() and postRead() functions with the implementation. You don't have to care about the implementation type of the transfer element. The factory will automatically create the correct decorator.
Note: it is possible to obtain multiple decorators of different types for the same accessor. The user needs to ensure that the preXxx/postXxx transfer functions are properly called for all decorators when required.
transferElement | The TransferElement to be decorated. It can either be an NDRegisterAccessor (usually the case) or and NDRegisterAccessorAbstractor (but here the user already picks the type he wants). |
decoratorType | The type of decorator you want (see description of DecoratorType) |
Definition at line 653 of file TypeChangingDecorator.h.
ChimeraTK::INSTANTIATE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | NumericAddressedBackendMuxedRegisterAccessor | , |
FixedPointConverter | |||
) |
ChimeraTK::INSTANTIATE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | NumericAddressedBackendMuxedRegisterAccessor | , |
IEEE754_SingleConverter | |||
) |
ChimeraTK::INSTANTIATE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | NumericAddressedBackendRegisterAccessor | , |
FixedPointConverter | , | ||
false | |||
) |
ChimeraTK::INSTANTIATE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | NumericAddressedBackendRegisterAccessor | , |
FixedPointConverter | , | ||
true | |||
) |
ChimeraTK::INSTANTIATE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | NumericAddressedBackendRegisterAccessor | , |
IEEE754_SingleConverter | , | ||
false | |||
) |
ChimeraTK::INSTANTIATE_MULTI_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | NumericAddressedBackendRegisterAccessor | , |
IEEE754_SingleConverter | , | ||
true | |||
) |
ChimeraTK::INSTANTIATE_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | DummyInterruptTriggerAccessor | ) |
ChimeraTK::INSTANTIATE_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | InstantiateLogicalNameMappingBackendFunctions | ) |
ChimeraTK::INSTANTIATE_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | LNMBackendBitAccessor | ) |
ChimeraTK::INSTANTIATE_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | LNMBackendChannelAccessor | ) |
ChimeraTK::INSTANTIATE_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | LNMBackendVariableAccessor | ) |
ChimeraTK::INSTANTIATE_TEMPLATE_FOR_CHIMERATK_USER_TYPES | ( | NDRegisterAccessor | ) |
std::string ChimeraTK::LogicalNameMapParser::getValueFromXmlSubnode< std::string > | ( | const xmlpp::Node * | node, |
const std::string & | subnodeName, | ||
BackendRegisterCatalogue< LNMBackendRegisterInfo > const & | catalogue, | ||
bool | hasDefault, | ||
std::string | defaultValue | ||
) |
UserType ChimeraTK::numericToUserType | ( | NUMERIC | value | ) |
Helper function to convert numeric data into any UserType (even if it is a string etc.).
The conversion is done with proper rounding and range checking. It will throw boost::numeric::positive_overflow resp. boost::numeric::negative_overflow if the data is out of range.
Definition at line 200 of file SupportedUserTypes.h.
RegisterPath ChimeraTK::operator* | ( | const RegisterPath & | leftHandSide, |
int | rightHandSide | ||
) |
RegisterPath ChimeraTK::operator+ | ( | const RegisterPath & | leftHandSide, |
const std::string & | rightHandSide | ||
) |
std::string ChimeraTK::operator+ | ( | const std::string & | leftHandSide, |
const RegisterPath & | rightHandSide | ||
) |
non-member + operator for RegisterPath: concatenate with normal strings.
Definition at line 26 of file RegisterPath.cc.
RegisterPath ChimeraTK::operator/ | ( | const RegisterPath & | leftHandSide, |
const RegisterPath & | rightHandSide | ||
) |
non-member / operator: add a new element to the path.
Must be a non-member operator to allow implicit type conversions also on the leftHandSide.
Definition at line 15 of file RegisterPath.cc.
RegisterPath ChimeraTK::operator/ | ( | const RegisterPath & | leftHandSide, |
int | rightHandSide | ||
) |
operators used to build numeric addresses from integers
Definition at line 41 of file RegisterPath.cc.
|
inline |
Definition at line 86 of file SupportedUserTypes.h.
std::ostream & ChimeraTK::operator<< | ( | std::ostream & | os, |
const DataValidity & | validity | ||
) |
Definition at line 7 of file TransferElement.cc.
std::ostream& ChimeraTK::operator<< | ( | std::ostream & | os, |
const DeviceInfoMap & | deviceInfoMap | ||
) |
Definition at line 20 of file DeviceInfoMap.cc.
std::ostream& ChimeraTK::operator<< | ( | std::ostream & | os, |
const DeviceInfoMap::DeviceInfo & | deviceInfo | ||
) |
Definition at line 51 of file DeviceInfoMap.cc.
std::ostream& ChimeraTK::operator<< | ( | std::ostream & | os, |
const DeviceInfoMap::ErrorList & | me | ||
) |
Definition at line 131 of file DeviceInfoMap.cc.
std::ostream& ChimeraTK::operator<< | ( | std::ostream & | os, |
const DeviceInfoMap::ErrorList::ErrorElem & | me | ||
) |
Definition at line 111 of file DeviceInfoMap.cc.
std::ostream& ChimeraTK::operator<< | ( | std::ostream & | os, |
const DeviceInfoMap::ErrorList::ErrorElem::TYPE & | me | ||
) |
Definition at line 88 of file DeviceInfoMap.cc.
std::ostream & ChimeraTK::operator<< | ( | std::ostream & | os, |
const RegisterPath & | me | ||
) |
streaming operator
Definition at line 56 of file RegisterPath.cc.
std::ostream & ChimeraTK::operator<< | ( | std::ostream & | os, |
const TransferElementID & | me | ||
) |
Streaming operator to stream the TransferElementID e.g.
to std::cout
Definition at line 24 of file TransferElementID.cc.
std::ostream & ChimeraTK::operator<< | ( | std::ostream & | stream, |
const DataDescriptor::FundamentalType & | fundamentalType | ||
) |
Definition at line 195 of file DataDescriptor.cpp.
std::ostream & ChimeraTK::operator<< | ( | std::ostream & | stream, |
const VersionNumber & | version | ||
) |
Stream operator passing the human readable representation to an ostream.
Definition at line 20 of file VersionNumber.cc.
|
inline |
Definition at line 80 of file SupportedUserTypes.h.
|
inline |
Definition at line 39 of file SupportedUserTypes.h.
uint32_t ChimeraTK::parseRxServerHello | ( | const std::vector< uint32_t > & | serverHello | ) |
void ChimeraTK::setDMapFilePath | ( | std::string | dmapFilePath | ) |
Set the location of the dmap file.
The library will parse this dmap file for the device(alias) lookup.
dmapFilePath | Relative or absolute path of the dmap file (directory and file name). |
Definition at line 327 of file Utilities.cpp.
std::atomic<bool> ChimeraTK::stop_rebot_server | ( | false | ) |
|
inline |
NUMERIC ChimeraTK::userTypeToNumeric | ( | UserType | value | ) |
Helper function to convert numeric data into any UserType (even if it is a string etc.).
The conversion is done with proper rounding and range checking. It will throw boost::numeric::positive_overflow resp. boost::numeric::negative_overflow if the data is out of range.
Definition at line 210 of file SupportedUserTypes.h.
UserTypeReturn ChimeraTK::userTypeToUserType | ( | UserTypeParameter | value | ) |
Helper function to convert any UserType data into any other UserType (even if it is a string etc.).
The conversion is done with proper rounding and range checking for numeric types. It will return the closed possible value if the value is out of range.
Definition at line 337 of file SupportedUserTypes.h.
|
constexpr |
Definition at line 11 of file DummyBackendRegisterCatalogue.cc.
|
constexpr |
Definition at line 10 of file DummyBackendRegisterCatalogue.cc.
std::map<DecoratorMapKey, boost::shared_ptr<ChimeraTK::TransferElement> > ChimeraTK::globalDecoratorMap |
Definition at line 9 of file TypeChangingDecorator.cc.
|
constexpr |
Definition at line 20 of file NumericAddressedBackendMuxedRegisterAccessor.h.
|
constexpr |
Definition at line 17 of file NumericAddressedBackendMuxedRegisterAccessor.h.
|
constexpr |
Definition at line 18 of file NumericAddressedBackendMuxedRegisterAccessor.h.
const int ChimeraTK::SHARED_MEMORY_N_MAX_MEMBER = 10 |
Definition at line 36 of file SharedDummyBackend.h.
std::atomic<bool> ChimeraTK::stop_rebot_server |