YARP  2.3.68+283-20170530.4+git10f9853
Yet Another Robot Platform
Talking to the ROS parameter server

YARP has no special support for the ROS parameter server, but can communicate with it via its network API.

Here is a command-line example:

yarp rpc /ros
>>setParam /demo foo 15
Response: 1 "parameter /foo set" 0
>>getParam /demo foo
Target disappeared, reconnecting...
Response: 1 "Parameter [/foo]" 15

From code, you could use a Bottle:

Network yarp;
Contact ros = Network::queryName("/ros");
printf("ROS available as %s\n", ros.toURI().c_str());
// set a parameter called "foo" to 15
Bottle cmd, reply;
cmd.addString("setParam");
cmd.addString("/demo");
cmd.addString("foo");
cmd.addInt(15);
Network::write(ros,cmd,reply);
printf("reply to setParam is: %s\n", reply.toString().c_str());
// read "foo" back
cmd.clear();
cmd.addString("getParam");
cmd.addString("/demo");
cmd.addString("foo");
Network::write(ros,cmd,reply);
printf("reply to getParam is: %s\n", reply.toString().c_str());
printf("Stored value is hopefully %d\n", reply.get(2).asInt());
return 0;

This should give:

ROS available as xmlrpc://127.0.0.1:11311
reply to setParam is: 1 "parameter /foo set" 0
reply to getParam is: 1 "Parameter [/foo]" 15
Stored value is hopefully 15