diff --git a/documentation/htmldoxygen/README.md b/documentation/htmldoxygen/README.md new file mode 100644 index 0000000..372621f --- /dev/null +++ b/documentation/htmldoxygen/README.md @@ -0,0 +1,5 @@ +NOT FOR DIRECT USE +================== + +This directory holds files that are used by doxygen. +The files are not meant to be read except via the doxygen documention. diff --git a/documentation/htmldoxygen/pvaClient.html b/documentation/htmldoxygen/pvaClient.html new file mode 100644 index 0000000..ccaccc4 --- /dev/null +++ b/documentation/htmldoxygen/pvaClient.html @@ -0,0 +1,51 @@ + + + +
+ ++Not Yet Written +
+ ++pvaClient is a synchronous wrapper for the pvAccess API, which is a callback based API. +Thus it is easier to use than pvAccess itself. +In addition pvaClient provides many convenience methods. +
+ + + + diff --git a/documentation/htmldoxygen/pvaClientChannel.html b/documentation/htmldoxygen/pvaClientChannel.html new file mode 100644 index 0000000..8ba227e --- /dev/null +++ b/documentation/htmldoxygen/pvaClientChannel.html @@ -0,0 +1,44 @@ + + + + + ++Not Yet Written +
+ + + + diff --git a/documentation/htmldoxygen/pvaClientChannelGet.html b/documentation/htmldoxygen/pvaClientChannelGet.html new file mode 100644 index 0000000..cab66cb --- /dev/null +++ b/documentation/htmldoxygen/pvaClientChannelGet.html @@ -0,0 +1,44 @@ + + + + + ++Not Yet Written +
+ + + + diff --git a/documentation/htmldoxygen/pvaClientChannelProcess.html b/documentation/htmldoxygen/pvaClientChannelProcess.html new file mode 100644 index 0000000..70dda71 --- /dev/null +++ b/documentation/htmldoxygen/pvaClientChannelProcess.html @@ -0,0 +1,44 @@ + + + + + ++Not Yet Written +
+ + + + diff --git a/documentation/htmldoxygen/pvaClientChannelPut.html b/documentation/htmldoxygen/pvaClientChannelPut.html new file mode 100644 index 0000000..882887a --- /dev/null +++ b/documentation/htmldoxygen/pvaClientChannelPut.html @@ -0,0 +1,44 @@ + + + + + ++Not Yet Written +
+ + + + diff --git a/documentation/htmldoxygen/pvaClientChannelPutGet.html b/documentation/htmldoxygen/pvaClientChannelPutGet.html new file mode 100644 index 0000000..e8d6aec --- /dev/null +++ b/documentation/htmldoxygen/pvaClientChannelPutGet.html @@ -0,0 +1,44 @@ + + + + + ++Not Yet Written +
+ + + + diff --git a/documentation/htmldoxygen/pvaClientChannelStateChangeRequester.html b/documentation/htmldoxygen/pvaClientChannelStateChangeRequester.html new file mode 100644 index 0000000..48d0ae6 --- /dev/null +++ b/documentation/htmldoxygen/pvaClientChannelStateChangeRequester.html @@ -0,0 +1,44 @@ + + + + + ++Not Yet Written +
+ + + + diff --git a/documentation/htmldoxygen/pvaClientGetData.html b/documentation/htmldoxygen/pvaClientGetData.html new file mode 100644 index 0000000..06ac804 --- /dev/null +++ b/documentation/htmldoxygen/pvaClientGetData.html @@ -0,0 +1,44 @@ + + + + + ++Not Yet Written +
+ + + + diff --git a/documentation/htmldoxygen/pvaClientMonitor.html b/documentation/htmldoxygen/pvaClientMonitor.html index 36d6461..f3b3f25 100644 --- a/documentation/htmldoxygen/pvaClientMonitor.html +++ b/documentation/htmldoxygen/pvaClientMonitor.html @@ -34,28 +34,30 @@+NOTE: This is a work in progress. +
This provides an easier way to create a monitor on a channel than to use pvAccessCPP itself. It provides two main ways to create a monitor:
-
static PvaClientMonitorPtr create(
- PvaClientPtr const &pvaClient,
- PvaClientChannelPtr const & pvaClientChannel,
+ PvaClientMonitorPtr const &PvaClientMonitor,
+ PvaClientMonitorChannelPtr const & PvaClientMonitorChannel,
epics::pvData::PVStructurePtr const &pvRequest
);
where
-pvaClient
- The pvaClient.
+PvaClientMonitor
+ The PvaClientMonitor.
-pvaClientChannel
- The pvaClientChannel that has already been created by the client.
+PvaClientMonitorChannel
+ The PvaClientMonitorChannel that has already been created by the client.
pvRequest
The pvRequest for creating the monitor.
@@ -66,18 +68,18 @@ This method blocks while the monitor is created.
The client calls:
static PvaClientMonitorPtr create(
- PvaClientPtr const &pvaClient,
+ PvaClientMonitorPtr const &PvaClientMonitor,
std::string const & channelName,
std::string const & providerName,
std::string const & request,
- PvaClientChannelStateChangeRequesterPtr const & stateChangeRequester,
+ PvaClientMonitorChannelStateChangeRequesterPtr const & stateChangeRequester,
PvaClientMonitorRequesterPtr const & monitorRequester
);
where
-pvaClient
- The pvaClient.
+PvaClientMonitor
+ The PvaClientMonitor.
channelName
The name of the channel.
diff --git a/documentation/htmldoxygen/pvaClientMonitorData.html b/documentation/htmldoxygen/pvaClientMonitorData.html
new file mode 100644
index 0000000..0d8b29b
--- /dev/null
+++ b/documentation/htmldoxygen/pvaClientMonitorData.html
@@ -0,0 +1,44 @@
+
+
+
+
+
+ PvaClientMonitotData
+
+
+
+
+
+
+
+
+PvaClientMonitotData
+
+
+Not Yet Written
+
+
+
+
+
diff --git a/documentation/htmldoxygen/pvaClientMonitorRequester.html b/documentation/htmldoxygen/pvaClientMonitorRequester.html
new file mode 100644
index 0000000..43d36bd
--- /dev/null
+++ b/documentation/htmldoxygen/pvaClientMonitorRequester.html
@@ -0,0 +1,44 @@
+
+
+
+
+
+ PvaClientMonitorRequester
+
+
+
+
+
+
+
+
+PvaClientMonitorRequester
+
+
+Not Yet Written
+
+
+
+
+
diff --git a/documentation/htmldoxygen/pvaClientProcess.html b/documentation/htmldoxygen/pvaClientProcess.html
new file mode 100644
index 0000000..70dda71
--- /dev/null
+++ b/documentation/htmldoxygen/pvaClientProcess.html
@@ -0,0 +1,44 @@
+
+
+
+
+
+ PvaClientProcess
+
+
+
+
+
+
+
+
+PvaClientProcess
+
+
+Not Yet Written
+
+
+
+
+
diff --git a/documentation/htmldoxygen/pvaClientPutData.html b/documentation/htmldoxygen/pvaClientPutData.html
new file mode 100644
index 0000000..c51d21c
--- /dev/null
+++ b/documentation/htmldoxygen/pvaClientPutData.html
@@ -0,0 +1,44 @@
+
+
+
+
+
+ PvaClientPutData
+
+
+
+
+
+
+
+
+PvaClientPutData
+
+
+Not Yet Written
+
+
+
+
+
diff --git a/documentation/htmldoxygen/pvaClientRPC.html b/documentation/htmldoxygen/pvaClientRPC.html
new file mode 100644
index 0000000..4a754c1
--- /dev/null
+++ b/documentation/htmldoxygen/pvaClientRPC.html
@@ -0,0 +1,44 @@
+
+
+
+
+
+ PvaClientRPC
+
+
+
+
+
+
+
+
+PvaClientRPC
+
+
+Not Yet Written
+
+
+
+
+
diff --git a/documentation/htmldoxygen/pvaClientRPCRequester.html b/documentation/htmldoxygen/pvaClientRPCRequester.html
new file mode 100644
index 0000000..1476214
--- /dev/null
+++ b/documentation/htmldoxygen/pvaClientRPCRequester.html
@@ -0,0 +1,44 @@
+
+
+
+
+
+ PvaClientRPCRequester
+
+
+
+
+
+
+
+
+PvaClientRPCRequester
+
+
+Not Yet Written
+
+
+
+
+
diff --git a/src/pv/pvaClient.h b/src/pv/pvaClient.h
index 8a3bb46..61baf49 100644
--- a/src/pv/pvaClient.h
+++ b/src/pv/pvaClient.h
@@ -3,6 +3,10 @@
* EPICS pvData is distributed subject to a Software License Agreement found
* in file LICENSE that is included with this distribution.
*/
+/**
+ * @author mrk
+ * @date 2015.02
+ */
#ifndef PVACLIENT_H
#define PVACLIENT_H
@@ -82,11 +86,7 @@ typedef std::tr1::shared_ptr PvaClientChannelCachePtr;
/**
* @brief pvaClient is a synchronous wrapper for the pvAccess API, which is a callback based API.
*
- * Thus it is easier to use than pvAccess itself.
- * In addition pvaClient provides many convenience methods.
- *
- * @author mrk
- * @date 2015.02
+ * pvaClient
*/
class epicsShareClass PvaClient :
public epics::pvData::Requester,
@@ -197,7 +197,8 @@ typedef std::tr1::shared_ptr PvaClientPutCachePtr;
/**
* @brief A callback for change in connection status.
*
- * @author mrk
+ * pvaClientChannelStateChangeRequesterpvaClientChannel
*/
class epicsShareClass PvaClientChannel :
@@ -469,6 +470,7 @@ public:
/**
* @brief A class that holds data returned by PvaClientGet or PvaClientPutGet
*
+ * pvaClientGetData
*/
class epicsShareClass PvaClientGetData
{
@@ -607,6 +609,7 @@ class PvaClientPostHandlerPvt; // private to PvaClientPutData
/**
* @brief A class that holds data given to by PvaClientPut or PvaClientPutGet
*
+ * pvaClientPutData
*/
class epicsShareClass PvaClientPutData
{
@@ -745,6 +748,7 @@ private:
/**
* @brief A class that holds data returned by PvaClientMonitor
*
+ * pvaClientMonitorData
*/
class epicsShareClass PvaClientMonitorData
{
@@ -902,7 +906,7 @@ typedef std::tr1::shared_ptr ChannelProcessRequeste
/**
* @brief An easy to use alternative to ChannelProcess.
*
- * @author mrk
+ * pvaClientChannelProcess
*/
class epicsShareClass PvaClientProcess
{
@@ -996,7 +1000,7 @@ typedef std::tr1::shared_ptr ChannelGetRequesterImplPtr
/**
* @brief An easy to use alternative to ChannelGet.
*
- * @author mrk
+ * pvaClientChannelGet
*/
class epicsShareClass PvaClientGet
{
@@ -1103,7 +1107,7 @@ typedef std::tr1::shared_ptr ChannelPutRequesterImplPtr
/**
* @brief An easy to use alternative to ChannelPut.
*
- * @author mrk
+ * pvaClientChannelPut
*/
class epicsShareClass PvaClientPut
{
@@ -1222,7 +1226,7 @@ typedef std::tr1::shared_ptr ChannelPutGetRequesterI
/**
* @brief An easy to use alternative to ChannelPutGet.
*
- * @author mrk
+ * pvaClientChannelPutGet
*/
class epicsShareClass PvaClientPutGet
{
@@ -1365,6 +1369,7 @@ private :
/**
* @brief Optional client callback.
*
+ * pvaClientMonitorRequester
*/
class PvaClientMonitorRequester
{
@@ -1483,7 +1488,13 @@ public:
/** @brief Release the monitorElement returned by poll
*/
void releaseEvent();
+ /** @brief Get the PvaClientChannel;
+ *
+ * @return The interface.
+ */
+ PvaClientChannelPtr getPvaClientChannel();
/** @brief The data in which monitor events are placed.
+ *
* @return The interface.
*/
PvaClientMonitorDataPtr getData();
@@ -1541,6 +1552,7 @@ public:
/**
* @brief Optional client callback.
*
+ * pvaClientRPCRequester
*/
class PvaClientRPCRequester
{
@@ -1566,6 +1578,7 @@ typedef std::tr1::shared_ptr RPCRequesterImplPtr;
/**
* @brief An easy to use alternative to RPC.
*
+ * pvaClientRPC
*/
class epicsShareClass PvaClientRPC :
public std::tr1::enable_shared_from_this
diff --git a/src/pvaClientMonitor.cpp b/src/pvaClientMonitor.cpp
index 8b78d81..57ecaa8 100644
--- a/src/pvaClientMonitor.cpp
+++ b/src/pvaClientMonitor.cpp
@@ -489,6 +489,11 @@ void PvaClientMonitor::releaseEvent()
monitor->release(monitorElement);
}
+PvaClientChannelPtr PvaClientMonitor::getPvaClientChannel()
+{
+ return pvaClientChannel;
+}
+
PvaClientMonitorDataPtr PvaClientMonitor::getData()
{
if(PvaClient::getDebug()) {