Main Page
Namespaces
Classes
Files
File List
File Members
src
identity_item_data.cpp
Go to the documentation of this file.
1
26
#include "
odva_ethernetip/identity_item_data.h
"
27
28
namespace
eip
{
29
30
size_t
IdentityItemData::getLength
()
const
31
{
32
// TODO: verify that this is correct
33
return
sizeof
(
encap_protocol_version
)
34
+
sizeof
(
sockaddr
)
35
+
sizeof
(
vendor_id
)
36
+
sizeof
(
device_type
)
37
+
sizeof
(
product_code
)
38
+
sizeof
(
revision
)
39
+
sizeof
(
status
)
40
+
sizeof
(
serial_number
)
41
+
sizeof
(
EIP_USINT
)
42
+
product_name
.length()
43
+
sizeof
(
state
);
44
}
45
46
Writer&
IdentityItemData::serialize
(Writer& writer)
const
47
{
48
writer.write(
encap_protocol_version
);
49
writer.write(
sockaddr
);
50
writer.write(
vendor_id
);
51
writer.write(
device_type
);
52
writer.write(
product_code
);
53
writer.write(
revision
);
54
writer.write(
status
);
55
writer.write(
serial_number
);
56
57
EIP_USINT
name_length =
product_name
.size();
58
writer.write(name_length);
59
writer.writeBytes(
product_name
.c_str(), name_length);
60
writer.write(
state
);
61
return
writer;
62
}
63
64
Reader&
IdentityItemData::deserialize
(Reader& reader)
65
{
66
reader.read(
encap_protocol_version
);
67
reader.read(
sockaddr
);
68
reader.read(
vendor_id
);
69
reader.read(
device_type
);
70
reader.read(
product_code
);
71
reader.read(
revision
);
72
reader.read(
status
);
73
reader.read(
serial_number
);
74
75
EIP_USINT
name_length;
76
reader.read(name_length);
77
product_name
.resize(name_length);
78
reader.readBytes(&
product_name
[0], name_length);
79
reader.read(
state
);
80
return
reader;
81
}
82
83
}
// namespace eip
EIP_USINT
uint8_t EIP_USINT
Definition:
eip_types.h:36
eip::IdentityItemData::state
EIP_USINT state
Definition:
identity_item_data.h:58
eip::IdentityItemData::getLength
virtual size_t getLength() const
Definition:
identity_item_data.cpp:30
eip::IdentityItemData::serial_number
EIP_UDINT serial_number
Definition:
identity_item_data.h:56
eip::IdentityItemData::encap_protocol_version
EIP_UINT encap_protocol_version
Definition:
identity_item_data.h:49
eip::IdentityItemData::status
EIP_WORD status
Definition:
identity_item_data.h:55
eip::IdentityItemData::vendor_id
EIP_UINT vendor_id
Definition:
identity_item_data.h:51
eip::IdentityItemData::sockaddr
sockaddr_in sockaddr
Definition:
identity_item_data.h:50
eip::IdentityItemData::device_type
EIP_UINT device_type
Definition:
identity_item_data.h:52
eip
Definition:
connection.h:41
eip::IdentityItemData::serialize
virtual Writer & serialize(Writer &writer) const
Definition:
identity_item_data.cpp:46
eip::IdentityItemData::product_name
string product_name
Definition:
identity_item_data.h:57
eip::IdentityItemData::deserialize
virtual Reader & deserialize(Reader &reader, size_t length)
Definition:
identity_item_data.h:77
eip::IdentityItemData::product_code
EIP_UINT product_code
Definition:
identity_item_data.h:53
identity_item_data.h
eip::IdentityItemData::revision
EIP_USINT revision[2]
Definition:
identity_item_data.h:54
odva_ethernetip
Author(s): Kareem Shehata
autogenerated on Mon Jun 10 2019 14:00:16