38 #ifndef OME_FILES_TIFF_FIELD_H 39 #define OME_FILES_TIFF_FIELD_H 45 #include <ome/files/tiff/Tags.h> 46 #include <ome/files/tiff/Exception.h> 69 FieldBase(ome::compat::shared_ptr<IFD> ifd,
144 ome::compat::shared_ptr<IFD>
150 ome::compat::shared_ptr<Impl>
impl;
156 template<
typename Tag>
163 typedef typename ::ome::files::detail::tiff::TagProperties<tag_category>::value_type
value_type;
174 Field(ome::compat::shared_ptr<IFD> ifd,
192 get(value_type& value)
const;
200 set(
const value_type& value);
218 operator value_type()
273 { this->value = value.
value; }
282 operator= (
const value_type& value)
360 { this->value = value.
value; }
369 operator= (
const value_type& value)
415 #endif // OME_FILES_TIFF_FIELD_H virtual ~FieldBase()
Destructor.
Definition: Field.cpp:244
Field(ome::compat::shared_ptr< IFD > ifd, tag_category tag)
Constructor.
Definition: Field.h:174
V & value
The wrapped value.
Definition: Field.h:248
ValueProxy(value_type &value)
Construct from value.
Definition: Field.h:257
std::string name() const
Get field tag name.
Definition: Field.cpp:249
bool passCount() const
Get field count requirement.
Definition: Field.cpp:289
Type type() const
Get field data type.
Definition: Field.cpp:273
Field & operator=(const Field &field)
Assign a field value.
Definition: Field.h:209
int readCount() const
Get field read count requirement.
Definition: Field.cpp:305
Internal implementation details of FieldBase.
Definition: Field.cpp:114
virtual ~Field()
Destructor.
Definition: Field.h:183
unsigned int tag_type
Tag number.
Definition: Types.h:59
ome::compat::shared_ptr< Impl > impl
Private implementation details.
Definition: Field.h:148
Field value.
Definition: Field.h:331
Value()
Constructor.
Definition: Field.h:344
V value
The value.
Definition: Field.h:339
ome::compat::shared_ptr< IFD > getIFD() const
Get the directory this field belongs to.
Definition: Field.cpp:343
::ome::files::detail::tiff::TagProperties< tag_category >::value_type value_type
The tag value type (C++ type).
Definition: Field.h:163
V value_type
The value type being wrapped.
Definition: Field.h:244
~Value()
Destructor.
Definition: Field.h:349
Common functionality for fields of all types.
Definition: Field.h:60
~ValueProxy()
Destructor.
Definition: Field.h:262
void get(value_type &value) const
Get the value for this field.
Tag tag_category
The tag type (C++ enum type).
Definition: Field.h:161
tag_type tagNumber() const
Get field tag number.
Definition: Field.cpp:337
Field representing a tag value.
Definition: Field.h:157
Proxy for getting and setting a Field value.
Definition: Field.h:240
V value_type
The value type being wrapped.
Definition: Field.h:335
int writeCount() const
Get field write count requirement.
Definition: Field.cpp:321
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:71
tag_category tag
The tag identifying this field.
Definition: Field.h:227
FieldBase(ome::compat::shared_ptr< IFD > ifd, tag_type tag)
Constructor.
Definition: Field.cpp:238
Type
Tag types.
Definition: Types.h:62