Руслан Урядинский / libuavcan

Dependents:   UAVCAN UAVCAN_Subscriber

Committer:
RuslanUrya
Date:
Sat Apr 14 10:25:32 2018 +0000
Revision:
0:dfe6edabb8ec
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RuslanUrya 0:dfe6edabb8ec 1 /*
RuslanUrya 0:dfe6edabb8ec 2 * Copyright (C) 2014 Pavel Kirienko <pavel.kirienko@gmail.com>
RuslanUrya 0:dfe6edabb8ec 3 */
RuslanUrya 0:dfe6edabb8ec 4
RuslanUrya 0:dfe6edabb8ec 5 #include <uavcan/error.hpp>
RuslanUrya 0:dfe6edabb8ec 6 #include <cassert>
RuslanUrya 0:dfe6edabb8ec 7 #include <cstdlib>
RuslanUrya 0:dfe6edabb8ec 8
RuslanUrya 0:dfe6edabb8ec 9 #ifndef UAVCAN_EXCEPTIONS
RuslanUrya 0:dfe6edabb8ec 10 # error UAVCAN_EXCEPTIONS
RuslanUrya 0:dfe6edabb8ec 11 #endif
RuslanUrya 0:dfe6edabb8ec 12
RuslanUrya 0:dfe6edabb8ec 13 #if UAVCAN_EXCEPTIONS
RuslanUrya 0:dfe6edabb8ec 14 # include <stdexcept>
RuslanUrya 0:dfe6edabb8ec 15 #endif
RuslanUrya 0:dfe6edabb8ec 16
RuslanUrya 0:dfe6edabb8ec 17 namespace uavcan
RuslanUrya 0:dfe6edabb8ec 18 {
RuslanUrya 0:dfe6edabb8ec 19
RuslanUrya 0:dfe6edabb8ec 20 void handleFatalError(const char* msg)
RuslanUrya 0:dfe6edabb8ec 21 {
RuslanUrya 0:dfe6edabb8ec 22 #if UAVCAN_EXCEPTIONS
RuslanUrya 0:dfe6edabb8ec 23 throw std::runtime_error(msg);
RuslanUrya 0:dfe6edabb8ec 24 #else
RuslanUrya 0:dfe6edabb8ec 25 (void)msg;
RuslanUrya 0:dfe6edabb8ec 26 UAVCAN_ASSERT(0);
RuslanUrya 0:dfe6edabb8ec 27 std::abort();
RuslanUrya 0:dfe6edabb8ec 28 #endif
RuslanUrya 0:dfe6edabb8ec 29 }
RuslanUrya 0:dfe6edabb8ec 30
RuslanUrya 0:dfe6edabb8ec 31 }