# makernote2.hpp File Reference

Makernote related classes. More...

`#include "tiffcomposite.hpp"`
`#include "tiffvisitor.hpp"`
`#include "types.hpp"`
`#include <string>`

Include dependency graph for makernote2.hpp:

## Namespaces

namespace | Exiv2
namespace | Exiv2::Group

## Classes

struct | Exiv2::TiffMnRegistry
| Makernote registry structure. More...
struct | Exiv2::TiffMnRegistry::Key
| Search key for Makernote registry structure. More...
class | Exiv2::TiffMnCreator
| TIFF makernote factory for concrete TIFF makernotes. More...
class | Exiv2::MnHeader
| Makernote header interface. This class is used with TIFF makernotes. More...
class | Exiv2::TiffIfdMakernote
| Tiff IFD Makernote. This is a concrete class suitable for all IFD makernotes. More...
class | Exiv2::OlympusMnHeader
| Header of an Olympus Makernote. More...
class | Exiv2::FujiMnHeader
| Header of a Fujifilm Makernote. More...
class | Exiv2::Nikon2MnHeader
| Header of a Nikon 2 Makernote. More...
class | Exiv2::Nikon3MnHeader
| Header of a Nikon 3 Makernote. More...
class | Exiv2::PanasonicMnHeader
| Header of a Panasonic Makernote. More...
class | Exiv2::SigmaMnHeader
| Header of a Sigma Makernote. More...
class | Exiv2::SonyMnHeader
| Header of a Sony Makernote. More...

## Typedefs

typedef TiffComponent *(* | Exiv2::NewMnFct )(uint16_t tag, uint16_t group, uint16_t mnGroup, const byte *pData, uint32_t size, ByteOrder byteOrder)
| Type for a pointer to a function creating a makernote.

## Functions

TiffComponent * | Exiv2::newCanonMn (uint16_t tag, uint16_t group, uint16_t mnGroup, const byte *pData, uint32_t size, ByteOrder byteOrder)
| Function to create a Canon makernote.
TiffComponent * | Exiv2::newMinoltaMn (uint16_t tag, uint16_t group, uint16_t mnGroup, const byte *pData, uint32_t size, ByteOrder byteOrder)
| Function to create a Minolta makernote.
TiffComponent * | Exiv2::newOlympusMn (uint16_t tag, uint16_t group, uint16_t mnGroup, const byte *pData, uint32_t size, ByteOrder byteOrder)
| Function to create an Olympus makernote.
TiffComponent * | Exiv2::newFujiMn (uint16_t tag, uint16_t group, uint16_t mnGroup, const byte *pData, uint32_t size, ByteOrder byteOrder)
| Function to create a Fujifilm makernote.
TiffComponent * | Exiv2::newNikonMn (uint16_t tag, uint16_t group, uint16_t mnGroup, const byte *pData, uint32_t size, ByteOrder byteOrder)
| Function to create a Nikon makernote. This will create the appropriate Nikon 1, 2 or 3 makernote, based on the arguments.
TiffComponent * | Exiv2::newPanasonicMn (uint16_t tag, uint16_t group, uint16_t mnGroup, const byte *pData, uint32_t size, ByteOrder byteOrder)
| Function to create a Panasonic makernote.
TiffComponent * | Exiv2::newSigmaMn (uint16_t tag, uint16_t group, uint16_t mnGroup, const byte *pData, uint32_t size, ByteOrder byteOrder)
| Function to create a Sigma makernote.
TiffComponent * | Exiv2::newSonyMn (uint16_t tag, uint16_t group, uint16_t mnGroup, const byte *pData, uint32_t size, ByteOrder byteOrder)
| Function to create a Sony makernote.

## Variables

const uint16_t | Exiv2::Group::olympmn = 257
| Olympus makernote.
const uint16_t | Exiv2::Group::fujimn = 258
| Fujifilm makernote.
const uint16_t | Exiv2::Group::canonmn = 259
| Canon makernote.
const uint16_t | Exiv2::Group::canoncs = 260
| Canon camera settings.
const uint16_t | Exiv2::Group::canonsi = 261
| Canon shot info.
const uint16_t | Exiv2::Group::canoncf = 262
| Canon customer functions.
const uint16_t | Exiv2::Group::nikonmn = 263
| Any Nikon makernote (pseudo group).
const uint16_t | Exiv2::Group::nikon1mn = 264
| Nikon1 makernote.
const uint16_t | Exiv2::Group::nikon2mn = 265
| Nikon2 makernote.
const uint16_t | Exiv2::Group::nikon3mn = 266
| Nikon3 makernote.
const uint16_t | Exiv2::Group::panamn = 267
| Panasonic makernote.
const uint16_t | Exiv2::Group::sigmamn = 268
| Sigma makernote.
const uint16_t | Exiv2::Group::sonymn = 269
| Any Sony makernote (pseudo group).
const uint16_t | Exiv2::Group::sony1mn = 270
| Sony1 makernote.
const uint16_t | Exiv2::Group::sony2mn = 271
| Sony2 makernote.
const uint16_t | Exiv2::Group::minoltamn = 272
| Minolta makernote.
const uint16_t | Exiv2::Group::minocso = 273
| Minolta camera settings (old).
const uint16_t | Exiv2::Group::minocsn = 274
| Minolta camera settings (new).
const uint16_t | Exiv2::Group::minocs5 = 275
| Minolta camera settings (D5).
const uint16_t | Exiv2::Group::minocs7 = 276
| Minolta camera settings (D7).

## Detailed Description

Makernote related classes.

Version:
  Rev
    808

Author:
  Andreas Huggel (ahu) ahuggel@gmx.net

Date:
  11-Apr-06, ahu: created