NDS3
1.0.0
API reference manual
|
An output PV object that also stores the value so it does not need to delegate the read and write functions.
The application can use PVVariableOut::getValue()to retrieve the PV's value; the control system will use the methods read() and write() to read and set the value.
T | the PV data type. The following data types are supported:
|
#include <pvVariableOut.h>
Public Member Functions | |
PVVariableOut () | |
Initializes an empty PVVariableOut PV. More... | |
PVVariableOut (const std::string &name) | |
Construct the PVVariableOut object. More... | |
T | getValue () const |
Retrieve the value stored in the PV. More... | |
void | getValue (timespec *pTime, T *pValue) const |
Retrieve the value and the timestamp stored in the PV. More... | |
Public Member Functions inherited from nds::PVBaseOut | |
PVBaseOut () | |
Construct an empty PVBaseOut. More... | |
template<typename T > | |
void | read (timespec *pTimestamp, T *pValue) const |
Call to read the value of the PV. More... | |
template<typename T > | |
void | write (const timespec ×tamp, const T &value) |
Call to write the value into the PV. More... | |
void | subscribeTo (const std::string &inputPVName) |
Subscribe the PV to an input PV which may be located on any other device running in the same NDS process. More... | |
Public Member Functions inherited from nds::PVBase | |
void | setDescription (const std::string &description) |
Set a human readable description of the PV. More... | |
void | setUnits (const std::string &units) |
Set the engineering units of the PV. More... | |
void | setInterfaceName (const std::string &interfaceName) |
Set the name of the PV as seen by the control system. More... | |
void | setScanType (const scanType_t scanType, const double periodSeconds=1) |
Set how the PV value is retrieved by the control system. More... | |
void | setMaxElements (const size_t maxElements) |
If the data type of the PV is a vector then set the maximum number of elements that the vector will contain. More... | |
void | setEnumeration (const enumerationStrings_t &enumerations) |
If the data type is an integer then assigns a list of strings that enumerate the values (starting from zero). More... | |
void | processAtInit (const bool bProcessAtInit) |
Specifies if the read() function of the PV should be called during the device initialization. More... | |
Public Member Functions inherited from nds::Base | |
Base (const Base &right) | |
Copy constructor. The copy will refer to the same implementation object referenced in the copied object. More... | |
Base & | operator= (const Base &right) |
Copy operator. The copy will refer to the same implementation object referenced in the copied object. More... | |
void | setExternalName (const std::string &externalName) |
Set the string to pass to the naming rules in order to build the full node name as seen by the control system. More... | |
virtual Port | getPort () |
Get the Node that communicate with the device (ASYN port on EPICS, Device on Tango). Query the parent nodes if necessary. More... | |
const std::string & | getComponentName () const |
Return the node's name. More... | |
const std::string & | getFullName () const |
Return the full node's name, prepending the parents' names if necessary (e.g. "ROOT-CHANNEL1-THISNODE") More... | |
const std::string & | getFullExternalName () const |
Return the full node's name as seen by the control system clients. More... | |
const std::string & | getFullNameFromPort () const |
Return the node's name as seen by the parent Port node (the node that communicates with the device). More... | |
timespec | getTimestamp () const |
Get the current time. More... | |
void | setTimestampDelegate (getTimestampPlugin_t timestampDelegate) |
Specify the delegate function to call to get the timestamp. More... | |
std::ostream & | getLogger (const logLevel_t logLevel) |
Retrieve a logging stream for the specified log level. More... | |
bool | isLogLevelEnabled (const logLevel_t logLevel) const |
Returns true if the logging for a particular severity level has been enabled. More... | |
void | setLogLevel (const logLevel_t logLevel) |
Enable the logging for a particular severity level. More... | |
void | defineCommand (const std::string &command, const std::string &usage, const size_t numParameters, const command_t function) |
Define a command specific for the node. More... | |
Thread | runInThread (const std::string &name, threadFunction_t function) |
Create and run a thread using the control system facilities. More... | |
Thread | runInThread (threadFunction_t function) |
Create and run a thread using the control system facilities. The created thread will have the node's name. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from nds::Base | |
Base () | |
Initializes an empty base class. | |
nds::PVVariableOut< T >::PVVariableOut | ( | ) |
Initializes an empty PVVariableOut PV.
You must assign a valid PVVariableOut PV before calling Node::initialize() on the root node.
nds::PVVariableOut< T >::PVVariableOut | ( | const std::string & | name | ) |
Construct the PVVariableOut object.
name | name of the PV |