Attributes

Tango servers can have different types of attributes. So far double, float, long, unsigned short are supported. Functions that read attributes end with Rd, functions that write attributes and with Wrt. The first argument of the functions is always a device name that identifies the server. Device names are defined in /online_dir/online.xml. The attribute names are not case-sensitive.

Spectra::tng_hasAttr()
$ret = Spectra::tng_hasAttr( "exp_mot01", "cwlimit")

Spectra::tng_getDevName()
$ret = Spectra::tng_getDevName( "exp_mot01")

Spectra::tng_attrBoolRd()
$ret = Spectra::tng_attrBoolRd( "dffrctmtr", "Simulated")

Spectra::tng_attrBoolWrt()
$ret = Spectra::tng_attrBoolWrt( "dffrctmtr", "Simulated", 1)

Spectra::tng_attrDoubleRd()
$ret = Spectra::tng_attrDoubleRd( "dev1", "whatEver")

Spectra::tng_attrDoubleWrt()
$ret = Spectra::tng_attrDoubleWrt( "dev1", "attr", 0.5)

Spectra::tng_attrDoubleImageRd()
$ret = Spectra::tng_attrDoubleImageRd( "dffrctmtr", "UB")
returns an array, max. 20 elements.

Spectra::tng_attrDoubleArrRd()
$len = Spectra::tng_attrDoubleArrRd( "TangoTest", "double_spectrum", "size")
returns the size of the array.
$ret = Spectra::tng_attrDoubleArrRd( "TangoTest", "double_spectrum", $idx)
returns the element number $idx. $idx can be in the range [0, $len - 1].

Spectra::tng_attrDoubleArrWrt()
$len = Spectra::tng_attrDoubleArrWrt( "TangoTest", "double_spectrum", $idx, $value)
sets an element of an array.
$ret = Spectra::tng_attrDoubleArrWrt( "TangoTest", "double_spectrum", $idx, $value)
sets the element number $idx. $idx can be in the range [0, $len - 1].

Spectra::tng_attrFloatRd()
$ret = Spectra::tng_attrFloatRd( "mca10", "totaltime")

Spectra::tng_attrFloatWrt()
$ret = Spectra::tng_attrFloatWrt( "t1", "sampletime", 0.5)

Spectra::tng_attrFloatArrRd()
$len = Spectra::tng_attrFloatArrRd( "TangoTest", "float_spectrum", "size")
returns the size of the array.
$ret = Spectra::tng_attrFloatArrRd( "TangoTest", "float_spectrum", $idx)
returns the element number $idx. $idx can be in the range [0, $len - 1].

Spectra::tng_attrFloatArrWrt()
$len = Spectra::tng_attrFloatArrWrt( "TangoTest", "float_spectrum", $idx, $value)
sets an element of an array.
$ret = Spectra::tng_attrFloatArrWrt( "TangoTest", "float_spectrum", $idx, $value)
sets the element number $idx. $idx can be in the range [0, $len - 1].

Spectra::tng_attrLongRd()
$ret = Spectra::tng_attrLongRd( "dev2", "mask1")

Spectra::tng_attrULongWrt()
$ret = Spectra::tng_attrULongWrt( "dev2", "mask1", 0x766)

Spectra::tng_attrULongRd()
$ret = Spectra::tng_attrULongRd( "dev2", "mask1")

Spectra::tng_attrLongWrt()
$ret = Spectra::tng_attrLongWrt( "dev2", "mask1", 0x766)

Spectra::tng_attrLongArrRd()
$len = Spectra::tng_attrLongArrRd( "TangoTest", "long_spectrum", "size")
returns the size of the array.
$ret = Spectra::tng_attrLongArrRd( "TangoTest", "long_spectrum", $idx)
returns the element number $idx. $idx can be in the range [0, $len - 1].

Spectra::tng_attrLongArrWrt()
$len = Spectra::tng_attrLongArrWrt( "TangoTest", "long_spectrum", $idx, $value)
sets an element of an array.
$ret = Spectra::tng_attrLongArrWrt( "TangoTest", "long_spectrum", $idx, $value)
sets the element number $idx. $idx can be in the range [0, $len - 1].

Spectra::tng_attrStringRd()
$ret = Spectra::tng_attrStringRd( "tg_test", "string_scalar")

Spectra::tng_attrStringWrt()
$ret = Spectra::tng_attrStringRd( "tg_test", "string_scalar", "hello")

Spectra::tng_attrStringArrRd()
$ret = Spectra::tng_attrStringRd( "dffrctntr", "ModeNames", "size")
returns the size of the string array.
$ret = Spectra::tng_attrStringRd( "dffrctntr", "ModeNames", $idx)
returns the string numbered by $idx, [0, 99]

Spectra::tng_attrUShortRd()
$ret = Spectra::tng_attrUShortRd( "mca10", "dac1")

Spectra::tng_attrUShortWrt()
$ret = Spectra::tng_attrUShort( "mca10", "dac1", 50)

Spectra::tng_attrShortRd()
$ret = Spectra::tng_attrUShortRd( "e6c", "AnglesIdx")

Spectra::tng_attrUShortWrt()