#719: Removed Nikon makernote classes and pretty-print functions from the published interface.

v0.27.3
Andreas Huggel 15 years ago
parent b4f8f4ea0a
commit f8aed98f88

@ -62,7 +62,6 @@ include $(top_srcdir)/config/config.mk
CCHDR = exiv2.hpp \ CCHDR = exiv2.hpp \
exv_conf.h \ exv_conf.h \
exv_msvc.h \ exv_msvc.h \
mn.hpp \
version.hpp version.hpp
# Add library C++ source files to this list # Add library C++ source files to this list

@ -33,7 +33,6 @@
// included header files // included header files
#include "basicio.hpp" #include "basicio.hpp"
#include "bmpimage.hpp" #include "bmpimage.hpp"
#include "canonmn.hpp"
#include "convert.hpp" #include "convert.hpp"
#include "cr2image.hpp" #include "cr2image.hpp"
#include "crwimage.hpp" #include "crwimage.hpp"
@ -42,7 +41,6 @@
#include "error.hpp" #include "error.hpp"
#include "exif.hpp" #include "exif.hpp"
#include "exiv2.hpp" #include "exiv2.hpp"
#include "fujimn.hpp"
#include "futils.hpp" #include "futils.hpp"
#include "gifimage.hpp" #include "gifimage.hpp"
#include "image.hpp" #include "image.hpp"
@ -50,14 +48,8 @@
#include "jp2image.hpp" #include "jp2image.hpp"
#include "jpgimage.hpp" #include "jpgimage.hpp"
#include "metadatum.hpp" #include "metadatum.hpp"
#include "minoltamn.hpp"
#include "mn.hpp"
#include "mrwimage.hpp" #include "mrwimage.hpp"
#include "nikonmn.hpp"
#include "olympusmn.hpp"
#include "orfimage.hpp" #include "orfimage.hpp"
#include "panasonicmn.hpp"
#include "pentaxmn.hpp"
#include "pgfimage.hpp" #include "pgfimage.hpp"
#include "pngimage.hpp" #include "pngimage.hpp"
#include "preview.hpp" #include "preview.hpp"
@ -65,8 +57,6 @@
#include "psdimage.hpp" #include "psdimage.hpp"
#include "rafimage.hpp" #include "rafimage.hpp"
#include "rw2image.hpp" #include "rw2image.hpp"
#include "sigmamn.hpp"
#include "sonymn.hpp"
#include "tags.hpp" #include "tags.hpp"
#include "tgaimage.hpp" #include "tgaimage.hpp"
#include "tiffimage.hpp" #include "tiffimage.hpp"

@ -1,45 +0,0 @@
// ***************************************************************** -*- C++ -*-
/*
* Copyright (C) 2004-2010 Andreas Huggel <ahuggel@gmx.net>
*
* This program is part of the Exiv2 distribution.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA.
*/
/*!
@file mn.hpp
@brief Include all makernote header files. Makes sure that the static
variable used to register makernotes is instantiated.
@version $Rev$
@author Andreas Huggel (ahu)
<a href="mailto:ahuggel@gmx.net">ahuggel@gmx.net</a>
@date 28-May-05, ahu: created
*/
#ifndef MN_HPP_
#define MN_HPP_
// *****************************************************************************
// included header files
#include "canonmn.hpp"
#include "fujimn.hpp"
#include "minoltamn.hpp"
#include "nikonmn.hpp"
#include "olympusmn.hpp"
#include "panasonicmn.hpp"
#include "pentaxmn.hpp"
#include "sigmamn.hpp"
#include "sonymn.hpp"
#endif // #ifndef MN_HPP_

@ -37,7 +37,7 @@ EXIV2_RCSID("@(#) $Id$")
// ***************************************************************************** // *****************************************************************************
// included header files // included header files
#include "types.hpp" #include "types.hpp"
#include "nikonmn.hpp" #include "nikonmn_int.hpp"
#include "value.hpp" #include "value.hpp"
#include "image.hpp" #include "image.hpp"
#include "tags.hpp" #include "tags.hpp"
@ -55,6 +55,7 @@ EXIV2_RCSID("@(#) $Id$")
// ***************************************************************************** // *****************************************************************************
// class member definitions // class member definitions
namespace Exiv2 { namespace Exiv2 {
namespace Internal {
//! OffOn, multiple tags //! OffOn, multiple tags
extern const TagDetails nikonOffOn[] = { extern const TagDetails nikonOffOn[] = {
@ -2506,4 +2507,5 @@ fmountlens[] = {
} }
return os << s; return os << s;
} }
} // namespace Exiv2
}} // namespace Internal, Exiv2

@ -19,7 +19,7 @@
* Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA. * Foundation, Inc., 51 Franklin Street, 5th Floor, Boston, MA 02110-1301 USA.
*/ */
/*! /*!
@file nikonmn.hpp @file nikonmn_int.hpp
@brief Nikon makernote tags.<BR>References:<BR> @brief Nikon makernote tags.<BR>References:<BR>
[1] <a href="http://www.tawbaware.com/990exif.htm">MakerNote EXIF Tag of the Nikon 990</a> by Max Lyons<BR> [1] <a href="http://www.tawbaware.com/990exif.htm">MakerNote EXIF Tag of the Nikon 990</a> by Max Lyons<BR>
[2] <a href="http://park2.wakwak.com/%7Etsuruzoh/Computer/Digicams/exif-e.html">Exif file format</a> by TsuruZoh Tachibanaya<BR> [2] <a href="http://park2.wakwak.com/%7Etsuruzoh/Computer/Digicams/exif-e.html">Exif file format</a> by TsuruZoh Tachibanaya<BR>
@ -40,8 +40,8 @@
@date 17-May-04, ahu: created<BR> @date 17-May-04, ahu: created<BR>
25-May-04, ahu: combined all Nikon formats in one component 25-May-04, ahu: combined all Nikon formats in one component
*/ */
#ifndef NIKONMN_HPP_ #ifndef NIKONMN_INT_HPP_
#define NIKONMN_HPP_ #define NIKONMN_INT_HPP_
// ***************************************************************************** // *****************************************************************************
// included header files // included header files
@ -56,12 +56,13 @@
// ***************************************************************************** // *****************************************************************************
// namespace extensions // namespace extensions
namespace Exiv2 { namespace Exiv2 {
namespace Internal {
// ***************************************************************************** // *****************************************************************************
// class definitions // class definitions
//! A MakerNote format used by Nikon cameras, such as the E990 and D1. //! A MakerNote format used by Nikon cameras, such as the E990 and D1.
class EXIV2API Nikon1MakerNote { class Nikon1MakerNote {
public: public:
//! Return read-only list of built-in Nikon1 tags //! Return read-only list of built-in Nikon1 tags
static const TagInfo* tagList(); static const TagInfo* tagList();
@ -90,7 +91,7 @@ namespace Exiv2 {
@brief A second MakerNote format used by Nikon cameras, including the @brief A second MakerNote format used by Nikon cameras, including the
E700, E800, E900, E900S, E910, E950 E700, E800, E900, E900S, E910, E950
*/ */
class EXIV2API Nikon2MakerNote { class Nikon2MakerNote {
public: public:
//! Return read-only list of built-in Nikon2 tags //! Return read-only list of built-in Nikon2 tags
static const TagInfo* tagList(); static const TagInfo* tagList();
@ -108,7 +109,7 @@ namespace Exiv2 {
}; // class Nikon2MakerNote }; // class Nikon2MakerNote
//! A third MakerNote format used by Nikon cameras, e.g., E5400, SQ, D2H, D70 //! A third MakerNote format used by Nikon cameras, e.g., E5400, SQ, D2H, D70
class EXIV2API Nikon3MakerNote { class Nikon3MakerNote {
public: public:
//! Return read-only list of built-in Nikon3 tags //! Return read-only list of built-in Nikon3 tags
static const TagInfo* tagList(); static const TagInfo* tagList();
@ -274,6 +275,6 @@ namespace Exiv2 {
}; // class Nikon3MakerNote }; // class Nikon3MakerNote
} // namespace Exiv2 }} // namespace Internal, Exiv2
#endif // #ifndef NIKONMN_HPP_ #endif // #ifndef NIKONMN_INT_HPP_

@ -37,7 +37,15 @@ EXIV2_RCSID("@(#) $Id$")
#include "error.hpp" #include "error.hpp"
#include "futils.hpp" #include "futils.hpp"
#include "value.hpp" #include "value.hpp"
#include "mn.hpp" // To ensure that all makernotes are registered #include "canonmn.hpp"
#include "fujimn.hpp"
#include "minoltamn.hpp"
#include "nikonmn_int.hpp"
#include "olympusmn.hpp"
#include "panasonicmn.hpp"
#include "pentaxmn.hpp"
#include "sigmamn.hpp"
#include "sonymn.hpp"
#include "i18n.h" // NLS support. #include "i18n.h" // NLS support.
#include <iostream> #include <iostream>
@ -68,6 +76,9 @@ namespace {
// class member definitions // class member definitions
namespace Exiv2 { namespace Exiv2 {
// Todo: Remove: temporary fix used during migration of makernote classes to namespace Internal
using namespace Internal;
bool TagVocabulary::operator==(const std::string& key) const bool TagVocabulary::operator==(const std::string& key) const
{ {
if (strlen(voc_) > key.size()) return false; if (strlen(voc_) > key.size()) return false;

Loading…
Cancel
Save