tclap  1.2.2
VersionVisitor.h
Go to the documentation of this file.
1 // -*- Mode: c++; c-basic-offset: 4; tab-width: 4; -*-
2 
3 /******************************************************************************
4  *
5  * file: VersionVisitor.h
6  *
7  * Copyright (c) 2003, Michael E. Smoot .
8  * All rights reserved.
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 
24 #ifndef TCLAP_VERSION_VISITOR_H
25 #define TCLAP_VERSION_VISITOR_H
26 
27 #include <tclap/CmdLineInterface.h>
28 #include <tclap/CmdLineOutput.h>
29 #include <tclap/Visitor.h>
30 
31 namespace TCLAP {
32 
37 class VersionVisitor: public Visitor
38 {
39  private:
43  VersionVisitor(const VersionVisitor& rhs);
44  VersionVisitor& operator=(const VersionVisitor& rhs);
45 
46  protected:
47 
51  CmdLineInterface* _cmd;
52 
56  CmdLineOutput** _out;
57 
58  public:
59 
65  VersionVisitor( CmdLineInterface* cmd, CmdLineOutput** out )
66  : Visitor(), _cmd( cmd ), _out( out ) { }
67 
72  void visit() {
73  (*_out)->version(*_cmd);
74  throw ExitException(0);
75  }
76 
77 };
78 
79 }
80 
81 #endif
TCLAP::VersionVisitor::_cmd
CmdLineInterface * _cmd
The CmdLine of interest.
Definition: VersionVisitor.h:87
CmdLineOutput.h
TCLAP::VersionVisitor::_out
CmdLineOutput ** _out
The output object.
Definition: VersionVisitor.h:92
TCLAP::VersionVisitor::visit
void visit()
Calls the version method of the output object using the specified CmdLine.
Definition: VersionVisitor.h:108
TCLAP::Visitor::Visitor
Visitor()
Constructor.
Definition: Visitor.h:74
Visitor.h
CmdLineInterface.h
TCLAP
Definition: Arg.h:58