| 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 | { |
nothing calls this directly
no test coverage detected