OpcUaCanOpen
CANopen OPC-UA server
UaCanNodeObject.h
Go to the documentation of this file.
1
#ifndef __UACANNODEOBJECT_H__
2
#define __UACANNODEOBJECT_H__
3
4
#include "
NmBuildingAutomation.h
"
5
#include "
UaControlDeviceGeneric.h
"
6
#include "iomanager.h"
7
#include "
CANOpenServerConfig.h
"
8
#include "
UaDeviceNodeType.h
"
9
10
#include "
CanObject.h
"
11
12
namespace
CanOpen
13
{
14
class
IOManagerSDO;
19
class
UaCanNodeObject
:
20
public
AddressSpace::UaControlDeviceGeneric
21
{
22
public
:
29
// UaCanNodeObject(NODE *nd, const UaNodeId& newNodeId, NmBuildingAutomation *pNodeManager,UserDataBase* pcanbus );
30
38
UaCanNodeObject
(
NODE
*nd,UaObject *pNodeType ,
const
UaNodeId& newNodeId,
AddressSpace::NmBuildingAutomation
*pNodeManager,
UserDevice::pUserDeviceStruct
* pcanbus);
39
43
virtual
~UaCanNodeObject
(
void
);
45
IOManager *
getSDOIOManager
()
46
{
47
pUserDeviceStruct
*p =
static_cast<
pUserDeviceStruct
*
>
(getUserData());
48
return
static_cast<
CanObject
*
>
(p->
getDevice
())->getIOManager();
49
}
50
private
:
51
52
// void setInitValue(UaVariant &uav,OpcUa_BuiltInType nType);
53
59
UaStatus
createSDOs
(
NODE
*sn,
AddressSpace::NmBuildingAutomation
*pNodeManager);
60
66
UaStatus
createSDOs
(
NODETYPE
*sn,
AddressSpace::NmBuildingAutomation
*pNodeManager);
67
73
UaStatus
createSDOITEMs
(
NODE
*sdoi,
AddressSpace::NmBuildingAutomation
*pNodeManager);
74
80
UaStatus
createSDOITEMs
(
NODETYPE
*sdoi,
AddressSpace::NmBuildingAutomation
*pNodeManager);
81
88
UaStatus
createPDOs
(
PDO
&pit,
AddressSpace::NmBuildingAutomation
*pNodeManager,
bool
type
);
89
95
UaStatus
createPROGRAMs
(
NODE
*sn,
AddressSpace::NmBuildingAutomation
*pNodeManager);
96
97
// template<typename PDOITEMITERATOR>
98
// UaStatus createPDOs(const char *pdon, OpcUa_Byte nc, PDOITEMITERATOR &, NmBuildingAutomation *,bool);
99
105
UaStatus
createAllTypesPDOs
(
NODE
*xsdObject,
AddressSpace::NmBuildingAutomation
*pNodeManager);
106
112
UaStatus
createAllTypesPDOs
(
NODETYPE
*nd,
AddressSpace::NmBuildingAutomation
*pNodeManager);
113
114
template
<
typename
NODEDEF>
119
UaStatus
createItems
(NODEDEF *nd,
AddressSpace::NmBuildingAutomation
*pNodeManager);
120
121
// IOManagerSDO *m_pIOManagerSDO; //! sdo operation manager
122
};
123
}
124
#endif
CanOpen
include
UaCanNodeObject.h
Generated on Fri Sep 11 2020 14:29:52 for OpcUaCanOpen by
1.8.14