tclap  1.2.2
Public Member Functions | Protected Member Functions | List of all members
TCLAP::StdOutput Class Reference

A class that isolates any output from the CmdLine object so that it may be easily modified. More...

#include <StdOutput.h>

Inheritance diagram for TCLAP::StdOutput:
Inheritance graph
[legend]
Collaboration diagram for TCLAP::StdOutput:
Collaboration graph
[legend]

Public Member Functions

virtual void usage (CmdLineInterface &c)
 Prints the usage to stdout. More...
 
virtual void version (CmdLineInterface &c)
 Prints the version to stdout. More...
 
virtual void failure (CmdLineInterface &c, ArgException &e)
 Prints (to stderr) an error message, short usage Can be overridden to produce alternative behavior. More...
 
- Public Member Functions inherited from TCLAP::CmdLineOutput
virtual ~CmdLineOutput ()
 Virtual destructor. More...
 

Protected Member Functions

void _shortUsage (CmdLineInterface &c, std::ostream &os) const
 Writes a brief usage message with short args. More...
 
void _longUsage (CmdLineInterface &c, std::ostream &os) const
 Writes a longer usage message with long and short args, provides descriptions and prints message. More...
 
void spacePrint (std::ostream &os, const std::string &s, int maxWidth, int indentSpaces, int secondLineOffset) const
 This function inserts line breaks and indents long strings according the params input. More...
 

Detailed Description

A class that isolates any output from the CmdLine object so that it may be easily modified.

Definition at line 44 of file StdOutput.h.

Member Function Documentation

◆ _longUsage()

void TCLAP::StdOutput::_longUsage ( CmdLineInterface c,
std::ostream &  os 
) const
inlineprotected

Writes a longer usage message with long and short args, provides descriptions and prints message.

Parameters
c- The CmdLine object the output is generated for.
os- The stream to write the message to.

Definition at line 193 of file StdOutput.h.

References TCLAP::XorHandler::contains(), TCLAP::CmdLineInterface::getArgList(), TCLAP::CmdLineInterface::getMessage(), TCLAP::CmdLineInterface::getXorHandler(), TCLAP::XorHandler::getXorList(), and spacePrint().

Referenced by usage().

Here is the call graph for this function:

◆ _shortUsage()

void TCLAP::StdOutput::_shortUsage ( CmdLineInterface c,
std::ostream &  os 
) const
inlineprotected

Writes a brief usage message with short args.

Parameters
c- The CmdLine object the output is generated for.
os- The stream to write the message to.

Definition at line 158 of file StdOutput.h.

References TCLAP::XorHandler::contains(), TCLAP::CmdLineInterface::getArgList(), TCLAP::CmdLineInterface::getProgramName(), TCLAP::CmdLineInterface::getXorHandler(), TCLAP::XorHandler::getXorList(), and spacePrint().

Referenced by failure(), and usage().

Here is the call graph for this function:

◆ failure()

void TCLAP::StdOutput::failure ( CmdLineInterface c,
ArgException e 
)
inlinevirtual

Prints (to stderr) an error message, short usage Can be overridden to produce alternative behavior.

Parameters
c- The CmdLine object the output is generated for.
e- The ArgException that caused the failure.

Implements TCLAP::CmdLineOutput.

Definition at line 132 of file StdOutput.h.

References _shortUsage(), TCLAP::ArgException::argId(), TCLAP::ArgException::error(), TCLAP::CmdLineInterface::getProgramName(), TCLAP::CmdLineInterface::hasHelpAndVersion(), TCLAP::Arg::nameStartString(), and usage().

Here is the call graph for this function:

◆ spacePrint()

void TCLAP::StdOutput::spacePrint ( std::ostream &  os,
const std::string &  s,
int  maxWidth,
int  indentSpaces,
int  secondLineOffset 
) const
inlineprotected

This function inserts line breaks and indents long strings according the params input.

It will only break lines at spaces, commas and pipes.

Parameters
os- The stream to be printed to.
s- The string to be printed.
maxWidth- The maxWidth allowed for the output line.
indentSpaces- The number of spaces to indent the first line.
secondLineOffset- The number of spaces to indent the second and all subsequent lines in addition to indentSpaces.

Definition at line 231 of file StdOutput.h.

Referenced by _longUsage(), and _shortUsage().

◆ usage()

void TCLAP::StdOutput::usage ( CmdLineInterface c)
inlinevirtual

Prints the usage to stdout.

Can be overridden to produce alternative behavior.

Parameters
c- The CmdLine object the output is generated for.

Implements TCLAP::CmdLineOutput.

Definition at line 118 of file StdOutput.h.

References _longUsage(), and _shortUsage().

Referenced by failure().

Here is the call graph for this function:

◆ version()

void TCLAP::StdOutput::version ( CmdLineInterface c)
inlinevirtual

Prints the version to stdout.

Can be overridden to produce alternative behavior.

Parameters
c- The CmdLine object the output is generated for.

Implements TCLAP::CmdLineOutput.

Definition at line 109 of file StdOutput.h.

References TCLAP::CmdLineInterface::getProgramName(), and TCLAP::CmdLineInterface::getVersion().

Here is the call graph for this function:

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