/* * PackagerADS1259.cpp * * Created on: 7 рту. 2019 у. * Author: user */ #include "PackagerADS1259.hh" #include const std::size_t driver::chipset::PackagerADS1259::FrameSize = 32; unsigned long last_pack = 0; driver::chipset::PackagerADS1259::Frame driver::chipset::PackagerADS1259::encode(RegAddress rg_address, Data data, bool write_nread) { const RegisterAddressAndData frame( rg_address, write_nread, data ); Frame pack; std::memcpy( &pack, &frame, sizeof(Frame) ); last_pack = pack; return pack; } driver::chipset::PackagerADS1259::Frame driver::chipset::PackagerADS1259::encode(RegAddress control_reg) { const CommandRegisterForm frame ( control_reg ); Frame pack; std::memcpy( &pack, &frame, sizeof(Frame) ); return pack; } driver::chipset::PackagerADS1259::Data driver::chipset::PackagerADS1259::decode(Frame frame) { return (frame >> 24) & 0xFFul; }