exiv2._error
Exiv2 error codes and log messages.
Classes
Complete list of all Exiv2 error codes. |
|
Class for a log message, used by the library. |
Exceptions
Python exception raised by exiv2 library errors. |
- class ErrorCode
Bases:
IntEnum
Complete list of all Exiv2 error codes.
- kerAliasesNotSupported = 48
- kerArithmeticOverflow = 61
- kerCallFailed = 3
- kerCorruptedMetadata = 60
- kerDataAreaValueTooLarge = 26
- kerDataSourceOpenFailed = 10
- kerDecodeLangAltPropertyFailed = 42
- kerDecodeLangAltQualifierFailed = 43
- kerEncodeLangAltPropertyFailed = 44
- kerErrorCount = 64
- kerErrorMessage = 2
- kerFailedToMapFileForReadWrite = 17
- kerFailedToReadImageData = 15
- kerFileContainsUnknownImageType = 12
- kerFileOpenFailed = 11
- kerFileRenameFailed = 18
- kerFunctionNotSupported = 35
- kerGeneralError = 1
- kerImageWriteFailed = 22
- kerInputDataReadFailed = 21
- kerInvalidCharset = 29
- kerInvalidDataset = 5
- kerInvalidIccProfile = 54
- kerInvalidIconvEncoding = 63
- kerInvalidIfdId = 24
- kerInvalidKey = 7
- kerInvalidKeyXmpValue = 53
- kerInvalidLangAltValue = 58
- kerInvalidMalloc = 59
- kerInvalidRecord = 6
- kerInvalidSettingForImage = 33
- kerInvalidTag = 8
- kerInvalidTypeValue = 57
- kerInvalidXMP = 55
- kerInvalidXmpText = 49
- kerMallocFailed = 62
- kerMemoryContainsUnknownImageType = 13
- kerMemoryTransferFailed = 20
- kerMultipleTiffArrayElementTagsInDirectory = 51
- kerNoImageInInputData = 23
- kerNoNamespaceForPrefix = 47
- kerNoNamespaceInfoForXmpPrefix = 36
- kerNoPrefixForNamespace = 37
- kerNotACrwImage = 34
- kerNotAJpeg = 16
- kerNotAnImage = 4
- kerOffsetOutOfRange = 27
- kerPropertyNameIdentificationFailed = 45
- kerSchemaNamespaceNotRegistered = 46
- kerSuccess = 0
- kerTiffDirectoryTooLarge = 56
- kerTooLargeJpegSegment = 38
- kerTooManyTiffDirectoryEntries = 50
- kerTransferFailed = 19
- kerUnhandledXmpNode = 40
- kerUnhandledXmpdatum = 39
- kerUnsupportedDataAreaOffsetType = 28
- kerUnsupportedDateFormat = 30
- kerUnsupportedImageType = 14
- kerUnsupportedTimeFormat = 31
- kerValueNotSet = 9
- kerValueTooLarge = 25
- kerWritingImageFormatUnsupported = 32
- kerWrongTiffArrayElementTagType = 52
- kerXMPToolkitError = 41
- class LogMsg
Bases:
SwigPyObject
Class for a log message, used by the library. Applications can set the log level and provide a customer log message handler (callback function).
This class is meant to be used as a temporary object with the related macro-magic like this:
EXV_WARNING << "Warning! Something looks fishy.\n";
which translates to
if (LogMsg::warn >= LogMsg::level() && LogMsg::handler()) LogMsg(LogMsg::warn).os() << "Warning! Something looks fishy.\n";
The macros EXV_DEBUG, EXV_INFO, EXV_WARNING and EXV_ERROR are shorthands and ensure efficient use of the logging facility: If a log message doesn’t need to be generated because of the log level setting, the temp object is not even created.
Caveat: The entire log message is not processed in this case. So don’t make that call any logic that always needs to be executed.
- class Level
Bases:
IntEnum
Defined log levels.
To suppress all log messages, either set the log level to mute or set the log message handler to None.
- debug = 0
- error = 3
- info = 1
- mute = 4
- warn = 2
- defaultHandler = <Swig Object of type 'void (*)(int,char const *)'>
- static handler()
Return the current log message handler
- static level()
Return the current log level
- pythonHandler = <Swig Object of type 'void (*)(int,char const *)'>
- static setHandler()
Set the log message handler. The default handler writes log messages to standard error. To suppress all log messages, set the log message handler to 0 (or set the log level to
mute)
.
- static setLevel()
Set the log level. Only log messages with a level greater or equal level are sent to the log message handler. Default log level is
warn
. To suppress all log messages, set the log level tomute
(or set the log message handler to 0).