tobicore  7.0.0
 All Classes Functions Variables Typedefs Enumerator Friends Groups Pages
ICSetClassifier.hpp
1 /*
2  Copyright (C) 2009-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
3  Michele Tavella <michele.tavella@epfl.ch>
4 
5  This program is free software: you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation, either version 3 of the License, or
8  (at your option) any later version.
9 
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License
16  along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18 
19 #ifndef ICCLASSIFIERS_HPP
20 #define ICCLASSIFIERS_HPP
21 
22 #include <string>
23 #include "ICClassifier.hpp"
24 #include "ICMapClassifier.hpp"
25 
35  public:
37  ICSetClassifier(void);
39  virtual ~ICSetClassifier(void);
41  virtual ICClassifier* Add(ICClassifier* pclr);
43  virtual ICClassifier* Remove(std::string nclr);
45  virtual ICClassifier* Remove(ICClassifier* pclr);
47  virtual ICClassifier* Get(std::string nclr) const;
49  virtual ICClassifier* Get(ICClassifier* pclr) const;
51  virtual bool Has(std::string nclr) const;
53  virtual bool Has(ICClassifier* pclr) const;
55  virtual bool Empty(void) const;
57  virtual unsigned int Size(void) const;
59  virtual void Clear(void);
61  virtual void Destroy(void);
63  virtual ICClassifierIter Begin(void);
65  virtual ICClassifierIter End(void);
67  virtual ICClassifierConstIter Begin(void) const;
69  virtual ICClassifierConstIter End(void) const;
70 
71  public:
72  ICMapClassifier _map;
73 };
74 
75 #endif