From 381719b9a0adb8553a041633aed943f5ef48a1ff Mon Sep 17 00:00:00 2001 From: Wolf Bergenheim Date: Tue, 9 Feb 2010 12:07:31 +0200 Subject: Restructured libresourceqt includes, updated debianpackages to soversion=1. Fixed ResourceEngine to work with the new Resource object. --- libresourceqt/include/qt4/policy/resource.h | 80 +++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 libresourceqt/include/qt4/policy/resource.h (limited to 'libresourceqt/include/qt4/policy/resource.h') diff --git a/libresourceqt/include/qt4/policy/resource.h b/libresourceqt/include/qt4/policy/resource.h new file mode 100644 index 0000000..13265d5 --- /dev/null +++ b/libresourceqt/include/qt4/policy/resource.h @@ -0,0 +1,80 @@ +#ifndef RESOURCE_H +#define RESOURCE_H + +#include + +namespace ResourcePolicy { + enum ResourceType { + AudioPlaybackType = 0, + VideoPlaybackType, + AudioRecorderType, + VideoRecorderType, + VibraType, + LedsType, + BacklightType, + SystemButtonType, + LockButtonType, + ScaleButtonType, + SnapButtonType, + LensCoverType, + NumberOfTypes + }; + + /** + * This class is the super class for all resources. It represents a generic + * \ref Resource. The type specific resource classes should be used. + */ + class Resource + { + public: + /** + * Whether or not this resource is optional, in that it doesn't need to + * be available for the set to be acquired. + * \return true when this resource is optional. + */ + bool isOptional() const; + /** + * Set the resource to be optional or mandatory. + * \param resourceIsOptional This optional parameter defaults to true. + * The default, true, results in the resource becoming optional. When it + * is set to false the resource becomes mandatory. + */ + void setOptional(bool resourceIsOptional=true); + /** + * Whether or not the resource to be shared. If it is shared then other + * programs are allowed to share this resource. + * \return true when this resource is shared. + */ + bool isShared() const; + /** + * Sets the resource to be shared/private. + * \param resourceIsShared This optional parameter defaults to true. + * When it is set to true (de default) the resource is shared with + * other programs. Setting it to false makes this resource exclusive. + */ + void setShared(bool resourceIsShared=true); + /** + * Whether or not this resource has been granted. + * \return true if this resource has been granted. + */ + bool isGranted() const; + void setGranted(); + void unsetGranted(); + + virtual ResourceType type() const = 0; + virtual Resource * clone() const = 0; + virtual ~Resource(); + protected: + Resource(); + Resource(const Resource &other); + + ResourceType resourceType; + bool optional; + bool shared; + quint32 identifier; + bool granted; + }; +} + +#endif + -- cgit v1.2.3