Exiv2::Internal::TiffBinaryArray Class Reference

Composite to model an array of different tags. The tag types as well as other aspects of the array are configurable. The elements of this component are of type TiffBinaryElement. More...

#include <tiffcomposite_int.hpp>

Inheritance diagram for Exiv2::Internal::TiffBinaryArray:

Inheritance graph
[legend]
Collaboration diagram for Exiv2::Internal::TiffBinaryArray:

Collaboration graph
[legend]
List of all members.

Public Member Functions

Creators
 TiffBinaryArray (uint16_t tag, uint16_t group, const ArrayCfg *arrayCfg, const ArrayDef *arrayDef, int defSize)
 Constructor.
 TiffBinaryArray (uint16_t tag, uint16_t group, const ArraySet *arraySet, int setSize, CfgSelFct cfgSelFct)
 Constructor for a complex binary array.
virtual ~TiffBinaryArray ()
 Virtual destructor.
Manipulators
uint32_t addElement (uint32_t idx, const ArrayDef *def)
 Add an element to the binary array, return the size of the element.
bool initialize (uint16_t group)
 Setup cfg and def for the component, in case of a complex binary array. Else do nothing. Return true if the initialization succeeded, else false.
bool initialize (TiffComponent *const pRoot)
 Setup cfg and def for the component, in case of a complex binary array. Else do nothing. Return true if the initialization succeeded, else false.
void iniOrigDataBuf ()
 Initialize the original data buffer and its size from the base entry.
bool updOrigDataBuf (const byte *pData, uint32_t size)
 Update the original data buffer and its size, return true if successful.
Accessors
const ArrayCfgcfg () const
 Return a pointer to the configuration.
const ArrayDefdef () const
 Return a pointer to the definition.
int defSize () const
 Return the number of elements in the definition.

Protected Member Functions

Protected Manipulators
virtual TiffComponentdoAddPath (uint16_t tag, TiffPath &tiffPath, TiffComponent *const pRoot)
 Implements addPath(). Todo: Document it!
virtual TiffComponentdoAddChild (TiffComponent::AutoPtr tiffComponent)
 Implements addChild(). Todo: Document it!
virtual void doAccept (TiffVisitor &visitor)
 Implements accept().
virtual void doEncode (TiffEncoder &encoder, const Exifdatum *datum)
 Implements encode().
virtual uint32_t doWrite (IoWrapper &ioWrapper, ByteOrder byteOrder, int32_t offset, uint32_t valueIdx, uint32_t dataIdx, uint32_t &imageIdx)
 Implements write(). Todo: Document it!
Protected Accessors
virtual uint32_t doCount () const
 Implements count(). Todo: Document it!
virtual uint32_t doSize () const
 Implements size(). Todo: Document it!

Detailed Description

Composite to model an array of different tags. The tag types as well as other aspects of the array are configurable. The elements of this component are of type TiffBinaryElement.


Member Function Documentation

bool Exiv2::Internal::TiffBinaryArray::initialize TiffComponent *const   pRoot  ) 
 

Setup cfg and def for the component, in case of a complex binary array. Else do nothing. Return true if the initialization succeeded, else false.

This version of initialize() is used for reading and non-intrusive writing. It calls cfgSelFct_ to determine the correct settings.

Parameters:
pRoot Pointer to the root component of the TIFF tree.
Returns:
true if the initialization succeeded, else false.

bool Exiv2::Internal::TiffBinaryArray::initialize uint16_t  group  ) 
 

Setup cfg and def for the component, in case of a complex binary array. Else do nothing. Return true if the initialization succeeded, else false.

This version of initialize() is used during intrusive writing. It determines the correct settings based on the group passed in (which is the group of the first tag that is added to the array). It doesn't require cfgSelFct_.

Parameters:
group Group to setup the binary array for.
Returns:
true if the initialization succeeded, else false.


The documentation for this class was generated from the following files:
Generated on Thu Dec 31 03:58:24 2009 for Exiv2 by  doxygen 1.3.9.1