Exiv2::AsciiValue Class Reference

Value for an Ascii string type. More...

`#include <value.hpp>`

Inheritance diagram for Exiv2::AsciiValue:
[legend]

## Public Types

typedef std::auto_ptr< AsciiValue > | AutoPtr
| Shortcut for a AsciiValue auto pointer.
Public Types inherited from Exiv2::StringValueBase
typedef std::auto_ptr< StringValueBase > | AutoPtr
| Shortcut for a StringValueBase auto pointer.
Public Types inherited from Exiv2::Value
typedef std::auto_ptr< Value > | AutoPtr
| Shortcut for a Value auto pointer.

## Public Member Functions

Creators
| AsciiValue ()
| Default constructor.
| AsciiValue (const std::string &buf)
| Constructor.
virtual | ~AsciiValue ()
| Virtual destructor.
Manipulators
virtual int | read (const std::string &buf)
| Set the value to that of the string buf. Overrides base class to append a terminating '\0' character if buf doesn't end with '\0'.
virtual int | read (const std::string &buf)
| Read the value from buf. This default implementation uses buf as it is.
virtual int | read (const byte *buf, long len, ByteOrder byteOrder=invalidByteOrder)
| Read the value from a character buffer. More...
Public Member Functions inherited from Exiv2::StringValueBase
| StringValueBase (TypeId typeId)
| Constructor for subclasses.
| StringValueBase (TypeId typeId, const std::string &buf)
| Constructor for subclasses.
| StringValueBase (const StringValueBase &rhs)
| Copy constructor.
virtual | ~StringValueBase ()
| Virtual destructor.
virtual int | read (const byte *buf, long len, ByteOrder byteOrder=invalidByteOrder)
| Read the value from a character buffer. More...
AutoPtr | clone () const
virtual long | copy (byte *buf, ByteOrder byteOrder=invalidByteOrder) const
| Write value to a character data buffer. More...
virtual long | count () const
| Return the number of components of the value.
virtual long | size () const
| Return the size of the value in bytes.
virtual long | toLong (long n=0) const
| Convert the n-th component of the value to a long. The behaviour of this method may be undefined if there is no n-th component. More...
virtual float | toFloat (long n=0) const
| Convert the n-th component of the value to a float. The behaviour of this method may be undefined if there is no n-th component. More...
virtual Rational | toRational (long n=0) const
| Convert the n-th component of the value to a Rational. The behaviour of this method may be undefined if there is no n-th component. More...
Public Member Functions inherited from Exiv2::Value
| Value (TypeId typeId)
| Constructor, taking a type id to initialize the base class with.
virtual | ~Value ()
| Virtual destructor.
virtual int | setDataArea (const byte *buf, long len)
| Set the data area, if the value has one by copying (cloning) the buffer pointed to by buf. More...
TypeId | typeId () const
| Return the type identifier (Exif data format type).
AutoPtr | clone () const
| Return an auto-pointer to a copy of itself (deep copy). The caller owns this copy and the auto-pointer ensures that it will be deleted.
std::string | toString () const
| Return the value as a string. Implemented in terms of write(std::ostream& os) const of the concrete class.
virtual std::string | toString (long n) const
| Return the n-th component of the value as a string. The default implementation returns toString(). The behaviour of this method may be undefined if there is no n-th component.
virtual long | sizeDataArea () const
| Return the size of the data area, 0 if there is none.
virtual DataBuf | dataArea () const
| Return a copy of the data area if the value has one. The caller owns this copy and DataBuf ensures that it will be deleted. More...
bool | ok () const
| Check the ok status indicator. After a to<Type> conversion, this indicator shows whether the conversion was successful.

## Accessors

AutoPtr | clone () const
virtual std::ostream & | write (std::ostream &os) const
| Write the ASCII value up to the the first '\0' character to an output stream. Any further characters are ignored and not written to the output stream.

## Additional Inherited Members

Static Public Member Functions inherited from Exiv2::Value
static AutoPtr | create (TypeId typeId)
| A (simple) factory to create a Value type. More...
Public Attributes inherited from Exiv2::StringValueBase
std::string | value_
| Stores the string value.
Protected Member Functions inherited from Exiv2::StringValueBase
StringValueBase & | operator= (const StringValueBase &rhs)
| Assignment operator.
Protected Member Functions inherited from Exiv2::Value
Value & | operator= (const Value &rhs)
| Assignment operator. Protected so that it can only be used by subclasses but not directly.
Protected Attributes inherited from Exiv2::Value
bool | ok_
| Indicates the status of the previous to<Type> conversion.

## Detailed Description

Value for an Ascii string type.

This class is for null terminated single byte Ascii strings. This class also ensures that the string is null terminated.

## Member Function Documentation

## read()

int Exiv2::StringValueBase::read

Read the value from a character buffer.

Note
  The byte order is required by the interface but not used by this method, so just use the default.

Parameters

  buf | Pointer to the data buffer to read from
  len | Number of bytes in the data buffer
  byteOrder | Byte order. Not needed.

Returns
  0 if successful.

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

- value.hpp
- value.cpp