Basisklasse fuer das dynamische austauschen von boost::iostreams sinks



  • Gruesst euch,

    ich habe eine Klasse die Nachrichten speichern soll. Dabei hat diese einen Memory Buffer von Groesse X. Sobald diesr voll ist, sollen die Daten in eine Datei geschrieben werden. Jetzt dachte ich ich nehm dafuer einfach boost::iostreams, da es ja array_sink & file_sink bereit stellt. Allerdings komm ich damit nicht so ganz zurecht. Was soll ich das als Basisklasse nehmen.
    In den Beispielen nehmen die immer 'boost::iostream::stream<Device>'. Allerdings sind ja 'file_sink' & 'array_sink' verschiedene devices.

    Was soll ich fuer 'device' in boost::iostream::stream nehmen. Oder geh ich falsch an die Sache ran und man loest das Problem anders ?

    Gruessle & danke schonmal



  • Naja, du könntest ein eigenes Device implementieren, das intern delegiert. Oder du sparst dir das delegieren und implentierst die beiden Varianten selbst, evtl. ist es weniger Aufwand, als das Delegieren.


Anmelden zum Antworten