source: trunk/symtab/symbol_table.hpp @ 3028

Last change on this file since 3028 was 1929, checked in by ksherdy, 7 years ago

Updated identity symbol table.

File size: 929 bytes
Line 
1/*
2 * Created on: 18-December-2011
3 * Author: Ken Herdy
4 *
5 * Segment-at-a-time symbol table.
6 *
7 */
8#ifndef SYMBOL_TABLE_HPP
9#define SYMBOL_TABLE_HPP
10
11#include "../lib/bitblock.hpp"
12#include "../lib/byte_pool.hpp"
13
14#include <iostream>
15using namespace std;
16
17typedef uint32_t gid_type;
18
19typedef struct AoS_symbol { // Xerces
20public:
21    gid_type gid;
22    uint8_t * raw_data;
23} AoS_symbol;
24
25typedef struct SoA_symbol { // Regex
26public:
27    gid_type * gids;
28    uint8_t * raw_data;
29} SoA_symbol;
30
31class symbol_table {
32public:
33    void resolve(uint8_t * raw_buffer, Markers * markers, Groups * groups, const Hash * hash, uint32_t blocks, AoS_symbol * symbol_ary, const uint32_t symbol_ary_size);
34    //void resolve(uint8_t * segment, uint32_t segment_blocks, BitBlock * starts, BitBlock * ends, BitBlock * hash_values, SoA_symbol & symbols);
35
36protected:
37    symbol_table() {}
38    ~symbol_table() {}
39};
40
41#endif // SYMBOL_TABLE_HPP
42
43
44
Note: See TracBrowser for help on using the repository browser.