spot  1.0.2
optionmap.hh
Go to the documentation of this file.
1 // Copyright (C) 2005 Laboratoire d'Informatique de Paris 6 (LIP6),
2 // département Systèmes Répartis Coopératifs (SRC), Université Pierre
3 // et Marie Curie.
4 //
5 // This file is part of Spot, a model checking library.
6 //
7 // Spot is free software; you can redistribute it and/or modify it
8 // under the terms of the GNU General Public License as published by
9 // the Free Software Foundation; either version 3 of the License, or
10 // (at your option) any later version.
11 //
12 // Spot is distributed in the hope that it will be useful, but WITHOUT
13 // ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14 // or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
15 // License for more details.
16 //
17 // You should have received a copy of the GNU General Public License
18 // along with this program. If not, see <http://www.gnu.org/licenses/>.
19 
20 #ifndef SPOT_MISC_OPTIONMAP_HH
21 # define SPOT_MISC_OPTIONMAP_HH
22 
23 #include <string>
24 #include <map>
25 #include <iosfwd>
26 
27 namespace spot
28 {
32  class option_map
33  {
34  public:
50  const char* parse_options(const char* options);
51 
57  int get(const char* option, int def = 0) const;
58 
63  int operator[](const char* option) const;
64 
69  int set(const char* option, int val, int def = 0);
70 
72  void set(const option_map& o);
73 
75  int& operator[](const char* option);
76 
78  friend std::ostream& operator<<(std::ostream& os, const option_map& m);
79 
80  private:
81  std::map<std::string, int> options_;
82  };
83 }
84 
85 #endif // SPOT_MISC_OPTIONMAP_HH

Please comment this page and report errors about it on the RefDocComments page.
Generated on Wed Mar 6 2013 09:25:14 for spot by doxygen 1.8.1.2