6 #ifndef INCLUDED_IMF_DEEP_IMAGE_LEVEL_H
7 #define INCLUDED_IMF_DEEP_IMAGE_LEVEL_H
93 typedef std::map<std::string, DeepImageChannel*>
ChannelMap;
101 ConstIterator
begin ()
const;
106 ConstIterator
end ()
const;
136 void setSamplesToZero (
137 size_t i,
unsigned int oldNumSamples,
unsigned int newNumSamples);
140 void moveSampleList (
142 unsigned int oldNumSamples,
143 unsigned int newNumSamples,
144 size_t newSampleListPosition);
147 void moveSamplesToNewBuffer (
148 const unsigned int* oldNumSamples,
149 const unsigned int* newNumSamples,
150 const size_t* newSampleListPositions);
153 void initializeSampleLists ();
192 Iterator (
const DeepImageLevel::ChannelMap::iterator& i);
199 Iterator& operator++ ();
201 Iterator operator++ (
int);
216 DeepImageLevel::ChannelMap::iterator _i;
225 ConstIterator (
const DeepImageLevel::ChannelMap::const_iterator& i);
234 ConstIterator& operator++ ();
236 ConstIterator operator++ (
int);
249 friend bool operator== (
const ConstIterator&,
const ConstIterator&);
251 friend bool operator!= (
const ConstIterator&,
const ConstIterator&);
253 DeepImageLevel::ChannelMap::const_iterator _i;
299 return _sampleCounts;
305 return _sampleCounts;
308 inline DeepImageLevel::Iterator::Iterator () : _i ()
313 inline DeepImageLevel::Iterator::Iterator (
314 const DeepImageLevel::ChannelMap::iterator& i)
321 DeepImageLevel::Iterator::operator++ ()
328 DeepImageLevel::Iterator::operator++ (
int)
330 Iterator tmp = *
this;
342 DeepImageLevel::Iterator::channel ()
const
347 inline DeepImageLevel::ConstIterator::ConstIterator () : _i ()
352 inline DeepImageLevel::ConstIterator::ConstIterator (
353 const DeepImageLevel::ChannelMap::const_iterator& i)
359 inline DeepImageLevel::ConstIterator::ConstIterator (
367 DeepImageLevel::ConstIterator::operator++ ()
374 DeepImageLevel::ConstIterator::operator++ (
int)
376 ConstIterator tmp = *
this;
388 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
std::map< std::string, DeepImageChannel * > ChannelMap
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
bool operator==(const DeepImageLevel::ConstIterator &x, const DeepImageLevel::ConstIterator &y)
friend class DeepImageLevel
virtual IMFUTIL_EXPORT void shiftPixels(int dx, int dy)
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()
bool operator!=(const DeepImageLevel::ConstIterator &x, const DeepImageLevel::ConstIterator &y)
PcpNodeRef_ChildrenIterator begin(const PcpNodeRef::child_const_range &r)
Support for range-based for loops for PcpNodeRef children ranges.