source: trunk/symbol_table/symbol_table.hpp @ 1960

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

Standalone symbol table - initial check in.

File size: 962 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    // TODO - Update Interface
34    //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);
35    //void resolve(uint8_t * segment, uint32_t segment_blocks, BitBlock * starts, BitBlock * ends, BitBlock * hash_values, SoA_symbol & symbols);
36
37protected:
38    symbol_table() {}
39    ~symbol_table() {}
40};
41
42#endif // SYMBOL_TABLE_HPP
43
44
45
Note: See TracBrowser for help on using the repository browser.