11 #ifndef MMTF_OBJECT_ENCODERS_H
12 #define MMTF_OBJECT_ENCODERS_H
15 #include <msgpack.hpp>
28 struct object_with_zone<
mmtf::GroupType> {
29 void operator()(msgpack::object::with_zone& o,
mmtf::GroupType const& v)
const {
32 o.via.map.ptr =
static_cast<msgpack::object_kv*
>(o.zone.allocate_align(
sizeof(msgpack::object_kv)*8, MSGPACK_ZONE_ALIGNOF(msgpack::object_kv)));
33 o.via.map.ptr[0].key = msgpack::object(
"formalChargeList", o.zone);
35 o.via.map.ptr[1].key = msgpack::object(
"atomNameList", o.zone);
36 o.via.map.ptr[1].val = msgpack::object(v.
atomNameList, o.zone);
37 o.via.map.ptr[2].key = msgpack::object(
"elementList", o.zone);
38 o.via.map.ptr[2].val = msgpack::object(v.
elementList, o.zone);
39 o.via.map.ptr[3].key = msgpack::object(
"bondAtomList", o.zone);
40 o.via.map.ptr[3].val = msgpack::object(v.
bondAtomList, o.zone);
41 o.via.map.ptr[4].key = msgpack::object(
"bondOrderList", o.zone);
42 o.via.map.ptr[4].val = msgpack::object(v.
bondOrderList, o.zone);
43 o.via.map.ptr[5].key = msgpack::object(
"groupName", o.zone);
44 o.via.map.ptr[5].val = msgpack::object(v.
groupName, o.zone);
45 o.via.map.ptr[6].key = msgpack::object(
"singleLetterCode", o.zone);
46 o.via.map.ptr[6].val = msgpack::object(std::string(1,v.
singleLetterCode), o.zone);
47 o.via.map.ptr[7].key = msgpack::object(
"chemCompType", o.zone);
48 o.via.map.ptr[7].val = msgpack::object(v.
chemCompType, o.zone);
Definition: binary_decoder.hpp:24
Definition: object_encoders.hpp:17
MSGPACK_API_VERSION_NAMESPACE(MSGPACK_DEFAULT_API_NS)
Definition: object_encoders.hpp:18
Group (residue) level data store.
Definition: structure_data.hpp:49
char singleLetterCode
Definition: structure_data.hpp:56
std::string chemCompType
Definition: structure_data.hpp:57
std::vector< std::string > elementList
Definition: structure_data.hpp:52
std::vector< int32_t > formalChargeList
Definition: structure_data.hpp:50
std::vector< std::string > atomNameList
Definition: structure_data.hpp:51
std::vector< int8_t > bondOrderList
Definition: structure_data.hpp:54
std::string groupName
Definition: structure_data.hpp:55
std::vector< int32_t > bondAtomList
Definition: structure_data.hpp:53