Tag Parser  8.0.1
C++ library for reading and writing MP4 (iTunes), ID3, Vorbis, Opus, FLAC and Matroska tags
exceptions.h
Go to the documentation of this file.
1 #ifndef TAG_PARSER_EXCEPTIONS_H
2 #define TAG_PARSER_EXCEPTIONS_H
3 
4 #include "./global.h"
5 
6 #include <stdexcept>
7 #include <string>
8 
9 namespace TagParser {
10 
11 class TAG_PARSER_EXPORT Failure : public std::exception {
12 public:
13  Failure() USE_NOTHROW;
14  virtual ~Failure() USE_NOTHROW;
15  virtual const char *what() const USE_NOTHROW;
16 };
17 
19 public:
20  NoDataFoundException() USE_NOTHROW;
21  virtual ~NoDataFoundException() USE_NOTHROW;
22  virtual const char *what() const USE_NOTHROW;
23 };
24 
26 public:
27  InvalidDataException() USE_NOTHROW;
28  virtual ~InvalidDataException() USE_NOTHROW;
29  virtual const char *what() const USE_NOTHROW;
30 };
31 
33 public:
34  TruncatedDataException() USE_NOTHROW;
35  virtual ~TruncatedDataException() USE_NOTHROW;
36  virtual const char *what() const USE_NOTHROW;
37 };
38 
40 public:
41  OperationAbortedException() USE_NOTHROW;
42  virtual ~OperationAbortedException() USE_NOTHROW;
43  virtual const char *what() const USE_NOTHROW;
44 };
45 
47 public:
48  VersionNotSupportedException() USE_NOTHROW;
49  virtual ~VersionNotSupportedException() USE_NOTHROW;
50  virtual const char *what() const USE_NOTHROW;
51 };
52 
54 public:
55  NotImplementedException() USE_NOTHROW;
56  virtual ~NotImplementedException() USE_NOTHROW;
57  virtual const char *what() const USE_NOTHROW;
58 };
59 
63 #define CHECK_MAX_SIZE(sizeDenotation) \
64  if (maxSize < sizeDenotation) { \
65  throw TruncatedDataException(); \
66  } else { \
67  maxSize -= sizeDenotation; \
68  }
69 
70 } // namespace TagParser
71 
72 #endif // TAG_PARSER_EXCEPTIONS_H
This exception is thrown when the an operation is invoked that has not been implemented yet...
Definition: exceptions.h:53
The exception that is thrown when the data to be parsed is truncated and therefore can not be parsed ...
Definition: exceptions.h:32
The exception that is thrown when an operation fails because the detected or specified version is not...
Definition: exceptions.h:46
The exception that is thrown when the data to be parsed holds no parsable information.
Definition: exceptions.h:18
The exception that is thrown when the data to be parsed or to be made seems invalid and therefore can...
Definition: exceptions.h:25
The class inherits from std::exception and serves as base class for exceptions thrown by the elements...
Definition: exceptions.h:11
The exception that is thrown when an operation has been stopped and thus not successfully completed b...
Definition: exceptions.h:39
Contains all classes and functions of the TagInfo library.
Definition: aaccodebook.h:9
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.