Skip to content

Migrate Requester, Monitor, and related types to pvAccess #35

@mdavidsaver

Description

@mdavidsaver

As was discussed on the 15th, I'd like to migrate some classes/interfaces from the pvData* modules into pvAccess*. For the C++ code this is specifically the following types currently defined in requester.h and monitor.h.

epics::pvData::Requester
epics::pvData::RequesterPtr
epics::pvData::MessageType
epics::pvData::getMessageTypeName
epics::pvData::MonitorElement
epics::pvData::MonitorElementPtr
epics::pvData::MonitorElementPtrArray
epics::pvData::Monitor
epics::pvData::MonitorRequester

The migration plan for C++ would be to first introduce aliases into the epics::pvAccess namespace. Which allow either name to be used by dependent modules. This does not require any changes to pvDataCPP.

namespace epics { namespace pvAccess {
using epics::pvData::Requester;
}}

The next step would move the headers, and swap the namespaces and aliases. This also maintains API compatibility, but introduces potentially complex module version dependencies.

The final step is to remove the aliases from the epics::pvData namespace.

This should be split over at least 2 "major" releases. The second step could go on either side of this "split".

I'm still investigating possible ways to do a phased migration. If I (or others) can't find anything, then it would be necessary to have an API break.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions