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

Method SetTokenSource

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

Source from the content-addressed store, hash-verified

30 }
31
32 void IfcTokenStream::SetTokenSource(const std::function<uint32_t(char *, size_t, size_t)> &requestData, bool fromStream)
33 {
34 _fileStream = new IfcFileStream(requestData,_chunkSize,fromStream);
35 size_t tokenOffset=0;
36 while (!_fileStream->IsAtEnd())
37 {
38 checkMemory();
39 IfcTokenChunk chunk(_chunkSize,tokenOffset,_fileStream->GetRef(),_fileStream);
40 auto cSize = chunk.TokenSize();
41 tokenOffset+=cSize;
42 if (cSize > _chunkSize) _chunkSize = cSize;
43 _chunks.push_back(chunk);
44 _activeChunks++;
45 }
46 _cChunk = &_chunks.front();
47 _fileStream->Clear();
48 }
49
50 void IfcTokenStream::SetTokenSource(std::istream &requestData)
51 {

Callers 1

LoadFileMethod · 0.80

Calls 4

GetRefMethod · 0.80
TokenSizeMethod · 0.80
IsAtEndMethod · 0.45
ClearMethod · 0.45

Tested by

no test coverage detected