From 17f2c4bd58f7e43065da4be4636d47507d4d5fca Mon Sep 17 00:00:00 2001 From: Andreas Huggel Date: Mon, 6 Jun 2005 16:04:22 +0000 Subject: [PATCH] Updated documentation, bumped version to 0.7 --- config/configure.ac | 2 +- doc/templates/getting-started.html.in | 19 +++++-- src/doxygen.hpp | 71 ++++++++++++++------------- src/exv_msvc.h | 4 +- test/data/exiv2-test.out | 2 +- 5 files changed, 56 insertions(+), 42 deletions(-) diff --git a/config/configure.ac b/config/configure.ac index 9f931d94..f77476b8 100644 --- a/config/configure.ac +++ b/config/configure.ac @@ -2,7 +2,7 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.59) -AC_INIT(Exiv2, 0.6.2, ahuggel@gmx.net) +AC_INIT(Exiv2, 0.7, ahuggel@gmx.net) AC_CONFIG_SRCDIR([src/exif.cpp]) AC_CONFIG_HEADER([./config/config.h]) AC_CONFIG_AUX_DIR([./config]) diff --git a/doc/templates/getting-started.html.in b/doc/templates/getting-started.html.in index c15c284c..b8e89770 100644 --- a/doc/templates/getting-started.html.in +++ b/doc/templates/getting-started.html.in @@ -13,14 +13,27 @@ __index1__

The Exiv2 library is made up of all elements defined in the Exiv2 namespace. The Action and Util namespaces are only used by the -Exiv2 command line utility. Thus, to learn about the library, concentrate on +Exiv2 command line utility. Thus, to learn about the library, focus on the members of the Exiv2 namespace.

Classes

-

Exiv2::ExifData +

The top-level class of the Exiv2 library is +Exiv2::Image + +(don't let the components diagram below mislead you). Exiv2::Image +defines the interface to access various image metadata. Derived from +Exiv2::Image are the implementations of different image formats. +However, the only image format currently supported is Jpeg. Most +applications will use +Exiv2::ImageFactory +to access images in files or memory, in which case the image format +is transparent to them.

+ +

Metadata is manipulated through the classes +Exiv2::ExifData and Exiv2::IptcData -are the top-level classes of the Exiv2 library. They hold a container +of the Exiv2 library. They hold a container of Exif and Iptc metadata, respectively, and define related methods to access and manipulate the metadata. The containers hold objects derived from Exiv2::Metadatum. diff --git a/src/doxygen.hpp b/src/doxygen.hpp index a790c6b9..e98eb6cc 100644 --- a/src/doxygen.hpp +++ b/src/doxygen.hpp @@ -8,38 +8,32 @@ @date 07-Feb-04, ahu: created */ /*! - @mainpage Exif and Iptc metadata manipulation library and tools v0.6.2 + @mainpage Exif and Iptc metadata manipulation library and tools v0.7 @section overview Exiv2 Overview + + %Exiv2 comprises of a C++ library and a command line utility to access image + metadata. %Exiv2 is free software. - Exiv2 is a C++ library that provides - - read and write access to the Exif and Iptc IIM metadata of an image - through %Exiv2 keys and standard C++ iterators - - Exif MakerNote support: - - MakerNote tags can be accessed just like any other metadata - - a sophisticated write algorithm avoids corrupting the MakerNote: -
  1) the MakerNote is not re-located if possible, and -
  2) MakerNote IFD offsets are re-calculated if the MakerNote - needs to be moved (for known IFD MakerNotes) - - new camera make/model specific MakerNotes can be added to the library - with minimum effort in OO-fashion (by subclassing MakerNote or IfdMakerNote) + The %Exiv2 library provides + - full read and write access to the Exif and Iptc metadata of an image through + %Exiv2 keys and standard C++ iterators + - a smart Iptc implementation that does not effect data that programs like + Photoshop store in the same image segment + - Exif %MakerNote support: + - %MakerNote tags can be accessed just like any other Exif metadata + - a sophisticated write algorithm avoids corrupting the %MakerNote: +
  1) the %MakerNote is not re-located if possible at all, and +
  2) %MakerNote %Ifd offsets are re-calculated if the + %MakerNote needs to be moved (for known %Ifd %MakerNotes) + - new camera make/model specific %MakerNotes can be added to the library with + minimum effort in OO-fashion (by subclassing %MakerNote or %IfdMakerNote) + - extract and delete methods for Exif thumbnails (both, Jpeg and Tiff thumbnails) - set methods for Exif thumbnails (Jpeg only, Tiff thumbnails can be set from individual tags) - - extract and delete methods for Exif thumbnails (both, JPEG and TIFF thumbnails) - - Doxygen API documentation - - generic lower-level classes to access IFD (Image File Directory) data structures - - %Exiv2 is also a command line program to - - print the Exif metadata of JPEG images (as summary info, interpreted values, or - the plain data for each tag) - - print the Iptc metadata of JPEG images - - print the Jpeg comment of JPEG images - - adjust the Exif timestamp (that's how it all started...) - - rename Exif image files according to the Exif timestamp - - extract Exif metadata, Iptc metadata and Jpeg comments from image files and - insert it again - - extract the thumbnail image embedded in the Exif metadata - - delete the thumbnail or the complete Exif metadata from an image + - complete API documentation (by Doxygen) + - generic lower-level classes to access %Ifd (%Image File Directory) data + structures @section getting-started Getting started @@ -62,15 +56,22 @@ A summary of MakerNote structures with links to publicly available specifications. + @section supp Support + +

There is now a + Yahoo! group for Exiv2 help and discussions.

+

Join the group to post and receive messages or use exiv2user/password to post anonymously. Bug reports can be submitted directly to the + +bug tracking system.

+ @section devel Development

%Exiv2 is maintained in a publicly available subversion repository. - You can see a - live list with the latest commits to the repository, + There is a + live list with the latest commits to the repository, and you can - browse the source code online, access the - - bug tracking system and report bugs. + browse the source code online.

To check-out the current source code from the repository, you need a To download the test data and test drivers for version 0.6.2 from - the repository, change to your local exiv2-0.6.2 directory and use the +

To download the test data and test drivers for version 0.7 from + the repository, change to your local exiv2-0.7 directory and use the following command:

- @verbatim $ svn export svn://dev.robotbattle.com/exiv2/tags/0.6.2/test @endverbatim + @verbatim $ svn export svn://dev.robotbattle.com/exiv2/tags/0.7/test @endverbatim

If you'd like to contribute code, please contact me. diff --git a/src/exv_msvc.h b/src/exv_msvc.h index 319bf0fa..0cfb3a2e 100644 --- a/src/exv_msvc.h +++ b/src/exv_msvc.h @@ -23,13 +23,13 @@ #define EXV_PACKAGE_NAME "Exiv2" /* Define to the full name and version of this package. */ -#define EXV_PACKAGE_STRING "Exiv2 0.6.2" +#define EXV_PACKAGE_STRING "Exiv2 0.7" /* Define to the one symbol short name of this package. */ #define EXV_PACKAGE_TARNAME "exiv2" /* Define to the version of this package. */ -#define EXV_PACKAGE_VERSION "0.6.2" +#define EXV_PACKAGE_VERSION "0.7" /* Define to `int' if does not define pid_t. */ #define pid_t int diff --git a/test/data/exiv2-test.out b/test/data/exiv2-test.out index 64676e19..c83f63d4 100644 --- a/test/data/exiv2-test.out +++ b/test/data/exiv2-test.out @@ -3,7 +3,7 @@ tmp/ Exiv2 version ------------------------------------------------------------ ../../src/exiv2 -Exiv2 0.6.2, Copyright (C) 2004, 2005 Andreas Huggel. +Exiv2 0.7, Copyright (C) 2004, 2005 Andreas Huggel. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.