NDS3  1.0.0
API reference manual
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
nds::PVBaseOutImpl Class Reference

Detailed Description

Base class for all the output PVs.

#include <pvBaseOutImpl.h>

Inheritance diagram for nds::PVBaseOutImpl:
nds::PVBaseImpl nds::PVActionImpl nds::PVDelegateOutImpl< T > nds::PVVariableOutImpl< T >

Public Member Functions

 PVBaseOutImpl (const std::string &name, const outputPvType_t pvType)
 Constructor. More...
 
void subscribeTo (const std::string &inputPVName)
 Subscribe the PV to another input PV. More...
 
virtual void initialize (FactoryBaseImpl &controlSystem)
 Register the PV with the control system. More...
 
virtual void deinitialize ()
 Deregister the PV from the control system.
 
virtual void read (timespec *pTimestamp, std::int32_t *pValue) const
 Called when the control system wants to read the value. More...
 
virtual void write (const timespec &timestamp, const std::int32_t &value)
 Called when the control system wants to write a value. More...
 
virtual dataDirection_t getDataDirection () const
 Retrieve the data direction. More...
 
- Public Member Functions inherited from nds::PVBaseImpl
virtual dataType_t getDataType () const =0
 Return the PV's data type. More...
 
void setDescription (const std::string &description)
 Set the PV description. More...
 
void setUnits (const std::string &units)
 Set the engineering units associated with the PV. More...
 
void setScanType (const scanType_t scanType, const double periodSeconds)
 Set the scan type. More...
 
void setMaxElements (const size_t maxElements)
 Set the maximum number of elements if the data type is an array. More...
 
void setEnumeration (const enumerationStrings_t &enumerations)
 Assign enumeration strings to the PV. More...
 
void processAtInit (const bool bProcessAtInit)
 Specifies if the PV has to be processed during the initialization. More...
 
const std::string & getDescription () const
 Return the PV's description. More...
 
const std::string & getUnits () const
 Return the PV's engineering units. More...
 
scanType_t getScanType () const
 Return the scan type. More...
 
double getScanPeriodSeconds () const
 Return the scan period in seconds. More...
 
size_t getMaxElements () const
 Return the maximum number of elements that can be stored in the array (if the PV data type is an array). More...
 
const enumerationStrings_tgetEnumerations () const
 Return the list of string used to enumerate the integer values. More...
 
bool getProcessAtInit () const
 Return true if the PV has to bve processed during the initialization of the device. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from nds::PVBaseImpl
template<typename T >
static dataType_t getDataTypeForCPPType ()
 Return the data type enumerator for the type in the template. More...
 
- Protected Attributes inherited from nds::PVBaseImpl
std::string m_description
 The PV's description.
 
std::string m_units
 Engineering units.
 
scanType_t m_scanType
 The PV's scan type.
 
double m_periodicScanSeconds
 The interval between data polling (in seconds).
 
size_t m_maxElements
 Maximum number of elements that can be stored in the PV.
 
enumerationStrings_t m_enumeration
 List of strings used for enumeration.
 
bool m_bProcessAtInit
 True if the PV has to be processed during the device initialization.
 

Constructor & Destructor Documentation

nds::PVBaseOutImpl::PVBaseOutImpl ( const std::string &  name,
const outputPvType_t  pvType 
)

Constructor.

Parameters
namethe PV's name

Member Function Documentation

virtual dataDirection_t nds::PVBaseOutImpl::getDataDirection ( ) const
virtual

Retrieve the data direction.

Returns
the data direction

Implements nds::PVBaseImpl.

virtual void nds::PVBaseOutImpl::initialize ( FactoryBaseImpl controlSystem)
virtual

Register the PV with the control system.

Parameters
controlSystemthe control system on which the PV will be registered

Reimplemented from nds::PVBaseImpl.

virtual void nds::PVBaseOutImpl::read ( timespec *  pTimestamp,
std::int32_t *  pValue 
) const
virtual

Called when the control system wants to read the value.

The default implementation throws an exception.

Parameters
pTimestamp
pValue

Reimplemented from nds::PVBaseImpl.

Reimplemented in nds::PVActionImpl.

void nds::PVBaseOutImpl::subscribeTo ( const std::string &  inputPVName)

Subscribe the PV to another input PV.

Parameters
inputPVNamethe name of the input PV from which we want to receive the values
virtual void nds::PVBaseOutImpl::write ( const timespec &  timestamp,
const std::int32_t &  value 
)
virtual

Called when the control system wants to write a value.

The default implementation throws an exception.

Parameters
timestamp
value

Reimplemented from nds::PVBaseImpl.

Reimplemented in nds::PVActionImpl.


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