summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/util/palette.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/util/palette.cpp')
-rw-r--r--src/lib/util/palette.cpp40
1 files changed, 18 insertions, 22 deletions
diff --git a/src/lib/util/palette.cpp b/src/lib/util/palette.cpp
index 730800d5249..612dc9042be 100644
--- a/src/lib/util/palette.cpp
+++ b/src/lib/util/palette.cpp
@@ -8,12 +8,12 @@
******************************************************************************/
-#include <cassert>
-
#include "palette.h"
-#include <cstdlib>
-#include <cmath>
+
#include <algorithm>
+#include <cassert>
+#include <cmath>
+#include <cstdlib>
//**************************************************************************
@@ -44,9 +44,7 @@ inline rgb_t palette_t::adjust_palette_entry(rgb_t entry, float brightness, floa
// dirty_state - constructor
//-------------------------------------------------
-palette_client::dirty_state::dirty_state()
- : m_mindirty(0),
- m_maxdirty(0)
+palette_client::dirty_state::dirty_state() : m_mindirty(0), m_maxdirty(0)
{
}
@@ -56,7 +54,7 @@ palette_client::dirty_state::dirty_state()
// min/max values
//-------------------------------------------------
-const uint32_t *palette_client::dirty_state::dirty_list(uint32_t &mindirty, uint32_t &maxdirty)
+const uint32_t *palette_client::dirty_state::dirty_list(uint32_t &mindirty, uint32_t &maxdirty) noexcept
{
// fill in the mindirty/maxdirty
mindirty = m_mindirty;
@@ -92,7 +90,7 @@ void palette_client::dirty_state::resize(uint32_t colors)
// mark_dirty - mark a single entry dirty
//-------------------------------------------------
-void palette_client::dirty_state::mark_dirty(uint32_t index)
+void palette_client::dirty_state::mark_dirty(uint32_t index) noexcept
{
m_dirty[index / 32] |= 1 << (index % 32);
m_mindirty = std::min(m_mindirty, index);
@@ -105,7 +103,7 @@ void palette_client::dirty_state::mark_dirty(uint32_t index)
// entries as clean
//-------------------------------------------------
-void palette_client::dirty_state::reset()
+void palette_client::dirty_state::reset() noexcept
{
// erase relevant entries in the new live one
if (m_mindirty <= m_maxdirty)
@@ -168,20 +166,18 @@ palette_client::~palette_client()
// list for a client
//-------------------------------------------------
-const uint32_t *palette_client::dirty_list(uint32_t &mindirty, uint32_t &maxdirty)
+const uint32_t *palette_client::dirty_list(uint32_t &mindirty, uint32_t &maxdirty) noexcept
{
// if nothing to report, report nothing and don't swap
- const uint32_t *result = m_live->dirty_list(mindirty, maxdirty);
- if (result == nullptr)
- return nullptr;
-
- // swap the live and previous lists
- dirty_state *temp = m_live;
- m_live = m_previous;
- m_previous = temp;
+ uint32_t const *const result = m_live->dirty_list(mindirty, maxdirty);
+ if (result)
+ {
+ // swap the live and previous lists
+ std::swap(m_live, m_previous);
- // reset new live one and return the pointer to the previous
- m_live->reset();
+ // reset new live one and return the pointer to the previous
+ m_live->reset();
+ }
return result;
}
@@ -266,7 +262,7 @@ palette_t::~palette_t()
// palette_t - destructor
//-------------------------------------------------
-void palette_t::deref()
+void palette_t::deref() noexcept
{
if (--m_refcount == 0)
delete this;