#include "types.hpp"
#include <string>
#include <vector>
#include <map>
#include <iostream>
#include <sstream>
#include <memory>
#include <cstring>
Include dependency graph for value.hpp:
This graph shows which files directly or indirectly include this file:
Namespaces | |
namespace | Exiv2 |
Classes | |
class | Exiv2::Value |
Common interface for all types of values used with metadata. More... | |
class | Exiv2::DataValue |
Value for an undefined data type. More... | |
class | Exiv2::StringValueBase |
Abstract base class for a string based Value type. More... | |
class | Exiv2::StringValue |
Value for string type. More... | |
class | Exiv2::AsciiValue |
Value for an Ascii string type. More... | |
class | Exiv2::CommentValue |
Value for an Exif comment. More... | |
struct | Exiv2::CommentValue::CharsetTable |
Information pertaining to the defined character sets. More... | |
class | Exiv2::CommentValue::CharsetInfo |
Charset information lookup functions. Implemented as a static class. More... | |
class | Exiv2::XmpValue |
Base class for all Exiv2 values used to store XMP property values. More... | |
class | Exiv2::XmpTextValue |
Value type suitable for simple XMP properties and XMP nodes of complex types which are not parsed into specific values. More... | |
class | Exiv2::XmpArrayValue |
Value type for simple arrays. Each item in the array is a simple value, without qualifiers. The array may be an ordered (seq), unordered (bag) or alternative array (alt). The array items must not contain qualifiers. For language alternatives use LangAltValue. More... | |
class | Exiv2::LangAltValue |
Value type for XMP language alternative properties. More... | |
class | Exiv2::DateValue |
Value for simple ISO 8601 dates More... | |
struct | Exiv2::DateValue::Date |
Simple Date helper structure. More... | |
class | Exiv2::TimeValue |
Value for simple ISO 8601 times. More... | |
struct | Exiv2::TimeValue::Time |
Simple Time helper structure. More... | |
class | Exiv2::ValueType< T > |
Template for a Value of a basic type. This is used for unsigned and signed short, long and rationals. More... | |
Typedefs | |
typedef ValueType< uint16_t > | UShortValue |
Unsigned short value type. | |
typedef ValueType< uint32_t > | ULongValue |
Unsigned long value type. | |
typedef ValueType< URational > | URationalValue |
Unsigned rational value type. | |
typedef ValueType< int16_t > | ShortValue |
Signed short value type. | |
typedef ValueType< int32_t > | LongValue |
Signed long value type. | |
typedef ValueType< Rational > | RationalValue |
Signed rational value type. | |
Functions | |
std::ostream & | operator<< (std::ostream &os, const Value &value) |
Output operator for Value types. | |
template<typename T> | |
TypeId | getType () |
Template to determine the TypeId for a type T. | |
template<> | |
TypeId | getType< uint16_t > () |
Specialization for an unsigned short. | |
template<> | |
TypeId | getType< uint32_t > () |
Specialization for an unsigned long. | |
template<> | |
TypeId | getType< URational > () |
Specialization for an unsigned rational. | |
template<> | |
TypeId | getType< int16_t > () |
Specialization for a signed short. | |
template<> | |
TypeId | getType< int32_t > () |
Specialization for a signed long. | |
template<> | |
TypeId | getType< Rational > () |
Specialization for a signed rational. | |
template<typename T> | |
T | getValue (const byte *buf, ByteOrder byteOrder) |
Read a value of type T from the data buffer. | |
template<typename T> | |
long | toData (byte *buf, T t, ByteOrder byteOrder) |
Convert a value of type T to data, write the data to the data buffer. | |
template<> | |
long | toData (byte *buf, uint16_t t, ByteOrder byteOrder) |
Specialization to write an unsigned short to the data buffer. Return the number of bytes written. | |
template<> | |
long | toData (byte *buf, uint32_t t, ByteOrder byteOrder) |
Specialization to write an unsigned long to the data buffer. Return the number of bytes written. | |
template<> | |
long | toData (byte *buf, URational t, ByteOrder byteOrder) |
Specialization to write an unsigned rational to the data buffer. Return the number of bytes written. | |
template<> | |
long | toData (byte *buf, int16_t t, ByteOrder byteOrder) |
Specialization to write a signed short to the data buffer. Return the number of bytes written. | |
template<> | |
long | toData (byte *buf, int32_t t, ByteOrder byteOrder) |
Specialization to write a signed long to the data buffer. Return the number of bytes written. | |
template<> | |
long | toData (byte *buf, Rational t, ByteOrder byteOrder) |
Specialization to write a signed rational to the data buffer. Return the number of bytes written. |
|
Read a value of type T from the data buffer. We need this template function for the ValueType template classes. There are only specializations of this function available; no default implementation is provided.
|
|
Convert a value of type T to data, write the data to the data buffer. We need this template function for the ValueType template classes. There are only specializations of this function available; no default implementation is provided.
|