Tulip  4.4.0
Better Visualization Through Research
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Properties Groups Pages
TypeInterface.h
1 /*
2  *
3  * This file is part of Tulip (www.tulip-software.org)
4  *
5  * Authors: David Auber and the Tulip development Team
6  * from LaBRI, University of Bordeaux 1 and Inria Bordeaux - Sud Ouest
7  *
8  * Tulip is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU Lesser General Public License
10  * as published by the Free Software Foundation, either version 3
11  * of the License, or (at your option) any later version.
12  *
13  * Tulip is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16  * See the GNU General Public License for more details.
17  *
18  */
19 ///@cond DOXYGEN_HIDDEN
20 
21 
22 #ifndef TYPEINTERFACE_H
23 #define TYPEINTERFACE_H
24 
25 #include <set>
26 #include <vector>
27 #include <string>
28 #include <list>
29 #include <iostream>
30 #include <sstream>
31 
32 namespace tlp {
33 template<typename T>
34 class TypeInterface {
35 public:
36  typedef T RealType;
37  static RealType undefinedValue() {
38  return T();
39  }
40  static RealType defaultValue() {
41  return T();
42  }
43 
44  static void write(std::ostream&, const RealType&) {}
45  static bool read(std::istream&, RealType&) {
46  return false;
47  }
48 
49  static std::string toString(const RealType &) {
50  return "";
51  }
52  static bool fromString(RealType &, const std::string &) {
53  return false;
54  }
55 };
56 }
57 
58 #endif // TYPEINTERFACE_H
59 ///@endcond