Hikyuu
BaseInfoDriver.h
浏览该文件的文档.
1 /*
2  * BaseInfoDriver.h
3  *
4  * Created on: 2012-8-14
5  * Author: fasiondog
6  */
7 
8 #ifndef BASEINFODRIVER_H_
9 #define BASEINFODRIVER_H_
10 
11 #include "../utilities/Parameter.h"
12 #include "../MarketInfo.h"
13 #include "../StockTypeInfo.h"
14 #include "../Stock.h"
15 
16 namespace hku {
17 
23 
24 public:
25  typedef unordered_map<string, MarketInfo> MarketInfoMap;
26  typedef unordered_map<hku_uint32, StockTypeInfo> StockTypeInfoMap;
27 
28  BaseInfoDriver(const string& name);
29  virtual ~BaseInfoDriver() { }
30 
31  const string& name() const;
32 
38  bool init(const Parameter& params);
39 
45  bool loadBaseInfo();
46 
51  virtual bool _init() = 0;
52 
57  virtual bool _loadMarketInfo() = 0;
58 
63  virtual bool _loadStockTypeInfo() = 0;
64 
69  virtual bool _loadStock() = 0;
70 
71 private:
72  bool checkType();
73 
74 protected:
75  string m_name;
76 };
77 
78 typedef shared_ptr<BaseInfoDriver> BaseInfoDriverPtr;
79 
80 HKU_API std::ostream & operator<<(std::ostream&, const BaseInfoDriver&);
81 HKU_API std::ostream & operator<<(std::ostream&, const BaseInfoDriverPtr&);
82 
83 
84 inline const string& BaseInfoDriver::name() const {
85  return m_name;
86 }
87 
88 } /* namespace hku */
89 #endif /* BASEINFODRIVER_H_ */
string m_name
Definition: BaseInfoDriver.h:75
virtual ~BaseInfoDriver()
Definition: BaseInfoDriver.h:29
供需要命名参数设定的类使用
Definition: Parameter.h:101
unordered_map< hku_uint32, StockTypeInfo > StockTypeInfoMap
Definition: BaseInfoDriver.h:26
#define HKU_API
Definition: DataType.h:12
基本信息数据获取驱动基类
Definition: BaseInfoDriver.h:21
HKU_API std::ostream & operator<<(std::ostream &os, const Block &blk)
Definition: Block.cpp:13
unordered_map< string, MarketInfo > MarketInfoMap
Definition: BaseInfoDriver.h:25
const string & name() const
Definition: BaseInfoDriver.h:84
#define PARAMETER_SUPPORT
Definition: Parameter.h:233
shared_ptr< BaseInfoDriver > BaseInfoDriverPtr
Definition: BaseInfoDriver.h:78
Hikyuu核心命名空间,包含股票数据的管理、指标实现、交易系统框架等
Definition: Block.cpp:11