Cleanup: Use enum class for MemoryBufferExtend.

This commit is contained in:
2021-03-19 17:00:53 +01:00
parent 9f86933f2e
commit b9d2e2ec97
2 changed files with 36 additions and 36 deletions

View File

@@ -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]);