Stream in C++ an Open GL schicken
-
Hallo,
ich hab folgendes Problem.
Ich hab ein Programm das in in der Grabberklasse Thread1 das Bildsignal von der Grabber karte ausliest und als Pointer auf den die Displayklasse mit Thread2 sendet.
Dies Funktioniert soweit auch.
Jedoch soll später mal der Thread wo das Bildsignal ausliest auf einem anderen Rechner laufen wie der Thread der das Bild Darstellt.(mit openGL)
als nächsten schritt hab ich das Problem wie sende ich das Bild signal am besten von einem zum anderen Thread ohne dasss eine Funktion der anderen klasse bekannt sein muss??
ich hab da an Streams gedacht. Hat da von euch einer eine Idee oder besser CodeBeispiel??
Danke mal für alle hinweise
Aktueller Code ausschnitt::
//Grabberklasse ... while (1) { try { Grabber1->grab(true); GrabImg1 = (unsigned short *) Grabber1->getRGB16(); getsignal(GrabImg1);//send picture signal derzeit noch als pointer if (stopGrabingParam==1) //stop grabbing { stopGrabingParam=0; pthread_exit(NULL); } } } //Displayklasse ... void Showimag::getImages(unsigned short* IMG1) { Imgcurrent=Imag1; //hier bekommt er das bildsignal } ... Hier die Start Methode von Open GL void* Showimag::showDisplay(void *arg) { ... glutMainLoop(); return 0; }
-
Warum willste denn dem Thread nicht einfach ne ID von nem anderen Thread geben?
Auf jeden Fall gibts sogenannte pipes - wie die genau funktionieren weiß ich aber grade nicht.. google hilft..
du könntest das auch "einfach" per socket in verschiedenen Programmen machen.

Wenn du dann mal ganz gelangweilt bist, kannste da sogar auf mehreren Rechnern arbeiten..
-
also mit threadid will ich es net machen weil die Grabber karte ja später mal auf nem anderen rechner laufen soll wie das Display
das mit Pipes hab ich mir auch schon überlegt...hat da jemand erfahrung mit? nen guten link???sockets ich weiss nich muss ich mir mal überlegen gibts noch andere möglichkeiten??
danke mal