38 #ifndef OME_FILES_TIFF_TIFF_H 39 #define OME_FILES_TIFF_TIFF_H 43 #include <boost/filesystem/path.hpp> 44 #include <boost/iterator/iterator_facade.hpp> 46 #include <ome/files/tiff/Types.h> 66 template<
typename Value>
67 class IFDIterator :
public boost::iterator_facade<IFDIterator<Value>,
68 ome::compat::shared_ptr<Value>,
69 boost::forward_traversal_tag>
97 template <
class OtherValue>
108 mutable ome::compat::shared_ptr<Value>
pos;
110 friend class boost::iterator_core_access;
132 return this->pos == rhs.
pos;
140 ome::compat::shared_ptr<Value>&
155 class TIFF :
public ome::compat::enable_shared_from_this<TIFF>
161 ome::compat::shared_ptr<Impl>
impl;
165 TIFF(
const boost::filesystem::path& filename,
166 const std::string& mode);
174 operator= (
const TIFF&);
192 static ome::compat::shared_ptr<TIFF>
193 open(
const boost::filesystem::path& filename,
194 const std::string& mode);
220 directoryCount()
const;
230 ome::compat::shared_ptr<IFD>
241 ome::compat::shared_ptr<IFD>
250 ome::compat::shared_ptr<IFD>
251 getCurrentDirectory()
const;
262 writeCurrentDirectory();
328 registerImageJTags();
335 #endif // OME_FILES_TIFF_TIFF_H ome::compat::shared_ptr< Value > & dereference() const
Dereference the iterator.
Definition: TIFF.h:141
Internal implementation details of TIFF.
Definition: TIFF.cpp:107
Tagged Image File Format (TIFF).
Definition: TIFF.h:155
IFDIterator()
Default constructor.
Definition: TIFF.h:77
IFDIterator< IFD > iterator
IFD iterator.
Definition: TIFF.h:289
void increment()
Increment the iterator by one position.
ome::compat::shared_ptr< Value > pos
The current position.
Definition: TIFF.h:108
uint64_t offset_type
IFD offset.
Definition: Types.h:65
Iterator for IFDs contained within a TIFF.
Definition: TIFF.h:67
Open Microscopy Environment C++.
IFDIterator(const IFDIterator< OtherValue > &rhs)
Construct from an existing iterator.
Definition: TIFF.h:98
bool equal(IFDIterator const &rhs) const
Check for equality.
Definition: TIFF.h:130
ome::compat::shared_ptr< Impl > impl
Private implementation details.
Definition: TIFF.h:159
IFDIterator< const IFD > const_iterator
const IFD iterator.
Definition: TIFF.h:291
uint16_t directory_index_type
IFD index.
Definition: Types.h:62
Image File Directory (IFD).
Definition: IFD.h:71
IFDIterator(ome::compat::shared_ptr< IFD > &ifd)
Construct with an initial starting position.
Definition: TIFF.h:88