uc_transfer.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2014 Pavel Kirienko <pavel.kirienko@gmail.com>
3  */
4 
8 
9 namespace uavcan
10 {
17 
18 const TransferPriority TransferPriority::Default((1U << BitLen) / 2);
19 const TransferPriority TransferPriority::MiddleLower((1U << BitLen) / 2 + (1U << BitLen) / 4);
20 const TransferPriority TransferPriority::OneHigherThanLowest(NumericallyMax - 1);
21 const TransferPriority TransferPriority::OneLowerThanHighest(NumericallyMin + 1);
22 const TransferPriority TransferPriority::Lowest(NumericallyMax);
23 
30 
37 const uint8_t NodeID::Max;
39 const NodeID NodeID::Broadcast(ValueBroadcast);
40 
45 {
46  int d = int(rhs.get()) - int(get());
47  if (d < 0)
48  {
49  d += 1 << BitLen;
50  }
51 
52  UAVCAN_ASSERT(((get() + d) & Max) == rhs.get());
53  return d;
54 }
55 
56 }
uavcan::TransferID::BitLen
static const uint8_t BitLen
Definition: transfer.hpp:76
uavcan::TransferPriority::NumericallyMax
static const uint8_t NumericallyMax
Definition: transfer.hpp:34
uavcan::TransferPriority::NumericallyMin
static const uint8_t NumericallyMin
Definition: transfer.hpp:35
uavcan::NodeID::ValueInvalid
static const uint8_t ValueInvalid
Definition: transfer.hpp:115
uavcan::NodeID::BitLen
static const uint8_t BitLen
Definition: transfer.hpp:119
uavcan::TransferID::Max
static const uint8_t Max
Definition: transfer.hpp:77
uavcan::TransferID::get
uint8_t get() const
Definition: transfer.hpp:99
uavcan::TransferPriority::MiddleLower
static const TransferPriority MiddleLower
Definition: transfer.hpp:39
uavcan::TransferID
Definition: transfer.hpp:71
uavcan::TransferPriority::Lowest
static const TransferPriority Lowest
Definition: transfer.hpp:42
uavcan::uint8_t
std::uint8_t uint8_t
Definition: std.hpp:24
uavcan::TransferPriority::OneHigherThanLowest
static const TransferPriority OneHigherThanLowest
Definition: transfer.hpp:40
frame.hpp
transfer.hpp
uavcan::TransferID::computeForwardDistance
int computeForwardDistance(TransferID rhs) const
Definition: uc_transfer.cpp:44
uavcan::TransferID::Half
static const uint8_t Half
Definition: transfer.hpp:78
can_io.hpp
uavcan::TransferPriority::BitLen
static const uint8_t BitLen
Definition: transfer.hpp:33
d
d
uavcan::NodeID::MaxRecommendedForRegularNodes
static const uint8_t MaxRecommendedForRegularNodes
Definition: transfer.hpp:121
uavcan::NodeID::Broadcast
static const NodeID Broadcast
Definition: transfer.hpp:122
int
int
Definition: libstubs.cpp:120
uavcan::TransferPriority::OneLowerThanHighest
static const TransferPriority OneLowerThanHighest
Definition: transfer.hpp:41
uavcan::NodeID::ValueBroadcast
static const uint8_t ValueBroadcast
Definition: transfer.hpp:114
uavcan::NodeID::Max
static const uint8_t Max
Definition: transfer.hpp:120
uavcan
Definition: libuavcan/libuavcan/include/uavcan/build_config.hpp:204
uavcan::TransferPriority::Default
static const TransferPriority Default
This priority is used by default.
Definition: transfer.hpp:38
UAVCAN_ASSERT
#define UAVCAN_ASSERT(x)
Definition: libuavcan/libuavcan/include/uavcan/build_config.hpp:184


uavcan_communicator
Author(s):
autogenerated on Fri Dec 13 2024 03:10:03