Andreas Huggel
521cf5eb01
Added support for Minolta CameraSettings, part 2
19 years ago
Andreas Huggel
5b57a1749b
TIFF parser checkpoint (experimental): Improved CR2 support (changes in the TIFF structure table), added support for Jpeg thumbnails, enhanced TiffDirectory so that the next pointer is optional.
19 years ago
Andreas Huggel
1311ff7b10
Fixed buffer overflow in ExifData::load() when called with an empty buffer; marked the function as deprecated, as it will eventually disappear.
19 years ago
Andreas Huggel
ab10daa6d9
Removed trailing whitespace
20 years ago
Andreas Huggel
a1a5ff02b8
Fixed invalid type id for user comment tag, bug #451
20 years ago
Andreas Huggel
99b4e71459
Updated copyright and fsf address
20 years ago
Andreas Huggel
f4adc6528b
Changed Exif parser to skip broken Ifds if possible. Fixes bug #443 .
20 years ago
Andreas Huggel
8c623635e9
Changed hasMakerNote to return an IfdId instead of bool
20 years ago
Andreas Huggel
260b9af10b
Removed hasMakerNote() from ExifData and made it a free function. Added setting to generate an XML tagfile to Doxyfile.
20 years ago
Andreas Huggel
06e5c0719e
Removed trailing whitespace from source files
20 years ago
Andreas Huggel
489fff191d
Canon CRW read support, first try. Introduces a new approach to parsing metadata. Cluttered by some related additions to the Canon makernote note and a bit of cleanup.
20 years ago
Andreas Huggel
47aad1f393
Added experimental bool ExifData::hasMakerNote() method
20 years ago
Andreas Huggel
5823ceaff3
Changed Ifd::read() to allow it to access the complete Exif data buffer. Corresponding changes done to makernotes. Fixes bug #424 .
20 years ago
Andreas Huggel
1a2183c2ea
This should fix 'unused parameter' warnings reported on Mac OS 10.4.1 Tiger / gcc4. To be confirmed.
20 years ago
Andreas Huggel
043a4a348b
Added #ifndef SUPPRESS_WARNINGS blocks around all output from the library: compile with -DSUPPRESS_WARNINGS for a quiet library
20 years ago
Andreas Huggel
7d3f50c244
Minor changes (moved inline functions which throw to *.cpp files)
20 years ago
Andreas Huggel
a70511cc4a
Changed MakerNoteFactory according to ImageFactory. Removes the need to link applications with mn.o. Fixes bug #427
20 years ago
Andreas Huggel
55aebc0686
Overhauled exception handling. The new class Error has a list of error messages, which is selected based on the error code provided in the constructor.
...
Image::read/writeMetadata and ImageFactory::open now throw Error in case of failure. Applications therefore now need an exception handler for the error handling of such function calls. This should result in shorter and simpler application code.
20 years ago
Andreas Huggel
90a707fa2e
Fixed bugs found on MinGW and with MSVC. iotest still misteriously fails.
20 years ago
Andreas Huggel
6a675f3d82
Added support for Canon Camera settings 1/2 and Custom Functions tags
20 years ago
Andreas Huggel
1f82dffcfa
Added type information to Exif tag tables. Updated comment example, documentation and tests. Implements feature #425
21 years ago
Andreas Huggel
adb618fcf9
More clean-up, updated component dependency graph
21 years ago
Andreas Huggel
2347ae9e0a
Cleaned up exif.hpp dependencies
21 years ago
Andreas Huggel
59e1a6f29f
Added an EXV_ prefix to precompiler defines (still not to all yet - I don't like the idea of "exv_size_t" or "exv_const" - but hopefully to those more likely to create conflicts). Fixes bug #420
21 years ago
Andreas Huggel
54a42fc1f7
Generalized and cleaned-up makernote handling
21 years ago
Andreas Huggel
8521dead83
Added 2005 to Copyright lines
21 years ago
Andreas Huggel
2a0149184a
Fixes and cosmetic changes; all tests now pass again, finally!
21 years ago
Andreas Huggel
8221293072
Completed ExifData assignment operator and copy constructor, added related code and tests. Fixes bug #417
21 years ago
brad
0cab366ec2
Merges all changes from the insideout branch back into trunk. This includes the IO abstraction code, split-up of image.cpp, and inside-out design change ( #402 , #403 , and #404 ).
21 years ago
Andreas Huggel
5ea6544c6d
Fixed bug #407 (that was easier than I first thought)
21 years ago
Andreas Huggel
72f9786ad3
Added very basic assignment op and copy constructor to ExifData - untested
21 years ago
Andreas Huggel
c8d9fe0b35
Changed operator hack to be more consistent, added op=(const Value&)
21 years ago
Andreas Huggel
4b86ee4583
Fixed ExifData::eraseThumbnail(). Bug #401
21 years ago
Andreas Huggel
57a5b8c422
Undid changes from rev 421 (doesn't compile with g++), moved definitions of Exifdatum::op= to exif.cpp
21 years ago
Andreas Huggel
bd5b6d2ccc
Added ExifData setJpegThumbnail and op[] and Exifdatum op=. With the operator stuff you can now do things like: exifData["Exif.Thumbnail.Compression"] = uint16_t(6);
21 years ago
Andreas Huggel
c4eca96836
Revamped Thumbnail classes to use the new data area feature. Implements feature #398 .
21 years ago
Andreas Huggel
974d5e4637
Added data area concept to Value, ValueType, Entry, Ifd. Implements feature #395
21 years ago
brad
77d3d5621a
added subversion style keywords
21 years ago
Andreas Huggel
44d0deac92
Converted Value hierarchy to use std::auto_ptr where appropriate
21 years ago
Andreas Huggel
e20bffaec7
Converted Key hierarchy to use std::auto_ptr where appropriate
21 years ago
Andreas Huggel
8551c935f8
Changed MakerNote class hierarchy to use std::auto_ptr where appropriate
21 years ago
Andreas Huggel
f40fba88bf
Added Image::AutoPtr and related updates
...
Changed some local buffers to DataBuf
21 years ago
Andreas Huggel
79721d04e0
Move ExifKey to component tags, moved IptcKey to component datasets
21 years ago
Andreas Huggel
25404d55e5
Minor changes
21 years ago
Andreas Huggel
9b6e62c552
Added support to build a MakerNote from scratch
21 years ago
Andreas Huggel
1efd83bf04
Minor cleanup
21 years ago
Andreas Huggel
e88a307858
Improved and cleaned-up ExifKey implementation
21 years ago
Andreas Huggel
a25763d070
Replaced custom integer types with C99 types
21 years ago
Andreas Huggel
54e126d3e4
Appended one more Id to an Ifd id to work around a g++-3.4
21 years ago
Andreas Huggel
5e050bce0a
Appended 'Id' to Ifd ids to work around a g++-3.4 problem
21 years ago
Andreas Huggel
6b0489a02f
More patches for masked Exiv2::ifd0 and Exiv2::exifIfd (Joseph Heled)
21 years ago
Andreas Huggel
0147a77c7b
Added Key, ExifKey and IptcKey class hierarchy
...
Changed Exif keys to 'Exif.ifdItem.tagName'
21 years ago
Andreas Huggel
cb164f712f
Added check if file exists before calls to ImageFactory::open
21 years ago
Andreas Huggel
166e6f7928
Added full IPTC read and write support (Brad, bs_3.patch)
21 years ago
Andreas Huggel
93d8dd7e1f
Fix for masked Exiv2::ifd1 (Joseph Heled)
21 years ago
Andreas Huggel
735bb60985
Removed obsolete includes
21 years ago
Andreas Huggel
9d72b7d1ec
Revamped image and introduced byte* interface (Brad, bs_1.patch with minor modifications by ahu)
21 years ago
Andreas Huggel
d3ee3bdc9a
Really fixed ExifData::copyFromMetadata to automatically add missing offset tags
21 years ago
Andreas Huggel
3156f53a25
Delete Exif section from the file when writing an empty ExifData
21 years ago
Andreas Huggel
8f445fa016
* Fixed MSVC errors and warnings (Steve, sking_5.patch)
...
* Fixed ExifData::copyFromMetadata to automatically add missing offset tags
* Fixed an embarassing bug in ExifData::updateEntries, which caused write
after erasing metadata to write back the original metadata.
21 years ago
Andreas Huggel
b921d51d1b
Attempt for a fix for copyFromMetadata. Not complete.
21 years ago
Andreas Huggel
f98f131244
Added the makernote buffer to the arguments passed to the create function. This allows the makernote create function to determine the exact makernote needed based on its
...
content. The new concept is used to automatically determine which of the three Nikon makernotes to create.
21 years ago
Andreas Huggel
fdfb5fee63
Added warning when makernote cannot be read
21 years ago
Andreas Huggel
59edeff2d8
Added len argument and boundary checks to various read functions and slightly improved error handling
21 years ago
Andreas Huggel
cbb1c15810
Changed namespace name Exif to Exiv2
21 years ago
Andreas Huggel
0b24a0ad29
makernote:
...
Added MakerNote::offset()
Fixed IfdMakerNote::copy() for IfdMakerNote with a prefix
Various doc fixes
ifd:
Fixed Ifd::erase(pos) to return an iterator
Added Ifd::dataOffset()
Various doc fixes
exif:
Added Thumbnail::offset()
Fixed ExifData::eraseThumbnail()
Fixed ExifData::erase(pos) to return an iterator
21 years ago
Andreas Huggel
99a87043a4
Workaround for MinGW bug: use remove() before rename()
21 years ago
Andreas Huggel
20bcdef949
Use DataBuf for temporary data buffers
22 years ago
Andreas Huggel
57cdf19286
Added support to read from / write to *.exv files, made return values of writeThumbnail consistent with those of other write functions
22 years ago
Andreas Huggel
2db819ccb6
Implemented erase Exif data
22 years ago
Andreas Huggel
f520a571a6
Avoid opening the image twice on read and write
22 years ago
Andreas Huggel
7d7322dff7
Implemented ImageFactory::create() and its use in ExifData
22 years ago
Andreas Huggel
3681403ac4
Naming convention: Renamed data members xyz_ that are pointers to pXyz_
22 years ago
Andreas Huggel
a0a42b148e
Added Thumbnail class hierarchy and support to erase thumbnails
22 years ago
Andreas Huggel
532b0c33a7
Added Thumbnail::dataSize
22 years ago
Andreas Huggel
bac67ee39f
Use assert macro where appropriate
22 years ago
Andreas Huggel
8a776d2f44
Supported MakerNote byte order and invalidTypeId
22 years ago
Andreas Huggel
6c389a708b
Fixed TIFF thumbnail bug in Thumbnail::updateTiffImage
22 years ago
Andreas Huggel
eb9541f172
Makernote write support, part 3 (differentiate memory management modes, do not sort makernote)
22 years ago
Andreas Huggel
cdae02333f
Makernote write support, part 2
22 years ago
Andreas Huggel
7174da0192
Auto-registration of MakerNote subclasses in the factory, combined mnfactory and makernote into one component again
22 years ago
Andreas Huggel
6cafaf11e3
Split makernote component in makernote, mnfactory and canonmn
22 years ago
Andreas Huggel
1daee4d7ae
Changes for makernote write support, documentation updates
22 years ago
Andreas Huggel
03f2f15d98
Bugfixes (creation of Metadatum with 2 shorts instead of 1, duplicate StripOffset tags in thumbnail IFD) and change of makeKey() signature
22 years ago
Andreas Huggel
fdd338981a
MakerNote related changes and Entry clean-up
22 years ago
Andreas Huggel
6749046e40
Divided exif.[ch]pp into components
22 years ago
Andreas Huggel
8f4668a6e9
Added printing of the interpreted metadatum value
22 years ago
Andreas Huggel
9cf3e66801
Fixed blunders related to non-intrusive writing: Ambiguous Ifd constructor, incomplete implementation of updateIfds
22 years ago
Andreas Huggel
f3a3e32ac2
Implemented "non-intrusive write support", part 2 and JPEG file write support
22 years ago
Andreas Huggel
214a00b842
Added thumbnail type none, added ifd and TIFF header to thumbnail
22 years ago
Andreas Huggel
cd45eb0e5c
Bugfixes: use the correct version of delete
22 years ago
Andreas Huggel
39172050a8
Implemented ExifData::copy() and related Thumbnail stuff
22 years ago
Andreas Huggel
a4a95c0aec
Added RCS id to each *.cpp file
22 years ago
Andreas Huggel
ff2fdd3b9f
Implemented IFD logic to support "non-intrusive write operations", part 1
22 years ago
Andreas Huggel
552ce410d8
Implemented readTiffImage and various fixes and additions
22 years ago
Andreas Huggel
4e81bbf99e
Improved doc, added Value::toString and Metadatum::toString
22 years ago
Andreas Huggel
23c0d08f8f
More code
22 years ago
Andreas Huggel
7dcf194501
Removed Metadatum default constructor, fixed doc
22 years ago
Andreas Huggel
9a35a619e4
Rewrote Thumbnail::read(), added ExifData::findKey, cleanup
22 years ago
Andreas Huggel
478e5f21a5
Metadatum interface, Ifd::Entry
22 years ago
Andreas Huggel
325671ff2a
More code...
22 years ago
Andreas Huggel
440571b544
Values implemented
22 years ago
Andreas Huggel
bb6380825d
Added Value et al.
22 years ago
Andreas Huggel
9bf351c60b
More code
22 years ago
Andreas Huggel
2fae82f7b7
Renamed C++ files to *.hpp and *.cpp
22 years ago