CMS 3D CMS Logo

FilenameError.h

Go to the documentation of this file.
00001 #ifndef CLASSLIB_FILENAME_ERROR_H
00002 # define CLASSLIB_FILENAME_ERROR_H
00003 
00004 //<<<<<< INCLUDES                                                       >>>>>>
00005 
00006 # include "classlib/iobase/IOError.h"
00007 
00008 namespace lat {
00009 //<<<<<< PUBLIC DEFINES                                                 >>>>>>
00010 //<<<<<< PUBLIC CONSTANTS                                               >>>>>>
00011 //<<<<<< PUBLIC TYPES                                                   >>>>>>
00012 //<<<<<< PUBLIC VARIABLES                                               >>>>>>
00013 //<<<<<< PUBLIC FUNCTIONS                                               >>>>>>
00014 //<<<<<< CLASS DECLARATIONS                                             >>>>>>
00015 
00017 class FilenameError : public Error
00018 {
00019 public:
00020     enum Reason {
00021         UNTERMINATED_VAR,       //< Unterminated variable reference
00022         BAD_SYNTAX,             //< Badly formed variable
00023         NO_SUCH_VAR             //< Non-existent variable
00024     };
00025 
00026     FilenameError (Reason cause, const std::string &spec = "");
00027 
00028     Reason              reason (void) const;
00029     const std::string & variable (void) const;
00030 
00031     virtual std::string explainSelf (void) const;
00032     virtual Error *     clone (void) const;
00033     virtual void        rethrow (void);
00034 
00035 private:
00036     Reason              m_reason;
00037     std::string         m_spec;
00038 };
00039 
00040 //<<<<<< INLINE PUBLIC FUNCTIONS                                        >>>>>>
00041 //<<<<<< INLINE MEMBER FUNCTIONS                                        >>>>>>
00042 
00043 } // namespace lat
00044 #endif // CLASSLIB_FILENAME_ERROR_H

Generated on Tue Jun 9 17:38:51 2009 for CMSSW by  doxygen 1.5.4