- Main Page
- Namespaces
- Classes
- Files
- Examples

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# Exiv2::Nikon2MakerNote Class Reference

A second MakerNote format used by Nikon cameras, including the E700, E800, E900, E900S, E910, E950. More...

`#include <nikonmn.hpp>`

Inheritance diagram for Exiv2::Nikon2MakerNote:

[legend]
Collaboration diagram for Exiv2::Nikon2MakerNote:

[legend]
List of all members.

## Public Types
typedef std::auto_ptr< Nikon2MakerNote > | AutoPtr
| Shortcut for a Nikon2MakerNote auto pointer.
## Public Member Functions
Creators
| Nikon2MakerNote (bool alloc=true)
| Constructor. Allows to choose whether or not memory management is required for the makernote entries.
| Nikon2MakerNote (const Nikon2MakerNote &rhs)
| Copy constructor.
virtual | ~Nikon2MakerNote ()
| Virtual destructor.
Manipulators
int | readHeader (const byte *buf, long len, ByteOrder byteOrder)
| Read the makernote header from the makernote databuffer. This method must set the offset to the start of the IFD (start_), if needed (assuming that the required information is in the header). Return 0 if successful.
Accessors
int | checkHeader () const
| Check the makernote header. This will typically check if a required prefix string is present in the header. Return 0 if successful.
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 Nikon2 MakerNote tags
static std::ostream & | print0x0003 (std::ostream &os, const Value &value)
| Print quality setting.
static std::ostream & | print0x0004 (std::ostream &os, const Value &value)
| Print color mode setting.
static std::ostream & | print0x0005 (std::ostream &os, const Value &value)
| Print image adjustment setting.
static std::ostream & | print0x0006 (std::ostream &os, const Value &value)
| Print ISO speed setting.
static std::ostream & | print0x0007 (std::ostream &os, const Value &value)
| Print white balance setting.
static std::ostream & | print0x000a (std::ostream &os, const Value &value)
| Print digital zoom setting.

## Detailed Description

A second MakerNote format used by Nikon cameras, including the E700, E800, E900, E900S, E910, E950.

## Member Function Documentation

int Exiv2::Nikon2MakerNote::checkHeader | ( |  | ) | const`[virtual]`

| Check the makernote header. This will typically check if a required prefix string is present in the header. Return 0 if successful. Note: The default implementation does nothing, assuming there is no header Reimplemented from Exiv2::IfdMakerNote.

Nikon2MakerNote::AutoPtr Exiv2::Nikon2MakerNote::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.

Nikon2MakerNote::AutoPtr Exiv2::Nikon2MakerNote::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.

int Exiv2::Nikon2MakerNote::readHeader | ( | const byte * | buf,
|  | long | len,
|  | ByteOrder | byteOrder
| ) | `[virtual]`

| Read the makernote header from the makernote databuffer. This method must set the offset to the start of the IFD (start_), if needed (assuming that the required information is in the header). Return 0 if successful. Note: The default implementation does nothing, assuming there is no header Reimplemented from Exiv2::IfdMakerNote.

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

- nikonmn.hpp
- nikonmn.cpp