Ist eine Art listener für streams möglich?



  • Krug zum Gruße,

    folgendes Problem habe ich:

    Es handelt sich um ein Win32-Projekt, über dessen Rendercontext ich mit OpenGL irgendwelche Sachen zeichne.
    Per AllocConsole habe ich mir eine Konsole angefordert und cout, cin, cerr und clog auf diese umgeleitet. Ist eben schön beim debuggen und testen, wenn man sich mal schnell was in die Konsole ausgeben lassen kann.

    Schön wäre es aber, wenn ich über die Konsole auch Werte setzten kann.
    Allerdings soll nicht an irgendeiner Stelle des Programms eine Eingabe erwartet werden, sondern es soll so eine Art listener implementiert werden.

    Sprich, ich möchte zu einem beliebigen Zeitpunkt eine Eingabe tätigen und dann wird eben in irgendeinem Abschnitt des Programms überprüft, ob im streambuffer was drin steht.

    Nun habe ich leider garkeine Idee, wie ich das in etwa umsetzten kann.

    Hätte diesbezüglich jmd. für mich ein zwei Schlagwörter, die mich vlt. auf die richtige Fährte bringen?

    Grüsse, newlife2k3



  • oO ist eher ein winapispezifisches problem wenn ich mich nicht irre - würd mich aber auch interessieren. frag doch dort mal nach.



  • Ich glaube, da würde ich eher ein eigenes Fenster programmieren, zweigeteilt, oben Ausgabe, unten Eingabe, statt die Konsole zu benutzen.
    Was passiert denn, wenn der Benutzer eine Eingabe macht und dein Programm gleichzeitig eine Meldung schreibt?



  • Gut, das wäre eine konfortablere Lösung.
    Allerdings stellt sich mir hier immernoch die Frage, wie ich den istream dauerhaft offen lasse? Die einzige Möglichkeit wäre wohl, die Eingabe & Ausgabe in einem eigenen thread zu realisieren denk ich. Oder liege ich da falsch?


Anmelden zum Antworten