25#include "metavalue.hpp"
26#include "exception.hpp"
31 : m_values(r.m_values)
35MetaValue::MetaValue(
const value_t &v)
37 m_values.push_back(v);
40MetaValue::MetaValue(
const std::vector<value_t> &v)
47inline T MetaValue::get(
int idx)
const noexcept(
false)
49 assert(!m_values.empty());
51 return boost::get<T>(m_values[idx]);
54 throw Internals::BadTypeException();
59inline const T & MetaValue::getRef(
int idx)
const noexcept(
false)
62 assert(!m_values.empty());
64 return boost::get<T>(m_values[idx]);
67 throw Internals::BadTypeException();
73uint32_t MetaValue::getInteger(
int idx)
const
75 return get<uint32_t>(idx);
78const std::string & MetaValue::getString(
int idx)
const
80 return getRef<std::string>(idx);
83double MetaValue::getDouble(
int idx)
const
85 return get<double>(idx);
CIFF is the container for CRW files. It is an attempt from Canon to make this a standard....