Remote object sharing (OO RPC)
-
Hi,
I want to share my latest work with you. My solution is a library that can share objects between server and client.
In simple example you have a class names User on server side you have a QList<User*> and in each client a User. When you have change a property of User on client side the related User in the list will be changed and it's notify will be emitted. Every methods in this classes is 2way, calling a method in server/client side will be call whole method or it's signal on other peer. Methodology in this lib is sync/async. Sync methods have several way for waiting (like QEventLoop, c++11 std::function callback, slot name callback, QMetaMethod for callback and qml function callback is next feature). Peers are generated with a simple command line tool.
It support multiple data type, in fact every type that can used with QVariant (even QPixmap) else pointers[!].
Some other feature like auto reconnect, singleton server object sharing and etc will be implemented.
I have develop core of this lib for real-time multi player game. But it can be use for every client/server based app. For more example take a look to RpcChat sample in repo.
This lib is in alpha state and it will be released as v0.1 if other developers like to have it.
Please fork and tell me any idea (like and dislike)
Excuse for my bad English!
https://github.com/HamedMasafi/noron