Experimental Physics and Industrial Control System
|
Actually, the CA client library implementation in Base is written in C++, but it was designed to provide the exact same C API as the original C-based version. It was also written long before modern C++ standards,
and was designed for targets where real-time code was required to minimize how often it allocated and released memory to avoid fragmentation.
If someone were so inclined it should be possible to create a new C++ API for it that calls the private implementation, but there might be some impedance mismatches when doing that because of the way the code
does memory allocation and uses containers.
The libCa code was written by Jeff Hill who retired from the Los Alamos National Lab quite a few years ago now, and the current Core Developers don’t often make changes to the implementation. It is very stable
code that does what it was designed for well, but the community went in a different direction when we chose to use PV Access as a new network protocol. Some labs are likely to continue using CA for many years so we won’t be throwing it out, but new projects
are being steered towards PVA since it can support IPv6 and secure communications. Those could be retro-fitted onto CA, but we have chosen to spend the effort on the newer protocol.
- Andrew
Complexity comes for free, Simplicity you have to work for.
On 6/24/25, 4:26 AM, "Tech-talk" <tech-talk-bounces at aps.anl.gov> wrote:
Hi Laurenz and Abdalla,
I too have some experience with CAFE from PSI. It is quite good in my opinion once you get the CAFE working (not difficult). On the other hand, I am not sure if CAFE is what Abdalla is after; he is looking for C++ library, not
a wrapper. At least when I looked at CAFE the last, it was more of a wrapper than a true C++ library (except that I have not used it for several years that it might have changed).
In fact, I thought about replying to Abdalla with CAFE, until I read his original e-mail very carefully.
Best,
Jiro
On 06/24/2025 9:28 AM, Laurenz Rettig via Tech-talk wrote:
-------- Ursprüngliche Nachricht --------
Datum: 24.06.25 08:42 (GMT+02:00)
Betreff: RE: EPICS Clients in C++
Thanks Ralph. Is there something similar for channel access? In other words, a C++ implementation of channel access?
Best Regards,
Abdalla Al-Dalleh
Control Engineer
SESAME
P.O. Box 7, Allan 19252, Jordan
Tel: +96253511348 , ext. 265
Fax: +96253511423
Email :
abdalla.ahmad at sesame.org.jo
Website: www.sesame.org.jo
Is there a client API for EPICS implemented in C++ not just a wrapper for the C API? Possibly using recent C++ standards?
|
- References:
- RE: EPICS Clients in C++ Laurenz Rettig via Tech-talk
- Re: EPICS Clients in C++ Fujita Jiro via Tech-talk
- Navigate by Date:
- Prev:
RE: [EXTERNAL] Re: Suggestions wanted on IOC hardware Leblanc, Gregory via Tech-talk
- Next:
Re: Diagnosing and overcoming GigE camera freezes Daykin, Evan via Tech-talk
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
<2025>
- Navigate by Thread:
- Prev:
Re: EPICS Clients in C++ Fujita Jiro via Tech-talk
- Next:
RE: EPICS Clients in C++ [SEC=OFFICIAL] STARRITT, Andrew via Tech-talk
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
<2025>
|
ANJ, 26 Jun 2025 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
·
Download
·
Search
·
IRMIS
·
Talk
·
Documents
·
Links
·
Licensing
·
|