caproto.server.pvfunction¶
- class caproto.server.pvfunction(func=None, default=None, names=None, alarm_group=None, prefix=None, macros=None, attr_separator=None, doc=None)[source]¶
A descriptor for making an RPC-like function.
Note: Requires Python type hinting for all arguments to the function and its return value. These are used to generate the PVs.
It’s worth noting that this is not particularly very useful when multiple clients are accessing the same IOC, which is rather the point of EPICS, isn’t it? That being said, this reflects an intended API for when future pvAccess support gets added.
- Parameters:
- funcasync callable, optional
The function to wrap
- defaultany, optional
Default value for the return value
- namesdict, optional
Valid keys include {‘process’, ‘retval’, ‘status’} and also any function argument names. This will map attributes of the dynamically-generated PVGroup that this pvfunction represents to EPICS PV names.
- alarm_groupstr, optional
The alarm group name this group should be associated with
- prefixstr, optional
The prefix for all PVs
- macrosdict, optional
Macro dictionary for PVs
- attr_separatorstr, optional
String separator between {prefix} and {attribute} for generated PV names.
- docstr, optional
Docstring
Methods
get_additional_parameters
()pvspec_from_parameter
(param[, doc])Attributes
default_names
group
Property handling either group dict or group class
group_dict
The group attribute dictionary
attr_separator
base
group_cls
init_kwargs
macros
prefix