• Navigation überspringen
  • Zur Navigation
  • Zum Seitenende
Organisationsmenü öffnen Organisationsmenü schließen
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
  • FAUZur zentralen FAU Website
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Suche öffnen
  • English
  • Campo
  • StudOn
  • FAUdir
  • Stellenangebote
  • Lageplan
  • Hilfe im Notfall
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
Menu Menu schließen
  • Lehrstuhl
    • Team
    • Aktuelles
    • Kontakt und Anfahrt
    • Leitbild
    • 50-jähriges Jubiläum
    Portal Lehrstuhl
  • Forschung
    • Forschungsbereiche
      • Betriebssysteme
      • Confidential Computing
      • Embedded Systems Software
      • Verteilte Systeme
    • Projekte
      • AIMBOS
      • BALu
      • BFT2Chain
      • DOSS
      • Mirador
      • NEON
      • PAVE
      • ResPECT
      • Watwa
    • Projektkampagnen
      • maRE
    • Seminar
      • Systemsoftware
    Portal Forschung
  • Publikationen
  • Lehre
    • Sommersemester 2025
      • Applied Software Architecture
      • Ausgewählte Kapitel der Systemsoftware
      • Betriebssystemtechnik
      • Projekt angewandte Systemsoftwaretechnik
      • System-Level Programming
      • Systemnahe Programmierung in C
      • Systemprogrammierung 1
      • Verteilte Systeme
    • Wintersemester 2025/26
      • Systemprogrammierung 2
      • Betriebssysteme
      • Middleware – Cloud Computing
      • Echtzeitsysteme
      • Virtuelle Maschinen
      • Web-basierte Systeme
      • Projekt angewandte Systemsoftwaretechnik
      • Aktuelle Entwicklung in Verteilten und Objektorientierten Betriebssystemen (für Bachelor-/Masterarbeit)
    Portal Lehre
  • Examensarbeiten
  1. Startseite
  2. Extern

Extern

Bereichsnavigation: Lehre
  • Betriebssysteme
    • Vorlesung
      • Folien
    • Übung
      • Seminar
      • Aufgaben
      • Aufgabe 0: C++ Streams
        • Aufgabe 1: Ein-/Ausgabe
          • Aufgabe 2: Unterbrechungen
            • Aufgabe 3: Pro-/Epilog
              • Aufgabe 4: Kontextwechsel
                • Aufgabe 5: Zeitscheiben
                  • Assembler Crashkurs
                    • C++ Crashkurs
                      • Entwicklungsumgebung
                        • FAQ
                          • Ruhmeshalle

                        Aufgabe 1: Ein-/Ausgabe

                        Public Member Functions | List of all members
                        CopyStream Class Reference
                        I/O subsystem

                        Duplicate all data passed by the stream operator to two output streams. More...

                        #include <debug/copystream.h>

                        + Inheritance diagram for CopyStream:
                        [legend]
                        + Collaboration diagram for CopyStream:
                        [legend]

                        Public Member Functions

                         CopyStream (OutputStream *first, OutputStream *second)
                         Constructor. More...
                         
                        template<typename T >
                        CopyStream & operator<< (T value)
                         Generic stream operator for any data type. More...
                         
                        template<typename T >
                        CopyStream & operator<< (T &(*f)(T &))
                         Deal with [OutputStream] manipulator functions. More...
                         
                        - Public Member Functions inherited from OutputStream
                         OutputStream ()
                         Default constructor. Initial number system is decimal. More...
                         
                        virtual ~OutputStream ()
                         Destructor.
                         
                        virtual void flush ()=0
                         Clears the buffer. More...
                         
                        OutputStream & operator<< (char c)
                         Print a single character. More...
                         
                        OutputStream & operator<< (unsigned char c)
                         Print a single character. More...
                         
                        OutputStream & operator<< (const char *string)
                         Printing a null-terminated string. More...
                         
                        OutputStream & operator<< (bool b)
                         Print a boolean value. More...
                         
                        OutputStream & operator<< (short ival)
                         Print an integral number in radix base More...
                         
                        OutputStream & operator<< (unsigned short ival)
                         Print an integral number in radix base More...
                         
                        OutputStream & operator<< (int ival)
                         Print an integral number in radix base More...
                         
                        OutputStream & operator<< (unsigned int ival)
                         Print an integral number in radix base More...
                         
                        OutputStream & operator<< (long ival)
                         Print an integral number in radix base More...
                         
                        OutputStream & operator<< (unsigned long ival)
                         Print an integral number in radix base More...
                         
                        OutputStream & operator<< (long long ival)
                         Print an integral number in radix base More...
                         
                        OutputStream & operator<< (unsigned long long ival)
                         Print an integral number in radix base More...
                         
                        OutputStream & operator<< (const void *ptr)
                         Print a pointer as hexadecimal number. More...
                         
                        OutputStream & operator<< (OutputStream &(*f)(OutputStream &))
                         Calls one of the manipulator functions. More...
                         
                        - Public Member Functions inherited from Stringbuffer
                        virtual ~Stringbuffer ()
                         Destructor (nothing to do here)
                         

                        Additional Inherited Members

                        - Public Attributes inherited from OutputStream
                        int base
                         Number system used for printing integral numbers (one of 2, 8, 10, or 16)
                         
                        - Protected Member Functions inherited from Stringbuffer
                         Stringbuffer ()
                         Constructor; Marks the buffer as empty. More...
                         
                        void put (char c)
                         Inserts a character into the buffer. More...
                         
                        virtual void flush ()=0
                         Flush the buffer contents. More...
                         
                        - Protected Attributes inherited from Stringbuffer
                        char buffer [80]
                         buffer containing characters that will be printed upon flush()
                         
                        long unsigned pos
                         current position in the buffer
                         

                        Detailed Description

                        Duplicate all data passed by the stream operator to two output streams.

                        Can be used as replacement for any OutputStream – for example, forwarding the DBG output simultaneously to screen (TextStream) and serial console (SerialStream).

                        By using template programming, two generic methods are sufficient (which simply forward the input to both).

                        Constructor & Destructor Documentation

                        CopyStream::CopyStream ( OutputStream *  first,
                        OutputStream *  second 
                        )
                        inline

                        Constructor.

                        Parameters
                        firstFirst recipient for output passed to this object
                        secondSecond recipient for output passed to this object

                        Member Function Documentation

                        template<typename T >
                        CopyStream & CopyStream::operator<< ( T  value)
                        inline

                        Generic stream operator for any data type.

                        Forwards all input to both recipients.

                        Uses template meta programming for a generic & short solution

                        Template Parameters
                        TType of data to be forwarded
                        Parameters
                        valuedata to be forwarded
                        Returns
                        Reference to the CopyStream object allowing concatenation of operators
                        Optional:
                        Implement method
                        template<typename T >
                        CopyStream & CopyStream::operator<< ( T &(*)(T &)  f)
                        inline

                        Deal with [OutputStream] manipulator functions.

                        Template Parameters
                        TManipulator type
                        Parameters
                        fpointer to manipulator function
                        Returns
                        Reference to the CopyStream object allowing concatenation of operators

                        The documentation for this class was generated from the following file:
                        • debug/copystream.h
                        Friedrich-Alexander-Universität
                        Erlangen-Nürnberg

                        Schlossplatz 4
                        91054 Erlangen
                        • Impressum
                        • Datenschutz
                        • Barrierefreiheit
                        • Facebook
                        • RSS Feed
                        • Xing
                        Nach oben