connect(prcs_thrd_child, SIGNAL(Q_Sample_Complete(Data_Class*,int)), this, SLOT(onQ_Sample_Completed(Data_Class*,int)));
connect(prcs_thrd_child, SIGNAL(Q_Sample_Complete(Data_Class*,int)), this, SLOT(onQ_Sample_Completed(Data_Class*,int)));
To copy to clipboard, switch view to plain text mode
void Client_Thread::onQ_Sample_Completed(Data_Class *mdata, int index_num)
{
data_class_child_2 = mdata;
int i = index_num;
/*
//----------network section--------------------
int sock;
struct sockaddr_in server, localAddr;
//char message[1000] ;
char server_reply[2000];
this->msleep(1);
//Create socket
sock = socket(AF_INET , SOCK_STREAM , 0);
if (sock == -1)
{
printf("Could not create socket");
}
puts("Socket created");
server.sin_addr.s_addr = inet_addr("192.168.100.150");
server.sin_family = AF_INET;
server.sin_port = htons( 8888 );
//local address
localAddr.sin_family = AF_INET;
localAddr.sin_addr.s_addr = htonl(INADDR_ANY);
localAddr.sin_port = htons(8888);
int rc;
rc = bind(sock, (struct sockaddr *) &localAddr, sizeof(localAddr));
if(rc < 0)
{
printf("cannot bind port TCP\n");
perror("error ");
exit(1);
}
//Connect to remote server
if (::connect(sock , (struct sockaddr *)&server , sizeof(server)) < 0)
{
perror("connect failed. Error");
return ;
}
puts("Connected\n");
//keep communicating with server
//--------------end of network section------------------------
*/
char message_1[8442];
//--------------send section--------------------------
memcpy(message_1, &data_class_child_2->Q_smpl_pckt_ddc_1[i].total_hdr, 6);
memcpy(&message_1[6], &data_class_child_2->Q_smpl_pckt_ddc_1[i].A2Dhdr, 36);
memcpy(&message_1[42], &data_class_child_2->Q_smpl_pckt_ddc_1[i].CmpltData_prt_1, 1400);
memcpy(&message_1[1442], &data_class_child_2->Q_smpl_pckt_ddc_1[i].CmpltData_prt_2, 1400);
memcpy(&message_1[2842], &data_class_child_2->Q_smpl_pckt_ddc_1[i].CmpltData_prt_3, 1400);
memcpy(&message_1[4242], &data_class_child_2->Q_smpl_pckt_ddc_1[i].CmpltData_prt_4, 1400);
memcpy(&message_1[5642], &data_class_child_2->Q_smpl_pckt_ddc_1[i].CmpltData_prt_5, 1400);
memcpy(&message_1[7042], &data_class_child_2->Q_smpl_pckt_ddc_1[i].CmpltData_prt_6, 1400);
if( send(sock , message_1 , strlen(message_1) , 0) < 0)
{
puts("Send failed\n");
return ;
}
printf("SEND a complete Q Pkt\n");
//&&&&&&&&&&&&&&&&&&&&&&&&&&& set the flag as the buffer is free &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
data_class_child_2->Q_smpl_pckt_ddc_1[i].valid = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].total_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].flag_scop = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].flag_snd = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].part1_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].part2_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].part3_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].part4_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].part5_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].part6_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].part7_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].arvd_pkts = 0;
printf("FREE Q sample buffer number: %d \n", i);
//&&&&&&&&&&&&&&&&&&&&&&&&&&& end of set part &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
//--------------------------------------------------end of the send section---------------------------------------
}
void Client_Thread::onQ_Sample_Completed(Data_Class *mdata, int index_num)
{
data_class_child_2 = mdata;
int i = index_num;
/*
//----------network section--------------------
int sock;
struct sockaddr_in server, localAddr;
//char message[1000] ;
char server_reply[2000];
this->msleep(1);
//Create socket
sock = socket(AF_INET , SOCK_STREAM , 0);
if (sock == -1)
{
printf("Could not create socket");
}
puts("Socket created");
server.sin_addr.s_addr = inet_addr("192.168.100.150");
server.sin_family = AF_INET;
server.sin_port = htons( 8888 );
//local address
localAddr.sin_family = AF_INET;
localAddr.sin_addr.s_addr = htonl(INADDR_ANY);
localAddr.sin_port = htons(8888);
int rc;
rc = bind(sock, (struct sockaddr *) &localAddr, sizeof(localAddr));
if(rc < 0)
{
printf("cannot bind port TCP\n");
perror("error ");
exit(1);
}
//Connect to remote server
if (::connect(sock , (struct sockaddr *)&server , sizeof(server)) < 0)
{
perror("connect failed. Error");
return ;
}
puts("Connected\n");
//keep communicating with server
//--------------end of network section------------------------
*/
char message_1[8442];
//--------------send section--------------------------
memcpy(message_1, &data_class_child_2->Q_smpl_pckt_ddc_1[i].total_hdr, 6);
memcpy(&message_1[6], &data_class_child_2->Q_smpl_pckt_ddc_1[i].A2Dhdr, 36);
memcpy(&message_1[42], &data_class_child_2->Q_smpl_pckt_ddc_1[i].CmpltData_prt_1, 1400);
memcpy(&message_1[1442], &data_class_child_2->Q_smpl_pckt_ddc_1[i].CmpltData_prt_2, 1400);
memcpy(&message_1[2842], &data_class_child_2->Q_smpl_pckt_ddc_1[i].CmpltData_prt_3, 1400);
memcpy(&message_1[4242], &data_class_child_2->Q_smpl_pckt_ddc_1[i].CmpltData_prt_4, 1400);
memcpy(&message_1[5642], &data_class_child_2->Q_smpl_pckt_ddc_1[i].CmpltData_prt_5, 1400);
memcpy(&message_1[7042], &data_class_child_2->Q_smpl_pckt_ddc_1[i].CmpltData_prt_6, 1400);
if( send(sock , message_1 , strlen(message_1) , 0) < 0)
{
puts("Send failed\n");
return ;
}
printf("SEND a complete Q Pkt\n");
//&&&&&&&&&&&&&&&&&&&&&&&&&&& set the flag as the buffer is free &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
data_class_child_2->Q_smpl_pckt_ddc_1[i].valid = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].total_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].flag_scop = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].flag_snd = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].part1_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].part2_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].part3_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].part4_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].part5_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].part6_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].part7_set = false;
data_class_child_2->Q_smpl_pckt_ddc_1[i].arvd_pkts = 0;
printf("FREE Q sample buffer number: %d \n", i);
//&&&&&&&&&&&&&&&&&&&&&&&&&&& end of set part &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
//--------------------------------------------------end of the send section---------------------------------------
}
To copy to clipboard, switch view to plain text mode
Bookmarks