ich möchte in einer Klasse, in der ich Messdaten erfasse ein Signal erzeugen, und mit einem Slot in der Mainform verbinden. Im MainForm soll dann die weitere Verarbeitung des Signals erfolgen.
dazu habe ich folgendes gemacht:
Code: Alles auswählen
//in collectData header
short mess1[1024]
short mess2[1024]
int c1,c2;
signal
OnNewData(short[],short[],int,int);
//in einem Thread in CollectData.cpp
void CollectData::NewData()
{
//... Daten werden in mess1 und mess2 erfasst. es funktioniert auch
// nun möchte ich die Daten an MainForm weitergeben
// Datenerfassen(mess1,mess2,c1,c2)
emit OnNewData(mess1,mess2,c1,c2);
}
Code: Alles auswählen
slots:
private slots:
void NewData(short mess1[],short mess2[],int count1,int count 2);
in MainForm.cpp
void MainWindow::NewData(short m1[], short m2[], int count1,int count2)
{
int counter = 0;
QString svalue;QString svalue2 =QString::number(count)+"\r\n";
for(int i = 0;i<100;i++)
{
svalue2 += svalue.sprintf("%d,",m1[i]);
}
qDebug()<< svalue2;
}
void MainWindow::CreateConnections()
{
connect(CollectData,SIGNAL(OnNewData(short[],short[],int,int)),this,SLOT(NewData(short[],short[],int,int)));
}
wie kann ich nun beim Feuern des Signals die Arrays übergeben?
Danke