• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  *
3  * Copyright (c) 2003 Dr John Maddock
4  * Use, modification and distribution is subject to the
5  * Boost Software License, Version 1.0. (See accompanying file
6  * LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7  *
8  */
9 
10 #include <boost/shared_ptr.hpp>
11 
12 #if defined(BOOST_FILESYSTEM_VERSION) && (BOOST_FILESYSTEM_VERSION != 3)
13 # error "This library must be built with Boost.Filesystem version 3"
14 #else
15 #define BOOST_FILESYSTEM_VERSION 3
16 #endif
17 
18 class bcp_application;
19 typedef boost::shared_ptr<bcp_application> pbcp_application;
20 
21 class bcp_application
22 {
23 public:
24    virtual ~bcp_application();
25 
26    virtual void enable_list_mode() = 0;
27    virtual void enable_summary_list_mode() = 0;
28    virtual void enable_cvs_mode() = 0;
29    virtual void enable_svn_mode() = 0;
30    virtual void enable_unix_lines() = 0;
31    virtual void enable_scan_mode() = 0;
32    virtual void enable_license_mode() = 0;
33    virtual void enable_bsl_convert_mode() = 0;
34    virtual void enable_bsl_summary_mode() = 0;
35    virtual void set_boost_path(const char* p) = 0;
36    virtual void set_destination(const char* p) = 0;
37    virtual void add_module(const char* p) = 0;
38    virtual void set_namespace(const char* name) = 0;
39    virtual void set_namespace_alias(bool) = 0;
40    virtual void set_namespace_list(bool) = 0;
41 
42    virtual int run() = 0;
43 
44    static pbcp_application create();
45 };
46 
47 
48