source: HiSusy/trunk/hepmc/x86_64-slc5-gcc41-opt/include/HepMC/IO_Exception.h @ 1

Last change on this file since 1 was 1, checked in by zerwas, 11 years ago

first import of structure, PYTHIA8 and DELPHES

File size: 1.3 KB
Line 
1#ifndef HEPMC_IO_EXCEPTION_H
2#define HEPMC_IO_EXCEPTION_H
3// ----------------------------------------------------------------------
4//
5// IO_Exception.h
6// Author:  Lynn Garren
7//
8// IO exception handling
9// IO_GenEvent, etc. catch the throw and set data members with the error type and message
10// Some of the messages are constructed with transient information
11//      (e.g., contents of a bad GenParticle)
12//
13// ----------------------------------------------------------------------
14
15
16
17#include <stdexcept>
18 
19namespace HepMC {
20
21//! IO exception handling
22
23///
24/// \class  IO_Exception
25/// IO_GenEvent, etc. catch the throw and set data members with the error type and message
26/// Some of the messages are constructed with transient information
27///      (e.g., contents of a bad GenParticle)
28class IO_Exception : public std::runtime_error {
29public:
30  IO_Exception(const std::string & msg) 
31  : std::runtime_error(msg) { }
32
33  /// IO error types
34  enum ErrorType{ OK,
35                  NullEvent, 
36                  WrongFileType, 
37                  MissingStartKey, 
38                  EndOfStream, 
39                  EndKeyMismatch, 
40                  MissingEndKey, 
41                  InvalidData,
42                  InputAndOutput,
43                  BadOutputStream,
44                  BadInputStream };
45
46};
47
48}       // namespace HepMC
49
50#endif // HEPMC_IO_EXCEPTION_H
Note: See TracBrowser for help on using the repository browser.