Set up the Source▲
The simpleswitch.h and simpleswitch.cpp sources from Example can be used without modification. The difference is in the way a host node is created and connected to the registry:
main.cpp
#include <QCoreApplication>
#include
"simpleswitch.h"
int
main(int
argc, char
*
argv[])
{
QCoreApplication a(argc, argv);
SimpleSwitch srcSwitch; // create SimpleSwitch
// Create node that hosts registry:
QRemoteObjectRegistryHost regNode(QUrl(QStringLiteral("local:registry"
)));
// Create node that will host source and connect to registry:
QRemoteObjectHost srcNode(QUrl(QStringLiteral("local:replica"
)),
QUrl(QStringLiteral("local:registry"
)));
// Note, you can add srcSwitch directly to regNode if desired.
// We use two Nodes here, as the regNode could easily be in a third process.
srcNode.enableRemoting(&
amp;srcSwitch); // enable remoting of source object
return
a.exec();
}
Set up the Replica▲
The requestor object used for this example is the dynamic replica client discussed in Example 2.
The only modification is in main.cpp: a Registry node is created to acquire a Replica:
QRemoteObjectNode repNode(QUrl(QStringLiteral("local:registry"
)));
When run together with the source-side example, the output is identical to Example 1.