final week updates

Final Evaluation Updates

In this post I am concluding the work done during my GSOC period. I will outline the basic work done, results achieved and how to use the tools I have developed. Also I will provide a demo of the work done.

Work Completed

I have developed and thoroughly tested RCMaster. Also I have changed the C++ and python components to use RCMaster. Also these changes are incorporated into the code generator so that even the future components will use RCMaster by default.

I will list down the features of RCMaster now:


Here I will describe how to generate a sample component and how to run it

First write the cdsl description of the component client1.cdsl

import "/robocomp/interfaces/IDSLs/RCMaster.idsl";
import "/robocomp/interfaces/IDSLs/Test.idsl";
import "/robocomp/interfaces/IDSLs/ASR.idsl";

Component client1{
    	requires rcmaster;
    	implements ASR,test;
	language Python;

Now generate the component by running robocompdsl client1.cdsl ./

Now generate another component client2.cdsl by running robocompdsl client2.cdsl ./

import "/robocomp/interfaces/IDSLs/RCMaster.idsl";
import "/robocomp/interfaces/IDSLs/Test.idsl";
import "/robocomp/interfaces/IDSLs/ASR.idsl";

Component client2{
    	requires rcmaster,test;
	language Python;
}; Now edit the client2 to use the test interface implemented by client1. Open `src/` file from the client2's directory and change the `@@COMP NAME HERE@@` to client1.

Edit the client to src/ in client 2 and add the below code in the compute function.

    self.proxyData["test"]["proxy"].printmsg("hello from " +
 except Ice.SocketException

Now edit the printmsg() in src/specificworker to add the below line

print message

Now we can run all the components.

First start the RCMaster and then the components

src/    This will start RCMaster.    Now start client2 , then you can see that the client 2 is waiting for client1
src/ –Ice.Config=etc/config

Now start client1

    src/ --Ice.Config=etc/config

Now you can see the client1 printing “Hello from Client2” periodically. Play around

Demo video

You can see the video of the above demo here

All Commits





Yash Sanap