Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > Ayuda actualizar variable y sumarle su valor previo a la vez

Hola amigos como estan?,, tengo que hacer exactamente lo del titulo.
Tengo una variable int que comienza con valor 0 y quiero que a medida que se actualiza su contenido se vaya sumando al previo..
Les dejo mi código así entienden masomenos de que va, especialmente en la variable int sz :

for(currentWaveform = 0; currentWaveform != totalk / totalk; currentWaveform++){
if(KSTool.this.myKSF.getIdSMP1() != null)
{
int offsetAddress = 0;
int sz = myWaveform.getSampleSizeX2()/2;

myWaveform = new Waveform();

myWaveform.setSampleName(myKSF.getSampleName());
myWaveform.setFrequencyOff((short) -188);
myWaveform.setFlags(myWaveform.getFlags());
myWaveform.setLoop((byte)0x13);
myWaveform.setCompressCoefA(-871861776);
myWaveform.setCompressCoefB(offsetAddress | 0x83000000);
myWaveform.setSampleStart(sz);
myWaveform.setLoopStart(offsetAddress | 0x3000000 + (myKSF.getStart() + 1));
myWaveform.setLoopEnd(offsetAddress | 0x3000000 + (myKSF.getStart2() + 1));
myWaveform.setReverseEnd(0x3000000);
myWaveform.setThirdToNine(50331648);
myWaveform.setUnknown4(0x3000000);
myWaveform.setUnknown5(0x3000000);
myWaveform.setUnknown6(0x3000000);
myWaveform.setUnknown7(0x3000000);
myWaveform.setUnknown8(0x3000000);
myWaveform.setUnknown9(0x3000000);
myWaveform.setUnknown10(0);
myWaveform.setUnknown11(0x3000000);
myWaveform.setSampleSizeX2(myKSF.getSampleSize()*2);

myWaveform.writeWaveformDescription(metaOutputpath,total, nbSampleInDirPath, currentRAW++);
}

la variable int sz = myWaveform.getSampleSizeX2()/2; es el peso de un archivo .raw.. esta cifra cuando se escribe en metaOutputpath deberia ser algo así:
0 ..(el siguiente valor de sz es 140284)
140284..(el siguiente valor de sz es 125180)
265464..(Este es el valor de 140284 + 125180)

No se si logre expresarme bien, es medio complicado, pero creo que si leen lo que les puse entre los parentesis arriba van a captar lo que quiero hacer.

septiembre 11, 2014 | Registered Commenternewstyl3

Me puse a pensar un poquito más y lo solucione :D... acá les dejo el código con el cambio. capaz a alguien le sirva:

if(KSTool.this.myKSF.getIdSMP1() != null)
{
int offsetAddress = myWaveform.getSampleStart();
int sz = myWaveform.getSampleSizeX2()/2;
myWaveform = new Waveform();

myWaveform.setSampleName(myKSF.getSampleName());
myWaveform.setFrequencyOff((short) -188);
myWaveform.setFlags(myWaveform.getFlags());
myWaveform.setLoop((byte)0x13);
myWaveform.setCompressCoefA(-871861776);
myWaveform.setCompressCoefB(offsetAddress | 0x83000000);
myWaveform.setSampleStart(offsetAddress + sz);
myWaveform.setLoopStart(0x3000000 + (myKSF.getStart() + 1));
myWaveform.setLoopEnd(0x3000000 + (myKSF.getStart2() + 1));
myWaveform.setReverseEnd(0x3000000);
myWaveform.setThirdToNine(50331648);
myWaveform.setUnknown4(0x3000000);
myWaveform.setUnknown5(0x3000000);
myWaveform.setUnknown6(0x3000000);
myWaveform.setUnknown7(0x3000000);
myWaveform.setUnknown8(0x3000000);
myWaveform.setUnknown9(0x3000000);
myWaveform.setUnknown10(0);
myWaveform.setUnknown11(0x3000000);
myWaveform.setSampleSizeX2(myKSF.getSampleSize()*2);

myWaveform.writeWaveformDescription(metaOutputpath,total, nbSampleInDirPath, currentRAW++);

}

septiembre 11, 2014 | Registered Commenternewstyl3

Bravo!!!!! de eso se trata, comerse un poco la cabeza hasta llegar a la solución.

septiembre 12, 2014 | Registered Commenterantuansoft