summaryrefslogtreecommitdiffstats
path: root/sigencore
diff options
context:
space:
mode:
authorBen Boeckel <MathStuf@gmail.com>2009-03-06 11:40:24 -0500
committerBen Boeckel <MathStuf@gmail.com>2009-03-06 11:40:24 -0500
commit9b6f03727ac458b52a21d4a6a516c99c58189a76 (patch)
treeeda1b3752ba87eb3bd9c27e064d3fc8188def28d /sigencore
parent78025d448d02a6ad89bef252537e2448426d3b9c (diff)
downloadsigen-9b6f03727ac458b52a21d4a6a516c99c58189a76.tar.gz
sigen-9b6f03727ac458b52a21d4a6a516c99c58189a76.tar.xz
sigen-9b6f03727ac458b52a21d4a6a516c99c58189a76.zip
Fix up ActionMap
Diffstat (limited to 'sigencore')
-rw-r--r--sigencore/plugins/arenas/atb/ActionMap.cpp14
-rw-r--r--sigencore/plugins/arenas/atb/ActionMap.h7
2 files changed, 15 insertions, 6 deletions
diff --git a/sigencore/plugins/arenas/atb/ActionMap.cpp b/sigencore/plugins/arenas/atb/ActionMap.cpp
index 31d7e804..e8bd66bd 100644
--- a/sigencore/plugins/arenas/atb/ActionMap.cpp
+++ b/sigencore/plugins/arenas/atb/ActionMap.cpp
@@ -24,7 +24,7 @@
using namespace Sigencore;
-bool ActionMap::contains(TeamMember* teamMember)
+bool ActionMap::contains(TeamMember* teamMember) const
{
QReadLocker locker(&m_mutex);
return m_map.contains(teamMember);
@@ -36,14 +36,20 @@ int ActionMap::remove(TeamMember* teamMember)
return m_map.remove(teamMember);
}
-const TeamMember::RequestedAction ActionMap::operator[](TeamMember* teamMember) const
+bool ActionMap::isEmpty() const
{
QReadLocker locker(&m_mutex);
- return m_map[teamMember];
+ return m_map.isEmpty();
}
-TeamMember::RequestedAction& ActionMap::operator[](TeamMember* teamMember)
+void ActionMap::set(TeamMember* teamMember, const TeamMember::RequestedAction& action)
{
QWriteLocker locker(&m_mutex);
+ m_map[teamMember] = action;
+}
+
+const TeamMember::RequestedAction ActionMap::operator[](TeamMember* teamMember) const
+{
+ QReadLocker locker(&m_mutex);
return m_map[teamMember];
}
diff --git a/sigencore/plugins/arenas/atb/ActionMap.h b/sigencore/plugins/arenas/atb/ActionMap.h
index 3178f185..7c65a97e 100644
--- a/sigencore/plugins/arenas/atb/ActionMap.h
+++ b/sigencore/plugins/arenas/atb/ActionMap.h
@@ -28,11 +28,14 @@
class ActionMap
{
public:
- bool contains(Sigencore::TeamMember* teamMember);
+ bool contains(Sigencore::TeamMember* teamMember) const;
int remove(Sigencore::TeamMember* teamMember);
+ bool isEmpty() const;
+
+ void set(Sigencore::TeamMember* teamMember, const Sigencore::TeamMember::RequestedAction& action);
+
const Sigencore::TeamMember::RequestedAction operator[](Sigencore::TeamMember* teamMember) const;
- Sigencore::TeamMember::RequestedAction& operator[](Sigencore::TeamMember* teamMember);
private:
QMap<Sigencore::TeamMember*, Sigencore::TeamMember::RequestedAction> m_map;
mutable QReadWriteLock m_mutex;