anlogicBitParser: allows to reverse (or not) bytes
This commit is contained in:
parent
31bc9cf988
commit
bfd7e9b6ed
|
|
@ -31,8 +31,10 @@
|
||||||
|
|
||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
||||||
AnlogicBitParser::AnlogicBitParser(const string &filename, bool verbose):
|
AnlogicBitParser::AnlogicBitParser(const string &filename, bool reverseOrder,
|
||||||
ConfigBitstreamParser(filename, ConfigBitstreamParser::BIN_MODE, verbose)
|
bool verbose):
|
||||||
|
ConfigBitstreamParser(filename, ConfigBitstreamParser::BIN_MODE, verbose),
|
||||||
|
_reverseOrder(reverseOrder)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
AnlogicBitParser::~AnlogicBitParser()
|
AnlogicBitParser::~AnlogicBitParser()
|
||||||
|
|
@ -136,7 +138,10 @@ int AnlogicBitParser::parse()
|
||||||
_bit_data.clear();
|
_bit_data.clear();
|
||||||
for (auto it = blocks.begin(); it != blocks.end(); it++) {
|
for (auto it = blocks.begin(); it != blocks.end(); it++) {
|
||||||
for (size_t pos = 0; pos < it->size(); pos++) {
|
for (size_t pos = 0; pos < it->size(); pos++) {
|
||||||
_bit_data += reverseByte(((*it)[pos]));
|
if (_reverseOrder == true)
|
||||||
|
_bit_data += reverseByte(((*it)[pos]));
|
||||||
|
else
|
||||||
|
_bit_data += ((*it)[pos]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
_bit_length = _bit_data.size() * 8;
|
_bit_length = _bit_data.size() * 8;
|
||||||
|
|
|
||||||
|
|
@ -30,13 +30,15 @@
|
||||||
*/
|
*/
|
||||||
class AnlogicBitParser: public ConfigBitstreamParser {
|
class AnlogicBitParser: public ConfigBitstreamParser {
|
||||||
public:
|
public:
|
||||||
AnlogicBitParser(const std::string &filename, bool verbose = false);
|
AnlogicBitParser(const std::string &filename, bool reverseOrder,
|
||||||
|
bool verbose = false);
|
||||||
~AnlogicBitParser();
|
~AnlogicBitParser();
|
||||||
int parse() override;
|
int parse() override;
|
||||||
void displayHeader();
|
void displayHeader();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
int parseHeader();
|
int parseHeader();
|
||||||
|
bool _reverseOrder;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // SRC_ANLOGICBITPARSER_HPP_
|
#endif // SRC_ANLOGICBITPARSER_HPP_
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue