2002-12-02 Lutz Müller <lutz@users.sourceforge.net>
authorLutz Mueller <lutz.s.mueller@gmail.com>
Mon, 2 Dec 2002 22:17:25 +0000 (23:17 +0100)
committerLutz Mueller <lutz.s.mueller@gmail.com>
Mon, 2 Dec 2002 22:17:25 +0000 (23:17 +0100)
* libexif/exif-note.[c,h]: Removed. Now in libmnote.

34 files changed:
ChangeLog
Makefile.am
README
libexif/Makefile.am
libexif/canon/.gitignore [deleted file]
libexif/canon/Makefile.am [deleted file]
libexif/canon/exif-canon-entry.c [deleted file]
libexif/canon/exif-canon-entry.h [deleted file]
libexif/canon/exif-canon-note.c [deleted file]
libexif/canon/exif-canon-note.h [deleted file]
libexif/canon/exif-canon-tag.c [deleted file]
libexif/canon/exif-canon-tag.h [deleted file]
libexif/exif-note.c [deleted file]
libexif/exif-note.h [deleted file]
libexif/fuji/.gitignore [deleted file]
libexif/fuji/Makefile.am [deleted file]
libexif/fuji/exif-fuji-entry.c [deleted file]
libexif/fuji/exif-fuji-entry.h [deleted file]
libexif/fuji/exif-fuji-note.c [deleted file]
libexif/fuji/exif-fuji-note.h [deleted file]
libexif/fuji/exif-fuji-tag.c [deleted file]
libexif/fuji/exif-fuji-tag.h [deleted file]
libexif/hp/.gitignore [deleted file]
libexif/hp/Makefile.am [deleted file]
libexif/hp/exif-hp-note.c [deleted file]
libexif/hp/exif-hp-note.h [deleted file]
libexif/olympus/.gitignore [deleted file]
libexif/olympus/Makefile.am [deleted file]
libexif/olympus/exif-olympus-entry.c [deleted file]
libexif/olympus/exif-olympus-entry.h [deleted file]
libexif/olympus/exif-olympus-note.c [deleted file]
libexif/olympus/exif-olympus-note.h [deleted file]
libexif/olympus/exif-olympus-tag.c [deleted file]
libexif/olympus/exif-olympus-tag.h [deleted file]

index 785c1bd..2d24ece 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2002-12-02  Lutz Müller <lutz@users.sourceforge.net>
+
+       * libexif/exif-note.[c,h]: Removed. Now in libmnote.
+
 2002-09-16  Lutz Müller <lutz@users.sourceforge.net>
 
        * libexif: Some fixes for Windows (Visual C++) by
index 1f4d2bf..184ebd0 100644 (file)
@@ -1,4 +1,4 @@
-SUBDIRS = libexif libjpeg test po
+SUBDIRS = libexif libjpeg test po intl
 
 CONFIG_CLEAN_FILES =
 EXTRA_DIST = @PACKAGE@.spec
diff --git a/README b/README
index 9144fe8..541c718 100644 (file)
--- a/README
+++ b/README
@@ -20,6 +20,12 @@ REQUIREMENTS
 
 libexif is written in plain C and does not require any additional library.
 
+LIMITATIONS
+-----------
+
+If you are looking for a library to read/write MakerNotes, get libmnote. 
+libexif is about tags.
+
 FRONTENDS
 ---------
 
index cd92467..4c6728e 100644 (file)
@@ -1,5 +1,3 @@
-SUBDIRS = canon fuji hp olympus
-
 INCLUDES =                                             \
        -DLIBEXIF_LOCALEDIR=\""$(datadir)/locale"\"     \
        -I$(top_srcdir)/libexif                         \
@@ -17,7 +15,6 @@ libexif_la_SOURCES =          \
        exif-entry.c            \
        exif-format.c           \
        exif-ifd.c              \
-       exif-note.c             \
        exif-tag.c              \
        exif-utils.c            \
        i18n.h
diff --git a/libexif/canon/.gitignore b/libexif/canon/.gitignore
deleted file mode 100644 (file)
index f3b07ab..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-Makefile
-Makefile.in
-.libs
-.deps
-libexif-canon.la
-*.o
-*.lo
diff --git a/libexif/canon/Makefile.am b/libexif/canon/Makefile.am
deleted file mode 100644 (file)
index 21beb19..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-INCLUDES =                                     \
-       -I$(top_srcdir)/libexif                 \
-       -I$(top_srcdir)/intl                    \
-       -I$(top_srcdir)
-
-noinst_LTLIBRARIES = libexif-canon.la
-libexif_canon_la_SOURCES =                     \
-       exif-canon-entry.c exif-canon-entry.h   \
-       exif-canon-note.c exif-canon-note.h     \
-       exif-canon-tag.c exif-canon-tag.h
-libexif_canon_la_LDFLAGS = -avoid-version
diff --git a/libexif/canon/exif-canon-entry.c b/libexif/canon/exif-canon-entry.c
deleted file mode 100644 (file)
index 86574a2..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-/* exif-canon-entry.c
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#include "config.h"
-#include "exif-canon-entry.h"
-
-#include <stdlib.h>
-#include <string.h>
-
-struct _ExifCanonEntryPrivate {
-       unsigned int ref_count;
-};
-
-ExifCanonEntry *
-exif_canon_entry_new (void)
-{
-       ExifCanonEntry *entry;
-
-       entry = malloc (sizeof (ExifCanonEntry));
-       if (!entry)
-               return (NULL);
-       memset (entry, 0, sizeof (ExifCanonEntry));
-
-       entry->priv = malloc (sizeof (ExifCanonEntry));
-       if (!entry->priv) {
-               exif_canon_entry_free (entry);
-               return (NULL);
-       }
-       memset (entry->priv, 0, sizeof (ExifCanonEntryPrivate));
-
-       entry->priv->ref_count = 1;
-
-       return (entry);
-}
-
-void
-exif_canon_entry_ref (ExifCanonEntry *entry)
-{
-       if (!entry || !entry->priv)
-               return;
-
-       entry->priv->ref_count++;
-}
-
-void
-exif_canon_entry_unref (ExifCanonEntry *entry)
-{
-       if (!entry || !entry->priv)
-               return;
-
-       entry->priv->ref_count--;
-       if (!entry->priv->ref_count)
-               exif_canon_entry_free (entry);
-}
-
-void
-exif_canon_entry_free (ExifCanonEntry *entry)
-{
-       if (!entry)
-               return;
-
-       if (entry->priv) {
-               free (entry->priv);
-               entry->priv = NULL;
-       }
-
-       if (entry->data) {
-               free (entry->data);
-               entry->data = NULL;
-       }
-
-       free (entry);
-}
diff --git a/libexif/canon/exif-canon-entry.h b/libexif/canon/exif-canon-entry.h
deleted file mode 100644 (file)
index 004ce1e..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/* exif-canon-entry.h
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __EXIF_CANON_ENTRY_H__
-#define __EXIF_CANON_ENTRY_H__
-
-#include <libexif/exif-format.h>
-#include <libexif/canon/exif-canon-tag.h>
-
-typedef struct _ExifCanonEntry        ExifCanonEntry;
-typedef struct _ExifCanonEntryPrivate ExifCanonEntryPrivate;
-
-#include <libexif/canon/exif-canon-note.h>
-
-struct _ExifCanonEntry {
-       ExifCanonTag tag;
-       ExifFormat format;
-       unsigned long components;
-
-       unsigned char *data;
-       unsigned int size;
-
-       /* Note containing this entry */
-       ExifCanonNote *parent;
-
-       ExifCanonEntryPrivate *priv;
-};
-
-/* Lifecycle */
-ExifCanonEntry *exif_canon_entry_new   (void);
-void            exif_canon_entry_ref   (ExifCanonEntry *entry);
-void            exif_canon_entry_unref (ExifCanonEntry *entry);
-void            exif_canon_entry_free  (ExifCanonEntry *entry);
-
-#endif /* __EXIF_CANON_ENTRY_H__ */
diff --git a/libexif/canon/exif-canon-note.c b/libexif/canon/exif-canon-note.c
deleted file mode 100644 (file)
index 4286207..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-/* exif-canon-note.c
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#include "config.h"
-#include "exif-canon-note.h"
-
-#include <stdlib.h>
-#include <string.h>
-
-static void
-exif_canon_note_free (ExifNote *n)
-{
-       ExifCanonNote *note = (ExifCanonNote *) n;
-
-       note = NULL;
-}
-
-static char **
-exif_canon_note_get_value (ExifNote *n)
-{
-       ExifCanonNote *note = (ExifCanonNote *) n;
-
-       note = NULL;
-
-       return (NULL);
-}
-
-static void
-exif_canon_note_save_data (ExifNote *n, unsigned char **data,
-                          unsigned int *size)
-{
-       ExifCanonNote *note = (ExifCanonNote *) n;
-
-       note = NULL;
-}
-
-static void
-exif_canon_note_load_data (ExifNote *n, const unsigned char *data,
-                          unsigned int size)
-{
-       ExifCanonNote *note = (ExifCanonNote *) n;
-
-       note = NULL;
-}
-
-ExifNote *
-exif_canon_note_new (void)
-{
-       ExifCanonNote *note;
-
-       note = malloc (sizeof (ExifCanonNote));
-       if (!note)
-               return (NULL);
-       exif_note_construct ((ExifNote *) note);
-       ((ExifNote *) note)->methods.free = exif_canon_note_free;
-       ((ExifNote *) note)->methods.load_data = exif_canon_note_load_data;
-       ((ExifNote *) note)->methods.save_data = exif_canon_note_save_data;
-       ((ExifNote *) note)->methods.get_value = exif_canon_note_get_value;
-
-       return ((ExifNote *) note);
-}
diff --git a/libexif/canon/exif-canon-note.h b/libexif/canon/exif-canon-note.h
deleted file mode 100644 (file)
index 63b52b0..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/* exif-canon-note.h
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __EXIF_CANON_NOTE_H__
-#define __EXIF_CANON_NOTE_H__
-
-#include <libexif/exif-note.h>
-
-typedef struct _ExifCanonNote ExifCanonNote;
-
-#include <libexif/canon/exif-canon-entry.h>
-
-struct _ExifCanonNote {
-       ExifNote parent;
-
-       ExifCanonEntry **entries;
-       unsigned int count;
-};
-
-ExifNote *exif_canon_note_new (void);
-
-#endif /* __EXIF_CANON_NOTE_H__ */
diff --git a/libexif/canon/exif-canon-tag.c b/libexif/canon/exif-canon-tag.c
deleted file mode 100644 (file)
index fc3f158..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/* exif-canon-tag.c
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#include "config.h"
-#include "exif-canon-tag.h"
-#include "i18n.h"
-
-#include <stdlib.h>
-
-static struct {
-       ExifCanonTag tag;
-       const char *name;
-} table[] = {
-       {EXIF_CANON_TAG_SETTINGS_1, N_("Settings (first part)")},
-       {EXIF_CANON_TAG_SETTINGS_2, N_("Settings (second part)")},
-       {EXIF_CANON_TAG_IMAGE_TYPE, N_("Image type")},
-       {EXIF_CANON_TAG_FIRMWARE, N_("Firmware version")},
-       {EXIF_CANON_TAG_IMAGE_NUMBER, N_("Image number")},
-       {EXIF_CANON_TAG_OWNER, N_("Owner name")},
-       {EXIF_CANON_TAG_SERIAL_NUMBER, N_("Serial number")},
-       {EXIF_CANON_TAG_CUSTOM_FUNCS, N_("Custom functions")},
-       {0, NULL}
-};
-
-const char *
-exif_canon_tag_get_name (ExifCanonTag tag)
-{
-       unsigned int i;
-
-       for (i = 0; table[i].name; i++)
-               if (table[i].tag == tag)
-                       break;
-
-       return (_(table[i].name));
-}
diff --git a/libexif/canon/exif-canon-tag.h b/libexif/canon/exif-canon-tag.h
deleted file mode 100644 (file)
index 43d3a03..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/* exif-canon-tag.h
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __EXIF_CANON_TAG_H__
-#define __EXIF_CANON_TAG_H__
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-enum _ExifCanonTag {
-       EXIF_CANON_TAG_UNKNOWN_0        = 0x0,
-       EXIF_CANON_TAG_SETTINGS_1       = 0x1,
-       EXIF_CANON_TAG_UNKNOWN_3        = 0x3,
-       EXIF_CANON_TAG_SETTINGS_2       = 0x4,
-       EXIF_CANON_TAG_IMAGE_TYPE       = 0x6,
-       EXIF_CANON_TAG_FIRMWARE         = 0x7,
-       EXIF_CANON_TAG_IMAGE_NUMBER     = 0x8,
-       EXIF_CANON_TAG_OWNER            = 0x9,
-       EXIF_CANON_TAG_UNKNOWN_10       = 0xa,
-       EXIF_CANON_TAG_SERIAL_NUMBER    = 0xc,
-       EXIF_CANON_TAG_UNKNOWN_13       = 0xd,
-       EXIF_CANON_TAG_CUSTOM_FUNCS     = 0xf
-};
-typedef enum _ExifCanonTag ExifCanonTag;
-
-const char *exif_canon_tag_get_name (ExifCanonTag tag);
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __EXIF_CANON_TAG_H__ */
diff --git a/libexif/exif-note.c b/libexif/exif-note.c
deleted file mode 100644 (file)
index 2257258..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-/* exif-note.c
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#include "config.h"
-#include "exif-note.h"
-#include "canon/exif-canon-note.h"
-#include "fuji/exif-fuji-note.h"
-#include "olympus/exif-olympus-note.h"
-
-#include <stdlib.h>
-#include <string.h>
-
-struct _ExifNotePrivate {
-       ExifByteOrder order;
-
-       unsigned int ref_count;
-};
-
-void
-exif_note_construct (ExifNote *note)
-{
-       if (!note)
-               return;
-
-       note->priv = malloc (sizeof (ExifNotePrivate));
-       if (!note->priv)
-               return;
-       memset (note->priv, 0, sizeof (ExifNotePrivate));
-
-       note->priv->ref_count = 1;
-}
-
-void
-exif_note_ref (ExifNote *note)
-{
-       if (!note || !note->priv)
-               return;
-
-       note->priv->ref_count++;
-}
-
-void
-exif_note_unref (ExifNote *note)
-{
-       if (!note || !note->priv)
-               return;
-
-       note->priv->ref_count--;
-       if (!note->priv->ref_count)
-               exif_note_free (note);
-}
-
-void
-exif_note_free (ExifNote *note)
-{
-       if (!note)
-               return;
-
-       if (!note->priv) {
-               free (note->priv);
-               note->priv = NULL;
-       }
-
-       free (note);
-}
-
-static void
-exif_note_load_data (ExifNote *note,
-                    const unsigned char *data, unsigned int size)
-{
-       if (!note)
-               return;
-
-       if (note->methods.load_data)
-               note->methods.load_data (note, data, size);
-}
-
-ExifNote *
-exif_note_new_from_data (const unsigned char *data, unsigned int size)
-{
-       ExifNote *note = NULL;
-
-       if (!size || !data)
-               return (NULL);
-
-       /* Canon notes begin with 0x0000 */
-       if ((size > 1) && (data[0] == 0x00) && (data[1] == 0x00))
-               note = exif_canon_note_new ();
-
-       /* Olympus notes begin with "OLYMP" */
-       else if ((size >= 5) && !memcmp (data, "OLYMP", 5)) {
-               note = exif_olympus_note_new ();
-
-       } else {
-               note = NULL;
-       }
-
-       if (note)
-               exif_note_load_data (note, data, size);
-
-       return (note);
-}
-
-char **
-exif_note_get_value (ExifNote *note)
-{
-       if (!note || !note->methods.get_value)
-               return (NULL);
-
-       return (note->methods.get_value (note));
-}
-
-void
-exif_note_set_byte_order (ExifNote *note, ExifByteOrder order)
-{
-       if (!note || !note->priv)
-               return;
-       
-       note->priv->order = order;
-       
-       if (!note->methods.set_order)
-               return;
-
-       note->methods.set_order (note, order);
-}
-
-ExifByteOrder
-exif_note_get_byte_order (ExifNote *note)
-{
-       if (!note || !note->priv)
-               return (0);
-
-       return (note->priv->order);
-}
diff --git a/libexif/exif-note.h b/libexif/exif-note.h
deleted file mode 100644 (file)
index 8439eea..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-/* exif-note.h
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __EXIF_NOTE_H__
-#define __EXIF_NOTE_H__
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-#include <libexif/exif-byte-order.h>
-
-typedef struct _ExifNote        ExifNote;
-typedef struct _ExifNotePrivate ExifNotePrivate;
-
-typedef struct _ExifNoteMethods ExifNoteMethods;
-struct _ExifNoteMethods {
-       void    (* free)      (ExifNote *);
-
-       void    (* load_data) (ExifNote *, const unsigned char *, unsigned int);
-       void    (* save_data) (ExifNote *, unsigned char **, unsigned int *);
-
-       void          (* set_order) (ExifNote *, ExifByteOrder);
-       ExifByteOrder (* get_order) (ExifNote *);
-
-       char ** (*get_value)  (ExifNote *);
-};
-
-struct _ExifNote {
-       ExifNoteMethods methods;
-       ExifNotePrivate *priv;
-};
-
-void exif_note_construct (ExifNote *note);
-
-void exif_note_ref   (ExifNote *note);
-void exif_note_unref (ExifNote *note);
-void exif_note_free  (ExifNote *note);
-
-ExifNote *exif_note_new_from_data (const unsigned char *data,
-                                  unsigned int size);
-
-char **exif_note_get_value (ExifNote *note);
-
-void          exif_note_set_byte_order (ExifNote *note, ExifByteOrder order);
-ExifByteOrder exif_note_get_byte_order (ExifNote *note);
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __EXIF_NOTE_H__ */
diff --git a/libexif/fuji/.gitignore b/libexif/fuji/.gitignore
deleted file mode 100644 (file)
index 12e4eee..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-Makefile
-Makefile.in
-.libs
-.deps
-libexif-fuji.la
-*.o
-*.lo
diff --git a/libexif/fuji/Makefile.am b/libexif/fuji/Makefile.am
deleted file mode 100644 (file)
index c64573e..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-INCLUDES =                                     \
-       -I$(top_srcdir)/libexif                 \
-       -I$(top_srcdir)/intl                    \
-       -I$(top_srcdir)
-
-noinst_LTLIBRARIES = libexif-fuji.la
-libexif_fuji_la_SOURCES =                      \
-       exif-fuji-entry.c exif-fuji-entry.h     \
-       exif-fuji-note.c exif-fuji-note.h       \
-       exif-fuji-tag.c exif-fuji-tag.h
-libexif_fuji_la_LDFLAGS = -avoid-version
diff --git a/libexif/fuji/exif-fuji-entry.c b/libexif/fuji/exif-fuji-entry.c
deleted file mode 100644 (file)
index bcfbe1b..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-/* exif-fuji-entry.c
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#include "config.h"
-#include "exif-fuji-entry.h"
-
-#include <stdlib.h>
-#include <string.h>
-
-struct _ExifFujiEntryPrivate {
-       unsigned int ref_count;
-};
-
-ExifFujiEntry *
-exif_fuji_entry_new (void)
-{
-       ExifFujiEntry *entry;
-
-       entry = malloc (sizeof (ExifFujiEntry));
-       if (!entry)
-               return (NULL);
-       memset (entry, 0, sizeof (ExifFujiEntry));
-
-       entry->priv = malloc (sizeof (ExifFujiEntry));
-       if (!entry->priv) {
-               exif_fuji_entry_free (entry);
-               return (NULL);
-       }
-       memset (entry->priv, 0, sizeof (ExifFujiEntryPrivate));
-
-       entry->priv->ref_count = 1;
-
-       return (entry);
-}
-
-void
-exif_fuji_entry_ref (ExifFujiEntry *entry)
-{
-       if (!entry || !entry->priv)
-               return;
-
-       entry->priv->ref_count++;
-}
-
-void
-exif_fuji_entry_unref (ExifFujiEntry *entry)
-{
-       if (!entry || !entry->priv)
-               return;
-
-       entry->priv->ref_count--;
-       if (!entry->priv->ref_count)
-               exif_fuji_entry_free (entry);
-}
-
-void
-exif_fuji_entry_free (ExifFujiEntry *entry)
-{
-       if (!entry)
-               return;
-
-       if (entry->priv) {
-               free (entry->priv);
-               entry->priv = NULL;
-       }
-
-       if (entry->data) {
-               free (entry->data);
-               entry->data = NULL;
-       }
-
-       free (entry);
-}
diff --git a/libexif/fuji/exif-fuji-entry.h b/libexif/fuji/exif-fuji-entry.h
deleted file mode 100644 (file)
index 3453078..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/* exif-fuji-entry.h
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __EXIF_FUJI_ENTRY_H__
-#define __EXIF_FUJI_ENTRY_H__
-
-#include <libexif/exif-format.h>
-#include <libexif/fuji/exif-fuji-tag.h>
-
-typedef struct _ExifFujiEntry        ExifFujiEntry;
-typedef struct _ExifFujiEntryPrivate ExifFujiEntryPrivate;
-
-#include <libexif/fuji/exif-fuji-note.h>
-
-struct _ExifFujiEntry {
-       ExifFujiTag tag;
-       ExifFormat format;
-       unsigned long components;
-
-       unsigned char *data;
-       unsigned int size;
-
-       /* Note containing this entry */
-       ExifFujiNote *parent;
-
-       ExifFujiEntryPrivate *priv;
-};
-
-/* Lifecycle */
-ExifFujiEntry *exif_fuji_entry_new   (void);
-void            exif_fuji_entry_ref   (ExifFujiEntry *entry);
-void            exif_fuji_entry_unref (ExifFujiEntry *entry);
-void            exif_fuji_entry_free  (ExifFujiEntry *entry);
-
-#endif /* __EXIF_FUJI_ENTRY_H__ */
diff --git a/libexif/fuji/exif-fuji-note.c b/libexif/fuji/exif-fuji-note.c
deleted file mode 100644 (file)
index 109416c..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-/* exif-fuji-note.c
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#include "config.h"
-#include "exif-byte-order.h"
-#include "exif-fuji-note.h"
-#include "exif-utils.h"
-
-#include <stdlib.h>
-#include <string.h>
-
-struct _ExifFujiNotePrivate {
-       ExifByteOrder order;
-};
-
-static void
-exif_fuji_note_free (ExifNote *n)
-{
-       ExifFujiNote *note = (ExifFujiNote *) n;
-       unsigned int i;
-
-       if (note->entries) {
-               for (i = 0; i < note->count; i++)
-                       exif_fuji_entry_unref (note->entries[i]);
-               free (note->entries);
-               note->entries = NULL;
-               note->count = 0;
-       }
-}
-
-static char **
-exif_fuji_note_get_value (ExifNote *n)
-{
-       ExifFujiNote *note = (ExifFujiNote *) n;
-
-       note = NULL;
-
-       return (NULL);
-}
-
-static void
-exif_fuji_note_save_data (ExifNote *n, unsigned char **data,
-                          unsigned int *size)
-{
-       ExifFujiNote *note = (ExifFujiNote *) n;
-       ExifByteOrder order = exif_note_get_byte_order (n);
-
-       /*
-        * Header: "FUJIFILM" and 4 bytes offset to the first entry.
-        * As the first entry will start right thereafter, the offset is
-        * 0x000c.
-        */
-       *data = malloc (12);
-       if (!*data)
-               return;
-       *size = 12;
-       memcpy (*data, "FUJIFILM", 8);
-       exif_set_long (*data + 8, order, 0x000c);
-
-       note = NULL;
-}
-
-static void
-exif_fuji_note_load_data (ExifNote *n, const unsigned char *data,
-                          unsigned int size)
-{
-       ExifFujiNote *note = (ExifFujiNote *) n;
-
-       note = NULL;
-}
-
-ExifNote *
-exif_fuji_note_new (void)
-{
-       ExifFujiNote *note;
-
-       note = malloc (sizeof (ExifFujiNote));
-       if (!note)
-               return (NULL);
-       exif_note_construct ((ExifNote *) note);
-       ((ExifNote *) note)->methods.free = exif_fuji_note_free;
-       ((ExifNote *) note)->methods.load_data = exif_fuji_note_load_data;
-       ((ExifNote *) note)->methods.save_data = exif_fuji_note_save_data;
-       ((ExifNote *) note)->methods.get_value = exif_fuji_note_get_value;
-
-       return ((ExifNote *) note);
-}
diff --git a/libexif/fuji/exif-fuji-note.h b/libexif/fuji/exif-fuji-note.h
deleted file mode 100644 (file)
index b43a133..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/* exif-fuji-note.h
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __EXIF_FUJI_NOTE_H__
-#define __EXIF_FUJI_NOTE_H__
-
-#include <libexif/exif-note.h>
-
-typedef struct _ExifFujiNote        ExifFujiNote;
-
-#include <libexif/fuji/exif-fuji-entry.h>
-
-struct _ExifFujiNote {
-       ExifNote parent;
-
-       ExifFujiEntry **entries;
-       unsigned int count;
-};
-
-ExifNote *exif_fuji_note_new (void);
-
-#endif /* __EXIF_FUJI_NOTE_H__ */
diff --git a/libexif/fuji/exif-fuji-tag.c b/libexif/fuji/exif-fuji-tag.c
deleted file mode 100644 (file)
index f9afad4..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/* exif-fuji-tag.c
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#include "config.h"
-#include "exif-fuji-tag.h"
-#include "i18n.h"
-
-#include <stdlib.h>
-
-static struct {
-       ExifFujiTag tag;
-       const char *name;
-} table[] = {
-       {EXIF_FUJI_TAG_VERSION, N_("Version")},
-       {EXIF_FUJI_TAG_QUALITY, N_("Quality")},
-       {EXIF_FUJI_TAG_SHARPNESS, N_("Sharpness")},
-       {EXIF_FUJI_TAG_WHITE_BALANCE, N_("White balance")},
-       {EXIF_FUJI_TAG_COLOR, N_("Chromaticity saturation")},
-       {EXIF_FUJI_TAG_TONE, N_("Contrast")},
-       {EXIF_FUJI_TAG_FLASH_MODE, N_("Flash mode")},
-       {EXIF_FUJI_TAG_FLASH_STRENGTH,
-        N_("Flash firing strength compensation")},
-       {EXIF_FUJI_TAG_MACRO, N_("Macro mode")},
-       {EXIF_FUJI_TAG_FOCUS_MODE, N_("Focusing mode")},
-       {EXIF_FUJI_TAG_SLOW_SYNC, N_("Slow synchro mode")},
-       {EXIF_FUJI_TAG_PICTURE_MODE, N_("Picture mode")},
-       {EXIF_FUJI_TAG_UNKNOWN_1, N_("Unknown 1")},
-       {EXIF_FUJI_TAG_CONT_TAKING, N_("Continuous taking")},
-       {EXIF_FUJI_TAG_UNKNOWN_2, N_("Unknown 2")},
-       {EXIF_FUJI_TAG_BLUR_WARNING, N_("Blur warning")},
-       {EXIF_FUJI_TAG_FOCUS_WARNING, N_("Auto focus warning")},
-       {EXIF_FUJI_TAG_AUTO_EXPOSURE_WARNING, N_("Auto exposure warning")},
-       {0, NULL}
-};
-
-const char *
-exif_fuji_tag_get_name (ExifFujiTag tag)
-{
-       unsigned int i;
-
-       for (i = 0; table[i].name; i++)
-               if (table[i].tag == tag)
-                       break;
-
-       return (_(table[i].name));
-}
diff --git a/libexif/fuji/exif-fuji-tag.h b/libexif/fuji/exif-fuji-tag.h
deleted file mode 100644 (file)
index 09a7db5..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-/* exif-fuji-tag.h
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __EXIF_FUJI_TAG_H__
-#define __EXIF_FUJI_TAG_H__
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-enum _ExifFujiTag {
-       EXIF_FUJI_TAG_VERSION                   = 0x0000,
-       EXIF_FUJI_TAG_QUALITY                   = 0x1000,
-       EXIF_FUJI_TAG_SHARPNESS                 = 0x1001,
-       EXIF_FUJI_TAG_WHITE_BALANCE             = 0x1002,
-       EXIF_FUJI_TAG_COLOR                     = 0x1003,
-       EXIF_FUJI_TAG_TONE                      = 0x1004,
-       EXIF_FUJI_TAG_FLASH_MODE                = 0x1010,
-       EXIF_FUJI_TAG_FLASH_STRENGTH            = 0x1011,
-       EXIF_FUJI_TAG_MACRO                     = 0x1020,
-       EXIF_FUJI_TAG_FOCUS_MODE                = 0x1021,
-       EXIF_FUJI_TAG_SLOW_SYNC                 = 0x1030,
-       EXIF_FUJI_TAG_PICTURE_MODE              = 0x1031,
-       EXIF_FUJI_TAG_UNKNOWN_1                 = 0x1032,
-       EXIF_FUJI_TAG_CONT_TAKING               = 0x1100,
-       EXIF_FUJI_TAG_UNKNOWN_2                 = 0x1200,
-       EXIF_FUJI_TAG_BLUR_WARNING              = 0x1300,
-       EXIF_FUJI_TAG_FOCUS_WARNING             = 0x1301,
-       EXIF_FUJI_TAG_AUTO_EXPOSURE_WARNING     = 0x1302
-};
-typedef enum _ExifFujiTag ExifFujiTag;
-
-const char *exif_fuji_tag_get_name (ExifFujiTag tag);
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __EXIF_FUJI_TAG_H__ */
diff --git a/libexif/hp/.gitignore b/libexif/hp/.gitignore
deleted file mode 100644 (file)
index 086cfc7..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-Makefile
-Makefile.in
-.libs
-.deps
-libexif-hp.la
-*.o
-*.lo
diff --git a/libexif/hp/Makefile.am b/libexif/hp/Makefile.am
deleted file mode 100644 (file)
index 9cc5127..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-INCLUDES =                     \
-       -I$(top_srcdir)/libexif \
-       -I$(top_srcdir)/intl    \
-       -I$(top_srcdir)
-
-noinst_LTLIBRARIES = libexif-hp.la
-libexif_hp_la_SOURCES =                        \
-       exif-hp-note.c exif-hp-note.h
-libexif_hp_la_LDFLAGS = -avoid-version
diff --git a/libexif/hp/exif-hp-note.c b/libexif/hp/exif-hp-note.c
deleted file mode 100644 (file)
index d2169ff..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-/* exif-hp-note.c
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#include "config.h"
-#include "exif-hp-note.h"
-
-#include <stdlib.h>
-#include <string.h>
-
-static void
-exif_hp_note_free (ExifNote *n)
-{
-       ExifHPNote *note = (ExifHPNote *) n;
-
-       note = NULL;
-}
-
-static char **
-exif_hp_note_get_value (ExifNote *n)
-{
-       ExifHPNote *note = (ExifHPNote *) n;
-
-       note = NULL;
-
-       return (NULL);
-}
-
-static void
-exif_hp_note_save_data (ExifNote *n, unsigned char **data,
-                          unsigned int *size)
-{
-       ExifHPNote *note = (ExifHPNote *) n;
-
-       note = NULL;
-}
-
-static void
-exif_hp_note_load_data (ExifNote *n, const unsigned char *data,
-                          unsigned int size)
-{
-       ExifHPNote *note = (ExifHPNote *) n;
-
-       /* Notes start with 'HP'... */
-       if ((size < 2) || memcmp (data, "HP", 2))
-               return;
-
-       /* ... and finish with 0xff 0xff. */
-       if ((size < 4) || (data[size - 2] != 0xff) ||
-                         (data[size - 1] != 0xff))
-               return;
-
-       note = NULL;
-}
-
-ExifNote *
-exif_hp_note_new (void)
-{
-       ExifHPNote *note;
-
-       note = malloc (sizeof (ExifHPNote));
-       if (!note)
-               return (NULL);
-       exif_note_construct ((ExifNote *) note);
-       ((ExifNote *) note)->methods.free = exif_hp_note_free;
-       ((ExifNote *) note)->methods.load_data = exif_hp_note_load_data;
-       ((ExifNote *) note)->methods.save_data = exif_hp_note_save_data;
-       ((ExifNote *) note)->methods.get_value = exif_hp_note_get_value;
-
-       return ((ExifNote *) note);
-}
diff --git a/libexif/hp/exif-hp-note.h b/libexif/hp/exif-hp-note.h
deleted file mode 100644 (file)
index fca5669..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/* exif-hp-note.h
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __EXIF_HP_NOTE_H__
-#define __EXIF_HP_NOTE_H__
-
-#include <libexif/exif-note.h>
-
-typedef struct _ExifHPNote ExifHPNote;
-
-struct _ExifHPNote {
-       ExifNote parent;
-};
-
-ExifNote *exif_hp_note_new (void);
-
-#endif /* __EXIF_HP_NOTE_H__ */
diff --git a/libexif/olympus/.gitignore b/libexif/olympus/.gitignore
deleted file mode 100644 (file)
index 9d79fd2..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-Makefile
-Makefile.in
-.libs
-.deps
-libexif-olympus.la
-*.o
-*.lo
diff --git a/libexif/olympus/Makefile.am b/libexif/olympus/Makefile.am
deleted file mode 100644 (file)
index f35b3b1..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-INCLUDES =                                     \
-       -I$(top_srcdir)/libexif                 \
-       -I$(top_srcdir)/intl                    \
-       -I$(top_srcdir)
-
-noinst_LTLIBRARIES = libexif-olympus.la
-libexif_olympus_la_SOURCES =                   \
-       exif-olympus-entry.c exif-olympus-entry.h       \
-       exif-olympus-note.c exif-olympus-note.h \
-       exif-olympus-tag.c exif-olympus-tag.h
-libexif_olympus_la_LDFLAGS = -avoid-version
diff --git a/libexif/olympus/exif-olympus-entry.c b/libexif/olympus/exif-olympus-entry.c
deleted file mode 100644 (file)
index 0e0ed84..0000000
+++ /dev/null
@@ -1,271 +0,0 @@
-/* exif-olympus-entry.c
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#include "config.h"
-#include "exif-format.h"
-#include "exif-olympus-entry.h"
-#include "exif-utils.h"
-#include "i18n.h"
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-struct _ExifOlympusEntryPrivate {
-       unsigned int ref_count;
-};
-
-ExifOlympusEntry *
-exif_olympus_entry_new (void)
-{
-       ExifOlympusEntry *entry;
-
-       entry = malloc (sizeof (ExifOlympusEntry));
-       if (!entry)
-               return (NULL);
-       memset (entry, 0, sizeof (ExifOlympusEntry));
-
-       entry->priv = malloc (sizeof (ExifOlympusEntry));
-       if (!entry->priv) {
-               exif_olympus_entry_free (entry);
-               return (NULL);
-       }
-       memset (entry->priv, 0, sizeof (ExifOlympusEntryPrivate));
-
-       entry->priv->ref_count = 1;
-
-       return (entry);
-}
-
-void
-exif_olympus_entry_ref (ExifOlympusEntry *entry)
-{
-       if (!entry || !entry->priv)
-               return;
-
-       entry->priv->ref_count++;
-}
-
-void
-exif_olympus_entry_unref (ExifOlympusEntry *entry)
-{
-       if (!entry || !entry->priv)
-               return;
-
-       entry->priv->ref_count--;
-       if (!entry->priv->ref_count)
-               exif_olympus_entry_free (entry);
-}
-
-void
-exif_olympus_entry_free (ExifOlympusEntry *entry)
-{
-       if (!entry)
-               return;
-
-       if (entry->priv) {
-               free (entry->priv);
-               entry->priv = NULL;
-       }
-
-       if (entry->data) {
-               free (entry->data);
-               entry->data = NULL;
-       }
-
-       free (entry);
-}
-
-#define CF(format,target,v)                                     \
-{                                                               \
-        if (format != target) {                                 \
-                snprintf (v, sizeof (v),                        \
-                        _("Invalid format '%s', "               \
-                        "expected '%s'."),                      \
-                        exif_format_get_name (format),          \
-                        exif_format_get_name (target));         \
-                break;                                          \
-        }                                                       \
-}
-
-#define CC(number,target,v)                                             \
-{                                                                       \
-        if (number != target) {                                         \
-                snprintf (v, sizeof (v),                                \
-                        _("Invalid number of components (%i, "          \
-                        "expected %i)."), (int) number, (int) target);  \
-                break;                                                  \
-        }                                                               \
-}
-
-#define EXIF_FORMAT_SSHORT 8
-
-char *
-exif_olympus_entry_get_value (ExifOlympusEntry *entry)
-{
-       char v[1024], buf[1024];
-       ExifByteOrder order;
-       ExifLong vl;
-       ExifShort vs;
-
-       if (!entry)
-               return (NULL);
-       if (!entry->parent)
-               return (NULL);
-
-       memset (v, 0, sizeof (v));
-       order = exif_note_get_byte_order ((ExifNote *) &entry->parent->parent);
-       switch (entry->tag) {
-       case EXIF_OLYMPUS_TAG_MODE:
-               CF (entry->format, EXIF_FORMAT_LONG, v);
-               CC (entry->components, 3, v);
-               strncpy (v, _("Speed/Sequence/Panorama direction: "),
-                        sizeof (v));
-               vl = exif_get_long (entry->data, order);
-               switch (vl) {
-               case 0:
-                       strncat (v, _("normal"), sizeof (v));
-                       break;
-               case 1:
-                       strncat (v, _("unknown"), sizeof (v));
-                       break;
-               case 2:
-                       strncat (v, _("fast"), sizeof (v));
-                       break;
-               case 3:
-                       strncat (v, _("panorama"), sizeof (v));
-                       break;
-               default:
-                       snprintf (buf, sizeof (buf), "%li", vl);
-                       strncat (v, buf, sizeof (v));
-               }
-               strncat (v, "/", sizeof (v));
-               vl = exif_get_long (entry->data + 4, order);
-               snprintf (buf, sizeof (buf), "%li", vl);
-               strncat (v, buf, sizeof (v));
-               strncat (v, "/", sizeof (v));
-               vl = exif_get_long (entry->data + 4, order);
-               switch (vl) {
-               case 1:
-                       strncat (v, _("left to right"), sizeof (v));
-                       break;
-               case 2:
-                       strncat (v, _("right to left"), sizeof (v));
-                       break;
-               case 3:
-                       strncat (v, _("bottom to top"), sizeof (v));
-                       break;
-               case 4:
-                       strncat (v, _("top to bottom"), sizeof (v));
-                       break;
-               default:
-                       snprintf (buf, sizeof (buf), "%li", vl);
-                       strncat (v, buf, sizeof (v));
-               }
-               break;
-       case EXIF_OLYMPUS_TAG_QUALITY:
-               CF (entry->format, EXIF_FORMAT_SHORT, v);
-               CC (entry->components, 1, v);
-               vs = exif_get_short (entry->data, order);
-               strncpy (v, _("Quality: "), sizeof (v));
-               switch (vs) {
-               case 1:
-                       strncat (v, _("SQ"), sizeof (v));
-                       break;
-               case 2:
-                       strncat (v, _("HQ"), sizeof (v));
-                       break;
-               case 3:
-                       strncat (v, _("SHQ"), sizeof (v));
-                       break;
-               default:
-                       snprintf (buf, sizeof (buf), "%i", vs);
-                       strncat (v, buf, sizeof (v));
-               }
-               break;
-       case EXIF_OLYMPUS_TAG_MACRO:
-               CF (entry->format, EXIF_FORMAT_SHORT, v);
-               CC (entry->components, 1, v);
-               vs = exif_get_short (entry->data, order);
-               strncpy (v, _("Macro: "), sizeof (v));
-               switch (vs) {
-               case 0:
-                       strncat (v, _("no"), sizeof (v));
-                       break;
-               case 1:
-                       strncat (v, _("yes"), sizeof (v));
-                       break;
-               default:
-                       snprintf (buf, sizeof (buf), "%i", vs);
-                       strncat (v, buf, sizeof (v));
-               }
-               break;
-       case EXIF_OLYMPUS_TAG_UNKNOWN_1:
-               CF (entry->format, EXIF_FORMAT_SHORT, v);
-               CC (entry->components, 1, v);
-               strncpy (v, _("Unknown tag."), sizeof (v));
-               break;
-       case EXIF_OLYMPUS_TAG_ZOOM:
-               CF (entry->format, EXIF_FORMAT_SHORT, v);
-               CC (entry->components, 1, v);
-               vs = exif_get_short (entry->data, order);
-               strncpy (v, _("Zoom: "), sizeof (v));
-               switch (vs) {
-               case 0:
-                       strncat (v, _("1x"), sizeof (v));
-                       break;
-               case 2:
-                       strncat (v, _("2x"), sizeof (v));
-                       break;
-               default:
-                       snprintf (buf, sizeof (buf), "%i", vs);
-                       strncat (v, buf, sizeof (v));
-               }
-               break;
-       case EXIF_OLYMPUS_TAG_UNKNOWN_2:
-               CF (entry->format, EXIF_FORMAT_RATIONAL, v);
-               CC (entry->components, 1, v);
-               break;
-       case EXIF_OLYMPUS_TAG_UNKNOWN_3:
-               CF (entry->format, EXIF_FORMAT_SSHORT, v);
-               CC (entry->components, 1, v);
-               break;
-       case EXIF_OLYMPUS_TAG_VERSION:
-               CF (entry->format, EXIF_FORMAT_ASCII, v);
-               CC (entry->components, 5, v);
-               break;
-       case EXIF_OLYMPUS_TAG_INFO:
-               CF (entry->format, EXIF_FORMAT_ASCII, v);
-               CC (entry->components, 52, v);
-               break;
-       case EXIF_OLYMPUS_TAG_ID:
-               CF (entry->format, EXIF_FORMAT_UNDEFINED, v);
-               CC (entry->components, 32, v);
-               break;
-       case EXIF_OLYMPUS_TAG_UNKNOWN_4:
-               CF (entry->format, EXIF_FORMAT_LONG, v);
-               CC (entry->components, 30, v);
-               break;
-       default:
-               break;
-       }
-
-       return (strdup (v));
-}
diff --git a/libexif/olympus/exif-olympus-entry.h b/libexif/olympus/exif-olympus-entry.h
deleted file mode 100644 (file)
index 39673af..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-/* exif-olympus-entry.h
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __EXIF_OLYMPUS_ENTRY_H__
-#define __EXIF_OLYMPUS_ENTRY_H__
-
-#include <libexif/exif-format.h>
-#include <libexif/olympus/exif-olympus-tag.h>
-
-typedef struct _ExifOlympusEntry        ExifOlympusEntry;
-typedef struct _ExifOlympusEntryPrivate ExifOlympusEntryPrivate;
-
-#include <libexif/olympus/exif-olympus-note.h>
-
-struct _ExifOlympusEntry {
-       ExifOlympusTag tag;
-       ExifFormat format;
-       unsigned long components;
-
-       unsigned char *data;
-       unsigned int size;
-
-       /* Note containing this entry */
-       ExifOlympusNote *parent;
-
-       ExifOlympusEntryPrivate *priv;
-};
-
-/* Lifecycle */
-ExifOlympusEntry *exif_olympus_entry_new   (void);
-void              exif_olympus_entry_ref   (ExifOlympusEntry *entry);
-void              exif_olympus_entry_unref (ExifOlympusEntry *entry);
-void              exif_olympus_entry_free  (ExifOlympusEntry *entry);
-
-char *exif_olympus_entry_get_value (ExifOlympusEntry *entry);
-
-#endif /* __EXIF_OLYMPUS_ENTRY_H__ */
diff --git a/libexif/olympus/exif-olympus-note.c b/libexif/olympus/exif-olympus-note.c
deleted file mode 100644 (file)
index 427a69e..0000000
+++ /dev/null
@@ -1,187 +0,0 @@
-/* exif-olympus-note.c
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#include "config.h"
-#include "exif-byte-order.h"
-#include "exif-olympus-note.h"
-#include "exif-utils.h"
-
-#include <stdlib.h>
-#include <string.h>
-#include <stdio.h>
-
-#define DEBUG
-
-static void
-exif_olympus_note_free (ExifNote *n)
-{
-       ExifOlympusNote *note = (ExifOlympusNote *) n;
-       unsigned int i;
-
-       if (note->entries) {
-               for (i = 0; i < note->count; i++)
-                       exif_olympus_entry_unref (note->entries[i]);
-               free (note->entries);
-               note->entries = NULL;
-               note->count = 0;
-       }
-}
-
-static void
-exif_olympus_note_add_entry (ExifOlympusNote *note, ExifOlympusEntry *entry)
-{
-       if (!note || !entry)
-               return;
-
-       entry->parent = note;
-       note->entries = realloc (note->entries,
-                               sizeof (ExifOlympusEntry) * (note->count + 1));
-       note->entries[note->count] = entry;
-       exif_olympus_entry_ref (entry);
-       note->count++;
-}
-
-static char **
-exif_olympus_note_get_value (ExifNote *n)
-{
-       char **value = NULL, *v;
-       unsigned int i, count;
-
-       ExifOlympusNote *note = (ExifOlympusNote *) n;
-
-       for (count = i = 0; i < note->count; i++) {
-               v = exif_olympus_entry_get_value (note->entries[i]);
-               if (v) {
-                       value = realloc (value, sizeof (char *) *
-                               (count ? count + 2 : 2));
-                       if (!value)
-                               return (NULL);
-                       value[count++] = v;
-                       value[count] = NULL;
-               }
-       }
-
-       return (value);
-}
-
-static void
-exif_olympus_note_load_data_entry (ExifOlympusNote *note,
-                                  ExifOlympusEntry *entry,
-                                  const unsigned char *d,
-                                  unsigned int size, unsigned int offset)
-{
-       unsigned int s, doff;
-       ExifByteOrder order = exif_note_get_byte_order ((ExifNote *) note);
-
-       entry->tag        = exif_get_short (d + offset + 0, order);
-       entry->format     = exif_get_short (d + offset + 2, order);
-       entry->components = exif_get_long  (d + offset + 4, order);
-
-        /*
-         * Size? If bigger than 4 bytes, the actual data is not
-         * in the entry but somewhere else (offset).
-         */
-        s = exif_format_get_size (entry->format) * entry->components;
-        if (!s)
-                return;
-        if (s > 4)
-                doff = exif_get_long (d + offset + 8, order);
-        else
-                doff = offset + 8;
-
-        /* Sanity check */
-        if (size < doff + s)
-                return;
-
-        entry->data = malloc (sizeof (char) * s);
-        if (!entry->data)
-                return;
-        entry->size = s;
-        memcpy (entry->data, d + doff, s);
-}
-
-static void
-exif_olympus_note_load_data (ExifNote *en, const unsigned char *data,
-                            unsigned int size)
-{
-       ExifOlympusNote *note = (ExifOlympusNote *) en;
-       ExifOlympusTag tag;
-       ExifOlympusEntry *entry;
-       unsigned int i, n;
-       ExifByteOrder order = exif_note_get_byte_order (en);
-
-       /* Verify the header */
-       if ((size < 5) || memcmp (data, "OLYMP", 5))
-               return;
-       data += 5;
-       size -= 5;
-
-       /* 2 unknown bytes */
-       if ((size < 2) || (data[0] != 0x00) || (data[1] != 0x01))
-               return;
-       data += 2;
-       size -= 2;
-
-       /* Number of entries */
-       if (size < 2)
-               return;
-       n = exif_get_short (data, order);
-#ifdef DEBUG
-       printf ("Reading %i entries...\n", n);
-#endif
-       data += 2;
-       size -= 2;
-
-       /* 2 unknown bytes */
-       if ((size < 2) || (data[0] != 0x00) || (data[1] != 0x00))
-               return;
-       data += 2;
-       size -= 2;
-
-       for (i = 0; i < n; i++) {
-               tag = exif_get_short (data + 12 * i, order);
-#ifdef DEBUG
-               printf ("Loading entry '%s' (%i)...\n",
-                       exif_olympus_tag_get_name (tag), i + 1);
-#endif
-               entry = exif_olympus_entry_new ();
-               exif_olympus_note_add_entry (note, entry);
-               exif_olympus_note_load_data_entry (note, entry, data, size,
-                                                  12 * i);
-               exif_olympus_entry_unref (entry);
-       }
-}
-
-ExifNote *
-exif_olympus_note_new (void)
-{
-       ExifOlympusNote *note;
-
-       note = malloc (sizeof (ExifOlympusNote));
-       if (!note)
-               return (NULL);
-       memset (note, 0, sizeof (ExifOlympusNote));
-       exif_note_construct ((ExifNote *) note);
-       ((ExifNote *) note)->methods.free = exif_olympus_note_free;
-       ((ExifNote *) note)->methods.load_data = exif_olympus_note_load_data;
-       ((ExifNote *) note)->methods.get_value = exif_olympus_note_get_value;
-
-       return ((ExifNote *) note);
-}
diff --git a/libexif/olympus/exif-olympus-note.h b/libexif/olympus/exif-olympus-note.h
deleted file mode 100644 (file)
index 3a6a94b..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/* exif-olympus-note.h
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __EXIF_OLYMPUS_NOTE_H__
-#define __EXIF_OLYMPUS_NOTE_H__
-
-#include <libexif/exif-note.h>
-
-typedef struct _ExifOlympusNote ExifOlympusNote;
-
-#include <libexif/olympus/exif-olympus-entry.h>
-
-struct _ExifOlympusNote {
-       ExifNote parent;
-
-       ExifOlympusEntry **entries;
-       unsigned int count;
-};
-
-ExifNote *exif_olympus_note_new (void);
-
-#endif /* __EXIF_OLYMPUS_NOTE_H__ */
diff --git a/libexif/olympus/exif-olympus-tag.c b/libexif/olympus/exif-olympus-tag.c
deleted file mode 100644 (file)
index 8bf64c1..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/* exif-olympus-tag.c:
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#include "config.h"
-#include "exif-olympus-tag.h"
-#include "i18n.h"
-
-#include <stdlib.h>
-
-static struct {
-       ExifOlympusTag tag;
-       const char *name;
-} table[] = {
-       {EXIF_OLYMPUS_TAG_MODE, N_("Mode")},
-       {EXIF_OLYMPUS_TAG_QUALITY, N_("Quality")},
-       {EXIF_OLYMPUS_TAG_MACRO, N_("Macro")},
-       {EXIF_OLYMPUS_TAG_UNKNOWN_1, N_("Unknown 1")},
-       {EXIF_OLYMPUS_TAG_ZOOM, N_("Zoom")},
-       {EXIF_OLYMPUS_TAG_UNKNOWN_2, N_("Unknown 2")},
-       {EXIF_OLYMPUS_TAG_UNKNOWN_3, N_("Unknown 3")},
-       {EXIF_OLYMPUS_TAG_VERSION, N_("Firmware version")},
-       {EXIF_OLYMPUS_TAG_INFO, N_("Info")},
-       {EXIF_OLYMPUS_TAG_ID, N_("Camera ID")},
-       {EXIF_OLYMPUS_TAG_UNKNOWN_4, N_("Unknown 4")},
-       {0, NULL}
-};
-
-const char *
-exif_olympus_tag_get_name (ExifOlympusTag tag)
-{
-       unsigned int i;
-
-       for (i = 0; table[i].name; i++)
-               if (table[i].tag == tag)
-                       break;
-
-       return (_(table[i].name));
-}
diff --git a/libexif/olympus/exif-olympus-tag.h b/libexif/olympus/exif-olympus-tag.h
deleted file mode 100644 (file)
index 1c37d62..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/* exif-olympus-tag.h
- *
- * Copyright (C) 2002 Lutz Müller <lutz@users.sourceforge.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, 
- * but WITHOUT ANY WARRANTY; without even the implied warranty of 
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details. 
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#ifndef __EXIF_OLYMPUS_TAG_H__
-#define __EXIF_OLYMPUS_TAG_H__
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-enum _ExifOlympusTag {
-       EXIF_OLYMPUS_TAG_MODE           = 0x0200,
-       EXIF_OLYMPUS_TAG_QUALITY        = 0x0201,
-       EXIF_OLYMPUS_TAG_MACRO          = 0x0202,
-       EXIF_OLYMPUS_TAG_UNKNOWN_1      = 0x0203,
-       EXIF_OLYMPUS_TAG_ZOOM           = 0x0204,
-       EXIF_OLYMPUS_TAG_UNKNOWN_2      = 0x0205,
-       EXIF_OLYMPUS_TAG_UNKNOWN_3      = 0x0206,
-       EXIF_OLYMPUS_TAG_VERSION        = 0x0207,
-       EXIF_OLYMPUS_TAG_INFO           = 0x0208,
-       EXIF_OLYMPUS_TAG_ID             = 0x0209,
-       EXIF_OLYMPUS_TAG_UNKNOWN_4      = 0x0f04
-};
-typedef enum _ExifOlympusTag ExifOlympusTag;
-
-const char *exif_olympus_tag_get_name (ExifOlympusTag tag);
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* __EXIF_OLYMPUS_TAG_H__ */