X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fopenxc%2Fsignal.cpp;h=858f64b2615563416976a532d403eab1bc681bbe;hb=0a3e354c3d81866e1a755367ab5592b3ced868bb;hp=e60c3ee7c42c8d6281115ec3aab36fc93959d70f;hpb=d9c40fd96e31ce41166e2b846301335ed6fe5d37;p=src%2Flow-level-can-generator.git diff --git a/src/openxc/signal.cpp b/src/openxc/signal.cpp index e60c3ee..858f64b 100755 --- a/src/openxc/signal.cpp +++ b/src/openxc/signal.cpp @@ -88,12 +88,14 @@ namespace openxc return multiplex_; } - bool signal::is_big_endian() const{ - return is_big_endian_; + sign_t signal::sign() const + { + return sign_; } - bool signal::is_signed() const{ - return is_signed_; + std::int32_t signal::bit_sign_position() const + { + return bit_sign_position_; } std::string signal::unit() const{ @@ -134,11 +136,10 @@ namespace openxc { multiplex_ = std::make_pair(false,0); } - is_big_endian_ = j.count("is_big_endian") ? j["is_big_endian"].get() : false; - is_signed_ = j.count("is_signed") ? j["is_signed"].get() : false; - unit_ = j.count("unit") ? j["unit"].get() : ""; - + bit_sign_position_ = j.count("bit_sign_position") ? j["bit_sign_position"].get() : -1; + sign_ = j.count("signed") ? (sign_t) j["signed"].get() : sign_t::UNSIGNED; + unit_ = j.count("unit") ? j["unit"].get() : ""; if (j.count("states")) { @@ -185,10 +186,8 @@ namespace openxc j["multiplex"] = multi; - - - j["is_big_endian"] = is_big_endian_; - j["is_signed"] = is_signed_; + j["bit_sign_position"] = bit_sign_position_; + j["signed"] = static_cast(sign_); j["unit"] = unit_; return j; }