#include <image.h>
Inheritance diagram for mudbox::ImageAccessorBase< ChannelType, nch >:
Public Member Functions |
|
ImageAccessorBase (Image *parent) | |
u_int | Width () const |
u_int | Height () const |
u_int | ChannelCount () const |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
Set value for a specified texel. |
|
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
Get the value at a given coordinate.
|
|
void | SetColorAt (u_int X, u_int Y, const Color &cColor) |
Set value for a specified texel. |
|
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void * | AddrAt (u_int X, u_int Y, u_int Ch) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
void | SetColorAt (u_int X, u_int Y, const Color &c) |
template<> | |
void | SetColorAt (u_int X, u_int Y, const Color &c) |
template<> | |
void | SetColorAt (u_int X, u_int Y, const Color &c) |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
float | ValueAt (u_int X, u_int Y, u_int Ch) const |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetValueAt (u_int X, u_int Y, u_int Ch, float fVal) |
template<> | |
void | SetColorAt (u_int X, u_int Y, const Color &c) |
template<> | |
void | SetColorAt (u_int X, u_int Y, const Color &c) |
|
02165 { 02166 m_Stride = parent->Width(); 02167 m_Height = parent->Height(); 02168 m_chans = parent->ChannelCount(); 02169 m_Image = parent; 02170 m_pData = (ChannelType *)parent->Data(); 02171 } |
|
02173 { return m_Stride; }
|
|
02174 { return m_Height; }
|
|
02175 { return m_chans; }
|
|
Set value for a specified texel. For integer maps 1 should be mapped for the maximum value (255 for 8 bit images and 65535 for 16 bit images) |
|
Get the value at a given coordinate. |
|
Set value for a specified texel. For integer maps 1 should be mapped for the maximum value (255 for 8 bit images and 65535 for 16 bit images) |
|
|
02209 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) )]; } |
|
02212 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) * 2)]; } |
|
02215 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) * 3)]; } |
|
02218 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) * 4)]; } |
|
02222 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) )]; } |
|
02225 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) * 2)]; } |
|
02228 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) * 3)]; } |
|
02231 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) * 4)]; } |
|
02236 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) )]; } |
|
02239 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) * 2)]; } |
|
02242 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) * 3)]; } |
|
02245 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) * 4)]; } |
|
02249 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) )]; } |
|
02252 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) * 2)]; } |
|
02255 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) * 3)]; } |
|
02258 { return (void *)&m_pData[Ch + ((X + m_Stride * Y) * 4)]; } |
|
02263 { m_pData[Ch + ((X + m_Stride * Y) )] = (u_char)(255.0f * fVal); } |
|
02266 { m_pData[Ch + ((X + m_Stride * Y) * 2)] = (u_char)(255.0f * fVal); } |
|
02269 { m_pData[Ch + ((X + m_Stride * Y) * 3)] = (u_char)(255.0f * fVal); } |
|
02272 { m_pData[Ch + ((X + m_Stride * Y) * 4)] = (u_char)(255.0f * fVal); } |
|
02276 { m_pData[Ch + ((X + m_Stride * Y) )] = (u_short)(65535.0f * fVal); } |
|
02279 { m_pData[Ch + ((X + m_Stride * Y) * 2)] = (u_short)(65535.0f * fVal); } |
|
02282 { m_pData[Ch + ((X + m_Stride * Y) * 3)] = (u_short)(65535.0f * fVal); } |
|
02285 { m_pData[Ch + ((X + m_Stride * Y) * 4)] = (u_short)(65535.0f * fVal); } |
|
02290 { m_pData[Ch + ((X + m_Stride * Y) )] = (u_int)(0xffffffff * fVal); } |
|
02293 { m_pData[Ch + ((X + m_Stride * Y) * 2)] = (u_int)(0xffffffff * fVal); } |
|
02296 { m_pData[Ch + ((X + m_Stride * Y) * 3)] = (u_int)(0xffffffff * fVal); } |
|
02299 { m_pData[Ch + ((X + m_Stride * Y) * 4)] = (u_int)(0xffffffff * fVal); } |
|
02303 { m_pData[Ch + ((X + m_Stride * Y) )] = fVal; } |
|
02306 { m_pData[Ch + ((X + m_Stride * Y) * 2)] = fVal; } |
|
02309 { m_pData[Ch + ((X + m_Stride * Y) * 3)] = fVal; } |
|
02312 { m_pData[Ch + ((X + m_Stride * Y) * 4)] = fVal; } |
|
02316 { return m_pData[Ch + ((X + m_Stride * Y) )] * (1.0f/255.0f); }
|
|
02319 { return m_pData[Ch + ((X + m_Stride * Y) * 2)] * (1.0f/255.0f); }
|
|
02322 { return m_pData[Ch + ((X + m_Stride * Y) * 3)] * (1.0f/255.0f); }
|
|
02325 { return m_pData[Ch + ((X + m_Stride * Y) * 4)] * (1.0f/255.0f); }
|
|
02329 { return m_pData[Ch + ((X + m_Stride * Y) )] * (1.0f/65535.0f); }
|
|
02332 { return m_pData[Ch + ((X + m_Stride * Y) * 2)] * (1.0f/65535.0f); }
|
|
02335 { return m_pData[Ch + ((X + m_Stride * Y) * 3)] * (1.0f/65535.0f); }
|
|
02338 { return m_pData[Ch + ((X + m_Stride * Y) * 4)] * (1.0f/65535.0f); }
|
|
02342 { return m_pData[Ch + ((X + m_Stride * Y) )] * (1.0f/float(0xffffffff)); }
|
|
02345 { return m_pData[Ch + ((X + m_Stride * Y) * 2)] * (1.0f/float(0xffffffff)); }
|
|
02348 { return m_pData[Ch + ((X + m_Stride * Y) * 3)] * (1.0f/float(0xffffffff)); }
|
|
02351 { return m_pData[Ch + ((X + m_Stride * Y) * 4)] * (1.0f/float(0xffffffff)); }
|
|
02355 { return m_pData[Ch + ((X + m_Stride * Y) )]; }
|
|
02358 { return m_pData[Ch + ((X + m_Stride * Y) * 2)]; }
|
|
02361 { return m_pData[Ch + ((X + m_Stride * Y) * 3)]; }
|
|
02364 { return m_pData[Ch + ((X + m_Stride * Y) * 4)]; }
|
|
02369 { 02370 SetValueAt(X, Y, 0, c.r); 02371 SetValueAt(X, Y, 1, c.g); 02372 SetValueAt(X, Y, 2, c.b); 02373 SetValueAt(X, Y, 3, c.a); 02374 }; |
|
02379 { 02380 SetValueAt(X, Y, 0, c.r); 02381 SetValueAt(X, Y, 1, c.g); 02382 SetValueAt(X, Y, 2, c.b); 02383 }; |
|
02388 { 02389 SetValueAt(X, Y, 0, c.r); 02390 SetValueAt(X, Y, 1, c.g); 02391 SetValueAt(X, Y, 2, c.b); 02392 SetValueAt(X, Y, 3, c.a); 02393 }; |
|
02440 { return float(m_pData[Ch + ((X + m_Stride * Y) * 3)]); }
|
|
02445 { return float(m_pData[Ch + ((X + m_Stride * Y) * 4)]); }
|
|
02450 { m_pData[Ch + ((X + m_Stride * Y) * 3)] = fVal; } |
|
02455 { m_pData[Ch + ((X + m_Stride * Y) * 4)] = fVal; } |
|
02461 { 02462 SetValueAt(X, Y, 0, c.r); 02463 SetValueAt(X, Y, 1, c.g); 02464 SetValueAt(X, Y, 2, c.b); 02465 SetValueAt(X, Y, 3, c.a); 02466 }; |
|
02471 { 02472 SetValueAt(X, Y, 0, c.r); 02473 SetValueAt(X, Y, 1, c.g); 02474 SetValueAt(X, Y, 2, c.b); 02475 }; |