Add raw data accessors to the channel data classes.

This commit is contained in:
Jonathan Naylor
2018-02-21 07:48:24 +00:00
parent 4b2df6150f
commit 7696add241
9 changed files with 73 additions and 34 deletions

View File

@@ -148,17 +148,21 @@ void CNXDNFACCH1::encode(unsigned char* data, unsigned int offset) const
}
}
void CNXDNFACCH1::getData(unsigned char* data, bool checksum) const
void CNXDNFACCH1::getData(unsigned char* data) const
{
assert(data != NULL);
if (checksum) {
::memset(data, 0x00U, 12U);
::memcpy(data, m_data, 10U);
CNXDNCRC::encodeCRC12(data, 80U);
} else {
::memcpy(data, m_data, 10U);
}
::memcpy(data, m_data, 10U);
}
void CNXDNFACCH1::getRaw(unsigned char* data) const
{
assert(data != NULL);
::memset(data, 0x00U, 12U);
::memcpy(data, m_data, 10U);
CNXDNCRC::encodeCRC12(data, 80U);
}
void CNXDNFACCH1::setData(const unsigned char* data)
@@ -168,6 +172,13 @@ void CNXDNFACCH1::setData(const unsigned char* data)
::memcpy(m_data, data, 10U);
}
void CNXDNFACCH1::setRaw(const unsigned char* data)
{
assert(data != NULL);
::memcpy(m_data, data, 12U);
}
CNXDNFACCH1& CNXDNFACCH1::operator=(const CNXDNFACCH1& facch1)
{
if (&facch1 != this)