30 lines
591 B
C++
30 lines
591 B
C++
#ifndef CONFIGBITSTREAMPARSER_H
|
|
#define CONFIGBITSTREAMPARSER_H
|
|
|
|
#include <iostream>
|
|
#include <fstream>
|
|
#include <stdint.h>
|
|
|
|
class ConfigBitstreamParser {
|
|
public:
|
|
ConfigBitstreamParser(std::string filename, int mode = ASCII_MODE);
|
|
~ConfigBitstreamParser();
|
|
virtual int parse() = 0;
|
|
uint8_t *getData() {return (uint8_t*)_bit_data.c_str();}
|
|
int getLength() {return _bit_length;}
|
|
|
|
enum {
|
|
ASCII_MODE = 0,
|
|
BIN_MODE = std::ifstream::binary
|
|
};
|
|
|
|
protected:
|
|
std::string _filename;
|
|
int _bit_length;
|
|
int _file_size;
|
|
std::ifstream _fd;
|
|
std::string _bit_data;
|
|
};
|
|
|
|
#endif
|