2 #ifndef comfrm_unt_SerializerToolsH
3 #define comfrm_unt_SerializerToolsH
40 #include <forward_list>
42 #include <unordered_set>
43 #include <unordered_map>
45 #include <type_traits>
51 template<
typename T >
56 template<
typename T >
61 template<
typename T >
66 template<
typename T >
71 template<
typename T >
76 template<
typename T >
81 template<
typename T >
86 template<
typename T >
93 template<
typename K,
typename V >
94 struct is_std_map< std::map< K, V > > : std::true_type {};
98 template<
typename K,
typename V >
101 template<
typename T >
103 std::is_std_vector<T>::value ||
104 std::is_std_list<T>::value ||
105 std::is_std_deque<T>::value ||
106 std::is_std_forward_list<T>::value ||
107 std::is_std_queue<T>::value ||
108 std::is_std_stack<T>::value > {};
121 template <
typename T >
122 bool serializeBaseType(std::ostream& o_out, T p_member)
124 o_out.write((
const char*) &p_member,
sizeof(p_member));
133 template <
typename T >
134 bool serializeBaseType(std::ostream& o_out,
const T* p_member,
size_t p_elemCount)
137 o_out.write((
const char*) &p_elemCount,
sizeof(p_elemCount));
140 o_out.write((
const char*) p_member, p_elemCount*
sizeof(T));
149 bool serializeStdString(std::ostream& o_out,
const std::string& p_member)
152 size_t elemCount = p_member.size();
153 o_out.write((
const char*) &elemCount,
sizeof(elemCount));
156 o_out.write(p_member.c_str(), elemCount);
161 template <
typename T >
162 const T* getPointer(
const T& p_t)
167 template <
typename T >
168 const T* getPointer(
const T* p_t)
Definition: serializertools.h:70
Definition: serializertools.h:80
Definition: serializertools.h:97
Definition: serializertools.h:60
Definition: serializertools.h:102
Definition: serializertools.h:75
Definition: serializertools.h:92
Definition: serializertools.h:50
Definition: serializertools.h:65
Definition: serializertools.h:85
Definition: serializertools.h:55