ifw-ccf  3.0.0-pre2
comAdptEnvision.hpp
Go to the documentation of this file.
1 
5 #ifndef CCF_PROTOCOLS_COM_ADPT_ENVISION_HPP_H_
6 #define CCF_PROTOCOLS_COM_ADPT_ENVISION_HPP_H_
7 
8 #include "ifw/core/protocol/open62541/open62541.hpp"
9 
11 
12 
13 namespace ccf::protocols::envision {
14 
15  constexpr auto DEV_PROP_OPCUA_OBJECT = "OpcUaObject";
16  constexpr auto DEV_PROP_OPCUA_NS = "OpcUaNs";
17 
20  public:
21 
23  virtual ~ComAdptEnvision();
24 
27  virtual void InitialiseUser();
28 
31  virtual void SetDeviceAddressUser(const std::string& address);
32 
35  virtual void CheckConnectionUser(bool& connected);
36 
39  virtual void CheckStatusUser(ccf::HwStatus& status,
40  std::string& message);
41 
44  virtual void ConnectUser();
45 
48  virtual void DisconnectUser();
49 
52  virtual void ReadUser(const std::string& name,
53  core::utils::param::Parameter& par);
54 
57  virtual void ScanUser(std::vector<core::utils::param::Parameter>& pars);
58 
61  virtual void StartUser();
62 
65  virtual void StopUser();
66 
69  virtual void WriteUser(const core::utils::param::Parameter& par);
70 
73  virtual void HandleParPreWriteUser(core::utils::param::Parameter& par);
74 
77  virtual void HandleParPostWriteUser(core::utils::param::Parameter& par);
78 
81  virtual void HandleParPostReadUser(core::utils::param::Parameter& par);
82 
83  protected:
84 
85  private:
86  void _coreParToPairVariant(const core::utils::param::Parameter& par,
87  protocol::base::PairVariant& variant_par);
88 
89  protocol::opcua::Open62541 m_opcua_client;
90 
91  // Name of object in OPC UA namespace, hosting the nodes for the device.
92  std::string m_opcua_object;
93 
94  // Cache in which node values are updated to get access to the type.
95  std::map<std::string, protocol::base::Variant> m_nodes_cache;
96 
97  std::string m_opcua_ns;
98  };
99 
100 }
101 
102 #endif // CCF_PROTOCOLS_COM_ADPT_ENVISION_HPP_H_
CCF Communication Adapter implementing the ENVision Protocol.
Definition: comAdptEnvision.hpp:19
virtual void InitialiseUser()
Definition: comAdptEnvision.cpp:54
virtual void SetDeviceAddressUser(const std::string &address)
Definition: comAdptEnvision.cpp:49
virtual void WriteUser(const core::utils::param::Parameter &par)
Definition: comAdptEnvision.cpp:174
virtual void ReadUser(const std::string &name, core::utils::param::Parameter &par)
Definition: comAdptEnvision.cpp:95
virtual void HandleParPostReadUser(core::utils::param::Parameter &par)
Definition: comAdptEnvision.cpp:215
virtual void DisconnectUser()
Definition: comAdptEnvision.cpp:89
virtual void HandleParPreWriteUser(core::utils::param::Parameter &par)
Definition: comAdptEnvision.cpp:187
virtual void ConnectUser()
Definition: comAdptEnvision.cpp:79
virtual void HandleParPostWriteUser(core::utils::param::Parameter &par)
Definition: comAdptEnvision.cpp:211
virtual void StartUser()
Definition: comAdptEnvision.cpp:225
virtual ~ComAdptEnvision()
Definition: comAdptEnvision.cpp:45
ComAdptEnvision()
Definition: comAdptEnvision.cpp:40
virtual void CheckStatusUser(ccf::HwStatus &status, std::string &message)
Definition: comAdptEnvision.cpp:72
virtual void ScanUser(std::vector< core::utils::param::Parameter > &pars)
Definition: comAdptEnvision.cpp:220
virtual void StopUser()
Definition: comAdptEnvision.cpp:251
virtual void CheckConnectionUser(bool &connected)
Definition: comAdptEnvision.cpp:67
CCF Communication Adapter implementing RTMS communication.
Definition: comAdptRtms.hpp:29
Definition: comAdptEnvision.cpp:38
constexpr auto DEV_PROP_OPCUA_NS
Definition: comAdptEnvision.hpp:16
constexpr auto DEV_PROP_OPCUA_OBJECT
Definition: comAdptEnvision.hpp:15
HwStatus
HW status values.
Definition: base.hpp:195