Robot Raconteur Core C++ Library
Error.h
Go to the documentation of this file.
1 
24 //#include "RobotRaconteur/DataTypes.h"
27 #include <stdexcept>
28 #include <string>
29 #pragma once
30 
31 namespace RobotRaconteur
32 {
33 
34 class ROBOTRACONTEUR_CORE_API RRValue;
35 
49 class ROBOTRACONTEUR_CORE_API RobotRaconteurException : public std::runtime_error
50 {
51 
52  public:
58 
69  RobotRaconteurException(MessageErrorType ErrorCode, const std::string& error, const std::string& message,
70  const std::string& sub_name, const RR_INTRUSIVE_PTR<RRValue>& param);
71 
80  RobotRaconteurException(const std::string& message, std::exception& innerexception);
81 
89 
96  std::string Error;
97 
103  std::string Message;
104 
113  std::string ErrorSubName;
114 
120  RR_INTRUSIVE_PTR<RRValue> ErrorParam;
121 
127  virtual std::string ToString();
128 
129  RR_OVIRTUAL const char* what() const throw() RR_OVERRIDE;
130 
131  RR_OVIRTUAL ~RobotRaconteurException() throw() RR_OVERRIDE {}
132 
133  private:
134  std::string what_string;
135 };
136 
137 // clang-format off
138 #define RR_EXCEPTION_TYPES_INIT(M,M2) \
139  M(ConnectionException, MessageErrorType_ConnectionError, "RobotRaconteur.ConnectionError") \
140  M(ProtocolException, MessageErrorType_ProtocolError, "RobotRaconteur.ProtocolError") \
141  M(ServiceNotFoundException, MessageErrorType_ServiceNotFound, "RobotRaconteur.ServiceNotFound") \
142  M(ObjectNotFoundException, MessageErrorType_ObjectNotFound, "RobotRaconteur.ObjectNotFound") \
143  M(InvalidEndpointException, MessageErrorType_InvalidEndpoint, "RobotRaconteur.InvalidEndpoint") \
144  M(EndpointCommunicationFatalException, MessageErrorType_EndpointCommunicationFatalError, "RobotRaconteur.EndpointCommunicationFatalError") \
145  M(NodeNotFoundException, MessageErrorType_NodeNotFound, "RobotRaconteur.NodeNotFound") \
146  M(ServiceException, MessageErrorType_ServiceError, "RobotRaconteur.ServiceError") \
147  M(MemberNotFoundException, MessageErrorType_MemberNotFound, "RobotRaconteur.MemberNotFound") \
148  M(MemberFormatMismatchException, MessageErrorType_MemberFormatMismatch, "RobotRaconteur.MemberFormatMismatch") \
149  M(DataTypeMismatchException, MessageErrorType_DataTypeMismatch, "RobotRaconteur.DataTypeMismatch") \
150  M(DataTypeException, MessageErrorType_DataTypeError, "RobotRaconteur.DataTypeError") \
151  M(DataSerializationException, MessageErrorType_DataSerializationError, "RobotRaconteur.DataSerializationError") \
152  M(MessageEntryNotFoundException, MessageErrorType_MessageEntryNotFound, "RobotRaconteur.MessageEntryNotFound") \
153  M(MessageElementNotFoundException, MessageErrorType_MessageElementNotFound, "RobotRaconteur.MessageElementNotFound") \
154  M2(UnknownException, MessageErrorType_UnknownError) \
155  M(InvalidOperationException, MessageErrorType_InvalidOperation, "RobotRaconteur.InvalidOperation") \
156  M(InvalidArgumentException, MessageErrorType_InvalidArgument, "RobotRaconteur.InvalidArgument") \
157  M(OperationFailedException, MessageErrorType_OperationFailed, "RobotRaconteur.OperationFailed") \
158  M(NullValueException, MessageErrorType_NullValue, "RobotRaconteur.NullValue") \
159  M(InternalErrorException, MessageErrorType_InternalError, "RobotRaconteur.InternalError") \
160  M(SystemResourcePermissionDeniedException, MessageErrorType_SystemResourcePermissionDenied, "RobotRaconteur.SystemResourcePermissionDenied") \
161  M(OutOfSystemResourceException, MessageErrorType_OutOfSystemResource, "RobotRaconteur.OutOfSystemResource") \
162  M(SystemResourceException, MessageErrorType_SystemResourceError, "RobotRaconteur.SystemResourceError") \
163  M(ResourceNotFoundException, MessageErrorType_ResourceNotFound, "RobotRaconteur.ResourceNotFound") \
164  M(IOException, MessageErrorType_IOError, "RobotRaconteur.IOError") \
165  M(BufferLimitViolationException, MessageErrorType_BufferLimitViolation, "RobotRaconteur.BufferLimitViolation") \
166  M(ServiceDefinitionException, MessageErrorType_ServiceDefinitionError, "RobotRaconteur.ServiceDefinitionError") \
167  M(OutOfRangeException, MessageErrorType_OutOfRange, "RobotRaconteur.OutOfRange") \
168  M(KeyNotFoundException, MessageErrorType_KeyNotFound, "RobotRaconteur.KeyNotFound") \
169  M(InvalidConfigurationException, MessageErrorType_InvalidConfiguration, "RobotRaconteur.InvalidConfiguration") \
170  M(InvalidStateException, MessageErrorType_InvalidState, "RobotRaconteur.InvalidState") \
171  M2(RobotRaconteurRemoteException, MessageErrorType_RemoteError) \
172  M(RequestTimeoutException, MessageErrorType_RequestTimeout, "RobotRaconteur.RequestTimeout") \
173  M(ReadOnlyMemberException, MessageErrorType_ReadOnlyMember, "RobotRaconteur.ReadOnlyMember") \
174  M(WriteOnlyMemberException, MessageErrorType_WriteOnlyMember, "RobotRaconteur.WriteOnlyMember") \
175  M(NotImplementedException, MessageErrorType_NotImplementedError, "RobotRaconteur.NotImplementedError") \
176  M(MemberBusyException, MessageErrorType_MemberBusy, "RobotRaconteur.MemberBusy") \
177  M(ValueNotSetException, MessageErrorType_ValueNotSet, "RobotRaconteur.ValueNotSet") \
178  M(AuthenticationException, MessageErrorType_AuthenticationError, "RobotRaconteur.AuthenticationError") \
179  M(ObjectLockedException, MessageErrorType_ObjectLockedError, "RobotRaconteur.ObjectLockedError") \
180  M(PermissionDeniedException, MessageErrorType_PermissionDenied, "RobotRaconteur.PermissionDenied") \
181  M(AbortOperationException, MessageErrorType_AbortOperation, "RobotRaconteur.AbortOperation") \
182  M(OperationAbortedException, MessageErrorType_OperationAborted, "RobotRaconteur.OperationAborted") \
183  M(StopIterationException, MessageErrorType_StopIteration, "RobotRaconteur.StopIteration") \
184  M(OperationTimeoutException, MessageErrorType_OperationTimeout, "RobotRaconteur.OperationTimeout") \
185  M(OperationCancelledException, MessageErrorType_OperationCancelled, "RobotRaconteur.OperationCancelled")
186 // clang-format on
187 
188 #define RR_EXCEPTION_DECL_1(exp_cpp_type, exp_code, exp_type_str) \
189  class ROBOTRACONTEUR_CORE_API exp_cpp_type : public RobotRaconteurException \
190  { \
191  public: \
192  exp_cpp_type(const std::string& message, const std::string& sub_name = "", \
193  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>()); \
194  };
195 
196 #define RR_EXCEPTION_DECL_2(exp_cpp_type, exp_code) \
197  class ROBOTRACONTEUR_CORE_API exp_cpp_type : public RobotRaconteurException \
198  { \
199  public: \
200  exp_cpp_type(const std::string& error, const std::string& message, const std::string& sub_name = "", \
201  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>()); \
202  exp_cpp_type(std::exception& innerexception); \
203  };
204 
205 RR_EXCEPTION_TYPES_INIT(RR_EXCEPTION_DECL_1, RR_EXCEPTION_DECL_2)
206 
207 #undef RR_EXCEPTION_DECL_1
208 #undef RR_EXCEPTION_DECL_2
209 
210 #ifdef GENERATING_DOCUMENTATION
211 
221 {
222  public:
230  ConnectionException(const std::string& message, std::string sub_name = "",
231  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
232 };
233 
242 {
243  public:
251  ProtocolException(const std::string& message, std::string sub_name = "",
252  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
253 };
254 
263 {
264  public:
272  ServiceNotFoundException(const std::string& message, std::string sub_name = "",
273  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
274 };
275 
289 {
290  public:
298  ObjectNotFoundException(const std::string& message, std::string sub_name = "",
299  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
300 };
301 
316 {
317 
318  public:
326  InvalidEndpointException(const std::string& message, std::string sub_name = "",
327  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
328 };
329 
344 {
345  public:
353  EndpointCommunicationFatalException(const std::string& message, std::string sub_name = "",
354  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
355 };
356 
368 {
369  public:
377  NodeNotFoundException(const std::string& message, std::string sub_name = "",
378  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
379 };
380 
392 {
393  public:
401  ServiceException(const std::string& message, std::string sub_name = "",
402  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
403 };
404 
417 {
418  public:
426  MemberNotFoundException(const std::string& message, std::string sub_name = "",
427  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
428 };
429 
438 {
439 
440  public:
448  MemberFormatMismatchException(const std::string& message, std::string sub_name = "",
449  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
450 };
451 
462 {
463  public:
471  DataTypeMismatchException(const std::string& message, std::string sub_name = "",
472  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
473 };
474 
488 {
489  public:
497  DataTypeException(const std::string& message, std::string sub_name = "",
498  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
499 };
500 
514 {
515  public:
523  DataSerializationException(const std::string& message, std::string sub_name = "",
524  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
525 };
526 
535 {
536  public:
544  MessageEntryNotFoundException(const std::string& message, std::string sub_name = "",
545  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
546 };
547 
559 {
560  public:
568  MessageElementNotFoundException(const std::string& message, std::string sub_name = "",
569  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
570 };
571 
583 {
584  public:
593  UnknownException(const std::string& error, const std::string& message, std::string sub_name = "",
594  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
595 };
596 
604 {
605  public:
613  InvalidOperationException(const std::string& message, std::string sub_name = "",
614  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
615 };
616 
624 {
625  public:
633  InvalidArgumentException(const std::string& message, std::string sub_name = "",
634  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
635 };
636 
644 {
645  public:
653  OperationFailedException(const std::string& message, std::string sub_name = "",
654  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
655 };
656 
664 {
665  public:
673  NullValueException(const std::string& message, std::string sub_name = "",
674  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
675 };
676 
684 {
685  public:
693  InternalErrorException(const std::string& message, std::string sub_name = "",
694  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
695 };
696 
704 {
705  public:
713  PermissionDeniedException(const std::string& message, std::string sub_name = "",
714  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
715 };
716 
724 {
725  public:
733  SystemResourcePermissionDeniedException(const std::string& message, std::string sub_name = "",
734  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
735 };
736 
744 {
745  public:
753  OutOfSystemResourceException(const std::string& message, std::string sub_name = "",
754  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
755 };
756 
764 {
765  public:
773  SystemResourceException(const std::string& message, std::string sub_name = "",
774  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
775 };
776 
784 {
785  public:
793  ResourceNotFoundException(const std::string& message, std::string sub_name = "",
794  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
795 };
796 
804 {
805  public:
813  IOException(const std::string& message, std::string sub_name = "",
814  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
815 };
816 
828 {
829  public:
837  BufferLimitViolationException(const std::string& message, std::string sub_name = "",
838  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
839 };
840 
849 {
850  public:
858  ServiceDefinitionException(const std::string& message, std::string sub_name = "",
859  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
860 };
861 
870 {
871  public:
879  OutOfRangeException(const std::string& message, std::string sub_name = "",
880  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
881 };
882 
890 {
891  public:
900  KeyNotFoundException(const std::string& message, std::string sub_name = "",
901  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
902 };
903 
911 {
912  public:
921  InvalidConfigurationException(const std::string& message, std::string sub_name = "",
922  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
923 };
924 
932 {
933  public:
942  InvalidStateException(const std::string& message, std::string sub_name = "",
943  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
944 };
945 
957 {
958  public:
970  RobotRaconteurRemoteException(const std::string& error, const std::string& message, std::string sub_name = "",
971  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
972 
981  RobotRaconteurRemoteException(std::exception& innerexception);
982 };
983 
994 {
995  public:
1003  RequestTimeoutException(const std::string& message, std::string sub_name = "",
1004  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
1005 };
1006 
1014 {
1015  public:
1023  ReadOnlyMemberException(const std::string& message, std::string sub_name = "",
1024  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
1025 };
1026 
1034 {
1035  public:
1043  WriteOnlyMemberException(const std::string& message, std::string sub_name = "",
1044  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
1045 };
1046 
1054 {
1055  public:
1063  NotImplementedException(const std::string& message, std::string sub_name = "",
1064  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
1065 };
1066 
1074 {
1075  public:
1083  MemberBusyException(const std::string& message, std::string sub_name = "",
1084  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
1085 };
1086 
1098 {
1099  public:
1107  ValueNotSetException(const std::string& message, std::string sub_name = "",
1108  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
1109 };
1110 
1119 {
1120  public:
1128  AuthenticationException(const std::string& message, std::string sub_name = "",
1129  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
1130 };
1131 
1144 {
1145  public:
1153  ObjectLockedException(const std::string& message, std::string sub_name = "",
1154  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
1155 };
1156 
1166 {
1167  public:
1175  AbortOperationException(const std::string& message, std::string sub_name = "",
1176  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
1177 };
1178 
1194 {
1195  public:
1203  OperationAbortedException(const std::string& message, std::string sub_name = "",
1204  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
1205 };
1206 
1219 {
1220  public:
1228  StopIterationException(const std::string& message, std::string sub_name = "",
1229  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
1230 };
1231 
1240 {
1241  public:
1249  OperationTimeoutException(const std::string& message, std::string sub_name = "",
1250  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
1251 };
1252 
1261 {
1262  public:
1270  OperationCancelledException(const std::string& message, std::string sub_name = "",
1271  const RR_INTRUSIVE_PTR<RRValue>& param_ = RR_INTRUSIVE_PTR<RRValue>());
1272 };
1273 
1274 #ifndef ROBOTRACONTEUR_NO_CXX11_TEMPLATE_ALIASES
1276 using ConnectionExceptionPtr = RR_SHARED_PTR<ConnectionException>();
1278 using ConnectionExceptionConstPtr = RR_SHARED_PTR<const ConnectionException>();
1280 using ProtocolExceptionPtr = RR_SHARED_PTR<ProtocolException>();
1282 using ProtocolExceptionConstPtr = RR_SHARED_PTR<const ProtocolException>();
1284 using ServiceNotFoundExceptionPtr = RR_SHARED_PTR<ServiceNotFoundException>();
1286 using ServiceNotFoundExceptionConstPtr = RR_SHARED_PTR<const ServiceNotFoundException>();
1288 using ObjectNotFoundExceptionPtr = RR_SHARED_PTR<ObjectNotFoundException>();
1290 using ObjectNotFoundExceptionConstPtr = RR_SHARED_PTR<const ObjectNotFoundException>();
1292 using InvalidEndpointExceptionPtr = RR_SHARED_PTR<InvalidEndpointException>();
1294 using InvalidEndpointExceptionConstPtr = RR_SHARED_PTR<const InvalidEndpointException>();
1296 using EndpointCommunicationFatalExceptionPtr = RR_SHARED_PTR<EndpointCommunicationFatalException>();
1298 using EndpointCommunicationFatalExceptionConstPtr = RR_SHARED_PTR<const EndpointCommunicationFatalException>();
1300 using NodeNotFoundExceptionPtr = RR_SHARED_PTR<NodeNotFoundException>();
1302 using NodeNotFoundExceptionConstPtr = RR_SHARED_PTR<const NodeNotFoundException>();
1304 using ServiceExceptionPtr = RR_SHARED_PTR<ServiceException>();
1306 using ServiceExceptionConstPtr = RR_SHARED_PTR<const ServiceException>();
1308 using MemberNotFoundExceptionPtr = RR_SHARED_PTR<MemberNotFoundException>();
1310 using MemberNotFoundExceptionConstPtr = RR_SHARED_PTR<const MemberNotFoundException>();
1312 using MemberFormatMismatchExceptionPtr = RR_SHARED_PTR<MemberFormatMismatchException>();
1314 using MemberFormatMismatchExceptionConstPtr = RR_SHARED_PTR<const MemberFormatMismatchException>();
1316 using DataTypeMismatchExceptionPtr = RR_SHARED_PTR<DataTypeMismatchException>();
1318 using DataTypeMismatchExceptionConstPtr = RR_SHARED_PTR<const DataTypeMismatchException>();
1320 using DataTypeExceptionPtr = RR_SHARED_PTR<DataTypeException>();
1322 using DataTypeExceptionConstPtr = RR_SHARED_PTR<const DataTypeException>();
1324 using DataSerializationExceptionPtr = RR_SHARED_PTR<DataSerializationException>();
1326 using DataSerializationExceptionConstPtr = RR_SHARED_PTR<const DataSerializationException>();
1328 using MessageEntryNotFoundExceptionPtr = RR_SHARED_PTR<MessageEntryNotFoundException>();
1330 using MessageEntryNotFoundExceptionConstPtr = RR_SHARED_PTR<const MessageEntryNotFoundException>();
1332 using MessageElementNotFoundExceptionPtr = RR_SHARED_PTR<MessageElementNotFoundException>();
1334 using MessageElementNotFoundExceptionConstPtr = RR_SHARED_PTR<const MessageElementNotFoundException>();
1336 using UnknownExceptionPtr = RR_SHARED_PTR<UnknownException>();
1338 using UnknownExceptionConstPtr = RR_SHARED_PTR<const UnknownException>();
1340 using InvalidOperationExceptionPtr = RR_SHARED_PTR<InvalidOperationException>();
1342 using InvalidOperationExceptionConstPtr = RR_SHARED_PTR<const InvalidOperationException>();
1344 using InvalidArgumentExceptionPtr = RR_SHARED_PTR<InvalidArgumentException>();
1346 using InvalidArgumentExceptionConstPtr = RR_SHARED_PTR<const InvalidArgumentException>();
1348 using OperationFailedExceptionPtr = RR_SHARED_PTR<OperationFailedException>();
1350 using OperationFailedExceptionConstPtr = RR_SHARED_PTR<const OperationFailedException>();
1352 using NullValueExceptionPtr = RR_SHARED_PTR<NullValueException>();
1354 using NullValueExceptionConstPtr = RR_SHARED_PTR<const NullValueException>();
1356 using InternalErrorExceptionPtr = RR_SHARED_PTR<InternalErrorException>();
1358 using InternalErrorExceptionConstPtr = RR_SHARED_PTR<const InternalErrorException>();
1360 using SystemResourcePermissionDeniedExceptionPtr = RR_SHARED_PTR<SystemResourcePermissionDeniedException>();
1362 using SystemResourcePermissionDeniedExceptionConstPtr = RR_SHARED_PTR<const SystemResourcePermissionDeniedException>();
1364 using OutOfSystemResourceExceptionPtr = RR_SHARED_PTR<OutOfSystemResourceException>();
1366 using OutOfSystemResourceExceptionConstPtr = RR_SHARED_PTR<const OutOfSystemResourceException>();
1368 using SystemResourceExceptionPtr = RR_SHARED_PTR<SystemResourceException>();
1370 using SystemResourceExceptionConstPtr = RR_SHARED_PTR<const SystemResourceException>();
1372 using ResourceNotFoundExceptionPtr = RR_SHARED_PTR<ResourceNotFoundException>();
1374 using ResourceNotFoundExceptionConstPtr = RR_SHARED_PTR<const ResourceNotFoundException>();
1376 using IOExceptionPtr = RR_SHARED_PTR<IOException>();
1378 using IOExceptionConstPtr = RR_SHARED_PTR<const IOException>();
1380 using BufferLimitViolationExceptionPtr = RR_SHARED_PTR<BufferLimitViolationException>();
1382 using BufferLimitViolationExceptionConstPtr = RR_SHARED_PTR<const BufferLimitViolationException>();
1384 using ServiceDefinitionExceptionPtr = RR_SHARED_PTR<ServiceDefinitionException>();
1386 using ServiceDefinitionExceptionConstPtr = RR_SHARED_PTR<const ServiceDefinitionException>();
1388 using OutOfRangeExceptionPtr = RR_SHARED_PTR<OutOfRangeException>();
1390 using OutOfRangeExceptionConstPtr = RR_SHARED_PTR<const OutOfRangeException>();
1392 using KeyNotFoundExceptionPtr = RR_SHARED_PTR<KeyNotFoundException>();
1394 using KeyNotFoundExceptionConstPtr = RR_SHARED_PTR<const KeyNotFoundException>();
1396 using InvalidConfigurationExceptionPtr = RR_SHARED_PTR<InvalidConfigurationException>();
1398 using InvalidConfigurationExceptionConstPtr = RR_SHARED_PTR<const InvalidConfigurationException>();
1400 using InvalidStateExceptionPtr = RR_SHARED_PTR<InvalidStateException>();
1402 using InvalidStateExceptionConstPtr = RR_SHARED_PTR<const InvalidStateException>();
1404 using RobotRaconteurRemoteExceptionPtr = RR_SHARED_PTR<RobotRaconteurRemoteException>();
1406 using RobotRaconteurRemoteExceptionConstPtr = RR_SHARED_PTR<const RobotRaconteurRemoteException>();
1408 using RequestTimeoutExceptionPtr = RR_SHARED_PTR<RequestTimeoutException>();
1410 using RequestTimeoutExceptionConstPtr = RR_SHARED_PTR<const RequestTimeoutException>();
1412 using ReadOnlyMemberExceptionPtr = RR_SHARED_PTR<ReadOnlyMemberException>();
1414 using ReadOnlyMemberExceptionConstPtr = RR_SHARED_PTR<const ReadOnlyMemberException>();
1416 using WriteOnlyMemberExceptionPtr = RR_SHARED_PTR<WriteOnlyMemberException>();
1418 using WriteOnlyMemberExceptionConstPtr = RR_SHARED_PTR<const WriteOnlyMemberException>();
1420 using NotImplementedExceptionPtr = RR_SHARED_PTR<NotImplementedException>();
1422 using NotImplementedExceptionConstPtr = RR_SHARED_PTR<const NotImplementedException>();
1424 using MemberBusyExceptionPtr = RR_SHARED_PTR<MemberBusyException>();
1426 using MemberBusyExceptionConstPtr = RR_SHARED_PTR<const MemberBusyException>();
1428 using ValueNotSetExceptionPtr = RR_SHARED_PTR<ValueNotSetException>();
1430 using ValueNotSetExceptionConstPtr = RR_SHARED_PTR<const ValueNotSetException>();
1432 using AuthenticationExceptionPtr = RR_SHARED_PTR<AuthenticationException>();
1434 using AuthenticationExceptionConstPtr = RR_SHARED_PTR<const AuthenticationException>();
1436 using ObjectLockedExceptionPtr = RR_SHARED_PTR<ObjectLockedException>();
1438 using ObjectLockedExceptionConstPtr = RR_SHARED_PTR<const ObjectLockedException>();
1440 using PermissionDeniedExceptionPtr = RR_SHARED_PTR<PermissionDeniedException>();
1442 using PermissionDeniedExceptionConstPtr = RR_SHARED_PTR<const PermissionDeniedException>();
1444 using AbortOperationExceptionPtr = RR_SHARED_PTR<AbortOperationException>();
1446 using AbortOperationExceptionConstPtr = RR_SHARED_PTR<const AbortOperationException>();
1448 using OperationAbortedExceptionPtr = RR_SHARED_PTR<OperationAbortedException>();
1450 using OperationAbortedExceptionConstPtr = RR_SHARED_PTR<const OperationAbortedException>();
1452 using StopIterationExceptionPtr = RR_SHARED_PTR<StopIterationException>();
1454 using StopIterationExceptionConstPtr = RR_SHARED_PTR<const StopIterationException>();
1456 using OperationTimeoutExceptionPtr = RR_SHARED_PTR<OperationTimeoutException>();
1458 using OperationTimeoutExceptionConstPtr = RR_SHARED_PTR<const OperationTimeoutException>();
1460 using OperationCancelledExceptionPtr = RR_SHARED_PTR<OperationCancelledException>();
1462 using OperationCancelledExceptionConstPtr = RR_SHARED_PTR<const OperationCacnelledException>();
1463 #endif
1464 
1465 #endif // GENERATING_DOCUMENTATION
1466 
1467 #ifndef ROBOTRACONTEUR_NO_CXX11_TEMPLATE_ALIASES
1469 using RobotRaconteurExceptionPtr = RR_SHARED_PTR<RobotRaconteurException>;
1471 using RobotRaconteurExceptionConstPtr = RR_SHARED_PTR<const RobotRaconteurException>;
1472 
1473 #define RR_EXCEPTION_DECL_1_PTR(exp_cpp_type, exp_code, exp_type_str) \
1474  using exp_cpp_type##Ptr = RR_SHARED_PTR<exp_cpp_type>; \
1475  using exp_cpp_type##ConstPtr = RR_SHARED_PTR<const exp_cpp_type>;
1476 
1477 #define RR_EXCEPTION_DECL_2_PTR(exp_cpp_type, exp_code) \
1478  using exp_cpp_type##Ptr = RR_SHARED_PTR<exp_cpp_type>; \
1479  using exp_cpp_type##ConstPtr = RR_SHARED_PTR<const exp_cpp_type>;
1480 
1481 RR_EXCEPTION_TYPES_INIT(RR_EXCEPTION_DECL_1_PTR, RR_EXCEPTION_DECL_2_PTR)
1482 
1483 #undef RR_EXCEPTION_DECL_1_PTR
1484 #undef RR_EXCEPTION_DECL_2_PTR
1485 #endif
1486 
1487 } // namespace RobotRaconteur
boost::shared_ptr< const ConnectionException >() ConnectionExceptionConstPtr
Convenience alias for ConnectionException const shared_ptr.
Definition: Error.h:1278
boost::shared_ptr< const ServiceNotFoundException >() ServiceNotFoundExceptionConstPtr
Convenience alias for ServiceNotFoundException const shared_ptr.
Definition: Error.h:1286
boost::shared_ptr< MessageEntryNotFoundException >() MessageEntryNotFoundExceptionPtr
Convenience alias for MessageEntryNotFoundException shared_ptr.
Definition: Error.h:1328
boost::shared_ptr< const OperationTimeoutException >() OperationTimeoutExceptionConstPtr
Convenience alias for OperationTimeoutException const shared_ptr.
Definition: Error.h:1458
boost::shared_ptr< const InvalidEndpointException >() InvalidEndpointExceptionConstPtr
Convenience alias for InvalidEndpointException const shared_ptr.
Definition: Error.h:1294
boost::shared_ptr< const WriteOnlyMemberException >() WriteOnlyMemberExceptionConstPtr
Convenience alias for WriteOnlyMemberException const shared_ptr.
Definition: Error.h:1418
boost::shared_ptr< const OperationCacnelledException >() OperationCancelledExceptionConstPtr
Convenience alias for OperationCancelledException const shared_ptr.
Definition: Error.h:1462
boost::shared_ptr< const SystemResourceException >() SystemResourceExceptionConstPtr
Convenience alias for SystemResourceException const shared_ptr.
Definition: Error.h:1370
boost::shared_ptr< const IOException >() IOExceptionConstPtr
Convenience alias for IOException const shared_ptr.
Definition: Error.h:1378
boost::shared_ptr< ProtocolException >() ProtocolExceptionPtr
Convenience alias for ProtocolException shared_ptr.
Definition: Error.h:1280
boost::shared_ptr< PermissionDeniedException >() PermissionDeniedExceptionPtr
Convenience alias for PermissionDeniedException shared_ptr.
Definition: Error.h:1440
boost::shared_ptr< ResourceNotFoundException >() ResourceNotFoundExceptionPtr
Convenience alias for ResourceNotFoundException shared_ptr.
Definition: Error.h:1372
boost::shared_ptr< const InvalidConfigurationException >() InvalidConfigurationExceptionConstPtr
Convenience alias for InvalidConfigurationException const shared_ptr.
Definition: Error.h:1398
boost::shared_ptr< const PermissionDeniedException >() PermissionDeniedExceptionConstPtr
Convenience alias for PermissionDeniedException const shared_ptr.
Definition: Error.h:1442
boost::shared_ptr< MessageElementNotFoundException >() MessageElementNotFoundExceptionPtr
Convenience alias for MessageElementNotFoundException shared_ptr.
Definition: Error.h:1332
boost::shared_ptr< const RobotRaconteurException > RobotRaconteurExceptionConstPtr
Convenience alias for RobotRaconteurException const shared_ptr.
Definition: Error.h:1471
boost::shared_ptr< OutOfRangeException >() OutOfRangeExceptionPtr
Convenience alias for OutOfRangeException shared_ptr.
Definition: Error.h:1388
boost::shared_ptr< RobotRaconteurRemoteException >() RobotRaconteurRemoteExceptionPtr
Convenience alias for RobotRaconteurRemoteException shared_ptr.
Definition: Error.h:1404
boost::shared_ptr< OperationCancelledException >() OperationCancelledExceptionPtr
Convenience alias for OperationCancelledException shared_ptr.
Definition: Error.h:1460
boost::shared_ptr< const ResourceNotFoundException >() ResourceNotFoundExceptionConstPtr
Convenience alias for ResourceNotFoundException const shared_ptr.
Definition: Error.h:1374
boost::shared_ptr< NodeNotFoundException >() NodeNotFoundExceptionPtr
Convenience alias for NodeNotFoundException shared_ptr.
Definition: Error.h:1300
boost::shared_ptr< ObjectNotFoundException >() ObjectNotFoundExceptionPtr
Convenience alias for ObjectNotFoundException shared_ptr.
Definition: Error.h:1288
boost::shared_ptr< IOException >() IOExceptionPtr
Convenience alias for IOException shared_ptr.
Definition: Error.h:1376
boost::shared_ptr< const DataTypeMismatchException >() DataTypeMismatchExceptionConstPtr
Convenience alias for DataTypeMismatchException const shared_ptr.
Definition: Error.h:1318
boost::shared_ptr< const NodeNotFoundException >() NodeNotFoundExceptionConstPtr
Convenience alias for NodeNotFoundException const shared_ptr.
Definition: Error.h:1302
boost::shared_ptr< NullValueException >() NullValueExceptionPtr
Convenience alias for NullValueException shared_ptr.
Definition: Error.h:1352
boost::shared_ptr< StopIterationException >() StopIterationExceptionPtr
Convenience alias for StopIterationException shared_ptr.
Definition: Error.h:1452
boost::shared_ptr< const ProtocolException >() ProtocolExceptionConstPtr
Convenience alias for ProtocolException const shared_ptr.
Definition: Error.h:1282
boost::shared_ptr< AbortOperationException >() AbortOperationExceptionPtr
Convenience alias for AbortOperationException shared_ptr.
Definition: Error.h:1444
boost::shared_ptr< const MemberFormatMismatchException >() MemberFormatMismatchExceptionConstPtr
Convenience alias for MemberFormatMismatchException const shared_ptr.
Definition: Error.h:1314
boost::shared_ptr< const UnknownException >() UnknownExceptionConstPtr
Convenience alias for UnknownException const shared_ptr.
Definition: Error.h:1338
boost::shared_ptr< const RequestTimeoutException >() RequestTimeoutExceptionConstPtr
Convenience alias for RequestTimeoutException const shared_ptr.
Definition: Error.h:1410
boost::shared_ptr< const KeyNotFoundException >() KeyNotFoundExceptionConstPtr
Convenience alias for KeyNotFoundException const shared_ptr.
Definition: Error.h:1394
boost::shared_ptr< const OperationAbortedException >() OperationAbortedExceptionConstPtr
Convenience alias for OperationAbortedException const shared_ptr.
Definition: Error.h:1450
boost::shared_ptr< const InternalErrorException >() InternalErrorExceptionConstPtr
Convenience alias for InternalErrorException const shared_ptr.
Definition: Error.h:1358
boost::shared_ptr< const DataTypeException >() DataTypeExceptionConstPtr
Convenience alias for DataTypeException const shared_ptr.
Definition: Error.h:1322
boost::shared_ptr< InvalidEndpointException >() InvalidEndpointExceptionPtr
Convenience alias for InvalidEndpointException shared_ptr.
Definition: Error.h:1292
boost::shared_ptr< const SystemResourcePermissionDeniedException >() SystemResourcePermissionDeniedExceptionConstPtr
Convenience alias for SystemResourcePermissionDeniedException const shared_ptr.
Definition: Error.h:1362
boost::shared_ptr< ServiceDefinitionException >() ServiceDefinitionExceptionPtr
Convenience alias for ServiceDefinitionException shared_ptr.
Definition: Error.h:1384
boost::shared_ptr< const NullValueException >() NullValueExceptionConstPtr
Convenience alias for NullValueException const shared_ptr.
Definition: Error.h:1354
boost::shared_ptr< ConnectionException >() ConnectionExceptionPtr
Convenience alias for ConnectionException shared_ptr.
Definition: Error.h:1276
boost::shared_ptr< const InvalidArgumentException >() InvalidArgumentExceptionConstPtr
Convenience alias for InvalidArgumentException const shared_ptr.
Definition: Error.h:1346
boost::shared_ptr< UnknownException >() UnknownExceptionPtr
Convenience alias for UnknownException shared_ptr.
Definition: Error.h:1336
boost::shared_ptr< ValueNotSetException >() ValueNotSetExceptionPtr
Convenience alias for ValueNotSetException shared_ptr.
Definition: Error.h:1428
boost::shared_ptr< ObjectLockedException >() ObjectLockedExceptionPtr
Convenience alias for ObjectLockedException shared_ptr.
Definition: Error.h:1436
boost::shared_ptr< ReadOnlyMemberException >() ReadOnlyMemberExceptionPtr
Convenience alias for ReadOnlyMemberException shared_ptr.
Definition: Error.h:1412
boost::shared_ptr< MemberNotFoundException >() MemberNotFoundExceptionPtr
Convenience alias for MemberNotFoundException shared_ptr.
Definition: Error.h:1308
boost::shared_ptr< SystemResourceException >() SystemResourceExceptionPtr
Convenience alias for SystemResourceException shared_ptr.
Definition: Error.h:1368
boost::shared_ptr< RobotRaconteurException > RobotRaconteurExceptionPtr
Convenience alias for RobotRaconteurException shared_ptr.
Definition: Error.h:1469
boost::shared_ptr< const ServiceDefinitionException >() ServiceDefinitionExceptionConstPtr
Convenience alias for ServiceDefinitionException const shared_ptr.
Definition: Error.h:1386
boost::shared_ptr< const MemberNotFoundException >() MemberNotFoundExceptionConstPtr
Convenience alias for MemberNotFoundException const shared_ptr.
Definition: Error.h:1310
boost::shared_ptr< const ObjectLockedException >() ObjectLockedExceptionConstPtr
Convenience alias for ObjectLockedException const shared_ptr.
Definition: Error.h:1438
boost::shared_ptr< const RobotRaconteurRemoteException >() RobotRaconteurRemoteExceptionConstPtr
Convenience alias for RobotRaconteurRemoteException const shared_ptr.
Definition: Error.h:1406
boost::shared_ptr< DataTypeMismatchException >() DataTypeMismatchExceptionPtr
Convenience alias for DataTypeMismatchException shared_ptr.
Definition: Error.h:1316
boost::shared_ptr< InternalErrorException >() InternalErrorExceptionPtr
Convenience alias for InternalErrorException shared_ptr.
Definition: Error.h:1356
boost::shared_ptr< MemberFormatMismatchException >() MemberFormatMismatchExceptionPtr
Convenience alias for MemberFormatMismatchException shared_ptr.
Definition: Error.h:1312
boost::shared_ptr< InvalidStateException >() InvalidStateExceptionPtr
Convenience alias for InvalidStateException shared_ptr.
Definition: Error.h:1400
boost::shared_ptr< DataTypeException >() DataTypeExceptionPtr
Convenience alias for DataTypeException shared_ptr.
Definition: Error.h:1320
boost::shared_ptr< ServiceException >() ServiceExceptionPtr
Convenience alias for ServiceException shared_ptr.
Definition: Error.h:1304
boost::shared_ptr< InvalidOperationException >() InvalidOperationExceptionPtr
Convenience alias for InvalidOperationException shared_ptr.
Definition: Error.h:1340
boost::shared_ptr< WriteOnlyMemberException >() WriteOnlyMemberExceptionPtr
Convenience alias for WriteOnlyMemberException shared_ptr.
Definition: Error.h:1416
boost::shared_ptr< MemberBusyException >() MemberBusyExceptionPtr
Convenience alias for MemberBusyException shared_ptr.
Definition: Error.h:1424
boost::shared_ptr< const OperationFailedException >() OperationFailedExceptionConstPtr
Convenience alias for OperationFailedException const shared_ptr.
Definition: Error.h:1350
boost::shared_ptr< const ServiceException >() ServiceExceptionConstPtr
Convenience alias for ServiceException const shared_ptr.
Definition: Error.h:1306
boost::shared_ptr< const OutOfRangeException >() OutOfRangeExceptionConstPtr
Convenience alias for OutOfRangeException const shared_ptr.
Definition: Error.h:1390
boost::shared_ptr< SystemResourcePermissionDeniedException >() SystemResourcePermissionDeniedExceptionPtr
Convenience alias for SystemResourcePermissionDeniedException shared_ptr.
Definition: Error.h:1360
boost::shared_ptr< InvalidArgumentException >() InvalidArgumentExceptionPtr
Convenience alias for InvalidArgumentException shared_ptr.
Definition: Error.h:1344
boost::shared_ptr< const AuthenticationException >() AuthenticationExceptionConstPtr
Convenience alias for AuthenticationException const shared_ptr.
Definition: Error.h:1434
boost::shared_ptr< const NotImplementedException >() NotImplementedExceptionConstPtr
Convenience alias for NotImplementedException const shared_ptr.
Definition: Error.h:1422
boost::shared_ptr< const ValueNotSetException >() ValueNotSetExceptionConstPtr
Convenience alias for ValueNotSetException const shared_ptr.
Definition: Error.h:1430
boost::shared_ptr< AuthenticationException >() AuthenticationExceptionPtr
Convenience alias for AuthenticationException shared_ptr.
Definition: Error.h:1432
boost::shared_ptr< ServiceNotFoundException >() ServiceNotFoundExceptionPtr
Convenience alias for ServiceNotFoundException shared_ptr.
Definition: Error.h:1284
boost::shared_ptr< InvalidConfigurationException >() InvalidConfigurationExceptionPtr
Convenience alias for InvalidConfigurationException shared_ptr.
Definition: Error.h:1396
boost::shared_ptr< OperationFailedException >() OperationFailedExceptionPtr
Convenience alias for OperationFailedException shared_ptr.
Definition: Error.h:1348
boost::shared_ptr< DataSerializationException >() DataSerializationExceptionPtr
Convenience alias for DataSerializationException shared_ptr.
Definition: Error.h:1324
boost::shared_ptr< const StopIterationException >() StopIterationExceptionConstPtr
Convenience alias for StopIterationException const shared_ptr.
Definition: Error.h:1454
boost::shared_ptr< const InvalidStateException >() InvalidStateExceptionConstPtr
Convenience alias for InvalidStateException const shared_ptr.
Definition: Error.h:1402
boost::shared_ptr< const EndpointCommunicationFatalException >() EndpointCommunicationFatalExceptionConstPtr
Convenience alias for EndpointCommunicationFatalException const shared_ptr.
Definition: Error.h:1298
boost::shared_ptr< KeyNotFoundException >() KeyNotFoundExceptionPtr
Convenience alias for KeyNotFoundException shared_ptr.
Definition: Error.h:1392
boost::shared_ptr< OutOfSystemResourceException >() OutOfSystemResourceExceptionPtr
Convenience alias for OutOfSystemResourceException shared_ptr.
Definition: Error.h:1364
boost::shared_ptr< BufferLimitViolationException >() BufferLimitViolationExceptionPtr
Convenience alias for BufferLimitViolationException shared_ptr.
Definition: Error.h:1380
boost::shared_ptr< RequestTimeoutException >() RequestTimeoutExceptionPtr
Convenience alias for RequestTimeoutException shared_ptr.
Definition: Error.h:1408
boost::shared_ptr< const MessageEntryNotFoundException >() MessageEntryNotFoundExceptionConstPtr
Convenience alias for MessageEntryNotFoundException const shared_ptr.
Definition: Error.h:1330
boost::shared_ptr< const InvalidOperationException >() InvalidOperationExceptionConstPtr
Convenience alias for InvalidOperationException const shared_ptr.
Definition: Error.h:1342
boost::shared_ptr< OperationTimeoutException >() OperationTimeoutExceptionPtr
Convenience alias for OperationTimeoutException shared_ptr.
Definition: Error.h:1456
boost::shared_ptr< EndpointCommunicationFatalException >() EndpointCommunicationFatalExceptionPtr
Convenience alias for EndpointCommunicationFatalException shared_ptr.
Definition: Error.h:1296
boost::shared_ptr< const ReadOnlyMemberException >() ReadOnlyMemberExceptionConstPtr
Convenience alias for ReadOnlyMemberException const shared_ptr.
Definition: Error.h:1414
boost::shared_ptr< const MemberBusyException >() MemberBusyExceptionConstPtr
Convenience alias for MemberBusyException const shared_ptr.
Definition: Error.h:1426
boost::shared_ptr< const OutOfSystemResourceException >() OutOfSystemResourceExceptionConstPtr
Convenience alias for OutOfSystemResourceException const shared_ptr.
Definition: Error.h:1366
boost::shared_ptr< const ObjectNotFoundException >() ObjectNotFoundExceptionConstPtr
Convenience alias for ObjectNotFoundException const shared_ptr.
Definition: Error.h:1290
boost::shared_ptr< const AbortOperationException >() AbortOperationExceptionConstPtr
Convenience alias for AbortOperationException const shared_ptr.
Definition: Error.h:1446
boost::shared_ptr< OperationAbortedException >() OperationAbortedExceptionPtr
Convenience alias for OperationAbortedException shared_ptr.
Definition: Error.h:1448
boost::shared_ptr< const BufferLimitViolationException >() BufferLimitViolationExceptionConstPtr
Convenience alias for BufferLimitViolationException const shared_ptr.
Definition: Error.h:1382
boost::shared_ptr< const DataSerializationException >() DataSerializationExceptionConstPtr
Convenience alias for DataSerializationException const shared_ptr.
Definition: Error.h:1326
boost::shared_ptr< NotImplementedException >() NotImplementedExceptionPtr
Convenience alias for NotImplementedException shared_ptr.
Definition: Error.h:1420
boost::shared_ptr< const MessageElementNotFoundException >() MessageElementNotFoundExceptionConstPtr
Convenience alias for MessageElementNotFoundException const shared_ptr.
Definition: Error.h:1334
MessageErrorType
Message error type codes enum.
Definition: RobotRaconteurConstants.h:396
Exception passed to generators to trigger an abort.
Definition: Error.h:1166
AbortOperationException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an AbortOperationException.
Exception thrown when authentication is required or attempt to authenticate fails.
Definition: Error.h:1119
AuthenticationException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an AuthenticationException.
Exception thrown when a transport buffer limit is violated.
Definition: Error.h:828
BufferLimitViolationException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a BufferLimitViolationException.
Exception thrown when connection to remote node fails.
Definition: Error.h:221
ConnectionException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a ConnectionException.
Exception thrown when data cannot be serialized.
Definition: Error.h:514
DataSerializationException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a DataSerializationException.
Exception thrown when unexpected or incompatible data is provided.
Definition: Error.h:488
DataTypeException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a DataTypeException.
Exception thrown when incorrect data is received by a member.
Definition: Error.h:462
DataTypeMismatchException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a DataTypeMismatchException.
Exception thrown when an attempt to send a message to an endpoint fails.
Definition: Error.h:344
EndpointCommunicationFatalException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an EndpointCommunicationFatalException.
Exception thrown when an input/output error occurs.
Definition: Error.h:804
IOException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an IOException.
Exception thrown when an internal error has occurred.
Definition: Error.h:684
InternalErrorException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an InternalErrorException.
Exception thrown for an invalid argument.
Definition: Error.h:624
InvalidArgumentException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an InvalidArgumentException.
Exception thrown when an invalid configuration is specified or encountered.
Definition: Error.h:911
InvalidConfigurationException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an InvalidConfiguration exception.
Exception thrown when an attempt is made to send a message to an invalid endpoint.
Definition: Error.h:316
InvalidEndpointException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an InvalidEndpointException.
Exception thrown when an invalid operation is attempted.
Definition: Error.h:604
InvalidOperationException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an InvalidOperationException.
Exception thrown when an invalid state is specified or encountered.
Definition: Error.h:932
InvalidStateException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an InvalidState exception.
Exception thrown when a key is not found in a map.
Definition: Error.h:890
KeyNotFoundException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a KeyNotFound exception.
Thrown is a member is busy. Retry later.
Definition: Error.h:1074
MemberBusyException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a MemberBusyException.
Exception thrown when a request to a member has an invalid MessageEntryType or the wrong message elem...
Definition: Error.h:438
MemberFormatMismatchException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a MemberFormatMismatchException.
Exception thrown when the specified object member is not found.
Definition: Error.h:417
MemberNotFoundException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a MemberNotFoundException.
Exception thrown wen an expected MessageElement is not found.
Definition: Error.h:559
MessageElementNotFoundException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a MessageElementNotFoundException.
Exception thrown when an expected MessageEntry is not found.
Definition: Error.h:535
MessageEntryNotFoundException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a MessageEntryNotFoundException.
Exception thrown if the specified node cannot be found.
Definition: Error.h:368
NodeNotFoundException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a NodeNotFoundException.
Exception thrown if a member is not implemented.
Definition: Error.h:1054
NotImplementedException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a NotImplementedException.
Exception thrown for an unexpected null value.
Definition: Error.h:664
NullValueException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a NullValueException.
Exception thrown when attempting to access a locked service object.
Definition: Error.h:1144
ObjectLockedException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an ObjectLockedException.
Exception thrown when a service object cannot be found.
Definition: Error.h:289
ObjectNotFoundException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an ObjectNotFoundException.
Exception thrown when an operation is aborted.
Definition: Error.h:1194
OperationAbortedException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a OperationAbortedException.
Exception thrown when an operation is cancelled before it is started.
Definition: Error.h:1261
OperationCancelledException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an OperationCancelledException.
Exception thrown when an operation fails.
Definition: Error.h:644
OperationFailedException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an OperationFailedException.
Exception thrown when an operation does not complete in the expected time.
Definition: Error.h:1240
OperationTimeoutException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an OperationTimeoutException.
Exception thrown when an attempt to acces an array or container index is out of range.
Definition: Error.h:870
OutOfRangeException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an OutOfRangeException.
Exception thrown when a system resource has been exhausted.
Definition: Error.h:744
OutOfSystemResourceException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an OutOfSystemResourceException.
Exception thrown when permission is denied to a service member.
Definition: Error.h:704
PermissionDeniedException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a PermissionDeniedException.
Exception thrown when a protocol failure occurs on a tranport connection.
Definition: Error.h:242
ProtocolException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a ProtocolException.
An attempt was made to write/set a read only member.
Definition: Error.h:1014
ReadOnlyMemberException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a ReadOnlyMemberException.
The request timed out.
Definition: Error.h:994
RequestTimeoutException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a RequestTimeoutException.
Exception thrown when a system resource is not found.
Definition: Error.h:784
ResourceNotFoundException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a ResourceNotFoundException.
Base class for Robot Raconteur exceptions.
Definition: Error.h:50
std::string Error
Name of the error.
Definition: Error.h:96
RobotRaconteurException()
Construct an empty RobtoRaconteurException()
std::string Message
Message to pass to the user.
Definition: Error.h:103
RobotRaconteurException(const std::string &message, std::exception &innerexception)
Construct a RobotRaconteurException based on an existing exception.
std::string ErrorSubName
An optional sub_name to further categorize the exception.
Definition: Error.h:113
MessageErrorType ErrorCode
Predefined error code.
Definition: Error.h:88
RobotRaconteurException(MessageErrorType ErrorCode, const std::string &error, const std::string &message, const std::string &sub_name, const boost::intrusive_ptr< RRValue > &param)
Construct a RobotRaconteurException.
boost::intrusive_ptr< RRValue > ErrorParam
An optional parameter.
Definition: Error.h:120
virtual std::string ToString()
Returns a string representing the exception.
Exception thrown when an error occurs on a remote member request.
Definition: Error.h:957
RobotRaconteurRemoteException(const std::string &error, const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a RobotRaconteurRemoteException.
RobotRaconteurRemoteException(std::exception &innerexception)
Construct a RobotRaconteurRemoteException from an existing exception.
Exception thrown when a service definition cannot be parsed or fails verification.
Definition: Error.h:849
ServiceDefinitionException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a new ServiceDefinitionException.
Exception thrown when an exception occurs during an operation on a service.
Definition: Error.h:392
ServiceException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a ServiceException.
Exception thrown when a service cannot be found on a remote node.
Definition: Error.h:263
ServiceNotFoundException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a ServiceNotFoundException.
Exception thrown when a generator has finished sending results.
Definition: Error.h:1219
StopIterationException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a StopIterationException.
Exception thrown when a system resource error occurs.
Definition: Error.h:764
SystemResourceException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a SystemResourceException.
Exception thrown when permission to a system resource is denied.
Definition: Error.h:724
SystemResourcePermissionDeniedException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a SystemResourcePermissionDeniedException.
Exception representing an unknown exception type.
Definition: Error.h:583
UnknownException(const std::string &error, const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct an UnknownException.
Exception thrown if a value has not been set.
Definition: Error.h:1098
ValueNotSetException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a ValueNotSetException.
An attempt was mode to read/get a write only member.
Definition: Error.h:1034
WriteOnlyMemberException(const std::string &message, std::string sub_name="", const boost::intrusive_ptr< RRValue > &param_=boost::intrusive_ptr< RRValue >())
Construct a WriteOnlyMemberException.