2020-11-18 15:01:10 +01:00
|
|
|
#ifndef HEADER_H_
|
|
|
|
|
#define HEADER_H_
|
|
|
|
|
#include <absl/strings/string_view.h>
|
|
|
|
|
#include <iostream>
|
|
|
|
|
#include <string>
|
|
|
|
|
#include <vector>
|
2023-04-29 17:18:19 +02:00
|
|
|
#include <cstdint>
|
2020-11-18 15:01:10 +01:00
|
|
|
|
|
|
|
|
class Header {
|
|
|
|
|
public:
|
|
|
|
|
Header(const std::string& line,
|
|
|
|
|
std::vector<uint32_t>& fpga_config_packets);
|
|
|
|
|
void Write(std::ostream& out);
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
std::string design_name_;
|
|
|
|
|
std::string part_;
|
|
|
|
|
std::string date_;
|
|
|
|
|
uint32_t no_bits_;
|
|
|
|
|
|
|
|
|
|
std::string GetTLVHeaderValue(absl::string_view& str_view);
|
|
|
|
|
uint32_t GetWord(absl::string_view& str_view);
|
|
|
|
|
size_t GetTLVHeaderLength(absl::string_view& str_view);
|
|
|
|
|
size_t GetByteAndAdvance(absl::string_view& str_view);
|
|
|
|
|
std::string GetDate();
|
|
|
|
|
std::string GetArchitecture();
|
|
|
|
|
};
|
|
|
|
|
#endif // HEADER_H_
|