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