diff --git a/documentation/RELEASE_NOTES.md b/documentation/RELEASE_NOTES.md index 0f02f57..daaaa0a 100644 --- a/documentation/RELEASE_NOTES.md +++ b/documentation/RELEASE_NOTES.md @@ -2,6 +2,15 @@ pwd# pvaClientCPP Module This document summarizes the changes to the module between releases. +## Release 4.8.0 (EPICS 7.0.4.* March 2021 + +* PvaClientNTMultiData::getChannelChangeFlags is a new method. It fixes issue #66. +* Fix for issue #68. Both PvaClientArray and PvaClientField are not longer present. Neither was previously implemented. +* Several public methods are now protected. They were never meant to be called by clients. +* Issue #70 has been fixed. +* Changes was made to increase the performance of pvaMultiChannel. +* doxygen changes were made. + ## Release 4.7.1 (EPICS 7.0.3.2 May 2020) * support access to a union field that is a scalar or scalarArray diff --git a/documentation/pvaClientCPP.html b/documentation/pvaClientCPP.html index 68fe4c2..c9b7687 100644 --- a/documentation/pvaClientCPP.html +++ b/documentation/pvaClientCPP.html @@ -26,7 +26,7 @@

EPICS pvaClientCPP

-

Release 4.4 - April 2019

+

Release 4.8 - March 2021

Abstract

@@ -66,9 +66,16 @@ The data for the channels is presented via normative type NTMultiChannel.

Overview

+Documentation for pvaClientCPP is available at: + +pvaClient + +

+

pvaClientCPP is one of the components of - -EPICS Version 4 + +EPICS-7

This document is only a guide to help locate code and documentation related to pvaClientCPP diff --git a/src/pvaClientMonitor.cpp b/src/pvaClientMonitor.cpp index e34245a..76dd13b 100644 --- a/src/pvaClientMonitor.cpp +++ b/src/pvaClientMonitor.cpp @@ -296,9 +296,7 @@ void PvaClientMonitor::unlisten(MonitorPtr const & monitor) PvaClientMonitorRequesterPtr req = pvaClientMonitorRequester.lock(); if(req) { req->unlisten(); - return; } - cerr << pvaClientChannel->getChannel()->getChannelName() + "pvaClientMonitor::unlisten called but no PvaClientMonitorRequester\n"; } diff --git a/src/pvaClientMultiChannel.cpp b/src/pvaClientMultiChannel.cpp index 66c15fa..e147579 100644 --- a/src/pvaClientMultiChannel.cpp +++ b/src/pvaClientMultiChannel.cpp @@ -149,7 +149,6 @@ PvaClientPtr PvaClientMultiChannel::getPvaClient() PvaClientMultiGetDoublePtr PvaClientMultiChannel::createGet() { -cout << "PvaClientMultiChannel::createGet\n"; checkConnected(); return PvaClientMultiGetDouble::create(shared_from_this(),pvaClientChannelArray); } @@ -157,7 +156,6 @@ cout << "PvaClientMultiChannel::createGet\n"; PvaClientMultiPutDoublePtr PvaClientMultiChannel::createPut() { -cout << "PvaClientMultiChannel::createPut\n"; checkConnected(); return PvaClientMultiPutDouble::create(shared_from_this(),pvaClientChannelArray); } @@ -165,7 +163,6 @@ cout << "PvaClientMultiChannel::createPut\n"; PvaClientMultiMonitorDoublePtr PvaClientMultiChannel::createMonitor() { -cout << "PvaClientMultiChannel::createMonitor\n"; checkConnected(); return PvaClientMultiMonitorDouble::create(shared_from_this(), pvaClientChannelArray); } diff --git a/src/pvaClientNTMultiPut.cpp b/src/pvaClientNTMultiPut.cpp index d4bfb1c..9a6552e 100644 --- a/src/pvaClientNTMultiPut.cpp +++ b/src/pvaClientNTMultiPut.cpp @@ -146,12 +146,15 @@ void PvaClientNTMultiPut::put() value[i]->copy(*unionValue[i]->get()); pvaClientPut[i]->issuePut(); } - if(isConnected[i]) { - Status status = pvaClientPut[i]->waitPut(); - if(status.isOK()) continue; - string message = string("channel ") +pvaClientChannelArray[i]->getChannelName() - + " PvaChannelPut::waitPut " + status.getMessage(); - throw std::runtime_error(message); + } + for(size_t i=0; iwaitPut(); + if(status.isOK()) continue; + string message = string("channel ") +pvaClientChannelArray[i]->getChannelName() + + " PvaChannelPut::waitPut " + status.getMessage(); + throw std::runtime_error(message); } } }