From 2b47d9d786ac0aaed9b5e2f0fdd85c0c1c393823 Mon Sep 17 00:00:00 2001 From: Eduardo Machado <emm14@inf.ufpr.br> Date: Tue, 8 Dec 2015 16:23:10 -0200 Subject: [PATCH] getsssss --- arc | 0 src/submessages.cpp | 38 +++++++++++++++++--------------------- 2 files changed, 17 insertions(+), 21 deletions(-) delete mode 100644 arc diff --git a/arc b/arc deleted file mode 100644 index e69de29..0000000 diff --git a/src/submessages.cpp b/src/submessages.cpp index b25c525..67b5c3c 100644 --- a/src/submessages.cpp +++ b/src/submessages.cpp @@ -13,14 +13,8 @@ void SubMessage::setParity(){ int i, j, bitsParity[8]; // Alocação da matriz de bits - bitsMessage = new int*[getSize()+2]; - bitsMessage[0] = new int[8]; - bitsMessage[1] = new int[8]; - for(j = 0 ; j < 8 ; j++){ - bitsMessage[0][j] = ((((sizSeqTyp >> 8) & 0x00FF) >> (7-j)) & 0x01); - bitsMessage[1][j] = ((((sizSeqTyp >> 0) & 0x00FF) >> (7-j)) & 0x01); - } - for(i = 2 ; i < getSize()+2 ; i++){ + bitsMessage = new int*[getSize()]; + for(i = 0 ; i < getSize() ; i++){ bitsMessage[i] = new int[8]; // Divide os dados em bits for(j = 0 ; j < 8 ; j++){ @@ -31,7 +25,7 @@ void SubMessage::setParity(){ // Soma os bits verticalmente for(j = 0 ; j < 8 ; j++){ bitsParity[j] = 0; - for(i = 0 ; i < getSize()+2 ; i++){ + for(i = 0 ; i < getSize() ; i++){ bitsParity[j] = bitsParity[j] + bitsMessage[i][j]; } // Caso a soma vertical de uma coluna for par, bitsParity recebe 1, @@ -44,7 +38,7 @@ void SubMessage::setParity(){ // Atribui os bits para parity (variável de paridade do objeto) parity = (parity << 1) | bitsParity[j]; } - for(i = 0 ; i < getSize()+2 ; i++){ + for(i = 0 ; i < getSize() ; i++){ if(bitsMessage[i]){ delete(bitsMessage[i]); } @@ -147,26 +141,26 @@ int SubMessage::checkParity(){ int i, j, bitsParity[8]; unsigned char parityTest; +cout << "AQUI" << endl; // Alocação da matriz de bits - bitsMessage = new int*[getSize()+2]; - bitsMessage[0] = new int[8]; - bitsMessage[1] = new int[8]; - for(j = 0 ; j < 8 ; j++){ - bitsMessage[0][j] = ((((sizSeqTyp >> 8) & 0x00FF) >> (7-j)) & 0x01); - bitsMessage[1][j] = ((((sizSeqTyp >> 0) & 0x00FF) >> (7-j)) & 0x01); - } - for(i = 2 ; i < getSize()+2 ; i++){ +cout << "this-getSize = " << getSize() << endl; +// bitsMessage = (int**) malloc(sizeof(int*)*getSize()); + bitsMessage = new int*[getSize()]; + //bitsMessage = (int**) realloc(bitsMessage,sizeof(int*)*getSize()); +cout << "AQUI2" << endl; + for(i = 0 ; i < getSize() ; i++){ bitsMessage[i] = new int[8]; // Divide os dados em bits for(j = 0 ; j < 8 ; j++){ bitsMessage[i][j] = ((data[i] >> (7-j)) & 0x01); } } +cout << "AQUI 3" << endl; // Soma os bits verticalmente for(j = 0 ; j < 8 ; j++){ bitsParity[j] = 0; - for(i = 0 ; i < getSize()+2 ; i++){ + for(i = 0 ; i < getSize() ; i++){ bitsParity[j] = bitsParity[j] + bitsMessage[i][j]; } // Caso a soma vertical de uma coluna for par, bitsParity recebe 1, @@ -179,13 +173,15 @@ int SubMessage::checkParity(){ // Atribui os bits para parity (variável de paridade do objeto) parityTest = (parityTest << 1) | bitsParity[j]; } - for(i = 0 ; i < getSize()+2 ; i++){ +cout << "AQUI 4" << endl; + for(i = 0 ; i < getSize() ; i++){ if(bitsMessage[i]){ delete(bitsMessage[i]); } } +cout << "AQUI 3" << endl; delete(bitsMessage); -cout << "AQUI 6" << endl; +cout << "AQUI 3" << endl; if (parityTest == parity){ return 0; }else{ -- GitLab