6 #ifndef INCLUDED_IMF_DEEP_IMAGE_LEVEL_H
7 #define INCLUDED_IMF_DEEP_IMAGE_LEVEL_H
98 typedef std::map <std::string, DeepImageChannel *>
ChannelMap;
106 ConstIterator
begin()
const;
111 ConstIterator
end()
const;
141 void setSamplesToZero (
size_t i,
142 unsigned int oldNumSamples,
143 unsigned int newNumSamples);
146 void moveSampleList (
size_t i,
147 unsigned int oldNumSamples,
148 unsigned int newNumSamples,
149 size_t newSampleListPosition);
152 void moveSamplesToNewBuffer (
const unsigned int * oldNumSamples,
153 const unsigned int * newNumSamples,
154 const size_t * newSampleListPositions);
157 void initializeSampleLists ();
197 Iterator (
const DeepImageLevel::ChannelMap::iterator& i);
205 Iterator & operator ++ ();
207 Iterator operator ++ (
int);
224 DeepImageLevel::ChannelMap::iterator _i;
235 ConstIterator (
const DeepImageLevel::ChannelMap::const_iterator& i);
245 ConstIterator & operator ++ ();
247 ConstIterator operator ++ (
int);
262 friend bool operator ==
263 (
const ConstIterator &,
const ConstIterator &);
265 friend bool operator !=
266 (
const ConstIterator &,
const ConstIterator &);
268 DeepImageLevel::ChannelMap::const_iterator _i;
321 return _sampleCounts;
328 return _sampleCounts;
333 DeepImageLevel::Iterator::Iterator (): _i()
340 DeepImageLevel::Iterator::Iterator
341 (
const DeepImageLevel::ChannelMap::iterator& i)
350 DeepImageLevel::Iterator::operator ++ ()
358 DeepImageLevel::Iterator::operator ++ (
int)
360 Iterator tmp = *
this;
374 DeepImageLevel::Iterator::channel ()
const
381 DeepImageLevel::ConstIterator::ConstIterator (): _i()
387 DeepImageLevel::ConstIterator::ConstIterator
388 (
const DeepImageLevel::ChannelMap::const_iterator& i): _i (i)
395 DeepImageLevel::ConstIterator::ConstIterator
402 DeepImageLevel::ConstIterator::operator ++ ()
410 DeepImageLevel::ConstIterator::operator ++ (
int)
412 ConstIterator tmp = *
this;
425 DeepImageLevel::ConstIterator::channel ()
const
#define OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_EXIT
IMFUTIL_EXPORT ConstIterator()
GLsizei const GLchar *const * string
GLenum GLenum GLsizei void * image
virtual void clearChannels()=0
virtual IMFUTIL_EXPORT void resize(const IMATH_NAMESPACE::Box2i &dataWindow)
OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_ENTER typedef std::map< std::string, std::string > RenamingMap
OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_ENTER enum IMF_EXPORT_ENUM PixelType
Box< V2i > Box2i
2D box of base type int.
virtual void renameChannel(const std::string &oldName, const std::string &newName)=0
TypedDeepImageChannel< T > & typedChannel(const std::string &name)
#define IMFUTIL_EXPORT_TYPE
bool operator!=(const Mat3< T0 > &m0, const Mat3< T1 > &m1)
Inequality operator, does exact floating point comparisons.
IMFUTIL_EXPORT void throwBadChannelNameOrType(const std::string &name) const
IMFUTIL_EXPORT DeepImageChannel * findChannel(const std::string &name)
virtual void renameChannels(const RenamingMap &oldToNewNames)=0
GLuint const GLchar * name
friend class DeepImageLevel
virtual IMFUTIL_EXPORT void shiftPixels(int dx, int dy)
std::map< std::string, DeepImageChannel * > ChannelMap
IMFUTIL_EXPORT const std::string & name() const
virtual void insertChannel(const std::string &name, PixelType type, int xSampling, int ySampling, bool pLinear)=0
virtual void eraseChannel(const std::string &name)=0
#define OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_ENTER
IMFUTIL_EXPORT SampleCountChannel & sampleCounts()
TypedDeepImageChannel< T > * findTypedChannel(const std::string &name)
bool operator==(const Mat3< T0 > &m0, const Mat3< T1 > &m1)
Equality operator, does exact floating point comparisons.
IMFUTIL_EXPORT Iterator()
PcpNodeRef_ChildrenIterator begin(const PcpNodeRef::child_const_range &r)
Support for range-based for loops for PcpNodeRef children ranges.