Class StdOutput
Defined in File std_output.hpp
Inheritance Relationships
Base Type
public ecl::CmdLineOutput
(Class CmdLineOutput)
Class Documentation
-
class StdOutput : public ecl::CmdLineOutput
TClap class indirectly used to handle CmdLine arguments.
A class that isolates any output from the CmdLine object so that it may be easily modified.
Public Functions
-
inline virtual void usage(CmdLineInterface &c)
Prints the usage to stdout. Can be overridden to produce alternative behavior.
- Parameters:
c – - The CmdLine object the output is generated for.
-
inline virtual void version(CmdLineInterface &c)
Prints the version to stdout. Can be overridden to produce alternative behavior.
- Parameters:
c – - The CmdLine object the output is generated for.
-
inline virtual void failure(CmdLineInterface &c, ArgException &e)
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.
Protected Functions
-
inline void _shortUsage(CmdLineInterface &c, std::ostream &os) const
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.
-
inline void _longUsage(CmdLineInterface &c, std::ostream &os) const
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.
-
inline 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. 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.
-
inline virtual void usage(CmdLineInterface &c)