epics-pva-client
OfficialBuild robust EPICS PVA clients and servers in C++
AuthorBCDA-APS
Version1.0.0
Installs0
System Documentation
What problem does it solve?
This skill helps you write correct, production-ready EPICS PV Access (PVA) client and server code in C++ so you can exchange structured data, perform atomic updates, and expose RPC services without reinventing the protocol plumbing.
Core Features & Use Cases
- Client operations with pvac::: Connect to PVs, issue blocking gets, perform fluent puts, and manage monitors reliably.
- Structured data with pvData: Define PVStructure types using FieldBuilder, access fields safely, and handle arrays with shared_vector for efficient transfers.
- Server-side SharedPV patterns: Implement mailbox/read-only PVs and handle custom put processing via SharedPV handlers.
- Normative Types and PVA patterns: Use epics::nt normative types (NTScalar, NTTable, NTNDArray, etc.) for standard layouts.
- QSRV group exposure via info(Q:group): Group IOC records into atomic PVA PV updates and configure triggers.
- Quick CLI parity: Use pvget/pvput/pvmonitor/pvinfo/pvlist/pvcall as practical development and debugging companions.
Quick Start
Use the epics-pva-client skill to generate a C++ PVAccess client that connects to a PVA PV, performs a get with selected fields, and prints the returned PVStructure.
Dependency Matrix
Required Modules
None requiredComponents
Standard package💻 Claude Code Installation
Recommended: Let Claude install automatically. Simply copy and paste the text below to Claude Code.
Please help me install this Skill: Name: epics-pva-client Download link: https://github.com/BCDA-APS/opencode-skills/archive/main.zip#epics-pva-client Please download this .zip file, extract it, and install it in the .claude/skills/ directory.
Agent Skills Search Helper
Install a tiny helper to your Agent, search and equip skill from 471,000+ vetted skills library on demand.