![]() |
VR-Link API Documentation for HLA Evolved
|
00001 00002 00003 /****************************************************************************** 00004 * 00005 * file: CmdLineOutput.h 00006 * 00007 * Copyright (c) 2004, Michael E. Smoot 00008 * All rights reverved. 00009 * 00010 * See the file COPYING in the top directory of this distribution for 00011 * more information. 00012 * 00013 * THE SOFTWARE IS PROVIDED _AS IS_, WITHOUT WARRANTY OF ANY KIND, EXPRESS 00014 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 00015 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 00016 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 00017 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 00018 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 00019 * DEALINGS IN THE SOFTWARE. 00020 * 00021 *****************************************************************************/ 00022 00023 #ifndef DtCmdLine_CMDLINEOUTPUT_H 00024 #define DtCmdLine_CMDLINEOUTPUT_H 00025 00029 00030 #include <string> 00031 #include <vector> 00032 #include <list> 00033 #include <iostream> 00034 #include <iomanip> 00035 #include <algorithm> 00036 00037 #ifdef DtUSE_UTILITIES_NAMESPACE 00038 namespace DtUSE_UTILITIES_NAMESPACE 00039 { 00040 #endif 00041 00042 namespace DtCmdLine { 00043 00044 class CmdLineInterface; 00045 class ArgException; 00046 00050 00051 class CmdLineOutput 00052 { 00053 00054 public: 00055 00056 CmdLineOutput() { } 00057 virtual ~CmdLineOutput() { } 00058 00063 virtual void usage(CmdLineInterface& c)=0; 00064 00069 virtual void version(CmdLineInterface& c)=0; 00070 00076 virtual void failure( CmdLineInterface& c, 00077 ArgException& e )=0; 00078 }; 00079 00080 } //namespace DtCmdLine 00081 00082 #ifdef DtUSE_UTILITIES_NAMESPACE 00083 } 00084 #endif 00085 00086 #endif