# Exiv2::Nikon1MakerNote Class Reference

A MakerNote format used by Nikon cameras, such as the E990 and D1. More...

`#include <nikonmn.hpp>`

Inheritance diagram for Exiv2::Nikon1MakerNote:

[legend]
Collaboration diagram for Exiv2::Nikon1MakerNote:

[legend]
List of all members.

## Public Types

typedef std::auto_ptr< Nikon1MakerNote > | AutoPtr
| Shortcut for a Nikon1MakerNote auto pointer.

## Public Member Functions

Creators
| Nikon1MakerNote (bool alloc=true)
| Constructor. Allows to choose whether or not memory management is required for the makernote entries.
| Nikon1MakerNote (const Nikon1MakerNote &rhs)
| Copy constructor.
virtual | ~Nikon1MakerNote ()
| Virtual destructor.
Accessors
AutoPtr | create (bool alloc=true) const
| Return an auto-pointer to an newly created, empty instance of the same type as this. The makernote entries are not copied. The caller owns the new object and the auto-pointer ensures that it will be deleted.
AutoPtr | clone () const
| Return an auto-pointer to a clone of this object. The caller owns the new object and the auto-pointer ensures that it will be deleted.

## Static Public Member Functions

Print functions for Nikon1 MakerNote tags
static std::ostream & | print0x0002 (std::ostream &os, const Value &value)
| Print ISO setting.
static std::ostream & | print0x0007 (std::ostream &os, const Value &value)
| Print autofocus mode.
static std::ostream & | print0x0085 (std::ostream &os, const Value &value)
| Print manual focus distance.
static std::ostream & | print0x0086 (std::ostream &os, const Value &value)
| Print digital zoom setting.
static std::ostream & | print0x0088 (std::ostream &os, const Value &value)
| Print AF focus position.

## Detailed Description

A MakerNote format used by Nikon cameras, such as the E990 and D1.

## Member Function Documentation

Nikon1MakerNote::AutoPtr Exiv2::Nikon1MakerNote::clone | ( |  | ) | const

Return an auto-pointer to a clone of this object. The caller owns the new object and the auto-pointer ensures that it will be deleted.

Note:
  In non-alloc mode the clone potentially contains pointers to the same data buffer as the original. Use updateBase(byte* pNewBase) to adjust them.

Reimplemented from Exiv2::IfdMakerNote.

Nikon1MakerNote::AutoPtr Exiv2::Nikon1MakerNote::create | ( | bool | alloc = `true` | ) | const

Return an auto-pointer to an newly created, empty instance of the same type as this. The makernote entries are not copied. The caller owns the new object and the auto-pointer ensures that it will be deleted.

Parameters:

  | alloc | Memory management model for the newly created object. Indicates if memory required to store data should be allocated and deallocated (true) or not (false). If false, only pointers to the buffer provided to read() will be kept. See Ifd for more background on this concept.

Reimplemented from Exiv2::IfdMakerNote.

The documentation for this class was generated from the following files:

- nikonmn.hpp
- nikonmn.cpp