Pavel Kirienko
|
08cea4aacd
|
<limits> from STL is not required
|
2014-05-05 15:51:49 +04:00 |
|
Pavel Kirienko
|
ad3c0af324
|
Some headers moved to util/ (map, bitset, linked_list); compile_time.hpp renamed to templates.hpp
|
2014-05-05 14:17:04 +04:00 |
|
Pavel Kirienko
|
0db43b6489
|
Partially removed all references to STL's algorithm. <algorithm> is not included anywhere, though still used in several places which still alows the code to compile as <algorithm> is being pulled in from some other standard headers.
|
2014-05-04 21:22:18 +04:00 |
|
Pavel Kirienko
|
c1be9f1fef
|
Explicit virtual keyword
|
2014-04-19 18:51:36 +04:00 |
|
Pavel Kirienko
|
799846de02
|
Scope hiding fixes
|
2014-04-19 16:32:42 +04:00 |
|
Pavel Kirienko
|
dfe3b4511e
|
Most enums were replaced with constants, according to MISRA
|
2014-04-19 15:16:10 +04:00 |
|
Pavel Kirienko
|
b3769c9cb3
|
Removed forward declarations (not compatible with MISRA)
|
2014-04-18 21:14:17 +04:00 |
|
Pavel Kirienko
|
1853f5c73c
|
Explicit constructors
|
2014-04-18 19:37:08 +04:00 |
|
Pavel Kirienko
|
febc3ed870
|
Virtual call screwup fix
|
2014-04-18 18:57:54 +04:00 |
|
Pavel Kirienko
|
bfe1447426
|
Fixes suggested by static analyzer
|
2014-04-18 18:46:47 +04:00 |
|
Pavel Kirienko
|
87e89fc042
|
Heavy optimizations for ROM/RAM usage in UAVCAN_TINY mode
|
2014-04-16 21:11:42 +04:00 |
|
Pavel Kirienko
|
4085613d00
|
Support for zero static buffers
|
2014-04-16 20:25:37 +04:00 |
|
Pavel Kirienko
|
a298ad9ba2
|
Transport CRC will not use table in UAVCAN_TINY builds
|
2014-04-16 17:19:05 +04:00 |
|
Pavel Kirienko
|
627dc5f2d9
|
UAVCAN_TINY preprocessor option - STM32 test compiles into 41kB in release mode (-Os, LTO)
|
2014-04-12 23:28:32 +04:00 |
|
Pavel Kirienko
|
d801f4a7f3
|
CAN TX queue quota - limiting max number of memory blocks per TX queue to avoid memory congestion if one iface is down
|
2014-04-12 18:11:30 +04:00 |
|
Pavel Kirienko
|
4e7287358a
|
Dynamic memory refactoring: Entire library now uses IPoolAllocator instead of IAllocator, which was removed completely. This change was needed to enable TX queue constraints, see the next commits.
|
2014-04-12 17:17:06 +04:00 |
|
Pavel Kirienko
|
d0b541e22d
|
Added config macro UAVCAN_TOSTRING
|
2014-04-10 13:32:35 +04:00 |
|
Pavel Kirienko
|
266e95127b
|
Removed sstream in OTR
|
2014-04-10 11:50:14 +04:00 |
|
Pavel Kirienko
|
311ae8dca1
|
Refactored TransferListener - all logic moved into non-generic subclass and implemented in *.cpp
|
2014-04-09 15:06:27 +04:00 |
|
Pavel Kirienko
|
2c9572d845
|
TransferBuffer optimized RAM usage
|
2014-04-09 11:59:45 +04:00 |
|
Pavel Kirienko
|
a8d12d2004
|
TransferBufferManager rewritten to move all the code into a non-generic subclass. STM32 test code size reduced to 176k (-O1)
|
2014-04-09 11:52:05 +04:00 |
|
Pavel Kirienko
|
dd38c38ff2
|
Out of line methods in transfer_listener.hpp
|
2014-04-08 21:27:35 +04:00 |
|
Pavel Kirienko
|
a573f48372
|
Space optimized transfer_buffer.hpp - STM32 test 180k -O1
|
2014-04-08 21:13:37 +04:00 |
|
Pavel Kirienko
|
6a68318d49
|
OTR out of line methods
|
2014-04-08 19:07:57 +04:00 |
|
Pavel Kirienko
|
e8fa4a2369
|
UAVCAN_EXPORT
|
2014-04-08 15:40:51 +04:00 |
|
Pavel Kirienko
|
d8a976df00
|
Removed annoying debug trace in ServiceResponseTransferListener
|
2014-04-01 12:29:13 +04:00 |
|
Pavel Kirienko
|
75f475fac2
|
CamIOManager allows the driver to set event masks even if corresponding events were not requested. This feature somewhat simplifies driver logic.
|
2014-03-31 14:22:52 +04:00 |
|
Pavel Kirienko
|
74ecfe0cc8
|
Fixed type signedness through the entire codebase; driver interfaces do not use starndard types now
|
2014-03-29 22:40:15 +04:00 |
|
Pavel Kirienko
|
ae63ad5db5
|
Meaningful error codes instead of plain -1
|
2014-03-28 19:21:08 +04:00 |
|
Pavel Kirienko
|
851e984e35
|
Renaming TransportPerfCounter --> TransferPerfCounter
|
2014-03-27 02:51:06 +04:00 |
|
Pavel Kirienko
|
da357f5992
|
TransportPerfCounter - counting transfers and transport errors
|
2014-03-27 02:19:27 +04:00 |
|
Pavel Kirienko
|
66916920ef
|
TransferReceiver error counter
|
2014-03-26 19:18:17 +04:00 |
|
Pavel Kirienko
|
2798252fd4
|
CAN IO perf counters
|
2014-03-26 18:18:24 +04:00 |
|
Pavel Kirienko
|
5fa805e14e
|
TransferReceiver::DefaultTransferIntervalUSec increased to 1 second
|
2014-03-26 15:28:33 +04:00 |
|
Pavel Kirienko
|
0cc627016a
|
Automated style fixes in order to bring the code a little bit closer to compliance with MISRA C++ rules. No changes in logic.
|
2014-03-25 03:04:36 +04:00 |
|
Pavel Kirienko
|
6b43e55dc6
|
Dispatcher::getCanIOManager()
|
2014-03-24 19:11:49 +04:00 |
|
Pavel Kirienko
|
9d797e5ac5
|
::uavcan::CanIOManeger::MaxIfaces --> ::uavcan::MaxCanIfaces
|
2014-03-24 12:35:23 +04:00 |
|
Pavel Kirienko
|
aa5d7a190a
|
NodeID comparison operators
|
2014-03-23 16:36:55 +04:00 |
|
Pavel Kirienko
|
5f434fe072
|
getIfaceIndex() for received transfers
|
2014-03-21 18:32:20 +04:00 |
|
Pavel Kirienko
|
48922c6f37
|
Typo: Dispatcher::ListenerRegister --> ListenerRegistry
|
2014-03-21 17:32:28 +04:00 |
|
Pavel Kirienko
|
54921a3738
|
Loopback frame listener API implemented; TransferSender supports iface masks and CanIOFlags. All of that is necessary to implement network-wide time synchronization.
|
2014-03-21 17:30:25 +04:00 |
|
Pavel Kirienko
|
9d35c616ef
|
CAN IO flags
|
2014-03-21 16:02:05 +04:00 |
|
Pavel Kirienko
|
cfbbe41777
|
Driver API moved to <uavcan/driver/*>
|
2014-03-20 23:37:27 +04:00 |
|
Pavel Kirienko
|
de64f2aef3
|
Fixed name: TransferID::forwardDistance() --> computeForwardDistance()
|
2014-03-20 13:38:02 +04:00 |
|
Pavel Kirienko
|
aeee4b9e37
|
Added Dispatcher type usage methods: hasPublisher(), hasSubscriber(), hasServer()
|
2014-03-18 15:33:31 +04:00 |
|
Pavel Kirienko
|
c9b284a2d7
|
IOutgoingTransferRegistry::exists()
|
2014-03-18 15:15:53 +04:00 |
|
Pavel Kirienko
|
41eeae8200
|
Automatic selection between <stdint.h> and <cstdint> depending on the C++ standard. This improvement made the library completely independent from the standard C headers in C++11 mode. In C++03 mode, though, some C headers are still needed: <stdint.h>, <math.h>
|
2014-03-17 21:15:20 +04:00 |
|
Pavel Kirienko
|
613efa49b9
|
INode class. Publisher, Subscriber, ServiceServer, ServiceClient now accept INode in constructor instead of the bunch of independent params. Self NodeID now being configured via setNodeID() method instead of constructor param
|
2014-03-14 19:54:27 +04:00 |
|
Pavel Kirienko
|
15cbf96378
|
Reorganized directory structure - directory 'internal' pulled up one level. No logical changes.
|
2014-03-14 15:01:20 +04:00 |
|