bool WireTwiddler::write(yarp::os::Bottle& bot, yarp::os::ManagedBytes& data) { StringOutputStream sos; if (!writer) { writer = ConnectionWriter::createBufferedConnectionWriter(); } if (!writer) { return false; } SizedWriter *buf = writer->getBuffer(); if (!buf) { return false; } buf->clear(); bot.write(*writer); WireTwiddlerWriter twiddled_output(*buf,*this); twiddled_output.write(sos); std::string result = sos.toString(); data = ManagedBytes(Bytes((char*)result.c_str(),result.length()),false); data.copy(); return true; }