On Fri, Mar 12, 2010 at 10:20, mk <apollo...@gmail.com> wrote:
> Thanks for reply !!
>
> Could you please give an example? I tried several ways from this
> morning but  as I am a new user of protbuf, I don't see what way to
> follow ... Thanks!

Have a look at the documentation, it is full of examples how to
serialize/deserialize.

-h

>
>
> On Mar 12, 6:38 pm, Kenton Varda <ken...@google.com> wrote:
>> Wait.
>>
>>
>>
>> On Fri, Mar 12, 2010 at 9:29 AM, mk <apollo...@gmail.com> wrote:
>> > Hi,
>>
>> > I am trying to send a proto over a socket, but i am getting
>> > segmentation error.  Could someone please help and tell me what is
>> > wrong with this?
>>
>> > file.proto
>> > message data{
>> >        required string x1 = 1;
>> >        required uint32 x2 = 2;
>> >        required float x3 = 3;
>> > }
>>
>> > client.cpp
>> > ...
>> >    // class defined in proto
>> >    data data_snd;
>> >    data data_rec;
>>
>> >    char *y1 = "operation1";
>> >    uint32_t y2 = 123 ;
>> >    float y3 = 3.14;
>>
>> >    // assigning data to send()
>> >    data_snd.set_x1(y1);
>> >    data_snd.set_x2(y2);
>> >    data_snd.set_x3(y3);
>>
>> >    //sending data to the server
>> >    if (send(socket, &data_snd, sizeof(data_snd), 0) < 0) {
>>
>> You can't do that.
>>
>> You have to use one of the Serialize methods.
>>
>> >       cerr << "send() failed" ;
>> >       exit(1);
>> >     }
>>
>> >     //receiving data from the client
>> >     if (recv(socket, &data_rcv, sizeof(data_rcv), 0) < 0) {
>> >        cerr << "recv() failed";
>> >        exit(1);
>> >     }
>>
>> >     //printing received data
>> >     cout << data_rec.x1() << "\n";
>> >     cout << data_rec.x2() << "\n";
>> >     cout << data_rec.x3() << "\n";
>> > ...
>>
>> > server.cpp
>> >  ...
>>
>> >     //receiving data from the client
>> >     if (recv(socket, &data_rcv, sizeof(data_rcv), 0) < 0) {
>> >        cerr << "recv() failed";
>> >        exit(1);
>> >     }
>>
>> >     //printing received data
>> >     cout << data_rec.x1() << "\n";
>> >     cout << data_rec.x2() << "\n";
>> >     cout << data_rec.x3() << "\n";
>>
>> >   // assigning data to send()
>> >    data_snd.set_x1(data_rec.x1());
>> >    data_snd.set_x2(data_rec.x2());
>> >    data_snd.set_x3(data_rec.x3());
>>
>> >    //sending data to the server
>> >    if (send(socket, &data_snd, sizeof(data_snd), 0) < 0) {
>> >       cerr << "send() failed" ;
>> >       exit(1);
>> >     }
>> > ...
>>
>> > Thanks for help and replies-
>>
>> > --
>> > You received this message because you are subscribed to the Google Groups
>> > "Protocol Buffers" group.
>> > To post to this group, send email to proto...@googlegroups.com.
>> > To unsubscribe from this group, send email to
>> > protobuf+unsubscr...@googlegroups.com<protobuf%2bunsubscr...@googlegroups.com>
>> > .
>> > For more options, visit this group at
>> >http://groups.google.com/group/protobuf?hl=en.
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Protocol Buffers" group.
> To post to this group, send email to proto...@googlegroups.com.
> To unsubscribe from this group, send email to 
> protobuf+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/protobuf?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To post to this group, send email to proto...@googlegroups.com.
To unsubscribe from this group, send email to 
protobuf+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/protobuf?hl=en.

Reply via email to