simplify how names for property types are generated

This commit is contained in:
Max Lyon
2021-03-15 14:15:18 +01:00
parent b742e1e398
commit 7f6e86ff62
3 changed files with 11 additions and 40 deletions

View File

@@ -26,33 +26,4 @@ std::string get_type_name()
#endif
}
//----------------------get string for type recognition-- can be used in file format
inline std::string get_string_for_type(OpenMesh::FaceHandle){ return "facehandle";}
inline std::string get_string_for_type(OpenMesh::EdgeHandle){ return "edgehandle";}
inline std::string get_string_for_type(OpenMesh::HalfedgeHandle){ return "halfedgehandle";}
inline std::string get_string_for_type(OpenMesh::VertexHandle){ return "vertexhandle";}
inline std::string get_string_for_type(OpenMesh::MeshHandle){ return "meshhandle";}
inline std::string get_string_for_type(bool){ return "bool";}
inline std::string get_string_for_type(char){ return "char";}
inline std::string get_string_for_type(signed char){ return "signed char";}
inline std::string get_string_for_type(double){ return "double";}
inline std::string get_string_for_type(float){ return "float";}
inline std::string get_string_for_type(int){ return "int";}
inline std::string get_string_for_type(short){ return "short";}
inline std::string get_string_for_type(unsigned char){ return "uchar";}
inline std::string get_string_for_type(unsigned int){ return "uint";}
inline std::string get_string_for_type(unsigned short){ return "ushort";}
inline std::string get_string_for_type(unsigned long){ return "ulong";}
inline std::string get_string_for_type(std::string){ return "std::string";}
template <typename T> std::string get_string_for_type(T){return "unknown";}
template <typename T> std::string get_string_for_type(std::vector<T>){ return "std::vector<" + get_string_for_type(T()) + ">";}
template <typename T, int Dim> std::string get_string_for_type(OpenMesh::VectorT<T, Dim>)
{ return "VectorT<" + get_string_for_type(T()) + ", " + std::to_string(Dim) + ">";}
}//namespace OpenMesh