summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorWolf Bergenheim <ext-wolf.2.bergenheim@nokia.com>2010-01-22 14:29:12 +0200
committerWolf Bergenheim <ext-wolf.2.bergenheim@nokia.com>2010-01-22 14:29:12 +0200
commit9f3e54044fd1e0c26153195f91889342a8425b7f (patch)
tree71bcfde9546045b27d22a3c7265015ccec07ff22 /include
parentcfb16c2a93650ac2e0c9677bce11ed101aceffb0 (diff)
added ResourceSet
Diffstat (limited to 'include')
-rw-r--r--include/resource-set.h41
-rw-r--r--include/resource.h7
2 files changed, 46 insertions, 2 deletions
diff --git a/include/resource-set.h b/include/resource-set.h
new file mode 100644
index 0000000..b62e5cd
--- /dev/null
+++ b/include/resource-set.h
@@ -0,0 +1,41 @@
+#ifndef RESOURCE_SET_H
+#define RESOURCE_SET_H
+
+#include "resource.h"
+#include <QString>
+#include <QObject>
+#include <QSet>
+
+namespace ResourcePolicy
+{
+ class ResourceSet: public QObject
+ {
+ Q_OBJECT
+ Q_DISABLE_COPY( ResourceSet )
+ public:
+ ResourceSet(const QString &applicationClass);
+ ~ResourceSet();
+
+ void addResource(const Resource &resource);
+ void addResources(const QSet<Resource> &resources);
+ void setResources(const QSet<Resource> &resources);
+ QSet<Resource> resources();
+
+ bool contains(const Resource &resource) const;
+ bool contains(const QSet<Resource> &resources) const;
+
+ quint32 id() const;
+ signals:
+ void resourcesBecameAvailable(QSet<Resource> resources);
+ void resourcesAcquired(QSet<Resource> grantedResources);
+ void resourcesDenied();
+ void lostResources();
+
+ private:
+ quint32 identifier;
+ const QString applicationClass;
+ QSet<Resource> resourceSet;
+ };
+}
+
+#endif
diff --git a/include/resource.h b/include/resource.h
index eed05c6..3d71de6 100644
--- a/include/resource.h
+++ b/include/resource.h
@@ -1,7 +1,8 @@
#ifndef RESOURCE_H
#define RESOURCE_H
-#include <QtGlobal>
+#include <QtCore>
+
namespace ResourcePolicy {
/**
@@ -40,7 +41,7 @@ namespace ResourcePolicy {
quint32 id() const;
void setId(quint32 newId);
- bool operator==(const Resource &other);
+ bool operator==(const Resource &other) const;
private:
ResourceType resourceType;
bool optional;
@@ -48,5 +49,7 @@ namespace ResourcePolicy {
quint32 identifier;
};
+ uint qHash(const ResourcePolicy::Resource &key);
}
+
#endif