tclap  1.4.0
ArgContainer.h
Go to the documentation of this file.
1 // -*- Mode: c++; c-basic-offset: 4; tab-width: 4; -*-
2 
3 /******************************************************************************
4  *
5  * file: ArgContainer.h
6  *
7  * Copyright (c) 2018 Google LLC
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 #ifndef TCLAP_ARG_CONTAINER_H
24 #define TCLAP_ARG_CONTAINER_H
25 
26 namespace TCLAP {
27 
28 class Arg;
29 
39 class ArgContainer {
40 public:
41  virtual ~ArgContainer() {}
42 
47  virtual ArgContainer &add(Arg &a) = 0;
48 
53  virtual ArgContainer &add(Arg *a) = 0;
54 };
55 
56 } // namespace TCLAP
57 
58 #endif // TCLAP_ARG_CONTAINER_H
virtual ArgContainer & add(Arg &a)=0
Adds an argument.
A virtual base class that defines the essential data for all arguments.
Definition: Arg.h:53
Interface that allows adding an Arg to a "container".
Definition: ArgContainer.h:39
virtual ~ArgContainer()
Definition: ArgContainer.h:41
Definition: Arg.h:46