HCE project C++ developers source code library  1.1.1
HCE project developer library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
LCoreData.hpp
Go to the documentation of this file.
1 /*
2  * LCoreData.hpp
3  *
4  * Created on: Dec 4, 2012
5  * Author: handler
6  */
7 
8 #ifndef LCOREDATA_HPP
9 #define LCOREDATA_HPP
10 
12 #include <vector>
13 #include <map>
14 
15 
19 #include "Defs.hpp"
20 #include "ProcessInfo.hpp"
21 #include "POSMaskBitset.hpp"
23 #include "CRC64.h"
24 
25 #include <Poco/String.h>
26 
27 namespace HCE
28 {
29 
30 namespace component
31 {
32 
33 struct ProcessInfo;
34 
35 struct LCoreData
36 {
38  /*const*/std::string _content;
39  u_int8_t _normalizationId;
40  std::vector<std::string> _delimiters;
42  std::vector<SSTRING> _tokens;
43  std::map<WORD_CONTENT_OFFSET, WORD_LENGTH> _mapOffsets;
44  std::map<WORD_CONTENT_OFFSET, SSTRING> _mapTokens;
45  std::map<WORD_CONTENT_OFFSET, SSTRING> _mapNormalizedForms;
46  std::map<WORD_CONTENT_OFFSET, SSTRING> _mapLanguages;
47  std::map<Language, std::vector<WORD_CONTENT_OFFSET> > _mapVectorsOfLanguages;
48  std::map<WORD_CONTENT_OFFSET, LanguageMask> _mapLanguagesMasks;
49  std::map<WORD_CONTENT_OFFSET, POSMask> _mapPosMasks;
50  std::map<WORD_CONTENT_OFFSET, TAG_ID> _mapTags;
51  std::map<WORD_CONTENT_OFFSET, u_int64_t> _mapHCRC64;
52  std::map<WORD_CONTENT_OFFSET, unsigned char> _mapBlack;
53  //std::map<WORD_CONTENT_OFFSET, HCE::POSMaskBitset<POS_NUM> > _mapPosMasks;
54  std::map<WORD_CONTENT_OFFSET, HCE::MorphChangeGradBitset<MCG_NUM> > _mapMorphology;
55  std::map<WORD_CONTENT_OFFSET, unsigned int> _mapSentences;
56  std::map<WORD_CONTENT_OFFSET, unsigned char> _mapLingIntegrity;
57  std::map<WORD_CONTENT_OFFSET, WORD_TYPE> _mapWordType;
58 
64  //LCoreData( const std::string& s) :_content(s) {}
65  LCoreData( const std::string& s="")
66  :_content(s)
67  , _delimiters()
68  , _granularityLevel(GRANULARITY_LEVEL::ONLY_BY_DELIMITERS)
69  {}
70  inline std::string getContent() const { return _content; }
71 };
72 
73 
74 } /* namespace component */
75 
76 } /* namespace HCE */
77 
78 
79 #endif /* LCOREDATA_H_ */