429 Commits

Author SHA1 Message Date
Pavel Kirienko
c80e0388eb Linux helpers 2014-03-31 20:23:26 +04:00
Pavel Kirienko
788d7348b6 Linux: Auto-detecting clock adjustment mode 2014-03-31 19:52:43 +04:00
Pavel Kirienko
fd6f27b7d8 Callback type made visible 2014-03-31 18:45:46 +04:00
Pavel Kirienko
eafdc82b4b SocketCanIface can maintain arbitrary number of frames pending in socket TX queue, which improves performance. By default, max_frames_in_socket_tx_queue = 3. 2014-03-31 17:57:01 +04:00
Pavel Kirienko
e8ee882379 Extra checks for socketcan driver test 2014-03-31 17:26:25 +04:00
Pavel Kirienko
b3866feda5 Improved vcan_init 2014-03-31 17:17:43 +04:00
Pavel Kirienko
39933ba41d Finished Linux driver 2014-03-31 17:13:33 +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
b941c6293c Linux SocketCAN driver (not finished yet) 2014-03-31 00:38:09 +04:00
Pavel Kirienko
d2b3832860 Proper priority comparison for CAN frames of different types 2014-03-31 00:32:52 +04:00
Pavel Kirienko
fc4d54ed86 Runtime checks for maximum DLC 2014-03-30 20:04:19 +04:00
Pavel Kirienko
c5d4b81009 SystemClockDriver --> SystemClock 2014-03-30 19:55:17 +04:00
Pavel Kirienko
3df6f958f7 Added clock test, superheader uavcan_linux.hpp 2014-03-30 18:58:30 +04:00
Pavel Kirienko
d9dd012a05 Added script vcan_init 2014-03-30 18:16:32 +04:00
Pavel Kirienko
a869c46f73 Linux clock driver - minor improvements 2014-03-30 17:07:26 +04:00
Pavel Kirienko
ec6a4cd328 Linux clock driver fix 2014-03-29 22:47:15 +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
bdec81bbfa Explicit 'virtual' for implemented methods 2014-03-29 19:50:22 +04:00
Pavel Kirienko
5a8a672152 Forgotten pragma once 2014-03-29 19:46:42 +04:00
Pavel Kirienko
af14b4efec Linux clock driver 2014-03-29 19:44:16 +04:00
Pavel Kirienko
68a91d888d Fixed library targets for tests 2014-03-29 15:37:20 +04:00
Pavel Kirienko
21152e00db Renamed dsdlc target, library made static, added linux drivers project (empty yet) 2014-03-29 15:31:06 +04:00
Pavel Kirienko
89e5cf60e0 Added top-level CMake script 2014-03-29 15:18:36 +04:00
Pavel Kirienko
18e4d919c1 uavcan_dsdlc renamed to libuavcan_dsdlc 2014-03-29 14:54:26 +04:00
Pavel Kirienko
e212c6a9d5 Rewritten CMake installation directives, added setup.py for libuavcan_dsdl_compiler. uavcan_dsdlc should be lifted from libuavcan to a separate subproject in order to add support for other programming languages 2014-03-29 14:31:27 +04:00
Pavel Kirienko
77d46cb91f pyuavcan setup.py 2014-03-29 12:35:52 +04:00
Pavel Kirienko
fc543fafe6 Rewritten CMakeLists.txt; now it should work with any compiler (not only GCC). By default it compiles just libuavcan itself and nothing else. In case of GCC or Clang it is possible to select C++ standard (03/11, the latter is default) 2014-03-29 00:35:36 +04:00
Pavel Kirienko
0e2965e6fb Reorganized CMake script; unit tests and cppcheck will be used only if CMAKE_BUILD_TYPE=Debug, otherwise they are not required 2014-03-28 22:36:55 +04:00
Pavel Kirienko
b25efbb996 Fixed uninitialized variable in Array<> 2014-03-28 21:40:43 +04:00
Pavel Kirienko
eead3f55ec libuavcan installation rules 2014-03-28 20:25:02 +04:00
Pavel Kirienko
4b1c4014c1 dsdlc fix - now works correctly under root 2014-03-28 20:13:34 +04:00
Pavel Kirienko
162a066575 Updated magic number for uavcan.protocol.StartHilSimulation 2014-03-28 20:03:26 +04:00
Pavel Kirienko
c6df3833d3 Subscriber and Server register their internal errors in the global transport perf counter object 2014-03-28 19:31:02 +04:00
Pavel Kirienko
0d9be57d92 handleFatalError() moved to error.hpp 2014-03-28 19:26:25 +04:00
Pavel Kirienko
ae63ad5db5 Meaningful error codes instead of plain -1 2014-03-28 19:21:08 +04:00
Pavel Kirienko
4886e2194f Proper data alignment for allocator and lazy constructor 2014-03-28 13:47:21 +04:00
Pavel Kirienko
c54b3314e4 Superheader <uavcan/uavcan.hpp> 2014-03-28 13:33:44 +04:00
Pavel Kirienko
6b733dde49 Main Node class 2014-03-28 13:21:56 +04:00
Pavel Kirienko
b85fdc886b Added method Logger::init() (optional) 2014-03-28 11:53:07 +04:00
Pavel Kirienko
062170c995 Using std::function<> for callbacks with C++11 2014-03-28 02:17:00 +04:00
Pavel Kirienko
c769626eef Fixed timings for tests in order to reduce probability of test failure on a non-realtime system 2014-03-28 02:04:22 +04:00
Pavel Kirienko
86269c32ff Fix for the previous commit 2014-03-28 01:39:43 +04:00
Pavel Kirienko
7616c214b3 Auto ptr checks in tests 2014-03-28 01:32:58 +04:00
Pavel Kirienko
c7cc8c8758 Removed duplicated code of Timer 2014-03-28 00:27:14 +04:00
Pavel Kirienko
96aa295615 NodeInitializer - performs network checks during intialization: NodeID collisions, incompatible data types 2014-03-28 00:15:19 +04:00
Pavel Kirienko
49eb6fa463 Forgotten #pragma once 2014-03-27 22:50:30 +04:00
Pavel Kirienko
701f2a07e1 ServiceClient incapsulation fix 2014-03-27 22:24:13 +04:00
Pavel Kirienko
159fda99db Some constructors made explicit 2014-03-27 14:09:22 +04:00
Pavel Kirienko
f30b071fcf Preventing recursive calls of Scheduler::spin() 2014-03-27 14:03:05 +04:00
Pavel Kirienko
5157f9182e C++11 Timer API 2014-03-27 13:52:41 +04:00