Add RDS info to virtual stations, convert to ProgramInfo.

Bug: b/36864090
Test: manual, VTS (none added)
Change-Id: Iad54f5abee4c722030ae118cb3c4d8ad64225b34
diff --git a/broadcastradio/1.1/default/VirtualProgram.cpp b/broadcastradio/1.1/default/VirtualProgram.cpp
index b418bf7..df12a3e 100644
--- a/broadcastradio/1.1/default/VirtualProgram.cpp
+++ b/broadcastradio/1.1/default/VirtualProgram.cpp
@@ -21,6 +21,28 @@
 namespace V1_1 {
 namespace implementation {
 
+using V1_0::MetaData;
+using V1_0::MetadataKey;
+using V1_0::MetadataType;
+
+VirtualProgram::operator ProgramInfo() const {
+    ProgramInfo info11 = {};
+    auto& info10 = info11.base;
+
+    info10.channel = channel;
+    info10.tuned = true;
+    info10.stereo = true;
+    info10.signalStrength = 100;
+
+    info10.metadata = hidl_vec<MetaData>({
+        {MetadataType::TEXT, MetadataKey::RDS_PS, {}, {}, programName, {}},
+        {MetadataType::TEXT, MetadataKey::TITLE, {}, {}, songTitle, {}},
+        {MetadataType::TEXT, MetadataKey::ARTIST, {}, {}, songArtist, {}},
+    });
+
+    return info11;
+}
+
 bool operator<(const VirtualProgram& lhs, const VirtualProgram& rhs) {
     return lhs.channel < rhs.channel;
 }