Exiv2::RawMetadata Class Reference

#include <crwimage.hpp>

Inheritance diagram for Exiv2::RawMetadata:

Inheritance graph
[legend]
List of all members.

Public Types

typedef std::auto_ptr< RawMetadataAutoPtr
 RawMetadata auto_ptr type.
typedef std::vector< RawMetadata * > Components
 Container type to hold all metadata.

Public Member Functions

Creators
virtual ~RawMetadata ()
 Virtual Destructor.
Manipulators
virtual void add (AutoPtr component)=0
 Add a component to the composition.
virtual void read (const byte *buf, uint32_t len, uint32_t start, ByteOrder byteOrder, int32_t shift=0)=0
 Read a component from a data buffer.
Accessors
virtual void extract (Image &image, ByteOrder byteOrder) const =0
 Extract metadata from the component and add it to image.
virtual void print (std::ostream &os, ByteOrder byteOrder, const std::string &prefix="") const =0
 Print debug info about a component to os.

Detailed Description

Base class for all objects in a raw metadata parse tree. Defines the interface for raw metadata composites.


Member Function Documentation

virtual void Exiv2::RawMetadata::extract Image image,
ByteOrder  byteOrder
const [pure virtual]
 

Extract metadata from the component and add it to image.

Parameters:
image Image to add metadata to
byteOrder Byte order

Implemented in Exiv2::CiffComponent, Exiv2::CiffEntry, Exiv2::CiffDirectory, and Exiv2::CiffHeader.

virtual void Exiv2::RawMetadata::print std::ostream &  os,
ByteOrder  byteOrder,
const std::string &  prefix = ""
const [pure virtual]
 

Print debug info about a component to os.

Parameters:
os Output stream to write to
byteOrder Byte order
prefix Prefix to be written before each line of output

Implemented in Exiv2::CiffComponent, Exiv2::CiffDirectory, and Exiv2::CiffHeader.

virtual void Exiv2::RawMetadata::read const byte buf,
uint32_t  len,
uint32_t  start,
ByteOrder  byteOrder,
int32_t  shift = 0
[pure virtual]
 

Read a component from a data buffer.

Parameters:
buf Pointer to the data buffer.
len Number of bytes in the data buffer.
start Component starts at buf + start.
byteOrder Applicable byte order (little or big endian).
shift offsets in component are relative to buf + shift.
Exceptions:
Error If the component cannot be parsed.

Implemented in Exiv2::CiffComponent, Exiv2::CiffDirectory, and Exiv2::CiffHeader.


The documentation for this class was generated from the following file:
Generated on Sat Nov 19 22:19:57 2005 for Exiv2 by  doxygen 1.4.5