ROOT » GUI » GUI » TGRedirectOutputGuard

class TGRedirectOutputGuard


TGRedirectOutputGuard

This class provides output redirection to a TGTextView in guaranteed
exception safe way. Use like this:
{
TGRedirectOutputGuard guard(textview);
... // do something
guard.Update();
... // do something else
}
when guard goes out of scope, Update() is called to flush what left
on the screed and the output is automatically redirected again to
the standard units.
The exception mechanism takes care of calling the dtors
of local objects so it is exception safe.
Optionally the output can also be saved into a file:
{
TGRedirectOutputGuard guard(textview, file, mode);
... // do something
}


Function Members (Methods)

public:
virtual~TGRedirectOutputGuard()
static TClass*Class()
virtual TClass*IsA() const
virtual voidShowMembers(TMemberInspector& insp) const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
TGRedirectOutputGuard(TGTextView* tv, const char* flog = 0, const char* mode = "a")
voidUpdate()

Data Members

private:
TStringfLogFile
FILE*fLogFileRead
TGTextView*fTextView
Bool_tfTmpFile

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TGRedirectOutputGuard(TGTextView* tv, const char* flog = 0, const char* mode = "a")
 Create output redirection guard.
 The TGTextView instance should be initialized outside.
 Text is added to the existing text in the frame.
 If defined, 'flog' is interpreted as the path of a file
 where to save the output; in such a case 'mode' if the
 opening mode of the file (either "w" or "a").
 By default a temporary file is used.
~TGRedirectOutputGuard()
 Destructor.
void Update()
 Send to text frame the undisplayed content of the file.
TGRedirectOutputGuard(const TGRedirectOutputGuard& )
TGRedirectOutputGuard & operator=(const TGRedirectOutputGuard& )