Cleanup: Use enum class for MemoryBufferExtend.
This commit is contained in:
@@ -39,11 +39,11 @@ enum class MemoryBufferState {
|
||||
Temporary = 6,
|
||||
};
|
||||
|
||||
typedef enum MemoryBufferExtend {
|
||||
COM_MB_CLIP,
|
||||
COM_MB_EXTEND,
|
||||
COM_MB_REPEAT,
|
||||
} MemoryBufferExtend;
|
||||
enum class MemoryBufferExtend {
|
||||
Clip,
|
||||
Extend,
|
||||
Repeat,
|
||||
};
|
||||
|
||||
class MemoryProxy;
|
||||
|
||||
@@ -126,9 +126,9 @@ class MemoryBuffer {
|
||||
y = y - m_rect.ymin;
|
||||
|
||||
switch (extend_x) {
|
||||
case COM_MB_CLIP:
|
||||
case MemoryBufferExtend::Clip:
|
||||
break;
|
||||
case COM_MB_EXTEND:
|
||||
case MemoryBufferExtend::Extend:
|
||||
if (x < 0) {
|
||||
x = 0;
|
||||
}
|
||||
@@ -136,15 +136,15 @@ class MemoryBuffer {
|
||||
x = w;
|
||||
}
|
||||
break;
|
||||
case COM_MB_REPEAT:
|
||||
case MemoryBufferExtend::Repeat:
|
||||
x = (x >= 0.0f ? (x % w) : (x % w) + w);
|
||||
break;
|
||||
}
|
||||
|
||||
switch (extend_y) {
|
||||
case COM_MB_CLIP:
|
||||
case MemoryBufferExtend::Clip:
|
||||
break;
|
||||
case COM_MB_EXTEND:
|
||||
case MemoryBufferExtend::Extend:
|
||||
if (y < 0) {
|
||||
y = 0;
|
||||
}
|
||||
@@ -152,7 +152,7 @@ class MemoryBuffer {
|
||||
y = h;
|
||||
}
|
||||
break;
|
||||
case COM_MB_REPEAT:
|
||||
case MemoryBufferExtend::Repeat:
|
||||
y = (y >= 0.0f ? (y % h) : (y % h) + h);
|
||||
break;
|
||||
}
|
||||
@@ -169,9 +169,9 @@ class MemoryBuffer {
|
||||
y = y - m_rect.ymin;
|
||||
|
||||
switch (extend_x) {
|
||||
case COM_MB_CLIP:
|
||||
case MemoryBufferExtend::Clip:
|
||||
break;
|
||||
case COM_MB_EXTEND:
|
||||
case MemoryBufferExtend::Extend:
|
||||
if (x < 0) {
|
||||
x = 0.0f;
|
||||
}
|
||||
@@ -179,15 +179,15 @@ class MemoryBuffer {
|
||||
x = w;
|
||||
}
|
||||
break;
|
||||
case COM_MB_REPEAT:
|
||||
case MemoryBufferExtend::Repeat:
|
||||
x = fmodf(x, w);
|
||||
break;
|
||||
}
|
||||
|
||||
switch (extend_y) {
|
||||
case COM_MB_CLIP:
|
||||
case MemoryBufferExtend::Clip:
|
||||
break;
|
||||
case COM_MB_EXTEND:
|
||||
case MemoryBufferExtend::Extend:
|
||||
if (y < 0) {
|
||||
y = 0.0f;
|
||||
}
|
||||
@@ -195,7 +195,7 @@ class MemoryBuffer {
|
||||
y = h;
|
||||
}
|
||||
break;
|
||||
case COM_MB_REPEAT:
|
||||
case MemoryBufferExtend::Repeat:
|
||||
y = fmodf(y, h);
|
||||
break;
|
||||
}
|
||||
@@ -204,11 +204,11 @@ class MemoryBuffer {
|
||||
inline void read(float *result,
|
||||
int x,
|
||||
int y,
|
||||
MemoryBufferExtend extend_x = COM_MB_CLIP,
|
||||
MemoryBufferExtend extend_y = COM_MB_CLIP)
|
||||
MemoryBufferExtend extend_x = MemoryBufferExtend::Clip,
|
||||
MemoryBufferExtend extend_y = MemoryBufferExtend::Clip)
|
||||
{
|
||||
bool clip_x = (extend_x == COM_MB_CLIP && (x < m_rect.xmin || x >= m_rect.xmax));
|
||||
bool clip_y = (extend_y == COM_MB_CLIP && (y < m_rect.ymin || y >= m_rect.ymax));
|
||||
bool clip_x = (extend_x == MemoryBufferExtend::Clip && (x < m_rect.xmin || x >= m_rect.xmax));
|
||||
bool clip_y = (extend_y == MemoryBufferExtend::Clip && (y < m_rect.ymin || y >= m_rect.ymax));
|
||||
if (clip_x || clip_y) {
|
||||
/* clip result outside rect is zero */
|
||||
memset(result, 0, this->m_num_channels * sizeof(float));
|
||||
@@ -226,8 +226,8 @@ class MemoryBuffer {
|
||||
inline void readNoCheck(float *result,
|
||||
int x,
|
||||
int y,
|
||||
MemoryBufferExtend extend_x = COM_MB_CLIP,
|
||||
MemoryBufferExtend extend_y = COM_MB_CLIP)
|
||||
MemoryBufferExtend extend_x = MemoryBufferExtend::Clip,
|
||||
MemoryBufferExtend extend_y = MemoryBufferExtend::Clip)
|
||||
{
|
||||
int u = x;
|
||||
int v = y;
|
||||
@@ -237,8 +237,8 @@ class MemoryBuffer {
|
||||
|
||||
BLI_assert(offset >= 0);
|
||||
BLI_assert(offset < this->buffer_len() * this->m_num_channels);
|
||||
BLI_assert(!(extend_x == COM_MB_CLIP && (u < m_rect.xmin || u >= m_rect.xmax)) &&
|
||||
!(extend_y == COM_MB_CLIP && (v < m_rect.ymin || v >= m_rect.ymax)));
|
||||
BLI_assert(!(extend_x == MemoryBufferExtend::Clip && (u < m_rect.xmin || u >= m_rect.xmax)) &&
|
||||
!(extend_y == MemoryBufferExtend::Clip && (v < m_rect.ymin || v >= m_rect.ymax)));
|
||||
float *buffer = &this->m_buffer[offset];
|
||||
memcpy(result, buffer, sizeof(float) * this->m_num_channels);
|
||||
}
|
||||
@@ -248,14 +248,14 @@ class MemoryBuffer {
|
||||
inline void readBilinear(float *result,
|
||||
float x,
|
||||
float y,
|
||||
MemoryBufferExtend extend_x = COM_MB_CLIP,
|
||||
MemoryBufferExtend extend_y = COM_MB_CLIP)
|
||||
MemoryBufferExtend extend_x = MemoryBufferExtend::Clip,
|
||||
MemoryBufferExtend extend_y = MemoryBufferExtend::Clip)
|
||||
{
|
||||
float u = x;
|
||||
float v = y;
|
||||
this->wrap_pixel(u, v, extend_x, extend_y);
|
||||
if ((extend_x != COM_MB_REPEAT && (u < 0.0f || u >= getWidth())) ||
|
||||
(extend_y != COM_MB_REPEAT && (v < 0.0f || v >= getHeight()))) {
|
||||
if ((extend_x != MemoryBufferExtend::Repeat && (u < 0.0f || u >= getWidth())) ||
|
||||
(extend_y != MemoryBufferExtend::Repeat && (v < 0.0f || v >= getHeight()))) {
|
||||
copy_vn_fl(result, this->m_num_channels, 0.0f);
|
||||
return;
|
||||
}
|
||||
@@ -266,8 +266,8 @@ class MemoryBuffer {
|
||||
this->m_num_channels,
|
||||
u,
|
||||
v,
|
||||
extend_x == COM_MB_REPEAT,
|
||||
extend_y == COM_MB_REPEAT);
|
||||
extend_x == MemoryBufferExtend::Repeat,
|
||||
extend_y == MemoryBufferExtend::Repeat);
|
||||
}
|
||||
|
||||
void readEWA(float *result, const float uv[2], const float derivatives[2][2]);
|
||||
|
||||
Reference in New Issue
Block a user