Main MRPT website > C++ reference
MRPT logo
CmdLineOutput.h
Go to the documentation of this file.
1 
2 
3 /******************************************************************************
4  *
5  * file: CmdLineOutput.h
6  *
7  * Copyright (c) 2004, Michael E. Smoot
8  * All rights reverved.
9  *
10  * See the file COPYING in the top directory of this distribution for
11  * more information.
12  *
13  * THE SOFTWARE IS PROVIDED _AS IS_, WITHOUT WARRANTY OF ANY KIND, EXPRESS
14  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
16  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
18  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
19  * DEALINGS IN THE SOFTWARE.
20  *
21  *****************************************************************************/
22 
23 #ifndef TCLAP_CMDLINEOUTPUT_H
24 #define TCLAP_CMDLINEOUTPUT_H
25 
26 #include <string>
27 #include <vector>
28 #include <list>
29 #include <iostream>
30 #include <iomanip>
31 #include <algorithm>
32 
33 namespace TCLAP {
34 
35 class CmdLineInterface;
36 class ArgException;
37 
38 /**
39  * The interface that any output object must implement.
40  */
42 {
43 
44  public:
45 
46  /**
47  * Virtual destructor.
48  */
49  virtual ~CmdLineOutput() {}
50 
51  /**
52  * Generates some sort of output for the USAGE.
53  * \param c - The CmdLine object the output is generated for.
54  */
55  virtual void usage(CmdLineInterface& c)=0;
56 
57  /**
58  * Generates some sort of output for the version.
59  * \param c - The CmdLine object the output is generated for.
60  */
61  virtual void version(CmdLineInterface& c)=0;
62 
63  /**
64  * Generates some sort of output for a failure.
65  * \param c - The CmdLine object the output is generated for.
66  * \param e - The ArgException that caused the failure.
67  */
68  virtual void failure( CmdLineInterface& c,
69  ArgException& e )=0;
70 
71 };
72 
73 } //namespace TCLAP
74 #endif



Page generated by Doxygen 1.8.3 for MRPT 0.9.6 SVN: at Fri Feb 15 22:05:02 EST 2013