<feed xmlns='http://www.w3.org/2005/Atom'>
<title>BobinkQtOpcUa/src/BobinkNode.cpp, branch master</title>
<subtitle>High-level C++/QML library for making OPC UA applications with Qt Quick</subtitle>
<id>http://git.tvcloud.fr/BobinkQtOpcUa/atom/src/BobinkNode.cpp?h=master</id>
<link rel='self' href='http://git.tvcloud.fr/BobinkQtOpcUa/atom/src/BobinkNode.cpp?h=master'/>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/BobinkQtOpcUa/'/>
<updated>2026-02-20T09:41:09Z</updated>
<entry>
<title>Rename classes to OpcUa* prefix, replace BobinkNode with OpcUaMonitoredNode boilerplate</title>
<updated>2026-02-20T09:41:09Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-02-20T09:41:09Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/BobinkQtOpcUa/commit/?id=0012cb312e92c33f5263478d318eb82da22ee879'/>
<id>urn:sha1:0012cb312e92c33f5263478d318eb82da22ee879</id>
<content type='text'>
Rename BobinkAuth → OpcUaAuth, BobinkClient → OpcUaClient (C++ class
names only; QML module URI and singleton name stay as Bobink).
Remove BobinkNode (QQuickItem-based) and add OpcUaMonitoredNode
skeleton using QObject + QQmlParserStatus, following Qt convention
for non-visual QML types.
</content>
</entry>
<entry>
<title>Reorganize BobinkClient by domain and make s_instance private</title>
<updated>2026-02-19T21:31:16Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-02-19T21:31:16Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/BobinkQtOpcUa/commit/?id=364430e417600c68133673254b58b4d35608777a'/>
<id>urn:sha1:364430e417600c68133673254b58b4d35608777a</id>
<content type='text'>
Group header and source by domain (Connection, Discovery, PKI) so
properties, methods, and signal handlers live together. Move enums
before constructor, move s_instance to private, and add a public
instance() accessor used by BobinkNode.
</content>
</entry>
<entry>
<title>Rename QML singleton to Bobink and simplify singleton lifecycle</title>
<updated>2026-02-19T17:00:52Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-02-19T17:00:52Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/BobinkQtOpcUa/commit/?id=e73fe498e86dbb20d74f8d6ca13b541642676b82'/>
<id>urn:sha1:e73fe498e86dbb20d74f8d6ca13b541642676b82</id>
<content type='text'>
Replace QML_ELEMENT with QML_NAMED_ELEMENT(Bobink) so QML references
use `Bobink` instead of `BobinkClient`. Remove instance()/create()
factory in favor of inline s_instance set in the constructor. Import
BobinkPlugin statically in demo, link demo to BobinkQtOpcUaplugin,
and make library link dependencies PUBLIC. Add .qtcreator to gitignore.
</content>
</entry>
<entry>
<title>Log attribute reads to debug console and replace raw C++ types with Qt equivalents</title>
<updated>2026-02-19T11:29:05Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-02-19T11:29:05Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/BobinkQtOpcUa/commit/?id=50c62c35463b62a3a7acebf9ebe22d44f1c6dca2'/>
<id>urn:sha1:50c62c35463b62a3a7acebf9ebe22d44f1c6dca2</id>
<content type='text'>
Connect QOpcUaNode::attributeRead signal to new handler that logs
read results (value or error code) to the debug console via
BobinkClient::statusMessage. Add nameFromAttribute() helper.

Replace const char* arrays with QLatin1StringView, bare string
literals with QStringLiteral, uint with quint32, int with qint32.
Rename statusLog to debugLog in Main.qml for consistency.
</content>
</entry>
<entry>
<title>Add BobinkNode QML type and two-page demo for node monitoring</title>
<updated>2026-02-19T05:18:29Z</updated>
<author>
<name>Thomas Vanbesien</name>
<email>tvanbesi@proton.me</email>
</author>
<published>2026-02-19T05:18:29Z</published>
<link rel='alternate' type='text/html' href='http://git.tvcloud.fr/BobinkQtOpcUa/commit/?id=0c1df583acba434e2d7f6905a30fdefe288d0f9d'/>
<id>urn:sha1:0c1df583acba434e2d7f6905a30fdefe288d0f9d</id>
<content type='text'>
BobinkNode (QQuickItem) monitors a single OPC UA node with
automatic lifecycle: monitoring starts/stops based on item
visibility (StackView page switches, Loader, etc.).

Properties: nodeId, value (r/w), status, sourceTimestamp,
serverTimestamp. On-demand readAttribute() for metadata.
writeError signal for failed writes.

Demo restructured with StackView: connection page → two node
pages demonstrating the visibility-based monitoring lifecycle.
</content>
</entry>
</feed>
