blob: 9f2f2bc823a1ed2a780b75be40454088b832242b [file] [log] [blame]
Patrick Venturec404b3e2018-10-30 14:17:49 -07001#pragma once
2
3#include <exception>
4#include <string>
5
6class SensorBuildException : public std::exception
7{
8 public:
Patrick Venture83a2c3b2020-08-03 11:19:28 -07009 explicit SensorBuildException(const std::string& message) : message(message)
Patrick Venturec404b3e2018-10-30 14:17:49 -070010 {
11 }
12
13 virtual const char* what() const noexcept override
14 {
15 return message.c_str();
16 }
17
18 private:
19 std::string message;
20};
James Feist734f9532018-11-15 12:13:18 -080021
22class ControllerBuildException : public std::exception
23{
24 public:
Patrick Venture83a2c3b2020-08-03 11:19:28 -070025 explicit ControllerBuildException(const std::string& message) :
26 message(message)
James Feist734f9532018-11-15 12:13:18 -080027 {
28 }
29
30 virtual const char* what() const noexcept override
31 {
32 return message.c_str();
33 }
34
35 private:
36 std::string message;
37};
Patrick Venture81cef912019-02-11 11:57:25 -080038
39class ConfigurationException : public std::exception
40{
41 public:
Patrick Venture83a2c3b2020-08-03 11:19:28 -070042 explicit ConfigurationException(const std::string& message) :
43 message(message)
Patrick Venture81cef912019-02-11 11:57:25 -080044 {
45 }
46
47 virtual const char* what() const noexcept override
48 {
49 return message.c_str();
50 }
51
52 private:
53 std::string message;
54};