/* * Copyright (C) 2014 Pavel Kirienko */ #include #include #include #include #include namespace uavcan { /** * NodeID */ const NodeID NodeID::Broadcast(ValueBroadcast); /** * TransferID */ int TransferID::computeForwardDistance(TransferID rhs) const { int d = int(rhs.get()) - int(get()); if (d < 0) { d += 1 << BitLen; } assert(((get() + d) & Max) == rhs.get()); return d; } }