NDS3
1.0.0
API reference manual
|
Defines all the enumeration and common types used across the NDS library. More...
#include <cstdint>
#include <functional>
#include <time.h>
#include <string>
#include <list>
#include <vector>
#include <map>
Go to the source code of this file.
Namespaces | |
nds | |
All the classes and methods defined by the NDS3 framework are in the namespace nds. | |
Macros | |
#define | ndsLogStream(node, logLevel) if(!(node).isLogLevelEnabled(logLevel)) {} else (node).getLogger(logLevel) |
If the logging is enabled for the specified severity level then the macro returns the proper logging stream, otherwise it skips the logging operation. | |
#define | ndsDebugStream(node) ndsLogStream(node, nds::logLevel_t::debug) |
Log to the debug stream if the debug log level is enabled on the selected node. More... | |
#define | ndsInfoStream(node) ndsLogStream(node, nds::logLevel_t::info) |
Log to the info stream if the info log level is enabled on the selected node. More... | |
#define | ndsWarningStream(node) ndsLogStream(node, nds::logLevel_t::warning) |
Log to the warning stream if the warning log level is enabled on the selected node. More... | |
#define | ndsErrorStream(node) ndsLogStream(node, nds::logLevel_t::error) |
Log to the error stream if the error log level is enabled on the selected node. More... | |
#define | NDS_DEFINE_DRIVER(driverName, className) |
Defines the global functions that are called by NDS when the device class needs to be allocated. More... | |
Typedefs | |
typedef std::vector< std::string > | nds::parameters_t |
List of strings passed as parameters to nodes' commands. | |
typedef std::function < parameters_t(const parameters_t ¶meters)> | nds::command_t |
Definition of a function called to execute a node's command. More... | |
typedef std::map< std::string, std::string > | nds::namedParameters_t |
Map containing named parameters passed to the device during the initialization. | |
typedef std::function< void *(Factory &factory, const std::string &deviceName, const namedParameters_t ¶meters)> | nds::allocateDriver_t |
Definition for the function executed to allocate a driver. More... | |
typedef std::function< void(void *)> | nds::deallocateDriver_t |
Definition for the function executed to deallocate a driver. More... | |
typedef std::function< void()> | nds::stateChange_t |
Definition for the function executed during the state transition. More... | |
typedef std::function< bool(const state_t, const state_t, const state_t)> | nds::allowChange_t |
Definition for a function called to allow or deny a state transition. More... | |
typedef std::function< timespec()> | nds::getTimestampPlugin_t |
Definition for a function called to retrieve a time. More... | |
typedef std::list< std::string > | nds::enumerationStrings_t |
List of strings used for enumeration in PVs that support the enumeration field. | |
Defines all the enumeration and common types used across the NDS library.
Include nds.h instead of this one, since nds3.h takes care of including all the necessary header files (including this one).
#define NDS_DEFINE_DRIVER | ( | driverName, | |
className | |||
) |
Defines the global functions that are called by NDS when the device class needs to be allocated.
driverName | a token that specifies the driver name (input has to be valid c symbol name) |
className | the name of the class that implements the driver |