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;
191 get(value_type& value)
const;
199 set(
const value_type& value);
217 operator value_type()
272 { this->value = value.
value; }
281 operator= (
const value_type& value)
359 { this->value = value.
value; }
368 operator= (
const value_type& value)
414 #endif // OME_FILES_TIFF_FIELD_H virtual ~FieldBase()
Destructor.
Definition: Field.cpp:186
void get(value_type &value) const
Get the value for this field.
V & value
The wrapped value.
Definition: Field.h:247
ValueProxy(value_type &value)
Construct from value.
Definition: Field.h:256
Field & operator=(const Field &field)
Assign a field value.
Definition: Field.h:208
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
int writeCount() const
Get field write count requirement.
Definition: Field.cpp:255
Field value.
Definition: Field.h:330
int readCount() const
Get field read count requirement.
Definition: Field.cpp:241
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
Open Microscopy Environment C++.
::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
std::shared_ptr< IFD > getIFD() const
Get the directory this field belongs to.
Definition: Field.cpp:275
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
std::string name() const
Get field tag name.
Definition: Field.cpp:191
~ValueProxy()
Destructor.
Definition: Field.h:261
Tag tag_category
The tag type (C++ enum type).
Definition: Field.h:160
Field representing a tag value.
Definition: Field.h:156
Proxy for getting and setting a Field value.
Definition: Field.h:239
Type type() const
Get field data type.
Definition: Field.cpp:213
V value_type
The value type being wrapped.
Definition: Field.h:334
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
tag_category tag
The tag identifying this field.
Definition: Field.h:226
bool passCount() const
Get field count requirement.
Definition: Field.cpp:227
Type
Tag types.
Definition: Types.h:71
tag_type tagNumber() const
Get field tag number.
Definition: Field.cpp:269