Implement streaming scan through file and use in rocksdb serializer and python

This commit is contained in:
Thomas Krijnen
2025-08-25 12:45:10 +02:00
parent 5a597d1a84
commit d2c7c1532c
16 changed files with 1410 additions and 778 deletions
+5 -1
View File
@@ -23,6 +23,7 @@
#include "ifc_parse_api.h"
#include "IfcEntityInstanceData.h"
#include "Header_section_schema.h"
#include "storage.h"
namespace IfcParse {
@@ -31,6 +32,8 @@ class IfcFile;
class IFC_PARSE_API IfcSpfHeader {
private:
IfcFile* file_;
IfcParse::impl::in_memory_file_storage* storage_ = nullptr;
mutable Header_section_schema::file_description* file_description_;
mutable Header_section_schema::file_name* file_name_;
mutable Header_section_schema::file_schema* file_schema_;
@@ -43,11 +46,12 @@ class IFC_PARSE_API IfcSpfHeader {
public:
explicit IfcSpfHeader(IfcParse::IfcFile* file = nullptr);
explicit IfcSpfHeader(IfcParse::IfcSpfLexer* lexer);
~IfcSpfHeader();
IfcParse::IfcFile* file() { return file_; }
void file(IfcParse::IfcFile* file) { file_ = file; }
void file(IfcParse::IfcFile* file);
void read();
bool tryRead();