Dirac - A Video Codec

Created by the British Broadcasting Corporation.


Classes | Namespaces | Macros | Enumerations | Functions
dirac_exception.h File Reference
#include <string>
#include <iostream>
Include dependency graph for dirac_exception.h:

Go to the source code of this file.

Classes

class  dirac::DiracException
 DiracException is the class which should be used for all exceptions within Dirac. More...

Namespaces

namespace  dirac
 Definition of class SequenceHeaderByteIO.

Macros

#define DIRAC_LOG_EXCEPTION(exception)
 Write an exception to the log.
#define DIRAC_THROW_EXCEPTION(arg1, arg2, arg3)
 Construct an exception from 3 arguments, log it, and throw it.
#define DIRAC_CATCH_AND_RETHROW()
 Catch a DiracException, log it, and rethrow it.

Enumerations

enum  dirac::DiracErrorCode {
  dirac::ERR_UNSUPPORTED_STREAM_DATA = 0, dirac::ERR_END_OF_STREAM, dirac::ERR_INVALID_VIDEO_FORMAT, dirac::ERR_INVALID_CHROMA_FORMAT,
  dirac::ERR_INVALID_PICTURE_RATE, dirac::ERR_INVALID_SIGNAL_RANGE, dirac::ERR_INVALID_PIXEL_ASPECT_RATIO, dirac::ERR_INVALID_VIDEO_DEPTH,
  dirac::ERR_INVALID_MOTION_VECTOR_PRECISION, dirac::ERR_INVALID_INIT_DATA
}
 Enumeration of Dirac-defined error codes. More...
enum  dirac::DiracSeverityCode {
  dirac::SEVERITY_NO_ERROR = 0, dirac::SEVERITY_WARNING, dirac::SEVERITY_PICTURE_ERROR, dirac::SEVERITY_ACCESSUNIT_ERROR,
  dirac::SEVERITY_SEQUENCE_ERROR, dirac::SEVERITY_TERMINATE
}
 Error-severity states. More...

Functions

std::ostream & dirac::operator<< (std::ostream &dst, const DiracException &exception)

Macro Definition Documentation

#define DIRAC_CATCH_AND_RETHROW ( )
Value:
catch (const DiracException& e) { \
DiracException exception(e); \
DIRAC_LOG_EXCEPTION(exception)\
throw exception; \
}
#define DIRAC_LOG_EXCEPTION (   exception)
Value:
{ \
if(exception.GetSeverityCode()!=SEVERITY_NO_ERROR) \
std::cerr << exception.GetErrorMessage(); \
}
#define DIRAC_THROW_EXCEPTION (   arg1,
  arg2,
  arg3 
)
Value:
{ \
DiracException exception(arg1,arg2, arg3); \
DIRAC_LOG_EXCEPTION(exception) \
throw exception; \
}

Referenced by dirac::GenericBandCodec< EntropyCodec >::DecodeCoeffBlock().


© 2004 British Broadcasting Corporation. Dirac code licensed under the Mozilla Public License (MPL) Version 1.1.
HTML documentation generated by Dimitri van Heesch's excellent Doxygen tool.