Panda3D
Public Member Functions | List of all members
MultiplexStream Class Reference

This is a special ostream that forwards the data that is written to it to any number of other sources, for instance other ostreams, or explicitly to a disk file or to system logging utilities. More...

#include "multiplexStream.h"

Inheritance diagram for MultiplexStream:

Public Member Functions

bool add_file (Filename file)
 Adds the given file to the multiplex output. More...
 
void add_ostream (std::ostream *out, bool delete_later=false)
 Adds the indicated generic ostream to the multiplex output. More...
 
void add_standard_output ()
 Adds the standard output channel. More...
 
bool add_stdio_file (FILE *file, bool close_when_done)
 Adds the given file, previously opened using the C stdio library, to the multiplex output. More...
 
void add_system_debug ()
 Adds the system debug output the the multiplex output. More...
 
void flush ()
 Forces out all output that hasn't yet been written. More...
 

Detailed Description

This is a special ostream that forwards the data that is written to it to any number of other sources, for instance other ostreams, or explicitly to a disk file or to system logging utilities.

It's a very handy thing to set Notify to refer to when running in batch mode.

Definition at line 31 of file multiplexStream.h.

Member Function Documentation

◆ add_file()

bool MultiplexStream::add_file ( Filename  file)
inline

Adds the given file to the multiplex output.

The file is opened in append mode with line buffering. Returns false if the file cannot be opened.

Definition at line 60 of file multiplexStream.I.

References Filename::set_text().

◆ add_ostream()

void MultiplexStream::add_ostream ( std::ostream *  out,
bool  delete_later = false 
)
inline

Adds the indicated generic ostream to the multiplex output.

The ostream will receive whatever data is sent to the pipe.

Definition at line 27 of file multiplexStream.I.

References MultiplexStreamBuf::add_output().

◆ add_standard_output()

void MultiplexStream::add_standard_output ( )
inline

Adds the standard output channel.

Definition at line 49 of file multiplexStream.I.

References MultiplexStreamBuf::add_output().

◆ add_stdio_file()

bool MultiplexStream::add_stdio_file ( FILE *  file,
bool  close_when_done 
)
inline

Adds the given file, previously opened using the C stdio library, to the multiplex output.

Definition at line 38 of file multiplexStream.I.

References MultiplexStreamBuf::add_output().

◆ add_system_debug()

void MultiplexStream::add_system_debug ( )
inline

Adds the system debug output the the multiplex output.

This may map to a syslog or some such os-specific output system. It may do nothing on a particular system.

Presently, this maps only to OutputDebugString() on Windows.

Definition at line 83 of file multiplexStream.I.

References MultiplexStreamBuf::add_output().

◆ flush()

void MultiplexStream::flush ( void  )
inline

Forces out all output that hasn't yet been written.

Definition at line 92 of file multiplexStream.I.

References MultiplexStreamBuf::flush().


The documentation for this class was generated from the following files: