Files
gitea-pages/software/CSDataQuick/docs/qcsdataengine.html
T
2025-07-08 08:18:09 +02:00

197 lines
12 KiB
HTML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- csdataengine.cpp -->
<title>QCSDataEngine Class | CSDataQuick Documentation 1.2</title>
<link rel="stylesheet" type="text/css" href="style/online.css" />
<script type="text/javascript">
(function (i, s, o, g, r, a, m) {
i['GoogleAnalyticsObject'] = r; i[r] = i[r] || function () {
(i[r].q = i[r].q || []).push(arguments)
}, i[r].l = 1 * new Date(); a = s.createElement(o),
m = s.getElementsByTagName(o)[0]; a.async = 1; a.src = g; m.parentNode.insertBefore(a, m)
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
ga('create', 'UA-24645639-4', 'qt.io');
ga('set', 'forceSSL', true);
ga('send', 'pageview');
</script>
</head>
<body>
<div class="header" id="header">
<header id="navbar" class="">
</header>
</div>
<div class="main">
<div class="main-rounded">
<div class="navigationbar">
<ul class="sub-navigation">
<li><a href="../../CSDataQuick.html">Home</a></li>
<li><a href="../docs.html" class="active">Documentation</a></li>
<li><a href="http://github.com/xiaoqiangwang/CSDataQuick/">Code</a></li>
<li><a href="https://github.com/xiaoqiangwang/CSDataQuick/issues/">Bug Reports</a></li>
</ul>
<div id="main_title_bar">
<h1>CSDataQuick Documentation</h1>
<div class="search_bar">
<script>
(function() {
var cx = '001693341472456439948:u9v0snkru3q';
var gcse = document.createElement('script');
gcse.type = 'text/javascript';
gcse.async = true;
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') + '//www.google.com/cse/cse.js?cx=' + cx;
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(gcse, s);
})();
</script>
<gcse:searchbox-only resultsUrl="search-results.html"></gcse:searchbox-only>
</div></div>
<ul>
<li><a href="index.html">CSDataQuick Documentation</a></li>
<li><a href="csdataquick-cpp.html">C++ Classes</a></li>
<li>QCSDataEngine</li>
</ul>
</div>
<div class="content">
<div class="line">
<div class="content mainContent">
<div class="sidebar">
<div class="toc">
<h3><a name="toc">Contents</a></h3>
<ul>
<li class="level1"><a href="qcsdataengine.html#properties">Properties</a></li>
<li class="level1"><a href="qcsdataengine.html#public-functions">Public Functions</a></li>
<li class="level1"><a href="qcsdataengine.html#signals">Signals</a></li>
<li class="level1"><a href="qcsdataengine.html#details">Detailed Description</a></li>
</ul>
</div>
<div class="sidebar-content" id="sidebar-content"></div></div>
<div class="context">
<h1 class="title">QCSDataEngine Class</h1>
<!-- $$$QCSDataEngine-brief -->
<p>The <a href="qcsdataengine.html">QCSDataEngine</a> class defines the interface of data engine. <a href="qcsdataengine.html#details">More...</a></p>
<!-- @@@QCSDataEngine -->
<div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> Header:</td><td class="memItemRight bottomAlign"> <span class="preprocessor">#include &lt;QCSDataEngine&gt;</span>
</td></tr><tr><td class="memItemLeft rightAlign topAlign"> Inherits:</td><td class="memItemRight bottomAlign"> <a href="http://doc.qt.io/qt-5/qobject.html">QObject</a></td></tr><tr><td class="memItemLeft rightAlign topAlign"> Inherited By:</td><td class="memItemRight bottomAlign"> <p><a href="qcsdataengineca.html">QCSDataEngineCA</a>, <a href="qcsdataenginelocal.html">QCSDataEngineLocal</a>, and <a href="qcsdataenginesim.html">QCSDataEngineSim</a></p>
</td></tr></table></div><ul>
<li><a href="qcsdataengine-members.html">List of all members, including inherited members</a></li>
</ul>
<a name="properties"></a>
<h2 id="properties">Properties</h2>
<ul>
<li class="fn"><b><a href="qcsdataengine.html#allData-prop">allData</a></b> : ObjectModel * const</li>
<li class="fn"><b><a href="qcsdataengine.html#description-prop">description</a></b> : const QString</li>
<li class="fn"><b><a href="qcsdataengine.html#name-prop">name</a></b> : const QString</li>
</ul>
<ul>
<li class="fn">1 property inherited from <a href="http://doc.qt.io/qt-5/qobject.html#properties">QObject</a></li>
</ul>
<a name="public-functions"></a>
<h2 id="public-functions">Public Functions</h2>
<div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="qcsdataengine.html#QCSDataEngine">QCSDataEngine</a></b>(QObject *<i>parent</i>)</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> virtual </td><td class="memItemRight bottomAlign"><b><a href="qcsdataengine.html#dtor.QCSDataEngine">~QCSDataEngine</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> virtual ObjectModel *</td><td class="memItemRight bottomAlign"><b><a href="qcsdataengine.html#allData-prop">allData</a></b>() = 0</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> virtual void </td><td class="memItemRight bottomAlign"><b><a href="qcsdataengine.html#close">close</a></b>(QCSData *<i>data</i>) = 0</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> virtual void </td><td class="memItemRight bottomAlign"><b><a href="qcsdataengine.html#create">create</a></b>(QCSData *<i>data</i>) = 0</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> virtual QString </td><td class="memItemRight bottomAlign"><b><a href="qcsdataengine.html#description-prop">description</a></b>() = 0</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> virtual QString </td><td class="memItemRight bottomAlign"><b><a href="qcsdataengine.html#name-prop">name</a></b>() = 0</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> virtual void </td><td class="memItemRight bottomAlign"><b><a href="qcsdataengine.html#setValue">setValue</a></b>(QCSData *<i>data</i>, const QVariant <i>value</i>) = 0</td></tr>
</table></div>
<ul>
<li class="fn">32 public functions inherited from <a href="http://doc.qt.io/qt-5/qobject.html#public-functions">QObject</a></li>
</ul>
<a name="signals"></a>
<h2 id="signals">Signals</h2>
<div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="qcsdataengine.html#allData-prop">allDataChanged</a></b>()</td></tr>
</table></div>
<ul>
<li class="fn">2 signals inherited from <a href="http://doc.qt.io/qt-5/qobject.html#signals">QObject</a></li>
</ul>
<h3>Additional Inherited Members</h3>
<ul>
<li class="fn">1 public slot inherited from <a href="http://doc.qt.io/qt-5/qobject.html#public-slots">QObject</a></li>
<li class="fn">1 public variable inherited from <a href="http://doc.qt.io/qt-5/qobject.html#public-variables">QObject</a></li>
<li class="fn">10 static public members inherited from <a href="http://doc.qt.io/qt-5/qobject.html#static-public-members">QObject</a></li>
<li class="fn">9 protected functions inherited from <a href="http://doc.qt.io/qt-5/qobject.html#protected-functions">QObject</a></li>
<li class="fn">2 protected variables inherited from <a href="http://doc.qt.io/qt-5/qobject.html#protected-variables">QObject</a></li>
</ul>
<a name="details"></a>
<!-- $$$QCSDataEngine-description -->
<div class="descr">
<h2 id="details">Detailed Description</h2>
<p>The <a href="qcsdataengine.html">QCSDataEngine</a> class defines the interface of data engine.</p>
<p>This is the base class for data engines, which define the interface to create, delete and interact with <a href="qcsdata.html">QCSData</a> objects.</p>
<p>Data engines are loaded as plugins on demand and provide zero, one or more data sources which are identified by name.</p>
</div>
<!-- @@@QCSDataEngine -->
<div class="prop">
<h2>Property Documentation</h2>
<!-- $$$allData-prop$$$allData$$$allDataChanged -->
<h3 class="fn" id="allData-prop"><a name="allData-prop"></a><span class="name">allData</span> : <span class="type">ObjectModel</span> * const</h3>
<p><a href="http://doc.qt.io/qt-5/qml-qtqml-models-objectmodel.html">ObjectModel</a> that contains all <a href="qcsdata.html">QCSData</a> objects created by this data engine.</p>
<p><b>Access functions:</b></p>
<div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft topAlign rightAlign"> virtual ObjectModel *</td><td class="memItemRight bottomAlign"><span class="name"><b>allData</b></span>() = 0</td></tr>
</table></div>
<p><b>Notifier signal:</b></p>
<div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>allDataChanged</b></span>()</td></tr>
</table></div>
<!-- @@@allData -->
<!-- $$$description-prop$$$description -->
<h3 class="fn" id="description-prop"><a name="description-prop"></a><span class="name">description</span> : const <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span></h3>
<p>Descriptive text of this data engine.</p>
<p><b>Access functions:</b></p>
<div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft topAlign rightAlign"> virtual QString </td><td class="memItemRight bottomAlign"><span class="name"><b>description</b></span>() = 0</td></tr>
</table></div>
<!-- @@@description -->
<!-- $$$name-prop$$$name -->
<h3 class="fn" id="name-prop"><a name="name-prop"></a><span class="name">name</span> : const <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span></h3>
<p>Name of the data engine as used in the data source scheme.</p>
<p><b>Access functions:</b></p>
<div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft topAlign rightAlign"> virtual QString </td><td class="memItemRight bottomAlign"><span class="name"><b>name</b></span>() = 0</td></tr>
</table></div>
<p><b>See also </b><a href="qcsdata.html#source-prop">QCSData::source</a>.</p>
<!-- @@@name -->
</div>
<div class="func">
<h2>Member Function Documentation</h2>
<!-- $$$QCSDataEngine[overload1]$$$QCSDataEngineQObject* -->
<h3 class="fn" id="QCSDataEngine"><a name="QCSDataEngine"></a>QCSDataEngine::<span class="name">QCSDataEngine</span>(<span class="type"><a href="http://doc.qt.io/qt-5/qobject.html#QObject">QObject</a></span> *<i>parent</i>)</h3>
<p>Default constructs an instance of QCSDataEngine.</p><!-- @@@QCSDataEngine -->
<!-- $$$~QCSDataEngine[overload1]$$$~QCSDataEngine -->
<h3 class="fn" id="dtor.QCSDataEngine"><a name="dtor.QCSDataEngine"></a><code>[virtual] </code>QCSDataEngine::<span class="name">~QCSDataEngine</span>()</h3>
<p>Destroys the instance of QCSDataEngine. The destructor is virtual.</p><!-- @@@~QCSDataEngine -->
<!-- $$$close[overload1]$$$closeQCSData* -->
<h3 class="fn" id="close"><a name="close"></a><code>[pure virtual] </code><span class="type">void</span> QCSDataEngine::<span class="name">close</span>(<span class="type"><a href="qcsdata.html">QCSData</a></span> *<i>data</i>)</h3>
<p>Closes the <i>data</i> object's connection to the source.</p>
<p>The data engine must implements this to release the connection to the source and remove it from <a href="qcsdataengine.html#allData-prop">allData</a>.</p>
<!-- @@@close -->
<!-- $$$create[overload1]$$$createQCSData* -->
<h3 class="fn" id="create"><a name="create"></a><code>[pure virtual] </code><span class="type">void</span> QCSDataEngine::<span class="name">create</span>(<span class="type"><a href="qcsdata.html">QCSData</a></span> *<i>data</i>)</h3>
<p>Connects the source to the <i>data</i> object.</p>
<p>The data engine must implements this to check whether the data source is valid, and if so add it to <a href="qcsdataengine.html#allData-prop">allData</a>. The data engine possibly retrieves the information from the source and populates <i>data</i> properties.</p>
<!-- @@@create -->
<!-- $$$setValue[overload1]$$$setValueQCSData*constQVariant -->
<h3 class="fn" id="setValue"><a name="setValue"></a><code>[pure virtual] </code><span class="type">void</span> QCSDataEngine::<span class="name">setValue</span>(<span class="type"><a href="qcsdata.html">QCSData</a></span> *<i>data</i>, const <span class="type"><a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a></span> <i>value</i>)</h3>
<p>Sets a new <i>value</i> for the <i>data</i>'s source.</p>
<p>The data engine must implements this to accept requests to change the <i>data</i> source's value.</p>
<!-- @@@setValue -->
</div>
</div>
</div>
</div>
</div>
</div>
<div class="footer">Copyright (C) 2012-2021 Xiaoqiang Wang, Paul Scherrer Institute.</div>
</body>
</html>