Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. HOW TO SEND nested structure through tcp ip

HOW TO SEND nested structure through tcp ip

Scheduled Pinned Locked Moved Unsolved Mobile and Embedded
2 Posts 2 Posters 291 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    swansorter
    wrote on last edited by
    #1

    Hi sir , this my structure representation

    
    struct request_packet
    {
        uint8_t xx;
        uint8_t yy;
        struct payload
        {
            struct A
            {
                uint8_t a1;
            }aa;
            struct B
            {
                //float c[3][3];
                uint32_t  b1[6][3][3];
                uint32_t b2;
                uint32_t b3;
                uint32_t b4[6];
            }bb;
            struct C
            {
                uint8_t c1;
                uint32_t c2;
                uint32_t c3;
            }cc;
    
        }m;
    
    };
    

    i want to send only request_packet with payload B but if send data through socket whole structure data are transmitting.

    this is my code init and send data through tcp socket

       struct request_packet_dkk s3,s1;
        uint8_t xx;
        uint8_t yy;
                    s3.m.B.b1[0][0][0]=1;
                    s3.m.B.b1[0][0][1]=2;
                    s3.m.B.b1[0][0][2]=3;
                    s3.m.B.b1[0][1][0]=4;
                    s3.m.B.b1[0][1][1]=5;
                    s3.m.B.b1[0][1][2]=6;
                    s3.m.B.b1[0][2][0]=7;
                    s3.m.B.b1[0][2][1]=8;
                    s3.m.B.b1[0][2][2]=9;
    
                    s3.m.B.b1[1][3][2]=11;
                    s3.m.B.b1[1][3][3]=12;
                    s3.m.B.b1[1][3][4]=13;
                    s3.m.B.b1[1][4][5]=14;
                    s3.m.B.b1[1][4][6]=15;
                    s3.m.B.b1[1][4][0]=16;
                    s3.m.B.b1[1][5][1]=17;
                    s3.m.B.b1[1][5][2]=18;
                    s3.m.B.b1[1][5][3]=19;
    
                    s3.m.B.b1[2][6][4]=21;
                    s3.m.B.b1[2][6][5]=22;
                    s3.m.B.b1[2][6][6]=23;
                    s3.m.B.b1[2][0][0]=24;
                    s3.m.B.b1[2][0][1]=25;
                    s3.m.B.b1[2][0][2]=26;
                    s3.m.B.b1[2][1][3]=27;
                    s3.m.B.b1[2][1][4]=28;
                    s3.m.B.b1[2][1][5]=29;
    
                    s3.m.B.b1[3][2][6]=31;
                    s3.m.B.b1[3][2][0]=32;
                    s3.m.B.b1[3][2][1]=33;
                    s3.m.B.b1[3][3][2]=34;
                    s3.m.B.b1[3][3][3]=35;
                    s3.m.B.b1[3][3][4]=36;
                    s3.m.B.b1[3][4][5]=37;
                    s3.m.B.b1[3][4][6]=38;
                    s3.m.B.b1[3][4][0]=39;
    
                    s3.m.B.b1[4][5][1]=41;
                    s3.m.B.b1[4][5][2]=42;
                    s3.m.B.b1[4][5][3]=43;
                    s3.m.B.b1[4][6][4]=44;
                    s3.m.B.b1[4][6][5]=45;
                    s3.m.B.b1[4][6][6]=46;
                    s3.m.B.b1[4][0][0]=47;
                    s3.m.B.b1[4][0][1]=48;
                    s3.m.B.b1[4][0][2]=49;
    
                    s3.m.B.b1[5][1][3]=51;
                    s3.m.B.b1[5][1][4]=52;
                    s3.m.B.b1[5][1][5]=53;
                    s3.m.B.b1[5][2][6]=54;
                    s3.m.B.b1[5][2][0]=55;
                    s3.m.B.b1[5][2][1]=56;
                    s3.m.B.b1[5][3][2]=57;
                    s3.m.B.b1[5][3][3]=58;
                    s3.m.B.b1[5][3][4]=59;
    
    
    
                    //s3.m.B.b1[6][4][5]=122;
                    //s3.m.B.b1[6][4][6]=123;
                    //s3.m.B.b1[6][4][0]=123;
                    //s3.m.B.b1[6][5][1]=111;
                    //s3.m.B.b1[6][5][2]=193;
                    //s3.m.B.b1[6][5][3]=168;
                    //s3.m.B.b1[6][6][4]=186;
                    //s3.m.B.b1[6][6][5]=124;
                    //s3.m.B.b1[6][6][6]=187;
                    s3.m.B.b2=1;
                    s3.m.B.b3=1;
                    s3.m.B.b4[0]=0xAA;
                    s3.m.B.b4[1]=0xAA;
                    s3.m.B.b4[2]=0xAA;
                    s3.m.B.b4[3]=0xAA;
                    s3.m.B.b4[4]=0xAA;
                    s3.m.B.b4[5]=0xAA;
    
                    client->write_data(QByteArray( reinterpret_cast<char*>(&s3),sizeof(s3)));
    
    1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi,

      It's your job to extract the data you want and only send that part.

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      1

      • Login

      • Login or register to search.
      • First post
        Last post
      0
      • Categories
      • Recent
      • Tags
      • Popular
      • Users
      • Groups
      • Search
      • Get Qt Extensions
      • Unsolved