10 #ifndef NDSINTERFACEIMPL_H
11 #define NDSINTERFACEIMPL_H
15 #include "nds3/impl/pvBaseImpl.h"
41 virtual void registerPV(std::shared_ptr<PVBaseImpl> pv) = 0;
48 virtual void deregisterPV(std::shared_ptr<PVBaseImpl> pv) = 0;
55 virtual void registrationTerminated() = 0;
57 virtual void push(
const PVBaseImpl& pv,
const timespec& timestamp,
const std::int32_t& value) = 0;
58 virtual void push(
const PVBaseImpl& pv,
const timespec& timestamp,
const double& value) = 0;
59 virtual void push(
const PVBaseImpl& pv,
const timespec& timestamp,
const std::vector<std::int8_t> & value) = 0;
60 virtual void push(
const PVBaseImpl& pv,
const timespec& timestamp,
const std::vector<std::uint8_t> & value) = 0;
61 virtual void push(
const PVBaseImpl& pv,
const timespec& timestamp,
const std::vector<std::int32_t> & value) = 0;
62 virtual void push(
const PVBaseImpl& pv,
const timespec& timestamp,
const std::vector<double> & value) = 0;
63 virtual void push(
const PVBaseImpl& pv,
const timespec& timestamp,
const std::string & value) = 0;
67 #endif // NDSINTERFACEIMPL_H
Base class for all the PVs.
Definition: pvBaseImpl.h:25
Represents the interface between NDS and the control system API.
Definition: interfaceBaseImpl.h:26