Exceptions.h
Go to the documentation of this file.
00001 /******************************************************************************
00002  * Copyright (C) 2014 by Ralf Kaestner                                        *
00003  * ralf.kaestner@gmail.com                                                    *
00004  *                                                                            *
00005  * This program is free software; you can redistribute it and/or modify       *
00006  * it under the terms of the Lesser GNU General Public License as published by*
00007  * the Free Software Foundation; either version 3 of the License, or          *
00008  * (at your option) any later version.                                        *
00009  *                                                                            *
00010  * This program is distributed in the hope that it will be useful,            *
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of             *
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the               *
00013  * Lesser GNU General Public License for more details.                        *
00014  *                                                                            *
00015  * You should have received a copy of the Lesser GNU General Public License   *
00016  * along with this program. If not, see <http://www.gnu.org/licenses/>.       *
00017  ******************************************************************************/
00018 
00023 #ifndef VARIANT_TOPIC_TOOLS_EXCEPTIONS_H
00024 #define VARIANT_TOPIC_TOOLS_EXCEPTIONS_H
00025 
00026 #include <ros/ros.h>
00027 
00028 namespace variant_topic_tools {
00031   class NullPointerException :
00032     public ros::Exception {
00033   public:
00036     NullPointerException();
00037   };
00038 
00041   class InvalidOperationException :
00042     public ros::Exception {
00043   public:
00046     InvalidOperationException(const std::string& what);
00047   };
00048 
00051   class InvalidDataTypeException :
00052     public ros::Exception {
00053   public:
00056     InvalidDataTypeException();
00057   };
00058 
00062   class ImmutableDataTypeException :
00063     public ros::Exception {
00064   public:
00067     ImmutableDataTypeException();
00068   };
00069 
00072   class NoSuchDataTypeException :
00073     public ros::Exception {
00074   public:
00077     NoSuchDataTypeException(const std::string& identifier);
00078   };
00079 
00082   class AmbiguousDataTypeIdentifierException :
00083     public ros::Exception {
00084   public:
00087     AmbiguousDataTypeIdentifierException(const std::string& identifier);
00088   };
00089 
00092   class DataTypeMismatchException :
00093     public ros::Exception {
00094   public:
00097     DataTypeMismatchException(const std::string& expectedDataType, const
00098       std::string& providedDataType);
00099   };
00100 
00103   class AmbiguousMemberNameException :
00104     public ros::Exception {
00105   public:
00108     AmbiguousMemberNameException(const std::string& name);
00109   };
00110 
00113   class NoSuchMemberException :
00114     public ros::Exception {
00115   public:
00118     NoSuchMemberException(int index);
00119 
00122     NoSuchMemberException(const std::string& name);
00123   };
00124 
00127   class InvalidMessageMemberException :
00128     public ros::Exception {
00129   public:
00132     InvalidMessageMemberException();
00133   };
00134 
00137   class MD5SumMismatchException :
00138     public ros::Exception {
00139   public:
00142     MD5SumMismatchException(const std::string& expectedMD5Sum, const
00143       std::string& providedMD5Sum);
00144   };
00145 
00148   class InvalidMessageTypeException :
00149     public ros::Exception {
00150   public:
00153     InvalidMessageTypeException(const std::string& invalidMessageType);
00154   };
00155 
00158   class MessageTypeMismatchException :
00159     public ros::Exception {
00160   public:
00163     MessageTypeMismatchException(const std::string& expectedMessageType,
00164       const std::string& providedMessageType);
00165   };
00166 
00170   class DefinitionParseException :
00171     public ros::Exception {
00172   public:
00175     DefinitionParseException(const std::string& dataType, const std::string&
00176       line, const std::string& what);
00177   };
00178 
00181   class PackageNotFoundException :
00182     public ros::Exception {
00183   public:
00186     PackageNotFoundException(const std::string& package);
00187   };
00188 
00191   class FileOpenException :
00192     public ros::Exception {
00193   public:
00196     FileOpenException(const std::string& filename);
00197   };
00198 
00201   class InvalidSerializerException :
00202     public ros::Exception {
00203   public:
00206     InvalidSerializerException();
00207   };
00208 };
00209 
00210 #endif


variant_topic_tools
Author(s): Ralf Kaestner
autogenerated on Fri Aug 5 2016 06:06:27