38 #ifndef OME_FILES_TIFF_FIELD_H
39 #define OME_FILES_TIFF_FIELD_H
44 #include <ome/files/tiff/Tags.h>
45 #include <ome/files/tiff/Exception.h>
149 std::shared_ptr<Impl>
impl;
155 template<
typename Tag>
162 typedef typename ::ome::files::detail::tiff::TagProperties<tag_category>::value_type
value_type;
272 { this->value = value.
value; }
359 { this->value = value.
value; }
414 #endif // OME_FILES_TIFF_FIELD_H
std::shared_ptr< IFD > getIFD() const
Get the directory this field belongs to.
Definition: Field.cpp:275
virtual ~FieldBase()
Destructor.
Definition: Field.cpp:186
V & value
The wrapped value.
Definition: Field.h:247
ValueProxy(value_type &value)
Construct from value.
Definition: Field.h:256
std::string name() const
Get field tag name.
Definition: Field.cpp:191
bool passCount() const
Get field count requirement.
Definition: Field.cpp:227
Type type() const
Get field data type.
Definition: Field.cpp:213
Field & operator=(const Field &field)
Assign a field value.
Definition: Field.h:208
int readCount() const
Get field read count requirement.
Definition: Field.cpp:241
Internal implementation details of FieldBase.
Definition: Field.cpp:60
virtual ~Field()
Destructor.
Definition: Field.h:182
unsigned int tag_type
Tag number.
Definition: Types.h:68
Field value.
Definition: Field.h:330
Value()
Constructor.
Definition: Field.h:343
V value
The value.
Definition: Field.h:338
std::shared_ptr< Impl > impl
Private implementation details.
Definition: Field.h:147
Field(std::shared_ptr< IFD > ifd, tag_category tag)
Constructor.
Definition: Field.h:173
::ome::files::detail::tiff::TagProperties< tag_category >::value_type value_type
The tag value type (C++ type).
Definition: Field.h:162
V value_type
The value type being wrapped.
Definition: Field.h:243
FieldBase(std::shared_ptr< IFD > ifd, tag_type tag)
Constructor.
Definition: Field.cpp:180
~Value()
Destructor.
Definition: Field.h:348
Common functionality for fields of all types.
Definition: Field.h:59
void set(const value_type &value)
Set the value for this field.
~ValueProxy()
Destructor.
Definition: Field.h:261
void get(value_type &value) const
Get the value for this field.
Tag tag_category
The tag type (C++ enum type).
Definition: Field.h:160
tag_type tagNumber() const
Get field tag number.
Definition: Field.cpp:269
Field representing a tag value.
Definition: Field.h:156
Proxy for getting and setting a Field value.
Definition: Field.h:239
V value_type
The value type being wrapped.
Definition: Field.h:334
int writeCount() const
Get field write count requirement.
Definition: Field.cpp:255
tag_type getWrappedTag(StringTag1 tag)
Get the TIFF tag number for the specified tag.
Definition: Tags.cpp:66
Image File Directory (IFD).
Definition: IFD.h:70
Value & operator=(const Value &value)
Assign from a Value.
Definition: Field.h:358
tag_category tag
The tag identifying this field.
Definition: Field.h:226
ValueProxy & operator=(const ValueProxy &value)
Assign from a ValueProxy.
Definition: Field.h:271
Type
Tag types.
Definition: Types.h:71