MCPcopy Create free account
hub / github.com/ThatOpen/engine_web-ifc / Push

Method Push

src/cpp/web-ifc/parsing/IfcTokenStream.cpp:119–135  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

117 }
118
119 void IfcTokenStream::Push(void *v, const size_t size)
120 {
121 if (_chunks.empty())
122 {
123 _chunks.emplace_back(_chunkSize,0,0,_fileStream);
124 _activeChunks++;
125 }
126 if ( _chunks.back().TokenSize() + size > _chunks.back().GetMaxSize())
127 {
128 checkMemory();
129 size_t fsRef = 0;
130 if (_fileStream !=nullptr) fsRef = _fileStream->GetRef();
131 _chunks.emplace_back(_chunkSize,_chunks.back().GetTokenRef() + _chunks.back().TokenSize(),fsRef,_fileStream);
132 _activeChunks++;
133 }
134 _chunks.back().Push(v,size);
135 }
136
137 size_t IfcTokenStream::GetTotalSize()
138 {

Callers

nothing calls this directly

Calls 4

TokenSizeMethod · 0.80
GetMaxSizeMethod · 0.80
GetRefMethod · 0.80
GetTokenRefMethod · 0.80

Tested by

no test coverage detected