asyn 4-28
Public Member Functions | Public Attributes | Static Public Attributes | Protected Attributes
paramVal Class Reference

Structure for storing parameter value in parameter library. More...

#include <paramVal.h>

List of all members.

Public Member Functions

 paramVal (const char *name)
 paramVal (const char *name, asynParamType type)
bool isDefined ()
void setDefined (bool defined)
bool hasValueChanged ()
void setValueChanged ()
void resetValueChanged ()
void setStatus (asynStatus status)
asynStatus getStatus ()
char * getName ()
bool nameEquals (const char *name)
void setInteger (epicsInt32 value)
 Sets the value for an integer.
epicsInt32 getInteger ()
 Gets the value for an integer in the parameter library.
void setUInt32 (epicsUInt32 value, epicsUInt32 valueMask, epicsUInt32 interruptMask)
 Sets the value for a UInt32 in the parameter library.
epicsUInt32 getUInt32 (epicsUInt32 valueMask)
 Gets the value for a UInt32 in the parameter library.
void setDouble (epicsFloat64 value)
 Sets the value for a double in the parameter library.
epicsFloat64 getDouble ()
 Gets the value for an double in the parameter library.
void setString (const char *value)
 Sets the value for a string in the parameter library.
char * getString ()
 Gets the value for a string in the parameter library.
void report (int id, FILE *fp, int details)
const char * getTypeName ()

Public Attributes

asynParamType type
 Parameter data type.
epicsUInt32 uInt32RisingMask
epicsUInt32 uInt32FallingMask
epicsUInt32 uInt32CallbackMask
epicsInt32 ival
epicsUInt32 uival
epicsFloat64 dval
char * sval
epicsInt8 * pi8
epicsInt16 * pi16
epicsInt32 * pi32
epicsFloat32 * pf32
epicsFloat64 * pf64
void * pgp

Static Public Attributes

static const char * typeNames []

Protected Attributes

asynStatus status_
bool valueDefined
bool valueChanged
char * name
 Parameter name.
union {
   epicsInt32   ival
   epicsUInt32   uival
   epicsFloat64   dval
   char *   sval
   epicsInt8 *   pi8
   epicsInt16 *   pi16
   epicsInt32 *   pi32
   epicsFloat32 *   pf32
   epicsFloat64 *   pf64
   void *   pgp
data

Detailed Description

Structure for storing parameter value in parameter library.


Constructor & Destructor Documentation

paramVal::paramVal ( const char *  name)
paramVal::paramVal ( const char *  name,
asynParamType  type 
)

Member Function Documentation

double paramVal::getDouble ( )

Gets the value for an double in the parameter library.

Exceptions:
ParamValWrongTypeif type is not asynParamFloat64
paramValNotDefinedif the value is not defined
int paramVal::getInteger ( )

Gets the value for an integer in the parameter library.

Exceptions:
ParamValWrongTypeif type is not asynParamInt32
paramValNotDefinedif the value is not defined
char * paramVal::getName ( )
asynStatus paramVal::getStatus ( )
char * paramVal::getString ( )

Gets the value for a string in the parameter library.

Exceptions:
ParamValWrongTypeif type is not asynParamOctet
paramValNotDefinedif the value is not defined
const char * paramVal::getTypeName ( )
epicsUInt32 paramVal::getUInt32 ( epicsUInt32  valueMask)

Gets the value for a UInt32 in the parameter library.

Parameters:
[in]valueMaskMask to use when getting the value.
Returns:
Returns asynParamBadIndex if the index is not valid or asynParamWrongType if the parameter type is not asynParamUInt32Digital.
bool paramVal::hasValueChanged ( )
bool paramVal::isDefined ( )
bool paramVal::nameEquals ( const char *  name)
void paramVal::report ( int  id,
FILE *  fp,
int  details 
)
void paramVal::resetValueChanged ( )
void paramVal::setDefined ( bool  defined)
void paramVal::setDouble ( epicsFloat64  value)

Sets the value for a double in the parameter library.

Parameters:
[in]valueValue to set.
Returns:
Returns asynParamBadIndex if the index is not valid or asynParamWrongType if the parameter type is not asynParamFloat64.
void paramVal::setInteger ( epicsInt32  value)

Sets the value for an integer.

Parameters:
[in]valueValue to set.
Exceptions:
ParamValWrongTypeif type is not asynParamInt32
void paramVal::setStatus ( asynStatus  status)
void paramVal::setString ( const char *  value)

Sets the value for a string in the parameter library.

Parameters:
[out]valueAddress of value to set.
Returns:
Returns asynParamBadIndex if the index is not valid or asynParamWrongType if the parameter type is not asynParamOctet.
void paramVal::setUInt32 ( epicsUInt32  value,
epicsUInt32  valueMask,
epicsUInt32  interruptMask 
)

Sets the value for a UInt32 in the parameter library.

Parameters:
[in]valueValue to set.
[in]valueMaskMask to use when setting the value.
[in]interruptMaskMask of bits that have changed even if the value has not changed
Returns:
Returns asynParamBadIndex if the index is not valid or asynParamWrongType if the parameter type is not asynParamUInt32Digital.
void paramVal::setValueChanged ( )

Member Data Documentation

union { ... } paramVal::data [protected]
epicsFloat64 paramVal::dval
epicsInt32 paramVal::ival
char* paramVal::name [protected]

Parameter name.

epicsFloat32* paramVal::pf32
epicsFloat64* paramVal::pf64
epicsInt16* paramVal::pi16
epicsInt32* paramVal::pi32
epicsInt8* paramVal::pi8
asynStatus paramVal::status_ [protected]

Parameter data type.

const char * paramVal::typeNames [static]
Initial value:
 {
    "asynParamTypeUndefined",
    "asynParamInt32",
    "asynParamUInt32Digital",
    "asynParamFloat64",
    "asynParamOctet",
    "asynParamInt8Array",
    "asynParamInt16Array",
    "asynParamInt32Array",
    "asynParamFloat32Array",
    "asynParamFloat64Array",
    "asynParamGenericPointer"
}
epicsUInt32 paramVal::uival
bool paramVal::valueChanged [protected]
bool paramVal::valueDefined [protected]

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