Experimental Physics and Industrial Control System
|
|
On 8/19/25 10:21, Thomas, Patrick via
Tech-talk wrote:
Hello,
I'm working through implementing a class that inherits from
asynPortDriver and attempting to override the 'connect' virtual
method. However, the code I have overridden it with never
appears to be called. Is there a configuration parameter or
something else that I need to do to have this work?
This might be a simple c++ issue with attempting to override a
method, but providing an incorrect argument list. With C++11, the
"override" keyword can help detect this.
http ://www.en.cppreference.com/w/cpp/language/override.html
Thank you,
Patrick
Hi Mark,
I did see that and was starting to look at using asyn, but I
was having trouble figuring out how to do so. Is there a
minimal working example that I might be able to modify? Do I
need to create separate driver and device support?
The other thought I had was if this could be handled by
somehow creating record support for read/write records.
Thank you,
Patrick
Hi Patrick,
As Ralph said, if your driver is written using asyn then you
can use the info(asyn:READBACK) tag on your output record.
I'm not sure what you mean here. I think the EPICS record
locking an asyn port locking will guarantee that all EPICS
writes get sent to the hardware atomically, and that all
callbacks from the driver that update the output record will
be atomic. However, once EPICS writes the value to the
hardware, the next poll of the hardware could quickly change
the output record. Maybe I am not understanding your
question.
Mark
Hello,
I'm attempting to write device support to handle the scenario
where changes to the value of a hardware device can be made
from both EPICS and another source. I would like the value of
the hardware to be changed if I write a value to the record
through channel access, and also to continuously monitor the
hardware device for changes made from the other source and
update the value of the record to match. One approach I have
considered is to use separate output and input records, where
the output records write values set from channel access to the
hardware and the input records periodically scan the hardware
and update their values accordingly. I am wondering however if
there is a way to do this with the val field of just an output
record. Is there any way to synchronize things so that write
requests coming from channel access are always written to the
hardware and not overridden by periodic updates from reading
the hardware?
Thank you,
Patrick
|
- Replies:
- Re: synchronizing the value of a read/write record Thomas, Patrick via Tech-talk
- References:
- synchronizing the value of a read/write record Thomas, Patrick via Tech-talk
- Re: synchronizing the value of a read/write record Mark Rivers via Tech-talk
- Re: synchronizing the value of a read/write record Thomas, Patrick via Tech-talk
- Re: synchronizing the value of a read/write record Thomas, Patrick via Tech-talk
- Navigate by Date:
- Prev:
Re: synchronizing the value of a read/write record Thomas, Patrick via Tech-talk
- Next:
Re: synchronizing the value of a read/write record Thomas, Patrick 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>
2026
- Navigate by Thread:
- Prev:
Re: synchronizing the value of a read/write record Thomas, Patrick via Tech-talk
- Next:
Re: synchronizing the value of a read/write record Thomas, Patrick 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>
2026
|
|
ANJ, 19 Mar 2026 |
·
Home
·
News
·
About
·
Talk
·
Base
·
Modules
·
Extensions
·
·
Distributions
·
Download
·
Documents
·
Links
·
Licensing
·
|