MotorControlModuleSDFM_TMS3.../Projects/EFC_Application/UMLibrary/systemic/CompareParams.hh

56 lines
1.0 KiB
C++

/*
* CompareParams.hh
*
* Created on: 23 ÿíâ. 2022 ã.
* Author: sozonov
*/
#ifndef UMLIBRARY_SYSTEMIC_COMPAREPARAMS_HH_
#define UMLIBRARY_SYSTEMIC_COMPAREPARAMS_HH_
#include <utility>
#include <cstring>
namespace systemic {
class CompareParams {
public:
typedef std::pair< char *, std::size_t > params_t;
CompareParams( params_t _first, params_t _second ) :
first_param( _first ), second_param( _second ), is_equal(false) {}
void compare() {
bool equal_size = first_param.second == second_param.second;
bool equal_data;
if( equal_size ) {
bool data_not_equal = std::memcmp(first_param.first, second_param.first, first_param.second);
equal_data = not data_not_equal;
}
is_equal = equal_size and equal_data;
}
const bool & state() { return is_equal; }
private:
params_t first_param;
params_t second_param;
bool is_equal;
};
} // namespace systemic
#endif /* UMLIBRARY_SYSTEMIC_COMPAREPARAMS_HH_ */