Exiv2::MinoltaMakerNote Class Reference

MakerNote for Minolta cameras. More...

#include <minoltamn.hpp>

Inheritance diagram for Exiv2::MinoltaMakerNote:

Inheritance graph
[legend]
Collaboration diagram for Exiv2::MinoltaMakerNote:

Collaboration graph
[legend]
List of all members.

Accessors

Entries::const_iterator begin () const
 The first makernote entry.

Entries::const_iterator end () const
 End of the makernote entries.

Entries::const_iterator findIdx (int idx) const
 Find an entry by idx, return a const iterator to the record.

long size () const
 Return the size of the makernote in bytes.

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.

const TagInfotagList ()
 Return read-only list of built-in Minolta tags.

const TagInfotagListCsStd ()
 Return read-only list of built-in Minolta Standard Camera Settings tags.

const TagInfotagListCs7D ()
 Return read-only list of built-in Minolta 7D Camera Settings tags.

const TagInfotagListCs5D ()
 Return read-only list of built-in Minolta 5D Camera Settings tags.


Public Types

typedef std::auto_ptr< MinoltaMakerNoteAutoPtr
 Shortcut for a MinoltaMakerNote auto pointer.


Public Member Functions

Creators
 MinoltaMakerNote (bool alloc=true)
 Constructor. Allows to choose whether or not memory management is required for the makernote entries.

 MinoltaMakerNote (const MinoltaMakerNote &rhs)
 Copy constructor.

virtual ~MinoltaMakerNote ()
 Virtual destructor.

Manipulators
int read (const byte *buf, long len, long start, ByteOrder byteOrder, long shift)
 Read the makernote, including the makernote header, from the Exif data buffer.

long copy (byte *buf, ByteOrder byteOrder, long offset)
 Copy (write) the makerNote to the character buffer buf at position offset (from the start of the TIFF header), encoded in byte order byteOrder. Update internal offsets if necessary. Return the number of bytes written.

void add (const Entry &entry)
 Add the entry to the makernote. No duplicate-check is performed, i.e., it is possible to add multiple entries with the same tag. The memory allocation mode of the entry to be added must be the same as that of the makernote and the IFD id of the entry must be set to 'makerIfd'.

Entries::iterator begin ()
 The first makernote entry.

Entries::iterator end ()
 End of the makernote entries.

void updateBase (byte *pNewBase)
 Update the base pointer of the MakerNote and all its entries to pNewBase.


Static Public Member Functions

Print functions for Minolta MakerNote tags
std::ostream & printMinoltaExposureSpeedStd (std::ostream &os, const Value &value)
 Print Exposure Speed setting from standard Minolta Camera Settings makernote.

std::ostream & printMinoltaExposureTimeStd (std::ostream &os, const Value &value)
 Print Exposure Time setting from standard Minolta Camera Settings makernote.

std::ostream & printMinoltaFNumberStd (std::ostream &os, const Value &value)
 Print F Number setting from standard Minolta Camera Settings makernote.

std::ostream & printMinoltaExposureCompensationStd (std::ostream &os, const Value &value)
 Print Exposure Compensation setting from standard Minolta Camera Settings makernote.

std::ostream & printMinoltaFocalLengthStd (std::ostream &os, const Value &value)
 Print Focal Length setting from standard Minolta Camera Settings makernote.

std::ostream & printMinoltaDateStd (std::ostream &os, const Value &value)
 Print Minolta Date from standard Minolta Camera Settings makernote.

std::ostream & printMinoltaTimeStd (std::ostream &os, const Value &value)
 Print Minolta Time from standard Minolta Camera Settings makernote.

std::ostream & printMinoltaFlashExposureCompStd (std::ostream &os, const Value &value)
 Print Flash Exposure Compensation setting from standard Minolta Camera Settings makernote.

std::ostream & printMinoltaWhiteBalanceStd (std::ostream &os, const Value &value)
 Print White Balance setting from standard Minolta Camera Settings makernote.

std::ostream & printMinoltaBrightnessStd (std::ostream &os, const Value &value)
 Print Brightness setting from standard Minolta Camera Settings makernote.

std::ostream & printMinoltaExposureManualBias5D (std::ostream &os, const Value &value)
 Print Exposure Manual Bias setting from 5D Minolta Camera Settings makernote.

std::ostream & printMinoltaExposureCompensation5D (std::ostream &os, const Value &value)
 Print Exposure Compensation setting from 5D Minolta Camera Settings makernote.


Detailed Description

MakerNote for Minolta cameras.


Member Function Documentation

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

AutoPtr Exiv2::MinoltaMakerNote::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::MinoltaMakerNote::read const byte buf,
long  len,
long  start,
ByteOrder  byteOrder,
long  shift
[virtual]
 

Read the makernote, including the makernote header, from the Exif data buffer.

Parameters:
buf Pointer to the Exif data buffer that contains the MakerNote to decode. The buffer should contain all Exif data starting from the TIFF header.
len Number of bytes in the Exif data buffer
start MakerNote starts at buf + start.
byteOrder Applicable byte order (little or big endian).
shift IFD offsets are relative to buf + shift.
Returns:
0 if successful.

Reimplemented from Exiv2::IfdMakerNote.

void Exiv2::MinoltaMakerNote::updateBase byte pNewBase  )  [virtual]
 

Update the base pointer of the MakerNote and all its entries to pNewBase.

Allows to re-locate the underlying data buffer to a new location pNewBase. This method only has an effect in non-alloc mode.

Reimplemented from Exiv2::IfdMakerNote.


The documentation for this class was generated from the following file:
Generated on Wed Dec 20 20:19:05 2006 for Exiv2 by doxygen 1.3.5