usb: getting string descriptors, minor improvements
[quarnos.git] / manes / ods / object_serializer.h
blob30da95b814baacfe56fe80e0d8d1257393720e51
1 #ifndef _OBJECT_SERIALIZER_H_
2 #define _OBJECT_SERIALIZER_H_
4 namespace manes {
5 namespace ods {
6 /**
7 * @brief Object serializer
9 * @details This is a base class of all serializers that are
10 * able to marshall all, or only specific ods::object subclasses.
12 class object_serializer {
13 public:
14 /**
15 * Serialize object
16 * @param obj object that is to be serialized
17 * @return serialized object, ready to be sent
19 virtual serialized_object serialize(p<object> obj) = 0;
21 /**
22 * Deserialize object
23 * @param buf serialized data
24 * @return ready to use object
26 virtual p<object> deserialize(const serialized_object &buf) = 0;
31 #endif