You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
CCS-COMM_BOARD/MODBUSRTU/ModbusRTUVariant.cpp

111 lines
1.5 KiB
C++

/*
* ModbusRTUVariant.cpp
*
* Author: Aleksey Gerasimenko
* gerasimenko.aleksey.n@gmail.com
*/
#include "MODBUSRTU/ModbusRTUVariant.h"
namespace MODBUSRTU
{
//CONSTRUCTOR
ModbusRTUVariant::ModbusRTUVariant():
t(MODBUSRTU::VARIANT_UINT32),
u32((uint32_t)0)
{}//CONSTRUCTOR
MODBUSRTU::modbus_variant_type_t ModbusRTUVariant::get_type() const
{
return t;
//
}//
//
void ModbusRTUVariant::set_float(float value)
{
f = value;
t = MODBUSRTU::VARIANT_FLOAT;
//
}//
//
void ModbusRTUVariant::set_int16(int16_t value)
{
i16 = value;
t = MODBUSRTU::VARIANT_INT16;
//
}//
//
void ModbusRTUVariant::set_int32(int32_t value)
{
i32 = value;
t = MODBUSRTU::VARIANT_INT32;
//
}//
//
void ModbusRTUVariant::set_uint16(uint16_t value)
{
u16 = value;
t = MODBUSRTU::VARIANT_UINT16;
//
}//
//
void ModbusRTUVariant::set_uint32(uint32_t value)
{
u32 = value;
t = MODBUSRTU::VARIANT_UINT32;
//
}//
//
void ModbusRTUVariant::set_bool(bool value)
{
b = value;
t = MODBUSRTU::VARIANT_BOOL;
//
}//
//
float ModbusRTUVariant::get_float() const
{
return f;
//
}//
//
int16_t ModbusRTUVariant::get_int16() const
{
return i16;
//
}//
//
int32_t ModbusRTUVariant::get_int32() const
{
return i32;
//
}//
//
uint16_t ModbusRTUVariant::get_uint16() const
{
return u16;
//
}//
//
uint32_t ModbusRTUVariant::get_uint32() const
{
return u32;
//
}//
//
bool ModbusRTUVariant::get_bool() const
{
return b;
}//
//
} /* namespace MODBUSRTU */