sorry for asking for advice so soon again.
I have progressed a bit futher and I am now trying to display decoded data.
For that purpose I have prepared some data and tried to decode them but I
have encountered problem with repeated structures and with nested messages.
I dont know how to get count of repeats in case of repeated fields so its
problematic to address them. In case of nested messages I have experiencing
difficulties how to get message.
Here is function I have made so far. Note that I am suspecting that it will
probably need some more tweaking so it can be called recursively (work
still in progress). For now I am satisfied just by displaying data on first
void ExpandSubMessage(Message *message, Descriptor *descriptor)
for (int i = 0; i < descriptor->field_count(); i++)
const FieldDescriptor* field = descriptor->field(i);
int nVal = message->GetReflection()->GetInt32(*message,
printf("%s = %d\n", field->name().c_str(), nVal);
std::string strVal =
printf("%s = %s\n", field->name().c_str(), strVal.c_str());
// case FieldDescriptor::TYPE_ENUM:
message->GetReflection()->GetEnum(*message, field); break;
printf("%s = %s\n", field->name().c_str(),
I have tried to look for details in specification on your pages but didn't
find anything that would answer my question.
May I once again ask for your assistance?
You received this message because you are subscribed to the Google Groups
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email
To post to this group, send email to firstname.lastname@example.org.
Visit this group at http://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/d/optout.