Hikyuu
Datetime_serialization.h
浏览该文件的文档.
1 /*
2  * Datetime_Serialization.h
3  *
4  * Created on: 2013-4-29
5  * Author: fasiondog
6  */
7 
8 #ifndef DATETIME_SERIALIZATION_H_
9 #define DATETIME_SERIALIZATION_H_
10 
11 #include "../datetime/Datetime.h"
12 #include "../config.h"
13 
14 #if HKU_SUPPORT_SERIALIZATION
15 #include <boost/serialization/nvp.hpp>
16 #include <boost/serialization/split_free.hpp>
17 
18 namespace boost {
19 namespace serialization {
20 template<class Archive>
21 void save(Archive & ar, const hku::Datetime & date, unsigned int version) {
22  std::string datetime = date.toString();
23  ar & BOOST_SERIALIZATION_NVP(datetime);
24 }
25 
26 template<class Archive>
27 void load(Archive & ar, hku::Datetime& date, unsigned int version) {
28  std::string datetime;
29  ar & BOOST_SERIALIZATION_NVP(datetime);
30  date = hku::Datetime(datetime);
31 }
32 }} /* namespace boost::serailization */
33 
34 BOOST_SERIALIZATION_SPLIT_FREE(hku::Datetime)
35 
36 #endif /* HKU_SUPPORT_SERIALIZATION */
37 
38 #endif /* DATETIME_SERIALIZATION_H_ */
Definition: Block_serialization.h:17
std::string string
Definition: DataType.h:55
日期类型
Definition: Datetime.h:33
std::string toString() const
Definition: Datetime.cpp:59
void load(Archive &ar, hku::Block &blk, unsigned int version)
Definition: Block_serialization.h:34
void save(Archive &ar, const hku::Block &blk, unsigned int version)
Definition: Block_serialization.h:20