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
QRemoteObjectRegistryHost regNode(QUrl(QStringLiteral("local:registry"
))); // create node that hosts registry
QRemoteObjectHost srcNode(QUrl(QStringLiteral("local:switch"
)), QUrl(QStringLiteral("local:registry"
))); // create node that will host source and connect to 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.