Commit Graph
75 Commits
Author SHA1 Message Date
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 cce657e1fe Manual style fixes, logic was not affected 2014-03-25 01:36:25 +04:00
Pavel Kirienko 41a145424b Style fixes 2014-03-24 23:17:05 +04:00
Pavel Kirienko 9d797e5ac5 ::uavcan::CanIOManeger::MaxIfaces --> ::uavcan::MaxCanIfaces 2014-03-24 12:35:23 +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 6246f24297 CAN Error frame support for future extensibility 2014-03-21 10:43:34 +04:00
Pavel Kirienko 670d844f08 ICanDriver::select() call accepts CanSelectMasks instead of raw integer masks 2014-03-21 10:12:33 +04:00
Pavel Kirienko 96297678dc Run-time checks: Enforcing valid monotonic timestamp for all received frames 2014-03-20 23:49:26 +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 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
Pavel Kirienko b86ea67563 Reorganized directory structure for tests and src 2014-03-10 19:25:28 +04:00
Pavel Kirienko baed1d17c5 IncomingTransfer implements ITransferBuffer, which is necessary for message codec 2014-03-09 00:47:01 +04:00
Pavel Kirienko d71ec29fcf DataTypeDescriptor got name_ 2014-02-27 09:29:58 +04:00
Pavel Kirienko 121f8d2dee TransportCRC --> TransferCRC 2014-02-26 18:16:14 +04:00
Pavel Kirienko 887ee64d54 Fixed TransportCRC compatibility with CRC-16-CCITT 2014-02-26 09:45:06 +04:00
Pavel Kirienko a6ab9c416f Crc16 --> TransferCRC 2014-02-25 17:58:31 +04:00
Pavel Kirienko da4c2b524b CRC fix 2014-02-23 20:10:09 +04:00
Pavel Kirienko 47a2b01a14 Style fix: All constants are CamelCase now 2014-02-21 18:45:23 +04:00
Pavel Kirienko c10abf53e9 Style fix - DynamicTransferBuffer --> DynamicTransferBufferManagerEntry 2014-02-20 14:09:25 +04:00
Pavel Kirienko 4f49d61de6 Style fixes 2014-02-19 17:55:18 +04:00
Pavel Kirienko 195dca3696 Renaming: TransferBufferBase --> ITransferBuffer 2014-02-19 17:11:05 +04:00
Pavel Kirienko cd851312ff TransferSender implementation and tests 2014-02-19 17:05:19 +04:00
Pavel Kirienko 15d90f72e9 Verbose logging on CRC failure 2014-02-19 16:47:08 +04:00
Pavel Kirienko 0d50ec077c Cleaned up dynamic memory management, explicit pointer zeroing from destroy() 2014-02-19 00:39:58 +04:00
Pavel Kirienko d3d85a671c Renamed some Frame methods 2014-02-17 12:53:07 +04:00
Pavel Kirienko 9d06a328dc Simplified Frame::parse() 2014-02-17 12:43:47 +04:00
Pavel Kirienko 697a55aebb Refactoring: Frame Index field size increased, Trnasfer ID field size reduced. NodeID class added, Frame class rewritten with stricter runtime checks. All tests were updated accordingly. 2014-02-17 12:35:12 +04:00
Pavel Kirienko e7ce9fb586 Extra logging in TransferListener 2014-02-14 19:34:34 +04:00
Pavel Kirienko 20c828912f Dispatcher class, tests to come 2014-02-14 19:19:23 +04:00
Pavel Kirienko 69fa8643d4 Added RxCanFrame::toString() 2014-02-14 18:45:49 +04:00
Pavel Kirienko 2d2116f624 TransferListener implemented and tested 2014-02-13 13:01:08 +04:00
Pavel Kirienko f78a2a452c Removing the buffer after handleIncomingTransfer() 2014-02-12 13:40:54 +04:00
Pavel Kirienko a1ead1b90b TransferListener implemented, tests to be added 2014-02-12 13:27:49 +04:00
Pavel Kirienko 5ceaafe419 TransferReceiver: on-the-fly CRC extraction from multi frame transfers saves 2 to 3 bytes of payload buffers 2014-02-12 12:34:48 +04:00
Pavel Kirienko 0533539c7c Starting refactoring of the receiving logic 2014-02-12 10:49:32 +04:00
Pavel Kirienko 0bc62a74c9 TransferListener partially implemented 2014-02-11 21:55:36 +04:00
Pavel Kirienko 5be2801fa1 Dynamic buffer size limitation 2014-02-11 21:26:18 +04:00