aboutsummaryrefslogtreecommitdiff
path: root/libcontextsubscriber/doc/html/contextpropertyinfo_8h-source.html
blob: 41d8d01d182041283eb4d8aad11804c3417a4de2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>libcontextsubscriber: contextpropertyinfo.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.8 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
    </ul>
  </div>
<h1>contextpropertyinfo.h</h1><a href="contextpropertyinfo_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
<a name="l00002"></a>00002 <span class="comment"> * Copyright (C) 2008 Nokia Corporation.</span>
<a name="l00003"></a>00003 <span class="comment"> *</span>
<a name="l00004"></a>00004 <span class="comment"> * Contact: Marius Vollmer &lt;marius.vollmer@nokia.com&gt;</span>
<a name="l00005"></a>00005 <span class="comment"> *</span>
<a name="l00006"></a>00006 <span class="comment"> * This library is free software; you can redistribute it and/or</span>
<a name="l00007"></a>00007 <span class="comment"> * modify it under the terms of the GNU Lesser General Public License</span>
<a name="l00008"></a>00008 <span class="comment"> * version 2.1 as published by the Free Software Foundation.</span>
<a name="l00009"></a>00009 <span class="comment"> *</span>
<a name="l00010"></a>00010 <span class="comment"> * This library is distributed in the hope that it will be useful, but</span>
<a name="l00011"></a>00011 <span class="comment"> * WITHOUT ANY WARRANTY; without even the implied warranty of</span>
<a name="l00012"></a>00012 <span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span>
<a name="l00013"></a>00013 <span class="comment"> * Lesser General Public License for more details.</span>
<a name="l00014"></a>00014 <span class="comment"> *</span>
<a name="l00015"></a>00015 <span class="comment"> * You should have received a copy of the GNU Lesser General Public</span>
<a name="l00016"></a>00016 <span class="comment"> * License along with this library; if not, write to the Free Software</span>
<a name="l00017"></a>00017 <span class="comment"> * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA</span>
<a name="l00018"></a>00018 <span class="comment"> * 02110-1301 USA</span>
<a name="l00019"></a>00019 <span class="comment"> *</span>
<a name="l00020"></a>00020 <span class="comment"> */</span>
<a name="l00021"></a>00021 
<a name="l00022"></a>00022 <span class="preprocessor">#ifndef CONTEXTPROPERTYINFO_H</span>
<a name="l00023"></a>00023 <span class="preprocessor"></span><span class="preprocessor">#define CONTEXTPROPERTYINFO_H</span>
<a name="l00024"></a>00024 <span class="preprocessor"></span>
<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;QVariant&gt;</span>
<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;QStringList&gt;</span>
<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;QObject&gt;</span>
<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;QDBusConnection&gt;</span>
<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;QMutex&gt;</span>
<a name="l00030"></a>00030 <span class="preprocessor">#include "<a class="code" href="contextproviderinfo_8h.html">contextproviderinfo.h</a>"</span>
<a name="l00031"></a>00031 
<a name="l00032"></a><a class="code" href="class_context_property_info.html">00032</a> <span class="keyword">class </span><a class="code" href="class_context_property_info.html" title="A class to introspect a context property details.">ContextPropertyInfo</a> : <span class="keyword">public</span> QObject
<a name="l00033"></a>00033 {
<a name="l00034"></a>00034     Q_OBJECT
<a name="l00035"></a>00035 
<a name="l00036"></a>00036 <span class="keyword">public</span>:
<a name="l00037"></a><a class="code" href="class_context_property_info.html#28c493f959d7a48c85dc86281c78479c">00037</a>     <span class="keyword">enum</span> <a class="code" href="class_context_property_info.html#28c493f959d7a48c85dc86281c78479c">ResolutionStrategy</a> { <a class="code" href="class_context_property_info.html#28c493f959d7a48c85dc86281c78479cfc7ad7e5ca4c9e873a59ca5fb40212f6">LastValue</a> };
<a name="l00038"></a>00038 
<a name="l00039"></a>00039     <span class="keyword">explicit</span> <a class="code" href="class_context_property_info.html#dd1b6db4bfb5c36cd6ae9b9352112c4c" title="Constructs a new ContextPropertyInfo for key with the given parent.">ContextPropertyInfo</a>(<span class="keyword">const</span> QString &amp;<a class="code" href="class_context_property_info.html#81b41c6e79e7914c78de43a0dc642eb9" title="Returns the full name of the introspected key.">key</a>, QObject *parent = 0);
<a name="l00040"></a>00040 
<a name="l00042"></a><a class="code" href="class_context_property_info.html#1c06eaa93db43664c42435c4a0394d8d">00042</a>     <span class="keyword">virtual</span> <a class="code" href="class_context_property_info.html#1c06eaa93db43664c42435c4a0394d8d" title="Destroys the object.">~ContextPropertyInfo</a>() {}
<a name="l00043"></a>00043 
<a name="l00044"></a>00044     QString <a class="code" href="class_context_property_info.html#81b41c6e79e7914c78de43a0dc642eb9" title="Returns the full name of the introspected key.">key</a>() <span class="keyword">const</span>;
<a name="l00045"></a>00045     QString <a class="code" href="class_context_property_info.html#d8b0cd1c2e29b63a0a672fd407ce4150" title="Returns the doc (documentation) for the introspected key.">doc</a>() <span class="keyword">const</span>;
<a name="l00046"></a>00046     QString <a class="code" href="class_context_property_info.html#7f8e0cc9c8439e6ec109a16a80a2d3fc" title="Returns the type name for the introspected key.">type</a>() <span class="keyword">const</span>;
<a name="l00047"></a>00047     <span class="keywordtype">bool</span> <a class="code" href="class_context_property_info.html#c5540a24a4610bb641f8e64a48d4f356" title="DEPRECATED Returns true if the key exists in the registry.">exists</a>() <span class="keyword">const</span>;
<a name="l00048"></a>00048     <span class="keywordtype">bool</span> <a class="code" href="class_context_property_info.html#054dbdee21942623bf6e9679903e4384" title="Returns true if the key is declared in the registry (it &amp;quot;exists&amp;quot;).">declared</a>() <span class="keyword">const</span>;
<a name="l00049"></a>00049     <span class="keywordtype">bool</span> <a class="code" href="class_context_property_info.html#9d270042f069bafc0f994b3b19804d8a" title="Returns true if the key is provided by someone.">provided</a>() <span class="keyword">const</span>;
<a name="l00050"></a>00050 
<a name="l00051"></a>00051     QString <a class="code" href="class_context_property_info.html#f2e6ee62ab7203f3750dc9851bf67868" title="DEPRECATED Returns the dbus name of the provider supplying this property/key.">providerDBusName</a>() <span class="keyword">const</span>;
<a name="l00052"></a>00052     QDBusConnection::BusType <a class="code" href="class_context_property_info.html#ee09f09db9cc631bc3d175cae7f0f671" title="DEPRECATED Returns the bus type of the provider supplying this property/key.">providerDBusType</a>() <span class="keyword">const</span>;
<a name="l00053"></a>00053 
<a name="l00054"></a>00054     QString <a class="code" href="class_context_property_info.html#b67e0d20a267bae467bd449358273fbc" title="DEPRECATED Returns the name of the plugin supplying this property.">plugin</a>() <span class="keyword">const</span>;
<a name="l00055"></a>00055     QString <a class="code" href="class_context_property_info.html#c638ba6bd9336c58174fa8bb20fa7d4e" title="DEPRECATED Returns the construction parameter for the Provider supplying this property...">constructionString</a>() <span class="keyword">const</span>;
<a name="l00056"></a>00056     <span class="keyword">virtual</span> <span class="keyword">const</span> QList&lt;ContextProviderInfo&gt; <a class="code" href="class_context_property_info.html#9260be377cc7d8124140701a7d72e62f" title="Returns a list of providers that provide this key.">providers</a>() <span class="keyword">const</span>;
<a name="l00057"></a>00057     <a class="code" href="class_context_property_info.html#28c493f959d7a48c85dc86281c78479c">ResolutionStrategy</a> <a class="code" href="class_context_property_info.html#4afd9d028d9d13f6e3fb9b7be1cb84d3" title="Returns resolution strategy for this property.">resolutionStrategy</a>() <span class="keyword">const</span>;
<a name="l00058"></a>00058 
<a name="l00059"></a>00059 <span class="keyword">protected</span>:
<a name="l00060"></a>00060     <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_context_property_info.html#2453fc77a1afba74a661d8c15836e69d" title="Called when people connect to signals.">connectNotify</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *signal);
<a name="l00061"></a>00061 
<a name="l00062"></a>00062 <span class="keyword">private</span>:
<a name="l00063"></a><a class="code" href="class_context_property_info.html#c3d71c5189748d3eee041c82864f995f">00063</a>     QString <a class="code" href="class_context_property_info.html#c3d71c5189748d3eee041c82864f995f" title="The name of the key his ContextPropertyInfo represents.">keyName</a>; 
<a name="l00064"></a><a class="code" href="class_context_property_info.html#d0b09926f8b67dd4bb2d9f2bc2a2c601">00064</a>     QString <a class="code" href="class_context_property_info.html#d0b09926f8b67dd4bb2d9f2bc2a2c601" title="Cached documentation of the key.">cachedDoc</a>; 
<a name="l00065"></a><a class="code" href="class_context_property_info.html#cf9a9eaef12257a6086db1f19d6cec16">00065</a>     QString <a class="code" href="class_context_property_info.html#cf9a9eaef12257a6086db1f19d6cec16" title="Cached (stored) type of the key.">cachedType</a>; 
<a name="l00066"></a><a class="code" href="class_context_property_info.html#d304f8389a3d9864af0fe795282a8c26">00066</a>     <span class="keywordtype">bool</span> <a class="code" href="class_context_property_info.html#d304f8389a3d9864af0fe795282a8c26" title="Cached state of the key (existance).">cachedDeclared</a>; 
<a name="l00067"></a><a class="code" href="class_context_property_info.html#9892898881029c982aa6003bd16c70d4">00067</a>     QList&lt;ContextProviderInfo&gt; <a class="code" href="class_context_property_info.html#9892898881029c982aa6003bd16c70d4" title="Cached list of providers for this key.">cachedProviders</a>; 
<a name="l00068"></a><a class="code" href="class_context_property_info.html#8f23781855ffcfbcbd979d9e410c493e">00068</a>     <span class="keyword">mutable</span> QMutex <a class="code" href="class_context_property_info.html#8f23781855ffcfbcbd979d9e410c493e" title="Lock for the cache.">cacheLock</a>; 
<a name="l00069"></a>00069 
<a name="l00070"></a>00070     QString <a class="code" href="class_context_property_info.html#f09ce2c166d9fa87ec4c3cba6b0cabee" title="DEPRECATED Returns the dbus name of the provider supplying this property/key.">providerDBusName_i</a>() <span class="keyword">const</span>;
<a name="l00071"></a>00071     QDBusConnection::BusType <a class="code" href="class_context_property_info.html#d4dc52a73150d57b19b2b37a07ff1342">providerDBusType_i</a>() <span class="keyword">const</span>;
<a name="l00072"></a>00072     QString <a class="code" href="class_context_property_info.html#38e61db02d8f588924d59b60a74a468a">plugin_i</a>() <span class="keyword">const</span>;
<a name="l00073"></a>00073     QString <a class="code" href="class_context_property_info.html#36db2252d9263d4f45aafaf57392d467">constructionString_i</a>() <span class="keyword">const</span>;
<a name="l00074"></a>00074 
<a name="l00075"></a>00075 <span class="keyword">private</span> slots:
<a name="l00076"></a>00076     <span class="keywordtype">void</span> <a class="code" href="class_context_property_info.html#4dedbecfb6d9c0c0b2be0329c20e405a" title="This slot is connected to the keyChanged signal of the actual infobackend instance...">onKeyChanged</a>(<span class="keyword">const</span> QString&amp; <a class="code" href="class_context_property_info.html#81b41c6e79e7914c78de43a0dc642eb9" title="Returns the full name of the introspected key.">key</a>);
<a name="l00077"></a>00077 
<a name="l00078"></a>00078 signals:
<a name="l00084"></a>00084     <span class="keywordtype">void</span> <a class="code" href="class_context_property_info.html#19bb4eb5067f8bd9504db7733b02be26" title="DEPRECATED, use changed() signal.">providerChanged</a>(<span class="keyword">const</span> QString&amp; newProvider);
<a name="l00085"></a>00085 
<a name="l00091"></a>00091     <span class="keywordtype">void</span> <a class="code" href="class_context_property_info.html#5c03f07e13e9decec21d9bcc415bd35c" title="DEPRECATED, use changed() signal.">providerDBusTypeChanged</a>(QDBusConnection::BusType newBusType);
<a name="l00092"></a>00092 
<a name="l00098"></a>00098     <span class="keywordtype">void</span> <a class="code" href="class_context_property_info.html#ffead559621ed710667dddafd240db58" title="DEPRECATED, use changed() signal.">typeChanged</a>(<span class="keyword">const</span> QString&amp; newType);
<a name="l00099"></a>00099 
<a name="l00106"></a>00106     <span class="keywordtype">void</span> <a class="code" href="class_context_property_info.html#9d4c44c032c884821a3cc643f759cbb2" title="DEPRECATED, use changed() signal.">existsChanged</a>(<span class="keywordtype">bool</span> <a class="code" href="class_context_property_info.html#c5540a24a4610bb641f8e64a48d4f356" title="DEPRECATED Returns true if the key exists in the registry.">exists</a>);
<a name="l00107"></a>00107 
<a name="l00114"></a>00114     <span class="keywordtype">void</span> <a class="code" href="class_context_property_info.html#37c67d07a2f0c361378ac79e6589a968" title="DEPRECATED, use changed() signal.">providedChanged</a>(<span class="keywordtype">bool</span> <a class="code" href="class_context_property_info.html#9d270042f069bafc0f994b3b19804d8a" title="Returns true if the key is provided by someone.">provided</a>);
<a name="l00115"></a>00115 
<a name="l00122"></a>00122     <span class="keywordtype">void</span> <a class="code" href="class_context_property_info.html#9523b5b197a619e783b8ba3780a391aa" title="DEPRECATED, use changed() signal.">pluginChanged</a>(QString <a class="code" href="class_context_property_info.html#b67e0d20a267bae467bd449358273fbc" title="DEPRECATED Returns the name of the plugin supplying this property.">plugin</a>, QString <a class="code" href="class_context_property_info.html#c638ba6bd9336c58174fa8bb20fa7d4e" title="DEPRECATED Returns the construction parameter for the Provider supplying this property...">constructionString</a>);
<a name="l00123"></a>00123 
<a name="l00127"></a>00127     <span class="keywordtype">void</span> <a class="code" href="class_context_property_info.html#9d85cc8d48f34bb01e168dac265b65a1" title="Emitted when any of the key parameters/data changes.">changed</a>(QString <a class="code" href="class_context_property_info.html#81b41c6e79e7914c78de43a0dc642eb9" title="Returns the full name of the introspected key.">key</a>);
<a name="l00128"></a>00128     
<a name="l00129"></a><a class="code" href="class_context_property_info.html#b6564dd36e6061c758e4af95c313ef9b">00129</a>     <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="class_context_property_info.html#b6564dd36e6061c758e4af95c313ef9b">ContextPropertyInfoUnitTest</a>;
<a name="l00130"></a>00130 };
<a name="l00131"></a>00131 
<a name="l00132"></a>00132 <span class="preprocessor">#endif // CONTEXTPROPERTYINFO_H</span>
</pre></div></div>
<hr size="1"><address style="text-align: right;"><small>Generated on Fri Oct 23 08:59:23 2009 for libcontextsubscriber by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
</body>
</html>