Re: Question about GTK+ and timers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Paul,

On Fri, Apr 8, 2011 at 3:28 PM, Paul Davis <paul@xxxxxxxxxxxxxxxxxxxxx> wrote:
> On Fri, Apr 8, 2011 at 6:14 PM, Igor Korot <ikorot01@xxxxxxxxx> wrote:
>> Mikhail,
>>
>> On Fri, Apr 8, 2011 at 2:33 PM, Mikhail Titov <mlt@xxxxxx> wrote:
>>> As far as I understand it is possible to use it with NULL for encoding. It
>>> should just read bytes with no interpretation.
>>>
>>> http://www.mail-archive.com/gtk-list@xxxxxxxxx/msg29589.html
>>>
>>> Mikhail
>>
>> I understand this.
>> However, what I want is to read data in:
>>
>> struct Data
>> {
>>      char m_header[2];
>>      char m_code;
>>      char m_voltageMask[2];
>>     char m_highestVoltage[2];
>>     char m_lowestVoltage[2];
>>     char m_status;
>> } m_data;
>>
>> I need to look at voltageMask, highestVoltage and lowestVoltage initially.
>> Is it possible to use m_data with GIOChannel?
>
> of course.
>
> but you'd better hope that the compiler packs that data structure in
> the same way the device is sending it. you'd be far better off not
> using a struct for this, but just reading (in your case) 10 bytes.
>
> sending raw C structs over any kind of "wire protocol" almost always
> turns out to be huge mistake unless its been very carefully thought
> about.


So best way is to use char m_data[10]?

And then just get m_data[4], m_data[5], m_data[6], m_data[7],
m_data[8] and m_data[9]?

I am getting bytes over the wire thru the serial port and transfer is
performed on the client side.

read( handle, &m_data, 10 );

I am just getting 10 bytes which are represented on the client as
m_data members.

Am I wrong here? It's possible there will be a packing issue, but I'm
about to test this.

Thank you.

>
_______________________________________________
gtk-list mailing list
gtk-list@xxxxxxxxx
http://mail.gnome.org/mailman/listinfo/gtk-list



[Index of Archives]     [Touch Screen Library]     [GIMP Users]     [Gnome]     [KDE]     [Yosemite News]     [Steve's Art]

  Powered by Linux