1 /*
2  * console_mgs.h
3  *
4  * An OpalManager derived class for use in a console application, providing
5  * a standard set of command line arguments for configuring many system
6  * parameters. Used by the sample applications such as faxopal, ovropal etc.
7  *
8  * Copyright (c) 2010 Vox Lucida Pty. Ltd.
9  *
10  * The contents of this file are subject to the Mozilla Public License
11  * Version 1.0 (the "License"); you may not use this file except in
12  * compliance with the License. You may obtain a copy of the License at
13  * http://www.mozilla.org/MPL/
14  *
15  * Software distributed under the License is distributed on an "AS IS"
16  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
17  * the License for the specific language governing rights and limitations
18  * under the License.
19  *
20  * The Original Code is Open Phone Abstraction Library.
21  *
22  * The Initial Developer of the Original Code is Vox Lucida Pty. Ltd.
23  *
24  * Contributor(s): ______________________________________.
25  *
26  * $Revision: 27106 $
27  * $Author: rjongbloed $
28  * $Date: 2012-03-04 20:29:11 -0600 (Sun, 04 Mar 2012) $
29  */
30 
31 #ifndef OPAL_OPAL_CONSOLE_MGR_H
32 #define OPAL_OPAL_CONSOLE_MGR_H
33 
34 #ifdef P_USE_PRAGMA
35 #pragma interface
36 #endif
37 
38 #include <opal/manager.h>
39 
40 
41 class SIPEndPoint;
42 class H323EndPoint;
43 class OpalLineEndPoint;
44 class OpalCapiEndPoint;
45 
46 
47 /**Opal manager class for console applications.
48    An OpalManager derived class for use in a console application, providing
49    a standard set of command line arguments for configuring many system
50    parameters. Used by the sample applications such as faxopal, ovropal etc.
51   */
52 
53 class OpalManagerConsole : public OpalManager
54 {
55     PCLASSINFO(OpalManagerConsole, OpalManager);
56 
57   public:
58     OpalManagerConsole();
59 
60     PString GetArgumentSpec() const;
61     PString GetArgumentUsage() const;
62 
63     bool Initialise(
64       PArgList & args,
65       bool verbose,
66       const PString & defaultRoute = PString::Empty()
67     );
68 
69   protected:
70 #if OPAL_SIP
71     SIPEndPoint * CreateSIPEndPoint();
72 #endif
73 #if OPAL_H323
74     H323EndPoint * CreateH323EndPoint();
75 #endif
76 #if OPAL_LID
77     OpalLineEndPoint * CreateLineEndPoint();
78 #endif
79 #if OPAL_CAPI
80     OpalCapiEndPoint * CreateCapiEndPoint();
81 #endif
82 };
83 
84 
85 #endif // OPAL_OPAL_CONSOLE_MGR_H
86 
87 
88 /////////////////////////////////////////////////////////////////////////////
89