In file included from ../getputmonitor.cpp:16:
/Users/junkes/ABER_JETZT/epics-base/include/pv/pvaClient.h:1736:10:
warning: 'epics::pvaClient::PvaClientMonitor::monitorConnect'
hides overloaded virtual function [-Woverloaded-virtual]
void monitorConnect(
^
/Users/junkes/ABER_JETZT/epics-base/include/pv/pvaClient.h:1603:18:
note: hidden overloaded virtual function
'epics::pvaClient::PvaClientMonitorRequester::monitorConnect'
declared here: type mismatch at 2nd parameter ('const
epics::pvaClient::PvaClientMonitorPtr &' (aka 'const
shared_ptr<epics::pvaClient::PvaClientMonitor> &')
vs 'const epics::pvData::MonitorPtr &' (aka 'const
shared_ptr<epics::pvAccess::Monitor> &'))
virtual void
monitorConnect(epics::pvData::Status const & status,
^
/Users/junkes/ABER_JETZT/epics-base/include/pv/pvaClient.h:1740:10:
warning: 'epics::pvaClient::PvaClientMonitor::unlisten' hides
overloaded virtual function [-Woverloaded-virtual]
void unlisten(epics::pvData::MonitorPtr const
& monitor);
^
/Users/junkes/ABER_JETZT/epics-base/include/pv/pvaClient.h:1616:18:
note: hidden overloaded virtual function
'epics::pvaClient::PvaClientMonitorRequester::unlisten'
declared here: different number of parameters (0 vs 1)
virtual void unlisten()
^
2 warnings generated.
c++ -o myEx -L/Users/junkes/pvTest/lib/darwin-x86
-L/Users/junkes/ABER_JETZT/epics-base/lib/darwin-x86
-arch x86_64 myEx_registerRecordDeviceDriver.o
getputmonitor.o -lmyExSupport -lqsrv -lpvAccessIOC
-lpvAccessCA -lpvAccess -lpvData -ldbRecStd -ldbCore -lca
-lCom
Undefined symbols for architecture x86_64:
"epics::pvaClient::PvaClientGet::issueConnect()", referenced
from:
ClientGetPutMonitor::channelStateChange(std::__1::shared_ptr<epics::pvaClient::PvaClientChannel>
const&, bool) in getputmonitor.o
"epics::pvaClient::PvaClientGet::setRequester(std::__1::shared_ptr<epics::pvaClient::PvaClientGetRequester>
const&)", referenced from:
ClientGetPutMonitor::channelStateChange(std::__1::shared_ptr<epics::pvaClient::PvaClientChannel>
const&, bool) in getputmonitor.o
"epics::pvaClient::PvaClientGet::get()",
referenced from:
ClientGetPutMonitor::get() in
getputmonitor.o
"epics::pvaClient::PvaClientGet::getData()",
referenced from:
ClientGetPutMonitor::get() in
getputmonitor.o
"epics::pvaClient::PvaClientPut::issueConnect()", referenced
from:
ClientGetPutMonitor::channelStateChange(std::__1::shared_ptr<epics::pvaClient::PvaClientChannel>
const&, bool) in getputmonitor.o
"epics::pvaClient::PvaClientPut::setRequester(std::__1::shared_ptr<epics::pvaClient::PvaClientPutRequester>
const&)", referenced from:
ClientGetPutMonitor::channelStateChange(std::__1::shared_ptr<epics::pvaClient::PvaClientChannel>
const&, bool) in getputmonitor.o
"epics::pvaClient::PvaClientPut::getData()",
referenced from:
ClientGetPutMonitor::put(std::__1::basic_string<char,
std::__1::char_traits<char>,
std::__1::allocator<char> > const&) in
getputmonitor.o
ClientGetPutMonitor::getDone(epics::pvData::Status const&,
std::__1::shared_ptr<epics::pvaClient::PvaClientPut>
const&) in getputmonitor.o
"epics::pvaClient::PvaClientPut::issuePut()",
referenced from:
ClientGetPutMonitor::put(std::__1::basic_string<char,
std::__1::char_traits<char>,
std::__1::allocator<char> > const&) in
getputmonitor.o
"epics::pvaClient::PvaClientChannel::issueConnect()",
referenced from:
ClientGetPutMonitor::init(std::__1::shared_ptr<epics::pvaClient::PvaClient>
const&) in getputmonitor.o
"epics::pvaClient::PvaClientChannel::createMonitor(std::__1::basic_string<char,
std::__1::char_traits<char>,
std::__1::allocator<char> > const&)", referenced
from:
ClientGetPutMonitor::channelStateChange(std::__1::shared_ptr<epics::pvaClient::PvaClientChannel>
const&, bool) in getputmonitor.o
"epics::pvaClient::PvaClientChannel::setStateChangeRequester(std::__1::shared_ptr<epics::pvaClient::PvaClientChannelStateChangeRequester>
const&)", referenced from:
ClientGetPutMonitor::init(std::__1::shared_ptr<epics::pvaClient::PvaClient>
const&) in getputmonitor.o
"epics::pvaClient::PvaClientChannel::createGet(std::__1::basic_string<char,
std::__1::char_traits<char>,
std::__1::allocator<char> > const&)", referenced
from:
ClientGetPutMonitor::channelStateChange(std::__1::shared_ptr<epics::pvaClient::PvaClientChannel>
const&, bool) in getputmonitor.o
"epics::pvaClient::PvaClientChannel::createPut(std::__1::basic_string<char,
std::__1::char_traits<char>,
std::__1::allocator<char> > const&)", referenced
from:
ClientGetPutMonitor::channelStateChange(std::__1::shared_ptr<epics::pvaClient::PvaClientChannel>
const&, bool) in getputmonitor.o
"epics::pvaClient::PvaClientGetData::showChanged(std::__1::basic_ostream<char,
std::__1::char_traits<char> >&)", referenced
from:
ClientGetPutMonitor::get() in
getputmonitor.o
"epics::pvaClient::PvaClientGetData::getChangedBitSet()",
referenced from:
ClientGetPutMonitor::get() in
getputmonitor.o
"epics::pvaClient::PvaClientMonitor::issueConnect()",
referenced from:
ClientGetPutMonitor::channelStateChange(std::__1::shared_ptr<epics::pvaClient::PvaClientChannel>
const&, bool) in getputmonitor.o
"epics::pvaClient::PvaClientMonitor::releaseEvent()",
referenced from:
ClientGetPutMonitor::event(std::__1::shared_ptr<epics::pvaClient::PvaClientMonitor>
const&) in getputmonitor.o
"epics::pvaClient::PvaClientMonitor::setRequester(std::__1::shared_ptr<epics::pvaClient::PvaClientMonitorRequester>
const&)", referenced from:
ClientGetPutMonitor::channelStateChange(std::__1::shared_ptr<epics::pvaClient::PvaClientChannel>
const&, bool) in getputmonitor.o
"epics::pvaClient::PvaClientMonitor::poll()",
referenced from:
ClientGetPutMonitor::event(std::__1::shared_ptr<epics::pvaClient::PvaClientMonitor>
const&) in getputmonitor.o
"epics::pvaClient::PvaClientMonitor::stop()",
referenced from:
simple(char*) in getputmonitor.o
"epics::pvaClient::PvaClientMonitor::start()",
referenced from:
simple(char*) in getputmonitor.o
ClientGetPutMonitor::monitorConnect(epics::pvData::Status
const&,
std::__1::shared_ptr<epics::pvaClient::PvaClientMonitor>
const&, std::__1::shared_ptr<epics::pvData::Structure
const> const&) in getputmonitor.o
non-virtual thunk to
ClientGetPutMonitor::monitorConnect(epics::pvData::Status
const&,
std::__1::shared_ptr<epics::pvaClient::PvaClientMonitor>
const&, std::__1::shared_ptr<epics::pvData::Structure
const> const&) in getputmonitor.o
"epics::pvaClient::PvaClientMonitor::getData()",
referenced from:
ClientGetPutMonitor::event(std::__1::shared_ptr<epics::pvaClient::PvaClientMonitor>
const&) in getputmonitor.o
"epics::pvaClient::PvaClientPutData::getPVStructure()",
referenced from:
ClientGetPutMonitor::put(std::__1::basic_string<char,
std::__1::char_traits<char>,
std::__1::allocator<char> > const&) in
getputmonitor.o
ClientGetPutMonitor::getDone(epics::pvData::Status const&,
std::__1::shared_ptr<epics::pvaClient::PvaClientPut>
const&) in getputmonitor.o
"epics::pvaClient::PvaClientMonitorData::showChanged(std::__1::basic_ostream<char,
std::__1::char_traits<char> >&)", referenced
from:
ClientGetPutMonitor::event(std::__1::shared_ptr<epics::pvaClient::PvaClientMonitor>
const&) in getputmonitor.o
"epics::pvaClient::PvaClient::createChannel(std::__1::basic_string<char,
std::__1::char_traits<char>,
std::__1::allocator<char> > const&,
std::__1::basic_string<char,
std::__1::char_traits<char>,
std::__1::allocator<char> > const&)", referenced
from:
ClientGetPutMonitor::init(std::__1::shared_ptr<epics::pvaClient::PvaClient>
const&) in getputmonitor.o
"epics::pvaClient::PvaClient::get(std::__1::basic_string<char,
std::__1::char_traits<char>,
std::__1::allocator<char> > const&)", referenced
from:
simple(char*) in getputmonitor.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code
1 (use -v to see invocation)
make[3]: *** [myEx] Error 1
make[2]: *** [install.darwin-x86] Error 2
make[1]: *** [src.install] Error 2
make: *** [myExApp.install] Error 2
Hi Heinz,
I have recently tested some of the examples in
https://github.com/epics-base/exampleCPP
and they are working with EPICS 7.0.2.
Cheers,
Will
________________________________
From:
[email protected]
<
[email protected]>
on behalf of Heinz Junkes via Tech-talk <
[email protected]>
Sent: 11 March 2019 16:41:54
To: tech-talk
Subject: I'm looking for a pvacces example to read
PVStructure
I'm looking for a pva example c++ program which I can
currently use (with Epics 7).
Unfortunately the examples I've found on the net don't
work at all.
Above all, there seems to be a little confusion between
PVAClient and pvac? (Or I don't get it)
I have a client that wants to read the PVStructure of a
PV and then put new data into
NTTable vector fields (x, y, z and time_index):
humma-kavula:~ junkes$ pvlist 0xB9EC6A5C00000000C2AFA421
CRYVISIL:STM:FASTSCAN:IMAGE_CHUNK
humma-kavula:~ junkes$ pvinfo
CRYVISIL:STM:FASTSCAN:IMAGE_CHUNK
CHANNEL : CRYVISIL:STM:FASTSCAN:IMAGE_CHUNK
STATE : CONNECTED
ADDRESS : 141.14.133.59:53379
epics:nt/NTTable:1.0
string[] labels
structure value
double[] x
double[] y
double[] z
int[] time_index
string descriptor
alarm_t alarm
int severity
int status
string message
time_t timeStamp
long secondsPastEpoch
int nanoseconds
int userTag
int counter
--
This e-mail and any attachments may contain
confidential, copyright and or privileged material, and
are for the use of the intended addressee only. If you
are not the intended addressee or an authorised
recipient of the addressee please notify us of receipt
by returning the e-mail and do not use, copy, retain,
distribute or disclose the information in or attached to
the e-mail.
Any opinions expressed within this e-mail are those of
the individual and not necessarily of Diamond Light
Source Ltd.
Diamond Light Source Ltd. cannot guarantee that this
e-mail or any attachments are free from viruses and we
cannot accept liability for any damage which you may
sustain as a result of software viruses which may be
transmitted in or with the message.
Diamond Light Source Limited (company no. 4375679).
Registered in England and Wales with its registered
office at Diamond House, Harwell Science and Innovation
Campus, Didcot, Oxfordshire, OX11 0DE, United Kingdom